Mobilszoftver-rendszerek fejlesztése
A tantárgyleírás hatályossága
| Tantárgy neve (magyarul, angolul) |
Mobilszoftver-rendszerek fejlesztése
Mobile Software System Development
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Tantárgykód | BMEVIAUMB01 | ||||||||||||
| Tantárgyjelleg | — | ||||||||||||
| Képzési szint | — | ||||||||||||
| Kurzustípusok és óraszámok (heti/féléves) |
|
||||||||||||
| Tanulmányi teljesítmény/értékelés típusa | vizsga | ||||||||||||
| Tantárgy kreditértéke | 4 | ||||||||||||
| Tantárgyfelelős |
DR. Forstner Bertalan
beosztás: egyetemi docens
elérhetőség:
forstner.bertalan@vik.bme.hu
|
||||||||||||
| Tantárgyat gondozó oktatási szervezeti egység |
Automatizálási és Alkalmazott Informatikai Tanszék
|
||||||||||||
| Kar | Villamosmérnöki és Informatikai Kar | ||||||||||||
| Tantárgy weboldala | https://www.aut.bme.hu/Course/VIAUMB01 | ||||||||||||
| Tantárgy elsődleges mintatantervi jellege | — | ||||||||||||
| Közvetlen előkövetelmények – Erős előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Gyenge előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Párhuzamos előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Mérföldkő előkövetelmény | nincs | ||||||||||||
| Közvetlen előkövetelmények – Kizáró feltétel | nincs |
Célkitűzés
|
|
Előadás anyaga |
|
1. |
Az előadáson a bevezetés után a mobilszoftver-specifikáció
kérdéseinek és platformválasztásnak a körüljárása történik. A formális
specifikáció elkészítése mellett megvizsgáljuk a platformfüggetlen, illetve
hordozható részek kiemelését. Átnézzük, milyen szempontokat kell figyelembe
venni mobil alkalmazás tervezésénél. |
|
2. |
A felhasználói felület kapcsán kitérünk a képernyőképek
tervezésére, illetve a fragmentációra való felkészülésre. A csak tablet-
illetve csak mobiltelefon-felület tervezésének különbségeit is vizsgáljuk.
Bemutatjuk a platformspecifikus vs. generikus felhasználói felület közti
különbségeket. Körüljárjuk a mock alkalmazások készítésének lehetőségét.
Feltárjuk, milyen felhasználói élmény emelésére alkalmas szempontokra kell
figyelni. |
|
3. |
Az előadáson körbejárjuk az adatréteg tervezés kérdéseit,
az adattárolás helyét, illetve a backenddel való szinkronizáció lehetőségeit,
típusait. Bemutatunk elterjedt mobilos ORM megoldásokat. |
|
4. |
A tanóra témája a Kommunikációs réteg tervezése. Bemutatjuk,
hogyan kell egyedi kommunikációs protokoll tervezésni és leírni,
megvalósítani. Átvesszük az kapcsolódó eljárásokat és technikákat (mint a REST,
az XML vs. JSON, illetve különböző, ezt támogató kódkönyvtárak). Megvizsgáljuk
a Push üzenetek szerepét és hasnálatát. Megvizsgáljuk a kommunikációs réteg
tesztelésének módjait, illetve további stratégiákat (pl. Cache, hálózat
elérhetősége). |
|
5. |
A mobil alkalmazások kapcsán vzsgáljuk a közösségi rendszerekkel
való integráció lehetőségét. Ennek kapcsán részletesebben nézzük az OAuth
megvalósítását. Áttekintjük a gyakori közösségi site-ok szolgáltatásait és
integrációjukat. |
|
6. |
Az óra tematikája a „Backend as a service” koncepció
bemutatása, elemzése, illetve használata. Ennek kapcsán megvizsgálunk több BaaS
típust és képességeiket. |
|
7. |
Az előadáson a csapatban történő mobilszoftver fejlesztés
kihívásaival foglalkozunk. Ennek részeként áttekintjük a verziókövetés, build
szerverek, continuous integration, illetve a kódmetrika és automatikus
kódmetrika report készítésének lehetőségeit. |
|
8. |
Az előadás témája a külső (vezetéknélküli) eszközök
integrálása. Megvizsgáljuk a korszerű technológiákat (BLE, NFC, Zigbee/Z-Wave).
Emellett szintén az óra anyaga a hordható informatika és integrációja (Google
wear, okosszemüveg, orvosi eszközök stb.) |
|
9. |
Az óra keretein belül megismerkedünk a mobilszoftverek
tesztelési kérdéseivel, illetve a TDD, BDD módszertanokkal. |
|
10. |
A tesztelési kérdések kapcsán ezen az előadáson a felhasználói
felület tesztekkel, automatizált UI teszteléssel foglalkozunk. |
|
11. |
A tanóra anyaga az analitikai és loggolási funkciók
beépítése, illetve ezekhez külső szolgáltatások integrációja. Az óra
bemutatja a crash reporting megoldásokat és jelentőségüket. Az analitika egy
területeként kitérünk a felhasználói felület használatának mérésére, hőtérkép
készítésére, illetve az A/B tesztelésre. |
|
12. |
Bemutatjuk a mobil piacterekre lépés feladatait, az
alkalmazás publikálás elemeit. Az előadás bemutatja, hogyan tervezzük meg a
mobil alkalmazásunk béta-programját. |
|
13. |
Áttekintjük az elterjedt alkalmazás-finanszírozási
modelleket, úgymint: paid, ad-supported, freemium, in-app purchase,
enterprise, illetve ezek szoftveres támogatását. Szintén elemezzük a szoftver
életciklus kezelés és frissítés módjait. |
|
14. |
Zárthelyi dolgozat írása |
|
|
Gyakorlat anyaga |
|
1. |
A gyakorlat során konkrét, informális funkcionális
specifikációból kiindulva készítünk formális funkcionális specifikációt
mobilszoftverhez. gyakorlat része a
képernyőterveknek az elméletben megismert eszközökkel való megtervezése is. |
|
2. |
Az előző gyakorlaton specifikált alkalmazáshoz adatréteget,
illetve kommunikációs protokollt tervezünk. Emellett a gyakorlatban
kipróbálunk különböző szinkronizációs modelleket. |
|
3. |
A gyakorlat során megvizsgáljuk, hogyan lehet kiváltani
egyes funkciókat konkrét Backend-as-a-Service használatával. |
|
4. |
A gyakorlat során a konkrét példán keresztül nézzük meg a
verziókövetés és build szerver használatát, illetve a continouos integration
szerver működését. |
|
5. |
Ezen a gyakorlaton a konkrét példa kiegészítésével a
felahsználói felület tesztelésének módszereit próbáljuk ki. |
|
6. |
A gyakorlat folyamán az alkalmazáshoz konkrét analitika és
crash reporting kódkönyvtárat választunk és építünk be. |
|
7. |
A gyakorlat célja az A/B tesztelés beépítése az eddig
megvalósított alkalmazásba. Ezután a piactérre lépés folyamatát egy adott
piactéren próbáljuk ki. |
Tanulmányi eredmények
Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:
Tudás
Nincsenek rögzített tanulási eredmények.
Képességek
Nincsenek rögzített tanulási eredmények.
Attitűd
Nincsenek rögzített tanulási eredmények.
Autonómia és felelősség
Nincsenek rögzített tanulási eredmények.
Oktatási módszertan
Tanulástámogató anyagok
Online források
A tantárgy teljesítéséhez ajánlott előzetes ismeretek
Általános szabályok
Teljesítményértékelési módszerek
Szorgalmi időszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Szorgalmi időszakban végzett teljesítményértékelések részaránya
Nincs megadva részarány.
Vizsgaidőszakban végzett teljesítményértékelések részletes leírása
Nincs megadva részletes értékelés.
Vizsgarészek részaránya
Nincs megadva részarány.
Érdemjegy megállapítása
Nincs megadva érdemjegy határ.
Jelenléti és részvételi követelmények
Nincs megadva jelenléti követelmény.
Javítás, ismétlés és pótlás különös szabályai
Nincs megadva.
Rövid leírás
Nincs megadva.
Részletes leírás
Nincs megadva.
Ajánlott tantárgyak
A tantárgy elvégzéséhez szükséges tanulmányi munka
Nincs megadva munkaidő bontás.
Tantárgykövetelmények hatályossága
Tantervi elhelyezés
Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.