Hálózati szolgáltatások fejlesztése Android platformon

A tantárgy angol neve: Development of Network Services on Android Platform

Adatlap utolsó módosítása: 2011. április 1.

Tantárgy lejárati dátuma: 2013. január 31.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Villamosnérnöki Szak
Mérnök Informatikus Szak
Szabadon választható tantárgy

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VITMAV01   2/2/0/f 4  
3. A tantárgyfelelős személy és tanszék Dr. Szabó Róbert,
A tantárgy tanszéki weboldala http://edudroid.tmit.bme.hu
4. A tantárgy előadója
NévBeoztásTanszék, Int.
Szabó Róbert, PhDe.docensTávközlési és Médiainformatikia Tanszék
Maliosz Markosz, PhDadjunktusTávközlési és Médiainformatikia Tanszék
Lajtha BalázsdoktoranduszTávközlési és Médiainformatikia Tanszék
5. A tantárgy az alábbi témakörök ismeretére épít Java programozási nyelv készségszintű ismerete, Mobil eszközök programozása, számítógép-hálózatok, mobil távközlő hálózatok
6. Előtanulmányi rend
Ajánlott:
  1. Mobilszoftver-fejlesztés
  2. Szoftver laboratórium III (VIIIA212)
  3. Szoftver labor IV
  4. Java Technológiák
  5. Java Technológiák
  6. Android alapú szoftverfejlesztés
7. A tantárgy célkitűzése Az okostelefonok a mobilitás egy új korszakát hozták az informatika világába. Az okostelefonok a mozgás teljes szabadsága mellett állandó hálózati kapcsolatot ígérnek a felhasználónak.

A tárgy célja, hogy az Android platformon keresztül bemutassa a hallgatóknak a különböző hálózati lehetőségeket, azok előnyeivel, hátrányaival, korlátaival, és megtanítsa azokat a technikákat melyekkel alkalmazásaikban hatékonyan tudják kihasználni a hálózatok lehetőségeit. A félév során létező alkalmazások, keretrendszerek, és a laboron fejlesztett alkalmazások segítségével mutatjuk be a hallgatóknak a hálózati appok tervezésének, fejlesztésének, tesztelésének és üzemeltetésének különböző aspektusait az Android telefonokon futó kernelmoduloktól a socket-programozáson és hálózati protokollokon keresztül egészen az overlay-hálózatokig. Hogy a hálózati szolgáltatások szerepét bemutathassuk, elemezni fogunk néhány a hálózati forgalom szempontjából meghatározó alkalmazás-típust is: többek közt kitérünk az augmented reality és a közösségi hálózati alkalmazásokra.
8. A tantárgy részletes tematikája

