UNIVERSITAS SCIENTIARUM SZEGEDIENSIS SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék Programrendszerek tanúsítása – szoftverminőség mérése Dr. Gyimóthy Tibor
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése2 Szoftverminőség biztosítás Fő cél: az üzemelő IT rendszerekben csökkenteni a hibák számát Az éles működés alatt jelentkező hibák nagyon veszélyesek ■Rontják a cég presztízsét ■Nagyon költséges a javításuk ■Egy ilyen hiba sokmillió forintos kárt okozhat ■Az IT rendszerek kritikus mértékű lassulását is ilyen hibának tekintjük
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése3 Szoftverminőség romlása Törvényszerű: A szoftver változtatások növelik a hibák számát
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése4 Szoftverminőség biztosítása A szoftver minőségének javítása ■Kevesebb hiba lesz a rendszerekben A tesztelés hatékonyságának növelése ■Üzembe helyezés előtt minél több hibát meg kell találni Hatékonyabb IT üzemeltetés ■Követhetőbb, optimálisabb üzemeltetési folyamatok
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése5 IT rendszerek üzembiztonságának növelése Rendszerfejlesztési Életciklus Módszertan (RÉM) Monitorozás Forráskód analizálók Teszt menedzser Architektúra rekonstrukció Üzemeltetés Performancia Folyamatok (EPC)
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése6 Szoftverminőség javítás a gyakorlatban OpenOffice++ GVOP projekt ■MultiRáció Kft.-vel közösen Analizáltuk az 5 millió programsoros OpenOffice.org forráskódját ■A MagyarOffice/EuroOffice alapja Összesen 184 hibát javítottunk, amelyeket automatikusan, tesztelés nélkül (ingyen!) talált a Columbus rendszer Az OpenOffice.org közösség elismerte és elfogadta a javításokat
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése7 SOA minőségbiztosítás Szolgáltatás orientált architektúrák (SOA) esetében új kihívásokkal is szembe kell néznie a minőségbiztosításnak ■Hagyományos (monolit vagy kliens/szerver) rendszer átültetése SOA világba ■Hibakeresés és költségbecslés SOA rendszerben ■SOA rendszer tesztelése, tesztelési hatékonyság mérése ■Mérés, auditálás és monitorozás
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése8 Régi rendszer átültetése SOA-ba Funkcionalitás azonosítása és kiemelése Web szolgáltatásba (WS) ■Architektúra feltárás, programmegértés, komponens beazonosítás Az új WS-t kívülről hívják ■Minden előfeltétel adott? ■Mellékhatás ■Párhuzamosan több példánya is futhat ■GUI használat? ■Hatásanalízis
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése9 Hibakeresés és költségbecslés Egy hiba okának a felderítése nehezebb ■Nincs klasszikus debugger SOA-ra SOA függőségi gráf felépítése szükséges ■A SOA dinamikus természete miatt bizonyos esetekben nem lehetséges –Ilyenkor ez üzemeltetési kockázatot is jelent Hatásanalízis ■Hibakeresés –mely WS-ektől függ a hiba megjelenési helye? ■Költségbecslés –mely WS-ek függnek a módosítandó WS-től?
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése10 Tesztelés, tesztelési hatékonyság A tesztelés jár a szoftver változtatásakor a legnagyobb költséggel ■Rossz minőségű szoftver tesztelése drágább SOA: Teszteset generálás BPEL alapján Tesztlefedettség mérés ■Tesztesetek szelekciója ■Hatásanalízis Tesztesetek generálása Performancia teszt hangsúlyosabb
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése11 Mérés, auditálás és monitorozás Hagyományos forráskód analízis kiegészül WSDL és BPEL analízissel ■Teljes SOA rendszer részletes szerkezeti és függőségi gráfja szükséges Minőségi jellemzők (metrikák) mérése Szabálysértések auditálása ■pl. kommunikál-e két WS a BPEL-ben leírt üzleti folyamattól függetlenül? Metrikák és szabálysértések folyamatos monitorozása szükséges ■Csak azt a folyamatot tudjuk irányítani, amelyről megfelelő mérési adatokkal rendelkezünk
SZEGEDI TUDOMÁNYEGYETEM S zoftverfejlesztés Tanszék UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programrendszerek tanúsítása - szoftverminőség mérése12