Vélemények, ellenőrzések és áttekintések
Vélemények „Ellenőrzések és áttekintések Nils von Delft 2006.05.07

Motiváció meghatározása és magyarázata Áttekintés Áttekintés Ellenőrzési modellek Humphrey és Gilb szerint
Motiváció 1 30 25 Relatív hibaköltségek Kódolási hibák Tervezési hibák Követelményhibák 20 15 10 5 0 A követelmények áttekintése A terv felülvizsgálata Kód felülvizsgálat Strukturális teszt Funkcionális teszt Karol Frühauf, Jochen Ludewig, Helmut Sandmayr: Szoftverteszt: Útmutató a teszteléshez és ellenőrzéshez, 1995 3
2. motiváció A szoftverfejlesztési ciklus hibái gyakran korán észlelhetetlennek tűnnek, és lényegesen magasabb költségeket okoznak, minél később találják meg őket. A programozó gyakran figyelmen kívül hagyja a hibákat A képernyő/program szükséges távolsága 2 szemnél több (n> 2) hibát lát Gyakran nem (vagy csak nehezen) lehet megtalálni az automatizált eszközökkel. Problémák, különösen az informálisabb dokumentumok (követelmények, kialakítás) esetén van értelme további vizsgálatoknak mások által 4
Áttekintés újra: nézet újra: lásd Tehát áttekintés: nézze meg újra, nézze át újra Az emberek hivatalosan szervezett találkozója a termékrész (dokumentum, műsor stb.) Tartalmának vagy formájának áttekintésére a meghatározott tesztkritériumok és listák szerint. * Tehát: találkozó a program hibáival kapcsolatban megtalálni (nem javítandó). * Prof. Dr. M. Glinz, Zürichi Egyetem, Szoftvertechnika I, 05 5
Áttekintés A végigjátszás olyan áttekintés, amelyben a szerző lépésről lépésre leírja a vizsgázó működését, míg a bírálók figyelmesen hallgatnak és bekapcsolódnak, bárhol is találnak hiányosságokat. * A formalizálás rugalmas, általában a szerző hívja össze, és kettő vagy több vezetésével Emberek megbeszélése a tervezéssel és a programkóddal kapcsolatban. Jó lehetőség tapasztalatcserére. Hangsúlyt helyezünk a hibaelhárításra. M. Glinz, Zürichi Egyetem, Szoftvertechnika I, 05 6
Ellenőrzések Az ellenőrzések egy formalizáltabb folyamatot foglalnak magukban, amelynek során a vizsgáztatók egyénileg és szisztematikusan megvizsgálják a dokumentumot, és rögzítik eredményeiket. * Hagyományosan kézzel, külön előkészítést és értekezleteket igényelnek. A fő jelöltek azok a rendszerek, amelyeknek nagyon hibamenteseknek kell lenniük (légiforgalom, orvosi rendszerek). Ciolkowski, Laitenberger, Biffl: Szoftver felülvizsgálatok: A gyakorlat helyzete, 2002 7
Ellenőrzések 2 Szigorúan formális felülvizsgálati űrlap, amelyet Michael Fagan vezetett be az IBM-nél (1976) Koncentráció az ellenőrzőlistákra Itt is szerepek rögzített eloszlása, hibaelhárítás (kevesebb javítás) A vizsgáztatók külön készülnek A vizsgáztatók hibalistával érkeznek az értekezletre Az ülést csak akkor hajtják végre, ha mindenki jól felkészült legfeljebb 2 órán át tart, az ülésen semmilyen tervezési vagy ideológiai megbeszélés nem tekinthető a minőség (hűség) mutatójának 8
Szerepek az ellenőrzésen A menedzser kiadja a tesztelem elkészítésének megrendelését. Felülvizsgálatot indít. Felelős a tesztelem kiadásáért. A moderátor irányítja és megtervezi az ellenőrzést. Vezeti az értekezletet és biztosítja, hogy minden zökkenőmentesen haladjon és megfelelő ütemű legyen. A vizsgálatért felelős személy a felelős. aki a jelöltet írta, alárendelt szerepet játszik 9
Szerepek az ellenőrzés során 2 A vizsgabiztos feladata a hibák felkutatása, előbb a felkészülés során, majd a csoportban tartott értekezleten
Ellenőrzési szakaszok Tervezés Inicializálás Előkészítő munkamenet A nyomonkövetési munka harmadik órája Jóváhagyási elemzés 11
Humphrey (89) (és Gilb (93) modelljei (Belépés Szervezeti fázistervezés Áttekintés Tervezés indítása Felismerés Fázis Előkészítés Elemzés Ellenőrzés Naplózás Ötletgyűjtés Végső fázis átdolgozása Követés Követés Szerkesztés Követés Kilépés 12
Az ellenőrzések lehetséges variációi Minden ellenőr hibákat jelez - utólag aszinkron koordináció (egyetértés, elutasítás, semleges) minden megtalált hibát ilyennek is kezelünk (minden, ami rossznak tűnik, fejlesztésre szorul) ötletbörze értekezlet találkozó után, tervezési kérdésekről vagy hasonlókról több ellenőrzés egyidejű megvitatása (esetleg különböző technikák), több felülvizsgálat párhuzamosan, amelyek figyelembe veszik a 13. tesztelem különböző aspektusait
Ellenőrzések és áttekintések Nagyon formális ellenőrzések A hibák körülbelül 60% -ának észlelése (a hibaköltségek 75% -kal történő csökkentése) a tesztelemek létrehozásának 15-20% -át teszi ki. A projekt összköltségeinek csökkentése (14% -25%). Alacsonyabb szervezési erőfeszítések kevesebb szervezeti erőfeszítéssel A hibák 20–40% -ának észlelése nagyobb csoportok számára is megfelelő, mivel az értekezletek nagyon drágák, az áttekintések is drágák 14
Felülvizsgálatok a gyakorlatban Felülvizsgálati célok 73% -os minőségi növekedés 54% a szabványok betartása 52% a projekt állapotának meghatározása Az elvégzett felülvizsgálatok szabályossága 42% követelmények 40% tervezés 30% kód tervezés, áttekintés 20% rendszeres tervezés 30% hivatalos bejegyzési és kitöltési kritériumok használata Befejezés 40% nincs adatgyűjtés 18% adatgyűjtés adatértékelés nélkül Ciolkowski, Laitenberger, Biffl tanulmánya: Software Reviews: A gyakorlat helyzete, 2002 15
A vélemények pozitív mellékhatásai Rendszeres visszajelzés a programozók számára A fejlesztés és a kódszabványok betartása A folyamat előrehaladásának jobb értékelése Tudáselosztás Jobb csapatszellem Kiterjesztett projektismeretek 16
Az emberi tényező A nap formája Időbeli nyomás Motiváció Hűség Hajtson végre a pokol elvein Hibák megtalálása 17
Mennyire hasznos a találkozó? A csapatszellem-találkozó, a kommunikáció, az ismeretek terjesztése szinergiájánként Bizonyos esetekben a hibák akár 80% -át is csak az értekezleten találták. Contra 20% többletköltségek A fejlesztő ütemezésének megszakítása lényegesen nagyobb szervezeti erőfeszítés Az ellenőrzés jelentősen meghosszabbítható Az előkészítés során sok hibát találnak (általában 67–95%) 18
Miért a számítógépes támogatás? fizetés? sok ismétlődő tevékenységnek semmi köze ahhoz, hogy a tényleges folyamat megálljon a hibák felkutatásában, a hagyományos eljárások gyorsan zavarossá válhatnak. Az időfaktor egyre fontosabbá válik. A programozók egyre inkább földrajzi területek. Külön külön megbeszéléseket gyakran nehéz megszervezni 19
A számítógépes támogatás kiindulópontjai Mi változik? nyomtatott dokumentumok elektronikus dokumentumok lapos fájl elektr. Dokumentumok keresése egy halom dokumentum adatbázisban lekérdezés fizikai emlékeztetők e-mailben A tényleges felülvizsgálati folyamatot mégis kézzel hajtják végre. Az eszközök csak támogató módon avatkoznak be 20
Ismét a legfontosabb: Vélemények: A korai hibaelhárítás eljárásai az emberi felülvizsgálat révén A gyakorlatban is széles körben használják Áttekintések: Gyors, olcsóbb felülvizsgálat típusa Ellenőrzés: Erős formalitás, nagy sikerrel Különböző ellenőrzési modellek vannak, különböző hangsúlyokkal és elemekkel. Drágább és ellentmondásos pont az arc- személyes megbeszélés A számítógépes támogatásnak van értelme támogató módon beavatkozni (eltávolítja az összes csapdát), de nem enyhítheti a tényleges felülvizsgálati folyamatot 21