A tantárgy 14 előadásból, és 14 gyakorlatból áll. A hallgatók a gyakorlatokat párban a házi feladatot csapatban készítik el.
  1. előadás A platform felépítése, verziók, a hardware általános ismertetése
  2. gyakorlat Hello Android alkalmazás készítése

  3. előadás Android mint Linux, alacsony szintű hálózatkezelés, egyedi hálózati modulok: megoldandó feladatok és elérhető lehetőségek. ROMok
  4. gyakorlat ROM Kitchen összeállítása, ROM módosítása, fordítása, telepítése.

  5. előadás WiFi és Bluetooth az Androidon, kerneltől a alkalmazásokig. WiFi és cellák mérhető tulajdonságai (id, jelerősség...). Bluetooth mini hálózatok. WiFi és cella adatbázisok és távolságszámítás. Ad-hoc funkciók megvalósítása a stackben vagy overlayben, egyedi illesztők, elosztott protokollok
  6. gyakorlat Ad-hoc hálózat létrehozása mobil eszközökkel, hálózati forgalom vizsgálata

  7. előadás Allways-on szolgáltatások, technológiák energiagazdálkodásra és szolgáltatási költségek csökkentésére. Allways-on illúziójának keltése cacheléssel, pull és push szolgáltatások. Tűzfalak és egyéb nem-konvencionális megoldások.
  8. gyakorlat Fogyasztás mérés, alkalmazások vizsgálata

  9. előadás Az Android platform multimédiás lehetőségeinek használata felhasználói interakcióra. Tervezési elvek szenzorokhoz. Accessibility elvek és lehetőségek. Szövegfelolvasás (text-to-speech), videós irányítás
  10. gyakorlat Multimodális felhasználói felület készítése

  11. előadás Mobil alkalmazások által használt infrastruktúrák robosztussága, skálázhatósága. Hozzáférési hálózat terhelése (operátori szempontok és korlátozási lehetőségek), szolgáltatások skálázása (alkalmazás-üzemeltetés)
  12. gyakorlat Házi feladat kiadása

  13. előadás Közösségi hálózatok APIjainak áttekintése, lehetőségek és veszélyek bemutatása sikeres és sikertelen alkalmazásokon keresztül
  14. gyakorlat Alkalmazás fejlesztés közösségi hálózat felett

  15. előadás Helyfüggő szolgáltatások Androidon (Foursquare, helykeresők). Beltéri pozícionálás lehetősége. Szolgáltatások tervezése, integrálása létező alkalmazásokkal. Energia-gazdálkodás, és privacy
  16. gyakorlat Közösségi alkalmazás kiterjesztése helyfüggő szolgáltatással

  17. előadás Augmented reality. Keretrendszerek bemutatása (pl. Layar, AndAR), mintaalkalmazások, teljesítmény-korlátok (hálózat és renderelés)
  18. gyakorlat AR alkalmazás készítése kész elemekből

  19. előadás Android alkalmazások biztonsági kérdési: digitális lábnyom, adatrejtés. Távoli vezérlés…
  20. gyakorlat Android alkalmazás fejlesztése a személyes adatok védelmére

  21. előadás Infrastruktúrán alapuló és homogén P2P rendszerek. Keretrendszerek és protokollok bemutatása (pl. BitTorrent, JXTA család, PeerDroid...). Cloud szolgáltatások Android kliensei. Elosztott hálózatok alkalmazása:: VoD, live streaming, file-sharing.
  22. gyakorlat Korábbi alkalmazás kiterjesztése P2P üzenőfallal, annak forgalmának vizsgálata

  23. előadás VoIP, SIP, XMPP, Unified communication technológiák
  24. gyakorlat Az Android SIP stack, Google Talk, XMPP, kommunikáció külső alkalmazással.

  25. előadás Számlázható Android alkalmazások, fizetési modellek. Alkalmazás-fejlesztés telekom platform fölé. Android és banki szolgáltatások: fizetés telefonnal szolgáltatón keresztül, hálózaton és egyéb módokon.
  26. gyakorlat Alkalmazás-fejlesztés telekom platform fölé

  27. előadás Az okostelefonok helye a jövő internetjében
  28. gyakorlat Házi feladatok értékelése
9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) Heti: 2 óra előadás és 2 óra gyakorlat. A gyakorlati foglalkozások számítógép laborban Android eszközökkel kerülnek megtartásra.
10. Követelmények a) kiadott házi feladat teljesítése b) részvétel a gyakorlatok legalább 70%-án c) félévközi jegy a házi feladat osztályzata
11. Pótlási lehetőségek A házi feladat pótlása a pótlási hét végéig megtehető.
12. Konzultációs lehetőségek A félév során a hallgatóknak lehetőségük van az előadóval előre egyeztetett időpontban konzultálni.
13. Jegyzet, tankönyv, felhasználható irodalom
  1. Android Devlopers @ http://developer.android.com/index.html
  2. Sayed Hashimi, Satya Komatineni, Dave MacLean, Pro Android 2, Apress, 978-1-4302-2659-8, 2010
  3. Jeff Friesen, Learn Java for Android Development, Apress, 978-1-4302-3156-1, 2010
  4. A munkacsoport oldala @ edudroid.tmit.bme.hu
14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
Kontakt óra56
Félévközi készülés órákra28
Felkészülés zárthelyire0
Házi feladat elkészítése36
Kijelölt írásos tananyag elsajátítása0
Vizsgafelkészülés0
Összesen120
15. A tantárgy tematikáját kidolgozta
NévBeoztásTanszék, Int.
Szabó Róbert, PhDe. docensTávközlési és Médiainformatikia Tanszék
Maliosz Markosz, PhDadjunktusTávközlési és Médiainformatikia Tanszék
Lajtha BalázsdoktoranduszTávközlési és Médiainformatikia Tanszék
Fehér Gábor, PhDe. docensTávközlési és Médiainformatikia Tanszék