Szoftverellenőrzési technikák - Segédanyagok

Félév: 2011. ősz
Title Egyedi szöveg
VIZSGA: Vizsgatételek

A vizsgára a mellékelt tételsorból kell felkészülni.

A vizsgán ezen kívül egy-egy rövidebb gyakorlati feladatot is meg kell majd oldani (pl. specifikáció ellenőrzése, forráskód ellenőrzése, tesztek tervezése).

Félév: 2010. ősz
Title Egyedi szöveg
GYAK01: Gyakorlat és házi feladat ismertető

- Gyakorlatok témája és időpontja

- Házi feladat követelmények

- Háttér infrastruktúra ismertetése

EA01: Alapok

Az előadás tartalma:

  • Motiváció
    • Milyen minőségi igények vannak a szoftverrel szemben?
    • Miért olyan nagy a szoftver ellenőrzési technikák jelentősége?
  • A verifikáció és validáció technikái (áttekintés)
    • Milyen tipikus technikák vannak?
  • Fejlesztési életciklus modellek
    • Milyen szerepet kapnak a tipikus technikák az egyes fejlesztési folyamatokban?
  • Fejlesztési szabványok szerepe
    • Hogyan valósul meg a szisztematikus ellenőrzés?
EA02: Követelmények kezelése és a specifikáció ellenőrzése

Az előadás tartalma:

  • Motiváció
    • Miért fontosak a tervezési folyamat ezen szakaszai?
    • Milyen elvárások vannak a specifikációval szemben?
    • Milyen módszerei vannak a specifikáció készítésnek?
  • Az általános követelménykezelés feladatai
    • Követelmények nyilvántartása
    • Követhetőség a verifikációhoz
  • Félformális specifikáció
    • Specifikus technikák: SysML
  • A követelményspecifikáció verifikációja
    • Általános kritériumok
    • Specifikus kritériumok UML állapottérképekre (mintapélda)
EA03: Architektúra tervek ellenőrzése

Az előadás tartalma:

  • Motiváció
    • Mit határoz meg az architektúra?
    • Milyen vizsgálati módszerek vannak?
  • Követhetőség
  • Szisztematikus vizsgálati módszerek
    • Interfész analízis
    • Hibahatás analízis
  • Modell alapú vizsgálatok
    • Megbízhatósági modellezés
    • Teljesítmény modellezés
GYAK02: Követelménykezelés

2010.09.23.

  • Követelményleírás átvizsgálása
  • Állapottérképek ellenőrzése
  • Követelménykezelő szoftver mintapélda: Rational DOORS
EA04: Részletes tervek ellenőrzése

Az előadás tartalma:

  • Áttekintés
    • Milyen szerepe van a részletes terveknek?
    • Milyen ellenőrzési módszerek vannak?
  • Modellellenőrzés
    • Kimerítő (teljes) technikák
    • Korlátos modellellenőrzés
    • UML állapottérképek modellellenőrzése
  • Ekvivalencia ellenőrzés
    • Trace ekvivalencia
    • Megfigyelési ekvivalencia (gyenge biszimuláció)
    • Mintapélda: Hibatűrés verifikációja
EA05: A forráskód ellenőrzése

Az előadás tartalma:

  • Áttekintés
    • Milyen a jó forráskód?
    • Kódolási szabályok
    • Forráskód metrikák
    • Milyen ellenőrzési módszerek vannak?
  • Statikus analízis eszközök
    • Hibaminta keresők
    • Bővíthető eszközök
  • Dinamikus tulajdonságok vizsgálata statikus analízissel
    • Absztrakt interpretáció
EA06: A szoftver tesztelés alapjai

2010.10.11.

Az előadás tartalma:

  • A szoftver tesztelés definíciói
  • Tesztelés céljai és alapfogalmai
  • Szoftver tesztelés jellemzői
    • Tesztelés folyamata
    • Tesztelés szintjei
    • Tesztelési fajták
    • Teszttervezési technikák
    • Tesztelés a fejlesztési életciklusban
GYAK03: Részletes tervek és forráskód ellenőrzése

2010.10.14.

EA07: Specifikáció és struktúra alapú teszttervezés

2010.10.18.

Az előadás tartalma:

  • Specifikáció alapú technikák:
    • ekvivalencia partíciók,
    • határérték analízis,
    • döntési táblák,
    • kombinatorikus tesztelés
  • Strúktúra alapú technikák:
    • vezérlési folyam alapú kritériumok
    • adatfolyam alapú kritériumok
