Tesztadat és tesztkörnyezet kezelési módszerek: gyorsabb, olcsóbb, versenyképesebb
A tesztadat kezelés (test data managament - TDM) olyan funkcionális diszciplína, amely a tesztelési követelményekkel és az információkezelési irányelvekkel és iránymutatásokkal összhangban segít a tesztadatok megfelelő kezelésében minden tesztelési fázisban. A TDM egyre fontosabb funkcióvá válik számos olyan szervezet számára, amely csökkenteni szeretné a tesztadatok azonosítására és létrehozására fordított időt, jól mutatja ezt, hogy a Deloitte előrejelzése szerint a globális TDM-piac 2027-re várhatóan 1,6 milliárd dollárra nő, a 2020-as 721 millió dollár után.
A hatékony TDM segít maximalizálni a tesztelés megtérülését, segíthet jelentősen csökkenteni a tesztelési és fejlesztési folyamat késedelmeit és egyre népszerűbbé válik annak köszönhetően, hogy strukturált mérnöki módszertant alkalmaz az összes lehetséges üzleti forgatókönyvre vonatkozó adatspecifikációk értékelésére. Elsődleges műveletei közé tartozik az adatmaszkolás, az adatfrissítés, a részhalmazok beállítása, a kinyerés/átalakítás/betöltés (ETL) és a szintetikus fejlesztés. A TDM segít biztosítani, hogy a tesztadatokkal kapcsolatos problémák és sebezhetőségek még a gyártás előtt felismerhetők és kezelhetők legyenek, lehetővé téve a minőségi alkalmazások időben történő bevezetését.
A TDM kihívásai és jövője
A Deloitte felmérte hogyan látják a szervezetek a TDM-hez kapcsolódó kihívásokat (1. ábra). Az adatok következetlensége (53%) volt a leggyakrabban említett kihívás, a második helyen a tesztadatok automatizálásának hiánya (49%) állt. Az adatok maszkolása (38%), a tesztadatok mennyisége (35%) és az adatok teljesítési ideje (35%) voltak a további legfőbb súrlódási pontok.
„Az élvonalbeli TDM-folyamatok alkalmazása segíthet csökkenteni e kihívások hatásait, növelheti a tesztek lefedettségét és csökkentheti a piacra kerülési időt, a hatékony TDM-stratégia alapvető fontosságú.” – mondta Bakó Béla, a Deloitte Magyarország Technológiai tanácsadás üzletágának menedzsere.
A TDM funkció az önkiszolgáló korszak felé halad, ahol a tesztadatok végfelhasználója egy portálon keresztül kér majd konkrétumokat, és miközben kitölti a tesztelési igényekkel kapcsolatos részleteket, a háttérben automatizálási szkriptek segítségével jönnek létre az adatok. Az automatizálási szkriptek úgy lesznek konfigurálva, hogy minimális emberi beavatkozást igényeljen a szükséges tesztadatok beszerzése. Amennyiben az automatizálási szkriptek bármelyike sikertelen, a tesztadatokkal foglalkozó csapat értesítést kap a szükséges korrekciók elvégzése érdekében. Ez az önkiszolgáló módszertan minimalizálja a dedikált TDM-csapat szükségességét az év során, helyette az önkiszolgáló portál beállítása után csak egy minimális támogató csapatra lesz szükség a karbantartáshoz vagy az új tesztadat-igényekhez.
Közben a mesterséges intelligencia (AI) és a gépi tanulás (ML) a TDM funkció szerves részévé válik, és a jövőben nagymértékben javítani fogja a tesztelés módját. A tesztadatok létrehozására szolgáló öngyógyító szkriptek nagymértékben csökkenteni fogják a karbantartási időt azáltal, hogy emberi beavatkozás nélkül, automatikusan azonosítják és javítják a szkripteket. A következő nagy ugrás a tesztadat-igények automatikus azonosítása a megírt tesztesetek alapján: az algoritmus azonosítja a tesztadat-szükségleteket, ellenőrzi, hogy az adatok már rendelkezésre állnak-e, és – amennyiben szükséges – létrehozza vagy beszerzi az adatokat a termelésből, az összes szükséges anonimizálási eljárás után. Ezáltal a tesztadatok fejlesztése a lehető legérintésmentesebbé válik, támogatva az iparág-specifikus tesztadat-igények sokaságát.
Miért fontos a tesztkörnyezet-kezelés?
A tesztkörnyezet-menedzsment (test environment management - TEM) kritikus stratégiai funkció a szoftverszállítási folyamatban: segít a tesztelési fázisban megfelelő irányítással és szolgáltatásokkal ellátott nem termelési környezetek kezelésében, ellenőrzésében és kialakításában, hogy az IT-programok számára megfelelő méretű környezetek álljanak rendelkezésre. A tesztkörnyezetek megfelelő kezelése lehetővé teszi a projektcsapatok számára a rendszerek és alkalmazások hatékony validálását a termelésbe való bevezetés előtt. A Deloitte felmérése rámutat arra, hogyan osztályozzák szervezetek a tesztkörnyezetükben felmerülő kihívásokat. A válaszadók 58%-a a megnövekedett tesztkörnyezeti kihívásokat emelte ki a teljes tesztelési kiadásaik egyik mozgatórugójaként - közvetlenül a legújabb technológiák után (60%), amely a második helyen az összköltségek kirívó okai között. Arra a kérdésre, hogy milyen konkrét kihívásokkal szembesülnek tesztkörnyezetükkel kapcsolatban, a válaszadók 53%-a a tesztkörnyezetek fenntartásának költségeit emelte ki, ami összességében a legnagyobb kihívás (2. ábra). A második helyen az igény szerinti rendelkezésre bocsátás hiánya (51%) állt.
„A felmérésben résztvevők véleménye összhangban van a piacon tapasztalt konkrétabb összetettségi problémákkal, amelyekkel a szervezetek szembesülnek. Az elszigetelt átláthatóság, a projektmetrikákkal kapcsolatos információhiány, a portfólió egységes áttekintésének hiánya, valamint a projekt- és tesztkörnyezetekből eredő időzítési akadályok a projektellátás hatékonyságának fő súrlódási pontjai.” – mondta Szász Beáta, a Deloitte technológiai tanácsadás üzletágának szenior tanácsadója.
Hatékony stratégiák a kihívások kezelésére
A robusztus TEM-stratégia több kulcsfontosságú jellemzőt egyesít. A gyártás előtti környezetek munkafolyamat-alapú megoldásával párosítva segíthet a tervezett üzembe helyezésben, a termeléshez hasonló tesztkörnyezetek rendelkezésre állásának biztosításában, és a belső és külső csapatok számára egyetlen helyet biztosít a környezetek rendelkezésre állásával, konfigurációival és konfliktusaival kapcsolatos együttműködéshez és azok megtekintéséhez.
Automatizált vagy igény szerinti építések: Igény szerinti buildek indítása, az új kód a fejlesztésből a tesztelésbe történő gyorsabb átadása érdekében.
Környezetek kezelése: Környezetek ütemezése foglalási kérelmekként a rendelkezésre állás és a konfiguráció alapján, a kiadási terveknek való megfelelés érdekében.
Változás-menedzsment: Környezetek ütemezése kód- és konfigurációs frissítésekre vonatkozó módosítási kérésekként a kiadási terveknek megfelelően.
CI/CD pipeline áttekintése: A gyorsan mozgó CD-csatornák átláthatóságának fenntartása – annak áttekintése, hogy hol és mikor került sor új kód telepítésére, illetve milyen tesztek lettek ütemezve és futtatva.
Eszközök integrációja: Integráció a már használatban lévő operatív eszközláncokkal, például a ServiceOne-nal és a Remedy-vel a változás- és incidenskezeléshez. Automatizálási eszközök, mint például a Jenkins építése a tesztkörnyezet építési folyamatába való integráláshoz.
Lean környezetek: A csapatok által jelenleg nem használt környezetek újbóli rendelkezésre bocsátása az infrastrukturális költségek csökkentése érdekében.
„Összességében a fejlett TEM-képességek csökkentik a környezetek beállítási és karbantartási költségeit azáltal, hogy lehetővé teszik a környezetek igény szerinti rendelkezésre bocsátását, újrafelhasználását, valamint az infrastruktúra hatékony használatát.”– foglalta össze Bakó Béla, a Deloitte Magyarország Technológiai tanácsadás üzletágának menedzsere.