Integrációs és ellenőrzési technikák

A tantárgy angol neve: Integration and Verification Techniques

Adatlap utolsó módosítása: 2017. június 22.

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

Mérnök informatikus alapszak

Szoftverfejlesztés specializáció 

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIMIAC04 6 2/1/0/v 4  
3. A tantárgyfelelős személy és tanszék Dr. Strausz György,
A tantárgy tanszéki weboldala http://www.mit.bme.hu/oktatas/targyak/VIMIAC04
4. A tantárgy előadója

Név:

Beosztás:

Tanszék, Int.:

Dr. Micskei Zoltán

egyetemi docens

MIT

Dr. Strausz György

egyetemi docens

MIT

5. A tantárgy az alábbi témakörök ismeretére épít Szoftvertechnológia, szoftvertechnikák, mesterséges intelligencia
6. Előtanulmányi rend
Kötelező:
(Szakirany("AMINszoftfejlAUT", _) VAGY
Szakirany("AMINszoftfejlIIT", _) VAGY
Szakirany("AMINszoftfejlMIT", _) VAGY
Szakirany("AMIszoft", _) VAGY
Szakirany("AMIrendszfejl", _) VAGY
Szakirany("AMIrendszterv", _) VAGY


Szakirany("VIABI-SOFTWE", _) )


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

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

A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.

Ajánlott:
-
7. A tantárgy célkitűzése

A tárgy célja, hogy áttekintést adjon a különböző információ integrációs rendszerekről, bemutassa az ilyen rendszerek fejlesztésének és ellenőrzésének technológiáit. Áttekintjük az adatok, dokumentumok, weben elérhető források integrációjának lehetséges megközelítéseit, virtuális és materializált integráció módszereit, alkalmazási területeit. A tárgy foglalkozik a szemantikai és strukturális heterogenitás problémáival, a feloldáshoz szükséges technológiákkal. Részletesen vizsgáljuk a szemantikus web koncepcióban javasolt megközelítési módokat és technológiákat.

A tárgy az ellenőrzési folyamat áttekintésével és a tipikus fejlesztési fázisokhoz kapcsolódó ellenőrzési szempontok és technológiák bemutatásával folytatódik. Az ellenőrzési feladatok elemzése során foglalkozunk a specifikáció és tervek statikus ellenőrzésével, a komponensek dinamikus ellenőrzésével, valamint integrációjuk tesztelésével. A tárgy a rendszertesztelés módszereinek áttekintésével zárul.

A tantárgyat sikeresen teljesítő hallgató képes lesz:

- magas szintű, koncepcionális információ integrációs modellek megalkotására

- elosztott, heterogén információforrások feltárására és az elérhető információ kinyerésére

- alkalmazni alapvető szemantikus web technológiákat

- bemutatni, hogy a fejlesztés folyamán mely ellenőrzési technikák alkalmazása javasolt,

- alkalmazni statikus ellenőrző eszközöket forráskód átvizsgálására,

- komponensteszteket készíteni egyszerűbb teszttervezési technikák alkalmazásával.

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

Előadások:

1.     Információ integrációs megközelítések. Az információ integrálás módszerei: mediátor/integrátor megközelítés bemutatása. Virtuális és materializált információ integrációs megközelítések előnyei, hátrányai.

2.     Jelenleg elérhető internetes kereső rendszerek technológiái, képességei, hiányosságai. Interneten elérhető információk integrálása. Szemantikus web koncepció lényege, technológiái.

3.     Szemantikus web technológiák és alkalmazásaik (RDF, RDFS, SKOS). A LinkedData megközelítés.

4.     Modell alapú integráció szemantikus web technológiákkal (OWL, ontológiák alkalmazása).

5.     Virtuális adatintegráció technikái, logika alapú információ integráció (következtetések szerepe, datalog).

6.     Virtuális integrációt támogató mediátorok felépítése, lekérdezések megfogalmazása, lefordítása, optimalizálása, futtatása

7.     A materializált integráció előnyei és problémái (adattárház rendszerek /kitekintés/), adatok tárolása és lekérdezése adattárház rendszerekben.

