170 likes | 260 Views
Valós idejű tesztlefedettség-monitorozás JEE környezetben. Dr. Ferenc Rudolf, Szegedi Tudományegyetem Bakota Tibor, FrontEndART Szoftver Kft. Szoftverfejlesztés Tanszék. Számok és tények Több mint 120 munkatárs Szoftverminőség területén a világ egyik vezető intézete
E N D
Valós idejű tesztlefedettség-monitorozás JEE környezetben Dr. Ferenc Rudolf, Szegedi Tudományegyetem Bakota Tibor, FrontEndART Szoftver Kft.
Szoftverfejlesztés Tanszék • Számok és tények • Több mint 120 munkatárs • Szoftverminőség területéna világ egyik vezető intézete • A K+F és ipari projektekárbevétele éves szintentöbb mint 500 MFt • 3 spin-off cég • Kulcsszerep a dél-alföldi IT klaszterben • Szoftveripari Innovációs Kutató Központ (SIKK) • Magyar és nemzetközi ipari projektek
Szoftverfejlesztés Tanszék Ipari partner követelmények Naprakész szoftver megoldások erőforrások Értékes kompetenciával rendelkező fejlesztők K+F tapasztalat az akadémiai környezetből és az ipari projektekből Naprakész kompetencia Egyetem
Szoftverminőség csoport • Kutatás-fejlesztés, oktatás, tesztelés • 15 év alatt több mint 300 emberév K+F ráfordítás • Columbus statikus forráskód-elemzők • C/C++, C#, Java, PL/SQL, Magic, ForrásSQL, Python • Robusztus elemzők (akár 30M programsor) • Modell alapú AST • Vezérlési- és adatfolyam gráfok • Programozói interfész (API) • Eredmények: forráskód-metrikák (több mint 50), kódolási szabálysértések, kódmásolatok, architektúra, tervezési minták, stb.
Szoftverminőség csoport • Több mint 100 szoftverminőséggel kapcsolatos nemzetközi publikáció • 2002-ben a világ legjelentősebb szoftverkarbantartási konferenciáján ismertettük a Columbus technológia alapjait • ICSM – IEEE International Conferenceon Software Maintenance • 2012-ben ez a cikkkapta meg azelmúlt 10 évlegnagyobb hatásúpublikációja díjat
FrontEndART Szoftver Kft. • 2001-ben egyetemi kötődésű kutatók és oktatók alapították • Fejlesztés, tesztelés, oktatás, tanácsadás • Első projekt • Nokia Helsinki megrendelésére • C/C++ forráskód elemző • Ez az alapja a Columbustechnológiának
Területek • Forráskód-minőségbiztosítás üzletág • Columbus technológiára épülő termékek és szolgáltatások • Forráskód minőség mérése, biztosítása és növelése • Fejlesztési költségek csökkentése • Üzemeltetési kockázatok minimalizálása • Tesztelés üzletág • Teljes körű (statikus, dinamikus, lefedettség vezérelt) • Magas szintű szakértői felügyelet (ISTQB tanúsítvány, jelentős ipari referenciák, legkorszerűbb technológiai ismeretek) • Költséghatékony és nagyméretű egyetemi tesztelési kapacitások kiaknázása • Oktatás üzletág
Motiváció • UAT tesztelésnél • Általában a szoftver forráskódjának fele sem kerül végrehajtásra kiadás/élesítés előtti tesztelés során • Gyakran a változtatások 30%-a sem kerül végrehajtásra • Minimális elvárás, hogy a módosítások legalább 1x végre is hajtódjanak
A megoldás • Tesztlefedettség monitorozása UAT tesztelésnél • Valós idejű lefedettség-adatok • Forráskód-változásra vetített lefedettség-információk • Elosztott JEE környezetben való működés • Weblogic alkalmazásszerver támogatása • Klaszteres működés • Integrált környezetben való működés
Megtérülés • Megelőzhető kiadás utáni hibák száma: Ahol F – fejlesztők száma P – fejlesztők produktivitása (pl. 1000 sor/hó) T – változás tesztelésének hatékonysága (pl. 0,5) B – kódsorra vetített várható hibák száma (pl. 0,001)
Megtérülés • Tesztelési erőforrás csökkenése: ( Ahol C – kódváltozás mértéke (pl. 10%) 0,2 – Végrehajtandó tesztesetek aránya FS alapján E – Lefedettség-mérés nélküli tesztelői kapacitás
Készülőben • Lefedettség mérése tesztesetenként • Kódváltozás alapú teszteset-szelekció és priorizálás • Forráskód-attribútumok és lefedettségi információk összerendelése • Pl. kritikus kódolási hiba egy változott de le nem fedett kódrészben • Integráció