Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    Alkalmazásfejlesztés

    A tantárgy angol neve: Development of Software Applications

    Adatlap utolsó módosítása: 2015. július 31.

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

    Villamosmérnöki szak, MSc képzés       
    Számítógép-alapú rendszerek főspecializáció       

    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VIAUMA09 2 2/1/0/v 4  
    3. A tantárgyfelelős személy és tanszék Dr. Csorba Kristóf, Automatizálási és Alkalmazott Informatikai Tanszék
    A tantárgy tanszéki weboldala https://www.aut.bme.hu/Course/VIAUMA09
    4. A tantárgy előadója Dr. Csorba Kristóf, egyetemi docens, Automatizálási és Alkalmazott Informatikai Tanszék
    5. A tantárgy az alábbi témakörök ismeretére épít
    • A C++ nyelv, valamint az objektum orientált szoftverfejlesztési elvek ismerete és alkalmazása.
    • A Linux bash shell és a Windows Command Prompt (cmd.exe) alapvető használata.

       

    6. Előtanulmányi rend
    Ajánlott:
    nincs

     

    7. A tantárgy célkitűzése A tantárgy célja megismertetni a hallgatókkal azokat az eszközöket, melyek a programozási alapismereteken túl a nagyobb szoftverfejlesztési projektek esetében szükségesek. Ide tartoznak a magas szintű osztálykönyvtárak, az automatikus tesztelés és folyamatos integrációs szerver használata, a verziókezelés és dokumentációs módszerek. A fordítási folyamatok speciálisabb beállítási lehetőségei, valamint felhő szolgáltatások felhasználása szerver oldali megoldások számára. Mindezek során a tantárgy kiemelt hangsúlyt fektet a beágyazott rendszerekhez kapcsolódó feladatokra, valamint az ezekből származó speciális környezetekre.

     

    8. A tantárgy részletes tematikája

    Az előadások az alábbi témákat érintik, míg a gyakorlatok célja az előadáson hallottak gyakorlati elmélyítése.

    • Bevezető, követelmények ismertetése, demók a később érintett területek érdekességei közül. A tantárgy anyagának elhelyezése a villamosmérnöki szakmán belül.
    • Verziókezelés: elsősorban GIT, röviden összehasonlítva másik rendszerekkel (SVN, CVS, TFS)
    • C++, objektum orientált tervezési elvek, KISS elv (Keep It Simple and Stupid) ismétlése.
    • Tervezési minták: céljuk, felismerésük, megvalósítások C++ nyelven, „antipatternek”.
    • Dokumentálás: UML alapok, Markdown, Doxygen és JavaDoc
    • Qt alapok: fejlesztő környezet, alapkoncepciók
    • Qt és GUI tervezés
    • Qt és kommunikáció: Bluetoothon és WiFi-n keresztül beágyazott rendszerrel
    • Automatikus tesztelési módszerek
    • Automatikus fordító, tesztelő és integrációs környezetek
    • Felhő szolgáltatások használata: PHP+MySQL alapú szerver oldal, REST API-n keresztül elért felhő szolgáltatás, valamint ezek elérése kliens oldalról.
    • Összetett esettanulmányok
    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium) Előadás, gyakorlat

     

    10. Követelmények

    A szorgalmi időszakban:

    (1)   A félévközi ismeretek elsajátítását és a gyakorlást egy házi feladat biztosítja, amelynek beadási határideje a 14. oktatási hétre meghirdetett időpont.

    Az aláírás feltételei:

    ·         A házi feladat megfelelő minőségben, határidőre való elkészítése.

     

    A vizsgaidőszakban: írásbeli vizsga.

    A félév elismerését jelentő félév végi jegy megszerzésére akkor van lehetőség, ha a hallgató

    ·         megszerezte az aláírást,

    ·         sikeres vizsgát tett.

     

    A házi feladat 40%-ban, a vizsga 60%-ban számít az érdemjegybe.

     

    A házi feladathoz kiegészítő, szorgalmi feladatok is tartoznak, melyek kiemelkedő teljesítése esetén a vizsgára plusz pontokat, vagy megajánlott jegyet lehet szerezni.

    11. Pótlási lehetőségek

    A házi (otthoni) feladatot a 14. hét végéig be kell adni, annak pótlása a pótlási időszakban lehetséges.

    12. Konzultációs lehetőségek Igény szerint az előadóval egyeztetve.
    13. Jegyzet, tankönyv, felhasználható irodalom
    • Tantárgy weboldalán található oktatási segédanyagok.

       

    • Charaf Hassan, Benedek Zoltán, Levendovszky Tihamér: Szoftver technikák egyetemi jegyzet elektronikus formában.

       

    • Scott Chacon: Pro Git, Apress, 2009, http://git-scm.com/book

       

    • John Ferguson Smart: Jenkins: The Definitive Guide. O'Reilly Media, 2011

       

    • Jasmin Blanchette: C++ GUI Programming with Qt 4 (2nd Edition), Prentice Hall, 2008

       

    • Robert C. Martin: Clean Code: A Handbook of Agile Software Craftsmanship, Prentice Hall, 2008

       

    • Steve McConnell: Code Complete: A Practical Handbook of Software Construction, Second Edition, Microsoft Press, 2004

       

    • Buschmann et al.: A System of Patterns, Willey, 1996
    • Tom Pender, UML Bible, Wiley, 2003
    14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka
    Kontakt óra42
    Félévközi készülés órákra3
    Házi feladat elkészítése40
    Kijelölt írásos tananyag elsajátítása0
    Vizsgafelkészülés35
    Összesen120
    15. A tantárgy tematikáját kidolgozta Dr. Csorba Kristóf, egyetemi docens, Automatizálási és Alkalmazott Informatikai Tanszék