Să știi să definești și să implementezi atributele de calitate e fundamental în dezvoltarea software. În plus, acest aspect contribuie enorm la satisfacția utilizatorilor. Acesta e motivul pentru care am ales ca despre atributele de calitate să vorbim în primul webinar TestingScool din 2024.

Atribute de calitate sau Non-Functional Requirements? 

Începem prin a menționa că noi preferăm denumirea atribute de calitate și nu non-functional requirements. Primul termen e mai specific și oferă claritate, în timp ce sintagma cerințe nefuncționale poate avea diverse interpretări și e mai puțin intuitivă.

Scopul atributelor

Ne dorim să realizăm un sistem calitativ, așadar este esențial ca acest sistem să poată gestiona volumele anticipate de date chiar și în timp, peste câțiva ani. 

Un aspect esențial ca să putem crea un sistem eficient este să alegem atribute potrivite în funcție de context, apoi să măsurăm și să monitorizăm constant atributele, ca să ne asigurăm că ne îndreptăm în direcția corectă, dar și să identificăm eventuale nevoi de optimizare.

Despre principiile de modelare a cerințelor

  • Reprezintă și înțelege domeniul informațional al unei probleme 
  • Definește funcțiile software-ului
  • Asigură-te că identifici comportamentul software-ului (ca o consecință a evenimentelor externe)
  • Task-ul de analiză trebuie să treacă de la informații esențiale la implementarea în detaliu.

Care sunt atributele de calitate și la ce se referă acestea?

  • Accesibilitatea: Landing page-ul să fie accesibil și ușor de folosit
  • Performanța: Viteza de încărcare a paginii trebuie să fie rapidă indiferent de numărul de utilizatori
  • Fiabilitatea: Landing page-ul să fie capabil să gestioneze un volum mare de utilizatori fără să se blocheze sau cel puțin să aibă erori minime
  • Securitatea: Datele utilizatorilor și informațiile privind plățile trebuie să fie protejate
  • Scalabilitatea: Landing page-ul să fie pregătit și adaptat pentru viitoarele creșteri, pentru a face față unui trafic crescut și eventualelor actualizări.

Amintim și observabilitatea care implică gândirea arhitecturală, să ai discuții cu developerii despre cum creezi și monitorizezi evenimente, ce înseamnă a avea tipare, care sunt indicatorii de business pe care tu ai putea să-i identifici uitându-te la niște metrici de monitorizare etc. 

Care sunt elementele care ne ajută în definirea atributelor de calitate? 

Folosim în exemplul de față ideea de performanță. 

  • Obiectivul: Landing page-ul ar trebui să-și mențină o performanță optimă chiar și în condiții de trafic intens.
  • Scenariul: În perioadele de vârf promoționale, landing page-ul înregistrează o creștere masivă de trafic.
  • Răspunsul: Landing page-ul minimizează timpii de încărcare și distribuie traficul pe mai multe servere.
  • Măsura: Landing page-ul ar trebui să aibă un timp de încărcare de maxim 3 secunde și să suporte un număr maxim de 150 de solicitări pe secundă. 
  • Măsura de răspuns: Monitorizarea continuă și efectuarea testelor de performanță pentru a te asigura că pagina îndeplinește obiectivele de performanță.

Este extrem de important pasul de implementare: să ne asigurăm că implementăm sistemul într-un mod corect, că poate să gestioneze performanța, poate să fie accesibil, și mai ales că poate să fie mentenabil.

Noi credem că ideea de testing ar trebui să fie integrată în orice proiect și ar fi ideal ca întreaga echipă să adopte un mindset orientat spre testare pentru rezultate de calitate.

Ascultă aici întreaga discuție dintre Andrei Conțan, tester și cofondator TestingScool și Alex Mocioi, software engineer și cofondator Humans in Learning.

În fiecare lună, în primă zi de miercuri, de la ora 18:00, ne vedem live pe pagina de YouTube a fratelui nostru mai mare, Romanian Testing Conference. Abordăm teme de interes pentru testeri și pentru cei care vor să devină specialiști în acest domeniu. Asigură-te că dai subscribe.

Te așteptăm!

Leave a Reply

Your email address will not be published. Required fields are marked *