Informatica
Calitatea produselor software - caracteristici de calitate ale produselor softwareCalitatea unui produs este uneori definita ca " totalitatea caracteristicilor sale prin care el satisface o serie de necesitati definite sau impuse". Calitatea unui produs software este data de « capacitatea sa de a putea fi utilizat eficient, efectiv si confortabil, de catre un set de utilizatori, pentru un set de scopuri, in conditii specificate ». Caracteristicile de calitate ale unui produs software sunt proprietati ale produsului la care utilizatorii sunt sensibili. De exemplu : usurinta de utilizare, fiabilitatea, timpul de raspuns, s. a. Exista diferite modele de clasificare a caracteristicilor (atributelor) de calitate ale unui produs software. Modelele includ adesea si masuri pe baza carora se stabileste gradul in care produsul intruneste fiecare atribut de calitate. Fiecare model poate avea un set de atribute diferit la nivelul cel mai inalt al clasificarii, de asemenea selectia si definitiile atributelor pot sa difere la toate nivelele. Calitatea ceruta pentru un produs software trebuie sa fie definita in documentul de definitie a cerintelor software (SRD). De asemenea, trebuie specificate definitiile atributelor de calitate, metodele de masurare si criteriile de acceptare pentru atribute. 1. Caracteristici de calitate ale produselor softwareIncercarile de standardizare a terminologiei referitoare la calitatea produselor software au condus la standardul ISO 9126 (InformationTechnology-Software Product Quality, Part 1: Quality Model, 1998). Standardul contine definitii in special pentru produsul final. Sunt definite 6 caracteristici de calitate, impartite in 21 de subcaracteristici. Functionalitatea: realizarea scopului de baza pentru care a fost realizat produsul Oportunitatea: prezenta unui set de functii adecate pentru tascuri specificate Precizia: furnizarea unor rezultate sau efecte corecte sau agreate Interoperabilitatea: capacitatea produsului de a interactiona cu sisteme specificate Securitatea: capacitatea de a preveni accesul neautorizat, accidental sau deliberat, la programe sau date Conformitatea: adeziunea la standarde, conventii, legi si protocoale Fiabilitatea: capacitatea produsului de a-si mentine nivelul de performanta, in conditii definite, pentru o perioada de timp definita. Maturitatea: atribut bazat pe frecventa caderilor datorate greselilor in software Toleranta la defecte (robustetea): capacitatea de a-si mentine un nivel de perfomanta specificat in cazuri de caderi software sau intrari neasteptate Restabilirea dupa caderi: capacitatea si efortul necesar pentru restabilirea nivelului de performanta, recuperarea datelor afectate, dupa posibile caderi Conformitatea
3) Utilizabilitatea: efortul necesar pentru utilizarea sa de catre un set de utilizatori definit
4) Eficienta: relatia intre nivelul de performanta al produsului si cantitatea de resurse utilizate, in conditii definite Timp la executie: viteza de raspuns, timpi de prelucrare, rata iesirilor la realizarea functiilor Utilizarea resurselor: cantitatea de resurse utilizate si durata utilizarii pentru realizarea functiilor sale Conformitatea 5) Usurinta de intretinere: efortul necesar pentru efectuarea modificarilor, inclusiv corectii, imbunatatiri sau adaptari ale produsului la schimbari ale mediului de functionare, a cerintelor si schimbarilor functionale
6) Portabilitatea: capacitatea produsului de a fi transferat de la o organizatie sau platforma software/hardware la o alta
Tipuri speciale de sisteme si cerintele de calitate Exista multe cerinte de calitate particulare care se incadreaza sau nu in cele din ISO 9126. Anumite clase speciale de aplicatii pot avea si alte atribute de calitate de considerat. Exemple : Sisteme ale caror caderi pot avea consecinte extrem de severe:
Un grad inalt de incredere include atribute ca: toleranta la defecte, siguranta I functionare, securitatea, utilizabilitatea. Sisteme inteligente si bazate pe cunostinte:
Sisteme de interfata cu omul si de interactiune Usurinta de adaptare la trasaturile si interesele utilizatorilor, Help inteligent, s.a. Sisteme informationale Usurinta de interogare Precizie in furnizarea raspunsurilor (numai informatia relevanta) Caracteristici de calitate software care afecteaza procesul de inginerie software Stilul codului Reutilizabilitatea codului Modularitatea codului si independenta modulelor 2. Asigurarea calitatii produselor softwareRolul activitatilor de asigurare a calitatii software este de a stabili ca produsele si procedurile sunt in conformitate cu standardele si planurile. In proiectele mici asigurarea calitatii poate fi efectuata de echipa de dezvoltare, dar in proiectele mari trebuie sa fie realizata de o echipa speciala. Activitatile de asigurare a calitatii sunt documentate in Planul de Asigurare a Calitatii (Software Quality Assurance Plan (SQAP). Prin activitatile de asigurare a calitatii se urmareste:
Verificarea si validarea produsului software sunt de asemenea activitati de asigurare a calitatii. Ce este un sistem de asigurare a calitatiiAnsamblul activitatilor care trebuie intreprinse pentru ca un produs sa fie de calitate Ce acopera un Sistem de Asigurare a Calitatii: a) Activitatile propriuzise de inginerie - analiza; - proiectarea (conceptia); - codificarea - testarea (metode si instrumente) b) Reviziile aplicate la fiecare pas al proiectului c) Strategiile de testare d) Controlul documentatiei software si a tinerii ei la zi e) Compatibilitatea cu standardele (daca este cazul) f) Mecanismele de masurare si raportare (pentru a avea o masura cantitativa a calitatii)
|