8.     Ellenőrzési technológiák szerepe, az ellenőrzési folyamat áttekintése: Tipikus fejlesztési fázisok, kapcsolódó ellenőrzési szempontok és technológiák. Folytonos integráció.

9.     Követelmények és specifikáció ellenőrzése: Adat-, interfész- és viselkedés specifikáció tesztelhetőségének ellenőrzése. Specifikáció példák alapján.

10.  Forráskód statikus ellenőrzés: kódolási irányelvek (szakterületi és nyelvi ajánlások), kód felülvizsgálat (informális és formális), statikus analízis technikák és eszközök.

11.  Komponensek dinamikus ellenőrzése: komponenstesztek jellegzetességei és ajánlásai, tesztelési minták, komponensek izolált tesztelése.

12.  A specifikáció és struktúra alapú teszt tervezés módszerei: teszt adatok kiválasztása ekvivalencia partíciók és határértékek analízisével. Teszt minőségi mértékszámok használata.

13.  Komponens- és adatintegráció ellenőrzése: Inkrementális tesztelési módszerek. Tesztelési szintek. Tesztautomatizálási módszerek. Rendszertesztelés jellegzetességei.

14.  Teszt adatok származtatása: szakterületi ontológia és metamodell felhasználása, alkalmazás web 2.0 szolgáltatásokra. Teszt adatok és konfigurációk generálása.

 

Gyakorlatok (6db 2 órás alkalom):

1.     RDF adatbázisok építése, modellek lekérdezése (SPARQL )

2.     Információ integráció (RDF adatbázisok felhasználásával)

3.     Információ integráció ontológiai modelljének létrehozása (Protege, OWL))

4.      Folytonos integrációs keretrendszerek (GitHub, Travis)

5.      Kód statikus ellenőrzése (SonarQube)

6.      Komponens szintű tesztek készítése és izolált futtatása (JUnit, Mockito)

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:

  • félév közben egy ZH, amely a félév utolsó hetében pótolható, a szükséges minimum szint 40%, az érvényes ZH pontszám százalékos értékének e feletti részének negyede a végleges osztályzatba is beleszámít. Így a vizsgajegy alapját adó pontok 15%-át a zh eredmény adja.
  • félév közben egy házi feladat, a házi feladatot csapatban kell megoldani.

A vizsga időszakban:

  • írásbeli vizsga, a vizsgajegy eredményét meghatározó pontok 15%-át a zh eredmény alapján számoljuk, 85%-a a vizsgán szerezhető meg.
11. Pótlási lehetőségek

A zárthelyi a pótlási héten pótolható. A HF a pótlási hét végéig pótolható. 

12. Konzultációs lehetőségek Egyeztetés alapján.
13. Jegyzet, tankönyv, felhasználható irodalom

Benkő Tamás - Lukácsy Gergely - Szeredi Péter : A szemantikus világháló elmélete és gyakorlata, Typotex 2005.

AnHai Doan, Alon Halevy, and Zachary Ives: Principles of Data Integration, Morgan Kaufmann, 1st edition (2012) ( http://research.cs.wisc.edu/dibook/)

Sziray J., Majzik I., Benyó B., Pataricza A., Góth J., Kalotai L., Heckenast T., Nagy N.: Szoftver rendszerek minőségbiztosítása és verifikálása. Elektronikus jegyzet, 2000.

G. G. Schulmeyer, G. R. MacKenzie: Verification and Validation of Modern Software-Intensive Systems. Prentice Hall, 2000.

Gerard Meszaros: xUnit Test Patterns. Prentice Hall, 2006.

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 előadásra 7
Félévközi készülésgyakorlatra 7
Felkészülés zárthelyire12
Házi feladat elkészítése16
Önálló tananyag-feldolgozás  4
Vizsgafelkészülés32
Összesen120
15. A tantárgy tematikáját kidolgozta

Név:

Beosztás:

Tanszék, Int.:

Dr. Micskei Zoltán

egyetemi docens

MIT

Dr. Strausz György

egyetemi docens

MIT