EA08: Modul és integrációs tesztelés

2010.10.25.

Az előadás tartalma:

  • Modul tesztelés
    • Modul tesztelés jellegzetességei
    • Modul izolációs tesztelés kihívásai és megoldásai
  • Integrációs tesztelés
    • Módszerek: Big bang, bottom up, top down
    • Integrációs tesztek leírása
GYAK04: Specifikáció alapú tesztelés

1. Kombinatorikus tesztelés
2. Ekvivalencia partíciók és  határérték analízis
3. Teszt implementálás és futtatás JUnit segítségével

EA10: Automatikus teszt futtatás, build keretrendszerek

2010. 11. 08.

Az előadás tartalma:

  • Automatikus tesztelés lépései
  • Build folyamat
    • Build folyamat lépései és eszközei
  • Build keretrendszerek
    • Folyamatos integráció fogalma
    • Tipikus megoldandó feladatok
EA11: Modell alapú tesztgenerálás

Az előadás tartalma:

  • Motiváció
    • Modellek szerepe a tesztelésben
    • Modell alapú tesztgenerálás
  • Tesztgenerálás fedettségi kritériumokhoz
    • Direkt algoritmusok
    • Modellellenőrzők használata
    • Tesztgenerálás korlátos modellellenőrzéssel
  • Tesztgenerálás hibamodellek alapján
    • Modell mutációk
    • Ekvivalencia relációk tesztgeneráláshoz
  • Eszközök a tesztgeneráláshoz
GYAK05: Struktúra alapú tesztelés

2010.11.18.

EA12: Profiling és GUI tesztelés

Az előadás tartalma:

GUI tesztelés:

  • Motiváció
    • Kihívások a GUI tesztelés során
    • Teszt típusok
  • Operátorok tesztelése
    • GUI modell
    • Scenario alapú tesztelés
  • Állapotgép alapú tesztelés
    • GUI modell
    • Tesztgenerálás fedettségi kritériumok alapján
  • Teszt automatizálás
    • Példák

Futásidő és memóriahasználat monitorozása (profiling):

  • Motiváció
    • Célkitűzés: Belső működés analízise
  • A profiling általános problémái
    • Felműszerezés, triggerelés, regisztrálás
    • Szoftver és hardver monitorozás
  • Futásidő profiling
    • Teljesítményproblémák felderítése
  • Memóriahasználat profiling
    • Memóriaproblémák proaktív monitorozása
  • Példa: Eclipse TPTP
EA13: Robusztusság tesztelés és hibainjektálás

Az előadás tartalma:

Robusztusság tesztelés:

  • Definíciók
    • Robusztusság
  • Robusztusság tesztek
    • Teszt bemenetek
    • Teszt eredmények értékelése
  • Jellegzetes teszt eszközök
    • Ballista
    • JCrasher
  • Mintapélda
    • SA Forum AIS API robusztusság tesztelése

Hibainjektálás:

  • Motiváció
  • A hibainjektálás megvalósítása
    • Hardver hibainjektálás
    • Szoftver hibainjektálás
    • Modell alapú hibainjektálás
  • A hibainjektálás tervezése
    • Hibamodellek
    • Absztrakciós szintek
    • A végrehajtás szempontjai
  • Összefoglalás


 

GYAK06: GUI tesztelés és profiling

2010.12.02.

EA14: Mintapéldák

Az előadás tartalma:

Rendszertesztelés a SAFEDMI projektben

  • Az architektúra áttekintése
  • Az ERTMS funkciók tesztelése, robusztusság tesztelés
  • A belső biztonsági mechanizmusok tesztelése, hibainjektálás
  • A vezeték nélküli kommunikáció tesztelése, scenario alapú tesztelés

Egy formális modelleken alapuló keretrendszer biztonságkritikus valósidejű alkalmazások fejlesztésére

  • Modellezés
  • Szimuláció, modell alapú teszt fedés
  • Formális verifikáció
  • Kódgenerálás

 

SZET Vizsgatételek

A vizsgára a mellékelt tételsorból kell felkészülni.

A vizsgán ezen kívül egy-egy rövidebb gyakorlati feladatot is meg kell majd ott helyben oldani.

Syndicate content