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ó    

    Objektumorientált szoftvertervezés

    A tantárgy angol neve: Object-Oriented Software Design

    Adatlap utolsó módosítása: 2008. február 13.

    Budapesti Műszaki és Gazdaságtudományi Egyetem
    Villamosmérnöki és Informatikai Kar
    BSc. Mérnök Informatikus Szak, Informatikai Technológiák szakirány, Rendszerfejlesztés ágazat
    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VIIIA371 6 3/1/0/v 4  
    3. A tantárgyfelelős személy és tanszék Dr. Goldschmidt Balázs, Irányítástechnika és Informatika Tanszék
    4. A tantárgy előadója
    Dr. László ZoltánadjunktusIIT
    Dr. Goldschmidt BalázsadjunktusIIT
    5. A tantárgy az alábbi témakörök ismeretére épít

    Java programozás, Szoftver technológia.

    6. Előtanulmányi rend
    Kötelező:
    (Szakirany("AMIrendszfejl", _) VAGY
    Szakirany("AMIrendszterv", _) VAGY
    Szakirany("AMIszoft", _)
    VAGY Training.code=("5NAA8") )

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

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

    A kötelező előtanulmányi rendek grafikus formában itt láthatók.

    Ajánlott:

    Kötelező: Szoftvertechnológia (VIIIA217), Szoftver laboratorium 3 (VIIIA212)

    7. A tantárgy célkitűzése

    A tárgy célja a modell-alapú, objektumorientált tervezés és megvalósítás elveinek és módszereinek elsajátítása, azoknak a gyakorlatban történő tudatos alkalmazása Java környezetben, fejlesztői keretrendszer támogatásával. Az alapvető architekturális minták (perzisztencia, elosztottság, felhasználói felület) és az őket megvalósító komponensek megismerése, felhasználása egyszerű alkalmazásokban. A fontosabb szoftverelemzési minták (Fowler) megismertetése és alkalmazási készségének kialakítása, kiegészítve a locking, konkurencia és eseménykezelés mintáival (Schmidt). Szoftver metrikák és azok mérése, mérőeszközei. Szoftver refaktorálás, re- és reverse engineering (Antipatterns, Refactoring).

    8. A tantárgy részletes tematikája
    1. Java ismétlés, gyakorlás: kollekciók, reflection.
    2. Fejlesztést támogató eszközök, keretrendszerek (Eclipse, CVS, Subversion) szolgáltatásai, használata.
    3. Az OO tervezés elvei: kohézió és csatolás a gyakorlatban. Locking, konkurencia és eseménykezelés mintái.
    4. A perzisztencia lényege, problémái, megvalósítási módszerek. Szerializálás, OO adatbázis-kezelés (ObjectStore), OO relációs megoldások (Hybernate).
    5. XML a gyakorlatban. XSL, XSLT, XPath, DTD és XSD. Java támogató csomagok.
    6. Objektumok elosztott rendszerekben, Java megvalósításuk: RMI. Kitekintés: szabványos middleware, CORBA alapelvek.
    7. A Swing megjelenítő csomag.
    8. OO metrikák, mérésük és eszközeik.
    9. Elemzési minták, refaktorálás, antipatternek.
    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

    Előadás és gyakorlat.

    10. Követelmények

    a. A szorgalmi időszakban:

    A gyakorlatokon a félév során legalább 5 röpzárthelyit iratunk. Az aláírás feltétele: ezek közül legalább háromnak legalább elégségesnek kell lennie. A röpzárthelyik nem pótolhatók.

    b. A vizsgaidőszakban:

    A fenti módon aláírást szerző hallgatók írásbeli vizsgát tesznek.

    11. Pótlási lehetőségek -
    12. Konzultációs lehetőségek

    Igény szerint a tárgy hallgatóival egyeztetve.

    13. Jegyzet, tankönyv, felhasználható irodalom
    • David Carlson: Eclipse Distilled, Addison-Wesley, 2005, ISBN-10 0321288157
    • http://www.eclispe.org
    • http://www.progress.com/objectstore/index.ssp
    • Ramnivas Laddad: Aspect Oriented Refactoring, Addison-Wesley, 2006, ISBN-10 0321304721
    • http://www.eclipse.org/aspectj
    • http://java.sun.com/javase/technologies/core/basic/rmi/index.jsp
    • http://java.sun.com/docs/books/tutorial/uiswing/
    • Martin Fowler: Analysis Patterns: Reusable Object Models, Addison-Wesley, 1996, ISBN-10 0201895420
    • William J. Brown, Raphael C. Malveau, Thomas J. Mowbray: AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis, Wiley, 1998, ISBN-10 0471197130
    • Martin Fowler, Kent Beck, John Brant, and William Opdyke: Refactoring: Improving the Design of Existing Code, Addison-Wesley, 1999, ISBN-10 0201485672
    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ákra24
    Felkészülés zárthelyire10
    Házi feladat elkészítése
    Kijelölt írásos tananyag elsajátítása
    Vizsgafelkészülés30
    Összesen120
    15. A tantárgy tematikáját kidolgozta
    Név:Beosztás:Tanszék, Int.:
    Dr. László ZoltánadjunktusIIT
    Dr. Goldschmidt BalázsadjunktusIIT