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ó    

    Adatvezérelt rendszerek

    A tantárgy angol neve: Data-Driven Systems

    Adatlap utolsó módosítása: 2023. március 31.

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

    Mérnök-informatikus Szak, BSc képzés

    Szoftverfejlesztés szakirány 

    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VIAUAC15 5 2/2/0/v 5  
    3. A tantárgyfelelős személy és tanszék Dr. Kovács Tibor,
    4. A tantárgy előadója

    Albert István, mérnöktanár, AUT

    Benedek Zoltán, tanársegéd, AUT

    Imre Gábor, tanársegéd, AUT

    5. A tantárgy az alábbi témakörök ismeretére épít Szoftvertechnikák, Adatbázisok
    6. Előtanulmányi rend
    Ajánlott:
    ((Szakirany("AMINszoftfejlAUT", _) VAGY
    Szakirany("AMINszoftfejlIIT", _) VAGY
    Szakirany("AMINszoftfejlMIT", _) VAGY
    Szakirany("AMIrendszfejl", _) VAGY
    Szakirany("AMIrendszterv", _) VAGY
    Szakirany("AMIszoft", _) VAGY
    Szakirany("VIABI-SOFTWE", _) )

    VAGY EgyenCsoportTagja("Szoftverfejlesztés MIT") )

    ÉS NEM ( TárgyEredmény( "BMEVIAUA369" , "jegy" , _ ) >= 2
    VAGY
    TárgyEredmény("BMEVIAUA369", "FELVETEL", AktualisFelev()) > 0)

    A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

    7. A tantárgy célkitűzése A tárgy célja megismertetni a hallgatókkal az adatvezérelt- és un. „backend” rendszerek fejlesztése során leggyakrabban használt kiszolgáló oldali megoldásokat. A tárgy keretében a hallgatók jártasságot szereznek adatbázisokra épülő rendszerek megvalósításában, elsajátítják az adatrétegben és az üzleti logikai rétegben alkalmazott tipikus módszereket és eljárásokat. A tárgy ismerteti a különböző adatbázis-kezelő rendszerek használatát komplex szoftverrendszerek fejlesztése során, továbbá bemutatja azon eljárásokat és megoldásokat, melyek segítségével modern, adatot kezelő alkalmazásokat (főként azok kiszolgáló oldalát) fejleszthetünk.
    8. A tantárgy részletes tematikája

    Az előadások tematikája:

    Hét

    Előadás anyaga

    1

    Bevezetés, adatvezérelt rendszerek architektúrái (többrétegű architektúra, rétegek szerepe, rétegfüggetlen szolgáltatások).

    2

    Tranzakciókezelés adatbázis-kezelő rendszerekben, Microsoft SQL Server platform és sajátosságai.

    3

    Haladó SQL nyelvi elemek és adatbázis szerver oldali programozása (Microsoft SQL Server platform, T-SQL nyelv, tárolt eljárások és triggerek).

    4

    NoSQL adatbázisok, dokumentum-alapú adatbázisok működése. MongoDB platform, egyszerű lekérdezések MongoDB-ben.

    5

    Lekérdezések végrehajtása és hatékonysága Microsoft SQL Server platformon. Végrehajtási tervek és lekérdezés-optimalizálás.

    6

    Adat szótárak, félig strukturált adatok (XML, JSON) tárolása és kezelése

    7

    Adatelérési réteg, objektum-relációs leképzés, adatelérési rétegben használt tervezési minták (repository).

    8

    Objektum relációs keretrendszerek .NET környezetben, ADO.NET, Entity Framework és Linq to Entity Framework.

    9

    Objektum relációs keretrendszerek Java környezetben: JPA, QueryDSL

    10

    Üzleti logikai réteg megvalósítása Java környezetben: JavaEE, Spring, SpringData

    11

    Kommunikációs megoldások háttérrendszer és kliensalkalmazás között: SOAP és REST

    12

    Üzleti logikai réteg megvalósítása .NET környezetben. ASP.NET Core platform alapjai, middleware szolgáltatások, WebAPI készítése.

    13

    Modern webalkalmazás készítése: minta alkalmazás elkészítése a félév során tanult módszerek áttekintése, demonstrációs céllal.

     

     

    A gyakorlatok egy része személyes jelenlétű kontaktóra, másik része otthoni feladatmegoldás. A személyes gyakorlatok tematikája:

    Hét

    Gyakorlat anyaga

    1

    Tranzakciók alaptulajdonsági, platform specifikus sajátosságok vizsgálata Microsoft SQL Serveren
    2 Microsoft SQL Server adatbázis szerver oldali programozása
    3 Bevezetés a Mongodb programozásába: gyűjtemények és egyszerű lekérdezések.
    4 Objektum relációs leképzés: JPA, SpringData
    5 Objektum relációs leképzés: Entity Framework használata Database First megoldással
    6 Többrétegű alkalmazások kiszolgáló oldalának készítése REST API-val (CRUD műveletek)
     

    Az otthoni feladatok tematikája:
     

    Hét

    Otthoni feladatok anyaga

    1

    Microsoft SQL Server adatbázis szerver oldali programozása
    2 XML adatok kezelése adatbázisokban
    3ADO.NET adatelérés
    4Repository megvalósítás és aggregációk MongoDB-ben
    5 Code-first alapú Entity Framework
    6ASP.NET WebAPI, nem szabványos (nem CRUD) műveletek megvalósítása
    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)
    A tárgy egyik fő pillére az előadás, amely a szükséges alapismeretek nagy részét átadja. Az előadásokat kiegészíti otthoni, önálló tanagyagfeldolgozás egyes anyagrészekhez írásos jegyzet alapján. Mind az előadáson elhangzottak, mind a jegyzetben található ismeretek részei a tananyagnak.

    Az előadásokat személyes és otthoni gyakorlaton történő feladatmegoldás egészíti ki. A személyes gyakorlatok lefedik azon technológiákat, gyakorlati ismereteket, amelyek elméletben az előadásokon ismertetésre kerülnek. Az otthoni feladatmegoldásra épülő gyakorlatok további elmélyülést, részletek megismerését, önálló gondolkodásra épülő ismeretszerzést tesznek lehetővé.

    10. Követelmények

    A szorgalmi időszakban:

    Az ismeretek átfogó és részletes áttekintését a szorgalmi időszak során 1 alkalommal, íratott nagy zárthelyivel mérjük.

    A személyes jelenlétet igénylő gyakorlatokon végig jelen kell lenni, és az oktatóval együtt kell dolgozni.

    Az otthoni feladatmegoldással elvégezhető gyakorlatokat előre megadott határidőig kell elkészíteni és beadni. A határidőig nem beadott feladatok 0 ponttal számítódnak a vizsgadolgozat pontszámához.

     

    A félév végi aláírás feltételei:

    a nagy zárthelyi dolgozat eléri az elégséges (2) szintet,

    a hallgató a személyes gyakorlatokat rendszeresen látogatta (hiányzása nem haladja meg a TVSz 14.§ (3) szerint megengedett mértéket).


     A vizsgaidőszakban:

    írásbeli vizsga.

     

    Az osztályzat megállapításának módja: a vizsgadolgozaton szerzett pontszámhoz hozzáadódnak az önálló gyakorlatként elvégzett feladatokra kapott pontok. Ezen összeg alapján a végső jegy: 0-40% elégtelen, 41-55% elégséges, 56-70% közepes, 71-85% jó, 86-100% jeles.

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

    A sikertelen zárthelyi a szorgalmi időszakban tartott pótzárthelyi dolgozat legalább elégséges szintű megírásával pótolható.

    Személyes jelenlétet igénylő gyakorlatok pótlására a félve során előzetes egyeztetéssel van lehetőség, a félév végén pótlásra nincs lehetőség. Ugyanakkor a teljesített gyakorlatba beszámítjuk az indokolt (pl. orvosilag igazolt) távolmaradást és a tanulmányi szünetek miatt elmaradt alkalmakat is.

    Az otthoni gyakorlatfeladatok beadására hosszabb időablak (feladatonként 2 hét) áll lehetőségre, a határidőn túli beadásra nincs lehetőség.

    A vizsgák a TVSZ-nek megfelelően pótolhatók.


    12. Konzultációs lehetőségek Igény szerint az előadóval és a gyakorlatvezetővel egyeztetve. 
    13. Jegyzet, tankönyv, felhasználható irodalom

    ·                Adatvezérelt rendszerek, elektronikus jegyzet

              Grant Fritchey: SQL Server Execution Plans, Simple Talk Publishing, 2012. Ebook: https://www.red-gate.com/products/dba/sql-monitor/entrypage/execution-plans

              Leonard Lobel and Andrew Brust: Programming Microsoft SQL Server 2012, Microsoft Press, ISBN: 978-0735658226

              Kristina Chodorow: MongoDB: The Definitive Guide: Powerful and Scalable Data Storage, O'Reilly Media, Second Edition. ISBN 978-1449344689.

              Mark J. Price: C# 7 and .NET Core: Modern Cross-Platform Development: Create powerful cross-platform applications using C# 7, .NET Core, and Visual Studio 2017 or Visual Studio Code. Packt Publishing, 2nd Edition. ISBN: 978-1787129559.

              Dino Esposito: Programming ASP.NET Core, Microsoft Press. ISBN 978-1509304417.

              Mark Pollack, Oliver Gierke, Thomas Risberg, Jon Brisbin, Michael Hunger: Spring Data: Modern Data Access for Enterprise Java. O'Reilly Media, 1st Edition. ISBN-13: 978-1449323950.

              Subbu Allamaraju: RESTful Web Services Cookbook: Solutions for Improving Scalability and Simplicity. Yahoo Press, 1st Edition. ISBN: 978-0596801687.
    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ákra20
    Felkészülés zárthelyire15
    Házi feladat elkészítése15
    Kijelölt írásos tananyag elsajátítása4
    Vizsgafelkészülés40
    Összesen150
    15. A tantárgy tematikáját kidolgozta

    Név:

    Beosztás:

    Tanszék, Int.:

    Dr. Dudás Ákos

    adjunktus

    Automatizálási és Alkalmazott Informatikai Tanszék

    Kovács Ferenc

    tanársegéd

    Automatizálási és Alkalmazott Informatikai Tanszék

    Benedek Zoltán

    tanársegéd

    Automatizálási és Alkalmazott Informatikai Tanszék

    Imre Gábor

    tanársegéd

    Automatizálási és Alkalmazott Informatikai Tanszék

    Dr. Lengyel László

    docens

    Automatizálási és Alkalmazott Informatikai Tanszék

    IMSc tematika és módszer A tananyag mélyebb megértésére az önálló gyakorlatfeladatok egyes részfázisaihoz kapcsolódó extra részfeladatok, illetve a gyakorlatok opcionális feladatainak megoldásával nyílik lehetőség. Ezek az extra részfeladatok segítenek jobban megérteni az előadáson kevésbé részletezett ismereteket is.
    IMSc pontozás

    A tárgyból 25 IMSc pont szerezhető az önálló gyakorlatfeladatok során extra feladatok megoldásával. Az IMSc pontok megszerzése a programban nem résztvevő hallgatók számára is biztosított.