Keménynek kell lennie a szoftver minőségellenőrének

Keménynek kell lennie a szoftver minőségellenőrének

2008. március 25. 23:59, Kedd
A Qualysoft tavaly nyáron alapított szoftvertesztelési üzletágat a korábban kihelyezve dolgozó szakembereiből. Ujvári Krisztina, az üzletág vezetője szerint nem csak a szakmai ismeretekben, de a kommunikációs képességekben is a topon kell lenniük a tesztelőknek.

Mióta és milyen keretek között foglalkozik a Qualysoft szoftverteszteléssel?
- Körülbelül 2000 óta foglalkozik a cégünk szoftverteszteléssel, megrendelőink leggyakrabban pénzintézetek: bankok, biztosítók. Kezdetben a tesztelés csupán ad-hoc módon történő funkcionális ellenőrzést, valamint az üzleti felhasználók támogatását jelentette. Tavaly nyáron a cég vezetői úgy döntöttek, hogy létrehozzák a Szoftverfejlesztés Üzletágat, melynek keretein belül alapítanak erre a tevékenységre külön részleget, és engem bíztak meg a kialakításával, vezetésével. A szervezeti átalakítás nagy előnye, hogy így a korábban az ügyfélhez kihelyezett projektek "házon belülre" kerülhettek, más indokok mellett azért is, mert jelenleg a cégünk által fejlesztett szoftverek minősége feletti őrködés kiemelt feladat. E munka mellett persze csapatunk készen áll arra is, hogy külső megrendelők szoftverfejlesztéseit minősítse.

Mivel tudnak kitűnni a hasonló tevékenységet folytató vállalkozások közül?
- Nagy erősségünk, hogy már a megrendelő által megszerkesztett igénylista elkészítése után egyből be tudunk kapcsolódni a szoftver megalkotásának folyamatába, azaz nem a fejlesztés, a program megírása után kezdünk dolgozni a projekten. Módszertan alapján dolgozunk, megtervezzük magát a tesztelést, a szükséges erőforrást, teszteseteket készítünk, kockázatelemzést végzünk, az elkészített alkalmazást oktatás keretein belül bemutatjuk a megrendelőnek, használatáról felhasználói kézikönyvet írunk. Csapatban dolgozunk, kollégáim szaktudása a tesztelés egy-egy területére specializált.

A szakmai hozzáértésen kívül milyen képességekkel kell rendelkeznie egy jó "szoftvermeós"-nak?
- A jó kommunikációs képesség nagyon fontos. Azt közölni, hogy hibás az, amit adott esetben a tervező kigondolt és a szoftverfejlesztő elkészített, a mindennapokban nagyon nehéz feladat elé állítja a tesztelőt, hogy az ne ellenállást gerjesszen, hanem a közös cél, a minőség elérését segítse. A minőség biztosítása a határidő megtartásával hihetetlenül nehéz feladat.

Mi ennek a titka?
- Az biztos, hogy nem könnyű egy kemény kritikát közvetíteni folyamatosan szem előtt tartva a megrendelő érdekeit, s mindezt úgy megfogalmazni, hogy a tervező és a fejlesztő ne érezze sértésnek. Az is biztos, hogy szakmailag támadhatatlannak, megalapozottnak kell lennie a kritikának, mert hiba esetén könnyen hiteltelenné válhat a minőségbiztosító. A legfontosabb azonban, hogy a megrendelővel kell kiemelkedően jó, bizalmi kapcsolatot kialakítani. Tudnia kell azt, hogy a tesztelő képes biztosítani az általa megfogalmazott igénylistát, "elváráshalmazt", amelyet a szoftvernek teljesítenie kell. A jó "szoftvermeós" nem sajnálja az idejét arra, hogy megismerkedjen a megrendelő üzleti folyamataival, hiszen ennek automatizálására készül a program. Létfontosságú a szoftverfejlesztő csapatban a jó együttműködés, hiszen mindenki munkáját elismerés övezi, ha utólag kevesebb lesz a reklamáció.

Nem ronthat az objektivitáson, ha a fejlesztővel túl jó kapcsolat alakul ki?
- Dehogynem! Ezért fontos a kommunikációs készség, mert bár együtt kell dolgozni, azért a távolságot is meg kell tudni tartani, nehogy az ügyfél lássa kárát a végén az esetleges elfogultságnak.

