Pentru a consolida resursele QA, bunele practici și instrumentele de automatizare disparate în cadrul unei afaceri, dar și pentru a optimiza performanţa de testare, multe companii recurg la Testing Centers of Excellence (TCoEs). În același timp, un TCoE nu este un panaceu pentru fiecare companie, deoarece instalarea sa necesită mult efort de organizare, iar rezultatele performanţelor TCoE pot să nu fie pe măsura acestui efort.
Cum puteţi ști dacă TCoE-ul vostru este un hub QA de succes sau a cincea roată de la căruţa afacerii? Aici veţi găsi principalele criterii de performanţă ale unui TCoE pentru a monitoriza și a avea o viziune reală a eficienţei sale.
Puteţi evalua performanţa TCoE cu ajutorul indicatorilor de performanţă, fiecare indicator având la bază un obiectiv TCoE ce reprezintă suma provocărilor QA pe care TCoE se presupune că le va întâmpina. De exemplu, managerii TCoE sunt meniţi să consilieze un test lead cu privire la care este cea mai bună metodă de aliniere a echipei de teste pentru ca un proiect (o provocare) să se încadreze în limitele bugetului (obiectiv). De aici, se obţin indicatorii de performanţă ai costurilor de testare.
Trebuie să prioritizaţi toate obiectivele și să le transformaţi doar pe cele mai acute în indicatori de performanţă. Pentru ca evaluarea să fie multidimensională, trebuie să faceţi selecţia din lista scurtă de obiective TcoE, astfel încât să acoperiţi zone vitale precum: calitatea testării, timpul de testare și economia de buget, sustenabilitatea gradului de maturitate QA și promovarea testelor automate.
Un punct problematic în măsurarea performanţei TCoE este acela că rezultatele bune pentru toţi indicatorii de performanţă simultan nu reprezintă un obiectiv bine de stabilit. Pentru a obţine o imagine clară a performanţei TCoE, trebuie să conștientizaţi că indicatori de performanţă excepţionali, pentru toate obiectivele TCoE, sunt o utopie. Un indicator de performanţă de impact tinde să îl influenţeze negativ pe un altul. Doar rezultatele moderat de bune și de echilibrate sunt cheia pentru succesul performanţei. De exemplu, dacă managerii TCoE au încurajat echipa de test să termine toate testele în trei zile, ceea ce este năucitor, iar indicatorul de performanţă aferent timpului de testare confirmă această realizare, acest rezultat impresionant va fi cel mai probabil legat de o calitate slabă a testelor (multe defecte neidentificate) și de numărul mare de ingineri de test implicaţi (costuri de testare excesive).
Indicatorii de performanţă trebuie să scoată în evidenţă rezultatele TcoE de performanţă care sunt cele mai importante pentru afacerea voastră, în raport cu obiectivele și priorităţile specifice de business. Acesta este motivul pentru care nu există un set universal de indicatori de performanţă. Vom prezenta cei mai frecvenţi indicatori de performanţă, ce pot fi un bun punct de plecare pentru crearea de indicatori customizaţi.
Acest indicator de performanţă se bazează pe un obiectiv TCoE de tip: îmbunătăţirea calităţii de testare. Pentru a afla dacă rezultatele testelor unui proiect specific se ridică la nivelul standardelor de calitate convenite și contribuie cu adevărat la calitatea unei aplicaţii din faza de testare (AUT), este util să ne folosim de procentul defectelor neidentificate.
Numărul excesiv de defecte neidentificate (mai mult de 5% din numărul total de defecte) poate fi cauzat de probleme precum: neînţelegerea specificaţiilor software de către echipa de test, un plan de testare ineficient ce nu corespunde specificaţiilor de proiect în schimbare permanentă, lipsa metodologiilor și a standardelor de calitate în domeniul testării.
Totuși, dacă procentul defectelor neidentificate este egal cu zero, trebuie să verificaţi dacă echipa de teste a reușit să respecte termenele limită specifice ciclului de iteraţie și proiectului, dar să verificaţi și câte defecte nu se află în scopul specificaţiilor iteraţiei.
Inginerii de test sunt adesea presaţi să finalizeze testarea mai repede pentru a se asigură că la clienţi ajunge software fără defecte. Durata medie de testare în comparaţie cu rezultatele observate în absenţa TCoE este un indicator al eficienţei.
Dacă timpul mediu de testare rămâne neschimbat, acest fapt poate indica că TCoE are succes în dezvoltarea unei strategii de test echilibrate și eficiente ce implică testarea automată și alocarea coerentă a rolurilor și sarcinilor membrilor echipei. Este probabil ca o metodologie de testare promovată de TCoE să aibă nevoie de îmbunătăţiri.
Pe de altă parte, dacă aflaţi că durata testelor s-a redus considerabil după implementarea unui TCoE (mai mult de 30-40% în comparaţie cu procentul anterior implementării unui TCoE), trebuie să verificaţi procentul defectelor neidentificate, deoarece se poate să se fi alocat prea puţin timp testării, ceea ce a influenţat negativ calitatea testării.
Obiectivul acestui indicator de performanţă este de a optimiza bugetul pentru QA și testare. Pentru a determina succesul unui TCoE în îndeplinirea acestui obiectiv, trebuie să calculaţi costul mediu de testare înainte și după implementarea unui TCoE.
De obicei, un TcoE poate duce la o economie de 35% în trei ani. O diminuare procentuală redusă a costurilor poate fi rezultatul alocării disproporţionate de resurse sau a controlului insuficient în ceea ce privește eficienţa echipei. Totuși, nu ar trebui să fiţi prea optimiști dacă diminuarea procentuală a costurilor este foarte mare. Managerii TCoE ar putea să facă economii indiferent de numărul de defecte neidentificate și a slabei calităţi de testare, de exemplu, alocând echipelor de test resurse insuficiente.
Obţinerea unui nivel înalt de maturitate QA și promovarea culturii QA pe toate palierele afacerii sunt scopuri fundamentale pentru TCoE. Maturitatea QA poate fi evaluată prin unul din modelele de notorietate globală: Test Maturity Model Integration (TMMi) sau Test Process Improvement (TPI). Ambele modele descriu care sunt activităţile QA și de testare caracteristice celor 5 (în TMMi), respectiv celor 4 (în TPI) nivele de maturitate.
Esenţa unui TCoE într-o afacere este de a asigura că activităţile de QA (măsurarea performanţei și raportarea regulată, transferul de cunoștinţe, comunicarea bună între departamente, etc.) sunt promovate la nivel de organizaţie. Prin urmare, un nivel scăzut de maturitate QA nu este observabil dacă există un TCoE, cu excepţia cazului în care TcoE se află în fazele iniţiale de formare.
Dacă acest indicator de performanţă scoate în evidenţă un nivel de maturitate ridicat, ar trebui să fiţi atenţi ca managerii TcoE să nu devină hipersensibili sau perfecţioniști în ceea ce privește QA. Procesele și rezultatele de înaltă calitate reprezintă doar unul din obiectivele afacerii voastre. Nivelul foarte înalt de maturitate QA nu trebuie să interfereze cu alte nevoi și priorităţi din cadrul afacerii, deoarece managerii TCoE care sunt hiper protectori/defensivi în privinţa calităţii pot bloca bugetul și termenele limită din cadrul unui proiect.
Testarea automată este una din tendinţele cele mai prolifice din viitorul apropriat al domeniului QA, iar promovarea sa este unul din obiectivele majore TCoE. Printre cauzele acestei popularităţi se află: reducerea costurilor și a timpilor de testare, calitatea ridicată de testare, acoperirea vastă a funcţionalităţilor (imposibil de realizat prin testare manuală). Procentul de automatizare este obţinut împărţind numărul de teste automate la numărul total de teste.
Totuși, să aveţi în vedere că acest indicator de performanţă poate induce în eroare, dacă nu luaţi în calcul câteva capcane ascunse. Pentru a lua decizii cu privire la procentul de teste automate din cadrul fiecărui proiect, este nevoie de o analiză amănunţită a specificaţiilor software și a ariei pe care testarea trebuie să o acopere. Pentru unele proiecte de testare, procentul de teste automate poate ajunge la 70-80%, în timp ce pentru altele poate fi 0. Nu este un rezultat nici bun, nici rău, deoarece proiectele de testare nu presupun toate testare automată.
Nu are rost să facem testare automată pentru proiectele mici, deoarece nu este rentabil. Mai mult, testarea automată este inutilă în proiectele ce își schimbă constant specificaţiile, deoarece script-urile testelor automate vor fi irelevante după fiecare schimbare de cod sau la fiecare nouă iteraţie. Unele tipuri de teste precum: teste de utilizare, teste ad-hoc sau exploratorii, nu pot fi automatizate. Prin urmare, TCoE ar trebui să găsească echilibru între eforturile de testare automată și cele de testare manuală. Prin urmare, dacă acest indicator de performanţă duce la un scor procentual general mare la nivelul tuturor proiectelor de testare, ar trebuie să verificaţi dacă managerii TCoE promovează o abordare rezonabilă a testării automate.
Pentru a vă asigura că rezultatele de performanţă ale TCoE sunt pe măsura așteptărilor, trebuie să stabiliţi o listă eficientă și coerentă de indicatori de performanţă pe care să îi îndeplinească TCoE. Indicatorii voștri de performanţă trebuie să poată evalua performanţa TCoE din perspective diferite pentru a putea obţine o viziune echilibrată a modului în care TCoE își atinge obiectivele. Deși nu există un set universal de indicatori de performanţă, cei cinci indicatori prezentaţi în acest articol vă pot fi extrem de folositori, deoarece reflectă obiective TCoE precum: timpi reduși de testare, costuri reduse de testare, îmbunătăţirea calităţii de testare, nivele ridicate de testare automată și de maturitate QA. Totuși, nu uitaţi să analizaţi atent rezultatele evaluării, deoarece un indicator de performanţă impresionant poate fi singurul indiciu că un alt obiectiv TCoE nu a fost, de fapt, atins.