Az ügyféllel, a megrendelővel nem alakulhat ki konfliktus?
- Az nagyon rossz lenne. Persze adódnak, adódhatnak gondok. Ilyen például, ha a megrendelő nem ad ki megfelelő mennyiségű és minőségű tesztadatot, amivel nagyobb arányban biztosítható lenne a tesztlefedettség. Persze, ha ezek ügyfélérzékeny, vagy a megrendelő számára bizalmas adatok, amelyekhez külső fejlesztő nem férhet hozzá, akkor is meg kell tudnunk oldani a problémát. Megoldás lehet, ha kódolt adatbázist kapunk, vagy lehetőség adódik az integrációs teszt végrehajtására az ügyfél telephelyén, ahol az éleshez közeli állapotú adatokon tudjuk ellenőrizni a programot.

Említette, hogy az egyik nagy erősségük, hogy önök már az igénylista kialakításánál segítik a megrendelőt. Miért fontos ez?
- Az igénylista egy olyan dokumentum, amely gyakorlatilag semmilyen informatikai specifikációt nem tartalmaz, hanem precízen leírja, hogy milyen problémára milyen megoldást kíván az ügyfél. Ebből a listából születik azután a program követelményspecifikációja - és később a logikai és fizikai rendszerterv, majd a tesztterv és a tesztesetek is -, amely már az informatikusok közreműködésével alakul ki. Ha a program leírása a teszterek közreműködése nélkül készül, akkor könnyen előfordulhat, hogy a kész szoftver a specifikációnak ugyan megfelel, de a megrendelő igényeit mégsem elégíti ki teljesen.

Mit tartalmaz a tesztterv és mik azok a tesztesetek?
- A teszttervben tervezzük meg a mi folyamatainkat, tevékenységeinket. Amikor a fejlesztett szoftver olyan stádiumba kerül, hogy elkezdhetjük érdemben a vizsgálatát, akkor már tudnunk kell, hogy adott pillanatban hogyan, milyen erőforrások használatával, milyen típusú teszteket fogunk elvégezni. Manuálisan vagy automatizáltan hajtjuk végre a tesztelést, végzünk-e pl. terheléses vagy megbízhatósági vizsgálatokat.

A tesztterv - mások mellett - tartalmazza a hibakezelés folyamatát, azaz hogyan kommunikálunk: milyen eszközt használunk, hogyan jelentjük a hibákat, milyen lesz a hiba életciklusa, hogyan priorizálunk, ki az a személy, aki igazolja az elhárítást, vagy ki az, aki eldöntheti, hogy a hiba nem befolyásolja a szoftver működését, és így lezárható az azzal való foglalkozás. Készítünk egy kockázatelemzést is, hogy mekkora részét fedi le a tesztelés a program funkcionalitásának, mekkora az a hibaszázalék, amellyel még használható és átadható.

A tesztesetek vezérfonalként segítik a tesztelőket abban, hogy a sokszor nagyon monoton munka minél hatékonyabb legyen. Leírja azt a lépéssorozatot, melyet végre kell hajtani, tartalmazza az elvárt eseményeket, melyek nem teljesülése esetén egyértelműsíthető a programhiba. Úgy kell megírni, hogy bárki számára végrehajtható legyen. A tesztelés részletes előkészítést igényel, nem csoda, hogy erre a munkafolyamatra is készült szabvány - ANSI/IEEE 829-1983 -, amely meghatározza egy tesztelés dokumentálásának formáját. Célom, hogy elismert szakmává váljon a minőség ellenőrzése Magyarországon is a szoftverfejlesztésben, amelyhez megfelelő tanulmányokat és képzéseket is biztosítani kell azoknak, akik ezt a pályát választják. Erre vonatkozóan remek lehetőséget látok a HTB tavaly ősszel történő megalakulásával

Ujvári Krisztina 1997-ben szerzett közgazdász­diplomát a Miskolci Egyetem Közgazdaságtudományi Karán. A diploma megszerzése idején az IBUSZ Bank, majd jogutódja, a Kereskedelmi és Hitelbank Zrt. munkatársa volt közel hét éven át, számos üzletágban szerzett tapasztalatokat a pénzügyi szférában. A millennium óta dolgozik tesztelőként, szervezőként és napjainkban tesztvezetőként a Qualysoft Informatikai Zrt.-nél. HTB A Hungarian Testing Board (HTB), az ISTQB (International Software Testing and Qualification Board) szoftvertesztelői világszervezet teljes jogú egyedüli magyarországi tagszervezete 2007. október 6-án alakult meg. A HTB olyan szakértőkből álló szervezet, amely szoftverek, valamint informatikai rendszerek tesztelésével, illetve a teszteléssel kapcsolatos tevékenységekkel foglalkozik. Az egyesület tagjai specialisták, akik az iparhoz, tanácsadó vagy tréningcégekhez, illetve más tudományos és szakmai szervezetekhez/szövetségekhez tartoznak.

Listázás a fórumban 
Adatvédelmi beállítások