Sunteți pe pagina 1din 58

CALITATEA PRODUSELOR SOFTWARE

Introducere
Spre deosebire de activitatea industrial, ale crei rezultate se
racterizeaz prin produse tangibile, domeniul tehnologiei informaiei i n
special producerea de software are ca rezultat produse intangibile sau care
au n componen astfel de produse. n acest domeniu intervin n principal
resurse intelectuale.
Odat cu diversificarea produselor IT, cu multiplicarea ofertanilor, s-a pus
problema comparrii performanelor produselor respective. De asemenea,
elementele de comparare au aprut n legtur cu stabilirea preului
produselor software i la definirea performanelor programatorilor.
Lucrarea de fata prezinta caliatatea din punctul de vedere al sistemelor de
programe si incearca sa prezinte caracteristicile de calitate ale produselor software.
Primul capitol constituie bazele teoretice ale calitatii, respectiv
managementului calitatii. Sunt definite calitatea, caracteristicile de calitate in
general, precum si, fiabilitatea, mentenabilitatea, disponibilitatea. Sunt prezentate
si diferitele etape ale asigurarii calitatii unui produs, functiile managementului
calitatii precum si diferite instrumente statistice utilizate in managementul calitatii
cu precadere in controlul calitatii. Tot aici se prezinta si standardizarea, respectiv
standardul, rezultatul unei normalizri realizate ntr-un anumit domeniu fiind
aprobat de ctre o autoritate recunoscut.
Al doilea capitol priveste calitatea si managementul calitatii din prespectiva
produselor software. Aici sunt prezentate principalele caracteristici de calitate
urmarite la sistemele de programe, totodata fiind abordata si problema masurarii
calitatii produselor software.
Ultimul capitol prezinta un studiu privind aprecierea importanei care se
acord caracteristicilor de calitate software. Aceste caracteristici sunt urmarite si

din punctul de vedere al utilizatorilor produselor precum si din punctul de vedere al


programatorilor.

1.

Conceptul de calitate

1.1

Definirea calitatii

Traim ntr-o era n care evolutia vietii sociale pune un accent tot mai mare pe
calitate, rezultata din diverse procese, la nivelul diverselor domenii ale dezvoltarii
economice si sociale.
n general, termenului de calitate (cuvntul vine de la latinescul qualitas,
qualis care nseamna fel de a fi) i se pot atribui mai multe ntelesuri, n functie
de contextul n care este utilizat. Astfel poate semnifica:
- felul de a fi al unui lucru sau individ, nsusirile si defectele acestuia;
- ansamblul conditiilor de trai la un momemt dat calitatea vietii
- calitatea comerciala a unui produs;
- nivelul de excelenta al unui serviciu.
Pe masura cresterii si diversificarii cererii de produse si dezvoltarii
productiei industriale, notiunea de calitate a produselor a evoluat continuu,
ajungndu-se astazi, n conditiile utilizarii calculatoarelor electronice pentru
controlul calitatii, la noi semnificatii prin notiuni de calitate dirijata, asigurata,
calitate totala si management de calitate totala etc.
Principalii factori care au contribuit la creterea importanei calitii
produselor i serviciilor n economia contemporan sunt: intensificarea
concurentei, sporirea exigentelor clientilor si a societatilor precum si cresterea
complexitatii produselor si a proceselor de realizare a acestora.
Se impune o definire care sa reflecte att comtinutul complex al notiunii ct
si caracterul ei evolutiv dinamic. Punctul de pornire, larg acceptat, l constituie,
n primul rnd, valoarea de ntrebuintare, ca totalitate a nsusirilor care fac ca
produsele sa fie utile omului, diferentiindu-le dupa utilitatea pe care o satisfac.
3

Calitatea reprezinta expresia gradului de utilitate sociala a produsului,


masura n care, prin ansamblul caracteristicilor sale (tehnico-functionale, psihosenzoriale si al parametrilor economici), satisface nevoia pentru care a fost creat si
respecta restrictiile impuse de interesele generale ale societatii, privind eficienta
social economica, precum si protectia mediului natural si social.
Conform standardului ISO 8402,
calitatea reprezinta ansamblul
caracteristicilor unei entitati - produs, activitate, proces, organizatie, persoana care confera acesteia aptitudinea de a satisface cerintele exprimate sau implicite.
Conform unor aspecte partiale ale calitatii unui produs sau serviciu, calitatea
semnifica:
aptitudinea de a fi utilizat sau ntrebuintat;
satisfacerea cerintelor clientului;
conformitatea cu o documentatie sau cu exigentile beneficiarului.
Calitatea nu este exprimata printr-o singura caracteristica, ci printr-un
ansamblu de caracteristici, nefiind de sine statatoare existand doar in relatie cu
nevoia clientilor.
Conform ISO 9000:2001 calitatea reprezinta masura in care un ansmablu de
caracteristici intrinseci indeplinesc cerintele.
Produsul, privit n conformitate cu standardul ISO 8402 poate fi orice bun
material (rezultat din fabricatie), sau imaterial (Software - programe, informatii,
date) si/sau serviciu (bancare, transport, etc), care apare ca rezultat al unor
activitati si/sau procese.
Din perspectiva ISO 9000 produsele se impart in 4 categorii si anume:
servicii (de exemplu: transport), software (un program de calculator, dictionar),
hardware (de exemplu o parte mecanica a unui motor, o componenta a unui
calculator) si materiale procesate (de exemplu lubrifiant).
Conform unor anumite orientari calitatea poate semnifica unele aspecte
speciale. Astfel:

- n orientarea spre produs calitatea este considerata o caracteristica


masurabila;
- n orientarea spre proces se ia n considerare punctul de vedere al
producatorului, dupa care produsele de calitate sunt cele care satisfac cerintele
specificate; dar utilizatorul poate avea al punct de vedere;
- n orientarea spre costuri (implicit pretul de comercializare) produsul
este considerat de calitate daca ofera anumite performante la un nivel acceptabil de
pret. O astfel de orientare este agreata de un segment important de consumatori (n
Germania 17%);
- n orientarea spre utilizator calitatea se defineste ca reprezentnd
aptitudinea produsului de a fi apt pentru utilizare (fitness for use). Reprezinta
corespondenta cu cerintele beneficiarului privind functionalitatea, siguranta n
exploatare, pretul, termenul de livrare, costurile de utilizare, compatibilitatea cu
mediul etc.

1.2 Caracteristicile produsului


Inainte de a defini caracteristicile unui produs trebuiesc definiti urmatorii
termeni referitori la calitate: cerinta, neconformitate si defect.
Cerinta este definita ca reprezentand o nevoie sau o asteptare care este
declarata, in general implicita sau obligatorie. O cerinta specificata este una care
este declarata intr-un document.
Prin neconformitate se intelege neindeplinirea unei cerinte, in timp ce
defectul reprezinta neindeplinirea unei cerinte referitoare la o utilizare intentionata
sau specificata.
n evaluarea functiilor unui produs exista un demers obligatoriu pentru
producator, care se face cu ajutorul si prin intermediul caracteristicilor produsului.
Pentru a ntelege acest demers definim si clasificam caracteristicile unui produs.
Conform standardului ISO 8402, caracteristicile unui produs sunt definite ca
proprietati specifice prin care se identifica sau diferentiaza entitatile (produse,
procese, organizatii etc), care pot fi descrise si masurate pentru a li se determina
5

conformitatea/neconformitatea n raport cu cerintele de calitate specificate.


Conform acestui standard, calitatea prezinta o variatie continua, se exprima printrun ansamblu de caracteristici, neavnd valoare de sine statatoare dect n relatie cu
nevoile beneficiarului, nevoi implicite sau explicite legate de valoarea de
ntrebuintare.
Corelatia dintre caracteristicile de calitate, ca o masura a relatiei dintre
producatorul de produse si beneficiarul acestora, se defineste:
- n procesul de proiectare ca expresie a unor relatii matematice de
interpretare a interdependentei dintre ele;
- experimental pe baza unor probe, ncercari, testari, etc;
- n procesul de exploatare si n activitatea service (depanare post-vnzare);
- n mod empiric n procesul de consum.
Tinnd seama de aceste interdependente este posibil ca limitndu-ne la un
numar relativ mic de caracteristici de importanta majora, circa 8 15, sa fie avut
n vedere ntregul ansamblu de caracteristici ale unui produs complex, caracteristici
care poate fi de ordinul zecilor. Acest aspect devine extrem de important n cazul
produselor proiectate prin asistare computerizata.
Existenta unor consideratii diferite acordate notinii de calitate de catre
producatorul si beneficiarul produselor industriale a impus necesitatea clasificarii
caracteristicilor produselor.
n sens larg n special din punctul de vedere al utilizatorului - se iau
n consideratie urmatoarele caracteristici:
siguranta n functionare determinata de fiabilitate,
mentenabilitate, etc;
- compatibilitatea aptitudinea produselor de a putea fi utilizate
mpreuna;
- interschimbabilitatea aptitudinea unui produs de a putea fi
utilizat fara modificari n locul altui produs, ndeplinindu-i partial
functiile;
6

- neconformitatea abaterea/absenta unor caracteristici de calitate


n raport cu cerintele specificate;
- defecte nesatisfacerea unor cerinte, inclusiv a celor referitoare
la securitate;
- securitatea starea n care riscul unor daune materiale este
limitat.

n sens restrns cu referire speciala la produsele industriale, deci din


punctul de vedere al producatorului industrial caracteristicile de
calitate ale unui produs pot fi grupate n urmatoarele categorii:
-

Caracteristicile tehnice si tehnologice care se refera la solutia


constructiva, care evolueaza n timp pe seama unor cheltuieli de
modernizare; dintre acestea avem:
caracteristici functionale, de exemplu viteza, debit;

caracteristici de identificare, apartin mai mult sistemului de


evidenta, viznd corespundenta reciproca a informatiilor din
documentatiile
constructive,
tehnologice,
financiar-contabile,
manageriale;
natura si structura materialelor, care determina performantele
unui produs;
gabaritul reducerea lui nseamna att un consum mai mic de
materiale, energie, dar si comoditate n manevrare etc;

precizia si siguranta n exploatare date de fiabilitate,


mentenabilitate, disponibilitate, etc;
tot aici intra si nsusirile si proprietatile fizico-chimice
masurabile ale produsului:
- direct - densitate, grad de duritate la apa, continut procentual
de metal ntr-un mineral, sau de substanta utila dintr-un minereu,
continutul nutritiv ntr-un produs alimentar, etc;
7

- indirect - calitatea unei acoperiri galvanice prin grosimea


stratului, puterea unui motor prin ncalzire conductorilor, etc;
- comparabile cu o mostra etalon obiectiv (numarul de
defecte pe cm tesatura/tricotaj/tabla etc.,gradul de alb al unei tesaturi)
sau subiectiv (finisajul unei confectii, grad de vopsire, etc);
caracteristicile tehnologice referitoare la posibilitatile de executie
ntr-un sistem tehnologic dat (la nivelul unor operatii de transformare
aflate ntr-o desfasurare continua sau succesiva), de exemplu
tolerante, calitatea suprafetelor la prelucrare, etc.
- Caracteristicile economice care se refera la: randamente:
indicatori tehnico-economici de consum, de utilizare (intensiva,
extensiva);
grad de automatizare si cibernetizare;
cheltuieli de exploatare (consumuri specifice incluse sau pe care le
determina) de ntretinere (reparatii, piese de schimb);
- Caracteristicile sociale sunt legate de valoarea de ntrebuintare,
utilitatea produselor si de asemeni la efectele asupra mediului
ambiant, a sigurantei si sanatatii fizice si psihice ale omului; aceste
efecte determina n prezent, n tarile puternic dezvoltate, succesul
sau insuccesul de piata al produselor.
- Caracteristicile psiho-senzoriale si estetice caracteristici cu o
valoare subiectiva ridicata cu importanta mai mare pentru
bunurile de consum: aspect exterior, finisare, eleganta, concordanta
cu moda, confortul pe care l asigura la utilizare etc.
n functie de destinatia economica si caracterul utilizarii produselor n
procesul de consum, avem:
Caracteristici ale mijloacelor de munca: durabilitate, greutate,
ergonomicitate, precizie, randamant, fiabilitate, mantenabilitate, consumuri,
-

rezistenta la mediu (de lucru, ambiant) si la efort (de actiune, de


manipulare/lovire), etc;
Caracteristici ale obiectelor muncii: usurinta prelucrarii,
eccnomicitatea acestora, asigurarea calitatii, elasticitate, soliditate,
compozitie chimica, etc;
Caracteristici pentru obiecte de uz individual: forma, gust,
rezistenta la rupere/frecare, conductibilitate termica/electrica, elasticitate,
permeabilitate, etc;
-

n functie de modul de exprimare,distingem:


- Caracteristici cuantificabile: cote dimensionale, greutate, debit,
presiune, etc;
- Caracteristici atributive definite prin calificative, de exemplu
corespunzator si necorespunzator.
Pentru aprecierea calitatii produselor cu ajutorul acestor caracteristici, a fost
necesara stabilirea unor limite de referinta, specificate ntr-o serie de documente
specifice, dintre care cele mai importante sunt standardele, normele tehnice,
caietele de sarcini sau specificatiile tehnice contractual, comenzi.

1.3

Fiabilitate, mentenabilitate, disponibilitate

Fiabilitatea este strns legat de calitate, fiind o extindere a acesteia n timp;


exprim sigurana n exploatare.
Din punct de vedere calitativ reprezinta capacitatea ca un produs sa
indeplineasca pentru un anumit interval de timp prestabilit functia pentru care a
fost creat, iar din punct de vedere cantitativ reprezinta probabilitatea ca produsul sa
respecte termenul de garantie. Introducerea acestei notiuni a aparut dat fiind ca
anumite caracteristici calitative au dobandit o importanta deosebita pentru toata
perioada de functionare, deci pe intreg ciclul de viata al produsului.

Conceptul de fiabilitate se mai utilizeaza si cu urmatoarele sensuri: utilizarea


in conditii prescrise un timp cat mai indelungat; probabilitatea
de
buna
functioanare a produsului in conformitate cu normele prescrise.
Clasificarea fiabilitii poate fi fcut dup mai multe criterii:
Din punct de vedere al etapei de realizare a fiabilitii exist:
- fiabilitate proiectat rezultat pe baza considerentelor de
concepie
i proiectare care devine fiabilitate de
exploatare/prescris n documentaia tehnic de fabricaie
-

fiabilitate experimental - dat de experimentarea n laborator,


pe staii de ncercare, tanduri de prob, unde se ncearc
produsul n condiii similare de exploatare (solicitare);

- fiabilitate operaional/efectiv - conform cu rezultatele privind


comportarea n exploatare, pe o perioad de timp, a unui numr
ct mai mare de produse, efectiv utilzate (este fiabilitatea din
exploatare).
Dup modul de estimare a fiabilitii deosebim:
- fiabilitate nominal prescris n anumite specificaii
(standarde, norme tehnice, contracte) sau inscripionat pe
produs;
- fiabilitate estimat - determinat cu un anumit interval de
ncredere pe baza rezultatelor din ncercrile de laborator, a
informaiilor din exploatarea unor produse identice.
Fiabilitatea depinde de modul cum a fost conceput i executat produsul, de
condiiile de exploatare, de condiiile de ntreinere (mentenana).
In aprecierea fiabilitatii intra doua componente: dimensiunea temporala si
conditiile concrete de functionare si de mediu ambiant.
Mentenabilitatea reprezinta probabilitatea ca un produs, sau sistem tehnic,
defect, sa fie repus in stare de functionare intr-un anumit interval de timp.
Demersul prin care se rezolva aceasta problema se numeste mentenanta.
10

Mentenana reprezint activitatea depus n vederea restabilirii capacitii de bun


funcionare a unui produs, sau sistem tehnic, defectat. Aceasta poate fi preventiv
sau corectiv (reparaii - pariale,capitale).
Disponibilitatea reprezinta probabilitatea ca un produs sau sistem tehnic s
fie apt de bun funcionare dup o activitate de menetenan, sau raportul dintre
timpul n care produsul i menine calitile iniiale i timpul total de utilizare.

1.4

Nivelul calitatii unui produs

Caracterul dinamic si evolutia calitatii se apreciaza prin controlul calitatii


care cuprinde ansamblul de activitati si tehnici operationale practicate n vederea
mentinerii calitatii, activitati si tehnici ce presupun:
- asigurarea fiabilitatii optime fata de modelul proiectat si fata de
documentatia tehnica;
- metode specifice statisticii matematice
Nivelul calitatii la produse este masurat si cuantificat cu ajutorul calimetriei
- stiinta masurarii si estimarii calitatii produselor. Aceasta stiinta are urmatoarele
obiective:
- stabilirea terminologiei notiunilor de calitate n legatura cu produsele
utilizate curent;
- elaborarea nomenclatorului denumirilor produselor
indicatorilor de calitate pentru produse si servicii;

si

clasificarea

- elaborarea metodelor de determinare si de evaluare a diferitelor


caracteristici ale calitatii produselor;
- elaborarea metodelor de optimizare a indicatorilor de calitate.
Calitatea unui produs poate fi exprimata printr-o serie de indicatori de
calitate, care pot fi:
11

- simpli cnd se refera la o singura caracteristica


- complecsi cnd se refera la mai multe caracteristici sau la ntregul produs
- de baza daca servesc ca baza de comparare pentru aprecierea calitatii
- planificati trecuti ntr-o sursa de informatie (o specificatie)
- efectivi faptici, conform datelor din exploatare
Sistemul de indicatori ai calitatii produselor poate fi utilizat sub diferite
variante:
- pe faze/etape de realizare a produsului
- pe elemente definitore ale calitatii
- pe functii ale ntreprinderii si atribute ale conducerii
- pe baza diferitelor clasificari ale caracteristicilor de calitate ale produselor,
etc.
Sistemul de indicatori poate fi redat sub forma unui sistem agregat,
structurat piramidal n trei trepte:
- treapta a I-a - situata la baza piramidei, care cuprinde un numar foarte
mare si divers de indicatori simpli = indicatori analitici;
- treapta a II-a - care cuprinde un numar ceva mai mic de indicatori =
indicatori sintetici ai fiecarei grupe de indicatori analitici ai caracteristicilor;
- treapta a III-a - situata n vrful piramidei contine indicatorul
global/complex, integral al calitatii pentru exprimarea calitatii totale.
Aplicnd sistemul de indicatori pentru exprimarea calitatii unui produs, mai
inti, se realizeaza o ierarhizare a caracteristicilor functionale ale acestuia, pornind
de la urmatoarele considerente generale:
a. se listeaza toate caracteristicile produsului si se acorda fiecaruia dintre ele
o nota care exprima masura n care respectiva caracteristica ne satisface;

12

b. notele pentru toate caracteristicile, indiferent de natura fiecareia, se


convertesc ntr-o scala unica, pentru a putea fi nsumate;
c. caracteristicile unui produs nu au importanta egala n definirea calitatii,
de aceea estimarea fiecareia trebuie corectata cu un coeficient de pondere (de
exemplu n cazul unui ceas vor conta solutia constructiva, precizia, aspectul pretul,
marca caracteristici care vor avea o importanta deosebita n functie de
beneficiar); suma ponderilor atribuite caracteristicilor unui produs trebuie sa fie
ntotdeauna constanta.

1.5

Etapele asigurarii calitatii produselor

Realizarea calitatii unui produs (sau serviciu) are loc n urma unui proces
ciclic si complex, la care participa toate componentele firmei, ncepnd cu
cercetarea stiintifica si continund cu proiectarea, pregatirea productiei, procurarea
materiilor prime si materiale, productia propriu-zisa, controlul produsului (rezulta
certificat de calitate), vnzarea si asigurarea service-ului la beneficiar. Acest ciclu
se reia pe o baza informationala superioara ca urmare a introducerii progresului
tehnic si stiintific ceea ce confera calitatii un caracter dinamic, exprimat prin
spirala calitatii.
Asigurarea calitatii unui produs implica etapele: de proiectare, de fabricatie
si de service.
1.5.1 Etapa de proiectare
Aceasta etapa contribuie cu ponderea cea mai mare la realizarea
performantelor finale ale produsului. Ca atare trebuie aleasa o solutie constructiva
moderna, compatibila cu gradul de nzestrare tehnica a ntreprinderii, cu experienta
si calificarea personalului muncitor si cu cerintele beneficiarului.
n ultimii 30-40 de ani s-a impus metodologia, numita ingineria valorii
care permite optimizarea activitatii de proiectare, astfel nct produsul sa aiba
performante optime la un cost de fabricatie optim. Pe baza faptului ca fiecare
produs ndeplineste o serie de functii capabile sa satisfaca o anumita necesitate
sociala, ingineria valori (metoda tehnico-economica de analiza a modului de
conceptie, proiectare si executie a unui produs) calculeaza si minimizeaza costul
13

fiecarei functii, costul produsului fiind suma costurilor de realizare a functiilor


sale.
Minimizarea costurilor functiilor se face fara diminuarea calitatii, fiabilitatii
si performantelor produsului. Vechile metode de calcul stabileau costul produsului
ca suma a costurilor partilor sau subansamblelor ce l compun.
Elaborarea unui nou produs, conform analizei valorii, se realizeaza de catre
echipe mixte, interdisciplinare, formate din ingineri, economisti si alti specialisti.
Elaborarea unui program presupune parcurgerea unor etape succesive,
conform cu un plan operational, care cuprinde:
- documentarea asupra produsului existent;
- definirea produsului si functiilor sale;
- raportarea functiilor la cost si valoarea lor;
- elaborarea de variante alternative de realizare a functiilor dorite;
- evaluarea - alegerea celei mai bune variante si stabilirea costurilor;
- proiectarea - transformarea variantei alese n solutie tehnologica realizabila
si ntocmirea documentatiei necesare pentru realizarea produsului n varianta
aleasa;
- implementarea - realizarea prototipului si a seriei zero.
Daca o functie cu contributie redusa la valoarea produsului va avea o
pondere mare n costul total, atunci functia respectiva trebuie reproiectata pentru a
aduce costul la nivelul utilitatii sale (de exemplu pentru ca un autoturism - standard
sa fie performant nu este necesar sa fie vopsit cu vopsea metalizata!).
1.5.2 Etapa de fabricatie
n etapa de fabricatie calitatea produsului va fi determinata, n primul rnd,
de calitatea materiilor prime si de performantele utilajelor - de gradul de uzura
fizica a acestora. Un factor determinant n asigurarea calitatii, n aceasta etapa, l
constituie rigurozitatea controlului tehnic, pe faze si final. Prevenirea aparitiei
14

defectelor de fabricatie, prin respectarea stricta a procesului tehnologic, se face cu


ajutorul metodei zero defecte (Japonia, 1970).
Ideea de la care s-a pornit a fost aceea ca un produs, daca este realizat cu
respectarea stricta a tehnologiei si a calitatii materiilor prime, nu are nici un motiv
sa nu corespunda cerintelor de calitate asumata. Concurenta de piata a determinat
ntreprinderile sa caute solutii pentru realizarea unui asemenea produs, lipsit
practic de defecte. Desigur ca un asemenea obiectiv nu se poate atinge dintr-o data.
Se ncepe cu identificarea cauzelor care duc la aparitia defectelor si se
continua cu eliminarea lor.
1.5.3 Etapa de utilizare
n ultima instanta calitatea unui produs este apreciata de cumparator
(utilizator) si n functie de usurinta cu care se realizeaza ntretinerea si depanarea
lui. Cresterea complexitatii produselor a facut dificila remedierea deficientelor n
afara firmei producatoare. Acesta este motivul pentru care s-a dezvoltat reteaua de
service asigurata de producator.
Conceptia moderna despre calitate, leaga calitatea produselor de calitatea
proiectului (conceptiei) si calitatea fabricatiei, iar interdependenta lor se poate
exprima sintetic prin modelul cenceptual denumit triunghiul calitatii.
De asemenea, conceptia moderna despre calitate exprima angajarea
ntregului personal al unei firme, n realizarea acesteia, pe baza unei strategii
proprii n domeniul calitatii. Se ajunge astfel, de la nivelul produsului fara defecte
la cel al ntreprinderii fara defecte, concept denumit managementul calitatii.

15

1.6

Managementul calitatii

Pornind de la Juran (Joseph Moses Juran - considerat deschizator de


drum) managementul calitatii a fost definit prin functiile sale, n termenii trilogiei
calitatii (quality trilogy ):
- planificarea calitatii ( Quality Planning );
- tinerea sub control a calitatii ( Quality Control );
- mbunatatirea calitatii ( Quality Improvement ).
J.Klada defineste managementul calitatii (n La gestion integrale de la
qualite. Pour une qualite total, Ed Quafee , Quebec , 1990 ,27 ) ca un ansamblu de
activitati avnd ca scop realizarea unor obiective, prin utilizarea optima a
resurselor.
Definitia conform standardului ISO 8402 ne prezinta managementul calitatii
ca ansamblul activitatilor functiei generale de management, care determina
politica privind calitatea, obiectivele si responsabilitatile ce le implementeaza n
cadrul sistemului calitatii. Acest standard precizeaza ca:
- responsabilitatea exista la toate nivelurile de management;
- rolul de coordonare l are conducerea de vrf (top management);
- implementarea se realizeaza cu participarea tuturor angajatilor;
- punctul de plecare l reprezinta elaborarea strategiei si politicii calitatii;
- sistemul calitatii reprezinta structura organizatorica, procedurile, procesele
si resursele necesare pentru implementarea managementului calitatii.
1.6.1 Functiile managementului calitatii
Ansamblul activitatilor din managementul calitatii sunt: planificare,
organizare, control si asigurare a calitatii.
Planificarea calitatii presupune ansamblul proceselor de determinare a
principalelor obiective ale firmei n domeniul calitatii, precum si a resurselor si
mijloacelor de realizare a lor.
16

Obiectivele pot fi la nivel strategic si operational. Avem deci:


- o planificare externa identificarea beneficiarilor si stabilirea cerintelor
acestora (prin studiu de marketing);
- o planificare interna transpunerea cerintelor clientilor n caracteristici
ale produsului si in procese care fac posibila realizarea produselor cu aceste
caracteristici.
Tinerea sub control a calitatii se refera la ansamblul activitatilor:
- de supraveghere a desfasurarii proceselor;
- de evaluare a rezultatelor din traiectoria produsului n raport cu obiectivele
si cu normele specificate ntr-un document normativ.
Activitatile specifice de tinere sub control a calitatii conform standardului
ISO 8402 sunt:
- supravegherea calitatii monitorizeaza si verifica continuu!
- inspectia calitatii masoara, examineaza si ncearca una sau mai multe
caracteristici!
- verificarea calitatii confirma conformitatea cu cerintele prin examinari
si probe tangibile!
a) Auditul calitatii o examinare sistematica si independenta care determina
daca:
- activitatile si rezultatele corespund dispozitiilor prestabilite;
- dispozitiile sunt efectiv implementate si capabile sa atinga obiectivele.
Auditul calitatii se aplica ntregului sistem de calitate sau elementelor
acestuia (procese, prevederi, servicii) cu scopul de a evalua masurile corective sau
de mbunatatire necesare.
b) Analiza sistemului calitatii - efectuata de conducere consta n evaluarea
oficiala a starii de compatibilitate a sistemului de calitate cu politica conducerii
ntreprinderii n acest domeniu. Aceste analize cuprind:
17

- constatarile auditorilor pentru elementele sistemului;


- eficacitate globala a sistemului n realizarea obiectivelor;
- adecvarea sistemului la schimbarile datorate noilor tehnologii, concepte
ale calitatii, strategii de piata, conditii sociale sau de mediu.
mbunatatirea calitatii presupune un ansamlu de activitati desfasurate pentru
obtinerea unui nivel de calitate superior celui planificat si prevazut n standarde sau
specificatii.
Asigurarea calitatii presupune activitati prestabilite si sistematice n cadrul
sistemului calitatii, pentru a reda ncrederea corespunzatoare ca produsul va
satisface cerintele de calitate specificate. Poate fi:
- interna pentru a da incredere conducerii ntreprinderii;
- externa pentu a da ncredere clientilor ca sistemul calitatii permite
detinerea calitatii cerute.
Este necesara coordonarea tuturor activitatilor, n sensul de a forma un
ansamblul de procese care se practica n vederea armonizarii deciziilor si actiunilor
firmei si ale subsistemelor sale n scopul realizarii obiectivelor definite n cadrul
sistemului calitatii, stabilit anterior.
O coordonare eficienta presupune existenta unei comunicari adecvate
(bilaterale si multilaterale intalniri, conferinte, reuniuni) in toate etapele
corespunzatoare managementului, cu antrenarea personalului pentru realizarea
obiectivelor din domeniul calitatii.

18

1.7

Metode si instrumente statistice de control

Un aspect important al calitatii este controlul calitatii produselor, care


constituie fundamentul pe care se bazeaza asigurarea calitatii si managementul
calitatii. Acest control se poate realiza fie prin masuratori ale aspectelor cheie ale
productiei fizice, fie cu ajutorul controlului statistic de calitate. Controlul statistic
de calitate constituie o cerinta a standardelor de calitate ISO 9000, standarde care
trebuie sa fie respectate n cazul oricaror produse exportate.
Independent de solutia de urmarire a productiei si a calitatii, integrarea
calitatii cu sistemele de productie presupune:

identificarea operatiilor de control/repere;


culegerea datelor masurate n punctele de control;
punerea acestor date la dispozitia setului de diagrame, implementat n
sistem;
existenta unui ansamblu de rutine de reprezentare grafica a seriilor de date
potrivite cu specificul sistemului.

Un produs este considerat bun calitativ, daca performantele sale masurate se


ncadreaza ntre anumite limite de toleranta specificate. Produsul va fi bun, daca
vectorul performantelor sale va fi inclus ntr-un domeniu de acceptare, definit
conform limitelor de toleranta specificate si va fi necorespunzator n caz contrar.
La baza utilizarii metodelor statistice n activitatea de control de calitate, sta
principiul potrivit caruia deciziile trebuie luate pe baza unor date reale, corecte, iar
cele eronate trebuie eliminate n timp util.
Controlul statistic al calitatii este cea mai utilizata metoda si se bazeaza pe
controlul prin esantionare, in cadrul caruia prin esantionul extras (n) controlat in
totalitate se obtin rezultate si concluzii asupra intregului proces de fabricatie sau lot
de produse finite privind: stabilitatea productiei, capabilitatea proceselor de
productie, precizia de realizare a caracteristicilor de calitate controlata.
Controlul statistic are la baz statistica matematic, tiin ce recurge la
eantionare pentru caracterizarea variaiei unei caracteristici a unei populaii
19

statistice. Metodele statistice se bazeaz pe ipoteza c orice caracteristic este o


variabil aleatoare, iar distribuia valorilor ei, cnd numrul problemelor este
suficient de mare, corespunde legii normale de repartiie, numit i repartiiei
Gauss. Utilizarea metodelor statistice face posibil ca, prin selectarea unui eantion
dintr-o anumit colectivitate statistic, s se deduc repartiia caracteristicii luate n
studiu pentru ntreaga colectivitate.
Statistica opereaz cu relaii de calcul specifice, care permit determinarea
parametrilor ce caracterizeaz repartiia valorilor, mai importante fiind:

valoarea medie a variabilei, n;


abaterea medie ptratic, ( ce msoar gradul de mprtiere a
valorilor);
probabilitatea ca variabil s se nscrie ntr-un domeniu de valori,
p.

Se consider c procesul se desfoar normal dac parametrii n i a se


ncadreaz n limitele unui interval stabilit, numit interval de ncredere sau interval
de control.
Este cunoscut din partea industrial i comercial c orice lot de produse
conine o anumit proporie de exemplare necorespunztoare calitativ, care este
numit fraciunea defectiv a lotului. Pe baza fraciunii defective, p, urmeaz s fie
apreciat calitatea ntregului Iot. Fraciunea defectiv se poate exprima ca raport
ntre numrul pieselor neconforme (D) i mrimea lotului (N). Fraciunea defectiv
ia valori ntre 0 i 1. Nivelul acesteia determin probabilitatea de acceptare a
lotului de piese, Pa.
Educatia in controlul calitatii arata K. Ishikawa in 1975- trebuie
desfasurata larg si profund, la toate nivelurile, pentru toti salariatii intreprinderii,
de la director pana la muncitor, nu numai in ce priveste ideile, dar si metodele
controlului statistic al calitatii.
Plecnd de la premiza ca nu este posibila tinerea sub control a calitatii fara
utilizarea unor metode statistice (95% din problemele referitoare la calitate

20

rezolvndu-se cu ele), el clasifica aceste metode n trei categorii, in functie de


dificultatea aplicarii lor:
Metode statistice elementare (Diagrama Pareto, Diagrama cauzaefect, Stratificare, Fisa de verificare, Histograme, Diagrama corelatie,
Diagrama de control static a procesului)
Metode statistice intermediare (Teoria supravegherii statistice,
Controlul statistic prin esantionare, Metode de estimare statistica si de
testare a ipotezelor, Metode de analiza senzoriala, Metode de
proiectare experiment)
Metode statistice avansate (Proiectare avansata asistata de
calculator, Analiza multicriteriala, Metode de cercetare operatioanal)
n opinia sa, metodele statistice intermediare si avansate sunt destinate
specialistilor, n timp ce metodele statistice elementare (considerate ,,instrumente
de baza ale calitatii) ar trebui sa fie nsusite de ntregul personal. Acest punct de
vedere releva nca o data specificul conceptiei japoneze fata de calitate, ca
preocupare permanenta a tuturor company wide quality control si nu doar
apanajul specialistilor, asa cum a fost privita ea initial n economiile occidentale.
Fara sa fie neaparat o expunere completa a contributiei metodelor statistice
in tratarea calitatii sau o delimitare precisa a acestora fata de implicatiile altor
ramuri moderne ale stiintei, viziunea lui Ishikawa, expusa nca din anii 50 se
constituie intr-un punct de vedere relevator pentru evaluarea impactului statisticii
in tratarea informatiei privind calitatea.
Abordarea calitatii fiind pana la urma un proces continuu si laborios de
culegere, prezentare si analiza a informatiei despre diferitele moduri de manifestare
ale acesteia, tehnicile si instrumentele oferite de stiinta in acest scop, in sensul
adaptarii si perfectionarii lor in timp, s-au constituit in preocupari permanente ale
specialistilor. Aceste instrumente sunt utilizate in trei scopuri esentiale:
Ordonarea si sintetizarea datelor referitoare la calitate;
Decizii referitoare la calitatea loturilor de produse pe baza analizei
esantionului de produse prelevat;
21

Controlul bunei functionari a unui proces in scopul asigurarii


capacitatii acestuia de a obtine in mod constant nivelul de calitate
solicitat, tehnicile si instrumentele clasice utilizate astazi in
managementul calitatii, sunt preluate in cea mai mare parte din
statistica ca stiinta fundamental ce ofera metode de tratare a datelor
numerice caracteristice fenomenelor economice.
Bazndu-se pe fundamentul matematic a functiilor de repartitie, pe
instrumentele proprii de tratare descriptiva a informatiei (grafice), de nregistrare si
prelucrare primara a acesteia (fise de nregistrare calcul a principalilor indicatori
statistici de caracterizare a seriilor de date), statistica ofera astazi un instrumentar
stiintific foarte elaborate fiind standardizat in cea mai mare parte.

1.8

Standardizare

Plecnd de la necesitatea realizrii eficiente a schimburilor comerciale, n


contextul existenei unui numr mare de materii prime, materiale i produse, ntr-o
multitudine de variante i caracteristici calitative variabile n limite largi, s-a impus
ca absolut necesar normalizarea variantelor i limitarea variabilitii
caracteristicilor printr-un proces (de normalizare), care s conduc la cea mai bun
consideraie a interesului tehnic i a celui economic dintre partenerii schimburilor
comerciale realizatorii i beneficiarii de bunuri materiale. Necesitatea acestor
armonizri a fost resimit din cele mai vechi timpuri, dar realizarea lor contient
i sistematic, pe baza unor principii i metode tiinifice, a fost posibil doar n
momentul n care dezvoltarea forelor de producie a atins un nivel suficient de
ridicat. n momentul de fa se poate vorbi despre aciuni de normalizare - prin
documente - n sensul modern al cuvntului.
Documentele tehnice de referin sunt implicate n activitile productive
orientate spre piaa de consum (activiti contractuale, comerciale) n scopul
normalizrii relaiilor dintre productorii de bunuri i beneficiarii acestora. Din
punct de vedere al aplicabilitii, aceste documente pot fi:

22

Voluntare
Standardele: - documente cu caracter informativ, de recomandare;
procedurile de elaborare le asigura legitimitate democratica in
special prin implicarea tuturor factorilor interesanti relevanti in
procesul de elaborare a lor; exemple de standarde: ISO, EN, DIN,
BS, NF, etc.
- Specificatiile (diponibile public) contin reguli, instructiuni sau
caracteristici pentru diferite activitati sau pentru rezultatul
acestora; sunt elaborate de ateliere, consorti sau alte grupuri care
de obicei nu cuprind toate partile interesate relevante; in
majoritatea cazurilor nu exista proceduri detaliate pentru
elaborarea si actualizarea lor; exemple de specificatii: ECMA
(European Computer Manufactures Association) etc.
-

Obligatorii
- Reglementarile sunt documente care stabilesc reguli legislative
cu caracter imperativ; sunt adoptate de o autoritate legislativa; de
exemplu legile (adoptate in conformitate cu proceduri bazate pe
constitutia tarii respective), decretele, actele, etc.
n ce privete procesul de standardizare acesta intervine ca o necesitate de
interes general a prilor interesate relevante. Ele doresc standardele, deoarece
acestea le ofer posibilitatea de a crea sau influena i armoniza regulile din
sectoarele sferei de interes. n timpul elaborrii unui standard, productorii ajung
s cunoasc cerinele beneficiarilor, s discute ateptrile acestora, s gseasc
soluii general acceptabile i s stabileasc o baz de ncredere care s constituie o
premis a consensului.
Standardizarea, definit de EN 45020 : l993 (Ghid 2 ISO/IEC : 1991), este
activitatea indicat pentru a stabili n raport cu probleme reale sau poteniale,
dispoziii destinate unei utilizri obinuite i repetate care urmrete obinerea unui
nivel optim de ordine ntr-un context dat.

23

Aceast activitate se refer n special la elaborarea, difuzarea i aplicarea


standardelor. Este perceput i folosit n contextul unei normaliti n care
exigenele explicite i implicite (neexprimate) sunt transformate n parametri
msurabili.
Standardizarea n sine este un model posibil ideal n cazul n care
standardele sunt percepute ca elemente stategice pentru cei ce le folosesc, dac
sunt adaptate cerinelor pieii i permit, prin coeren i comprehensibilitate,
adaptarea la condiiile impuse de contextul concurenial existent la momentul
respectiv.
Activitatea de standardizare se realizeaz prin documente denumite
standarde.
Conform definiiei Comitetului Permanent pentru studiul principiilor
tiinifice ale standardizrii (STACO) din cadrul Organizaiei Internaionale de
Standardizare (ISO), standardul, rezultatul unei normalizri realizate ntr-un
anumit domeniu, este aprobat de ctre o autoritate recunoscut - care se ocup cu
stabilirea acestor tipuri de norme,. Este publicat sub forma unui document
coninnd un ansamblu de reguli, prescripii i caracteristici tehnice obligatorii,
prin care se stabilesc, pentru utilizri multiple i repetate, nsuirile tehnicoeconomice pe care trebuie s le ndeplineasc o activitate sau rezultatele acesteia,
precum i prescripiile privind recepia, marcarea, depozitarea, transportul (etc)
produselor. Acest document este stabilit (elaborat i redactat) prin consens de
ctre cei interesai (n cadrul i sub asistena i ndrumarea unui organism de
standardizare), potrivit nivelului de dezvoltare tehnic dintr-un anumit domeniu la
un anumit moment i este aprobat de ctre un organism de autoritate recunoscut.
Exigenele indivizilor - productori, comerciani, consumatori caracterizate
prin constan pe o anumit perioad, sunt transformate n documente normative.
Consecina este consolidarea progresului, att la nivelul consumatorului, ct i la
nivelul productorului i de asemenea pregtirea viitorului, n condiiile asigurrii
timpului necesar creiei i verificrii ideilor noi.

24

Esenial pentru toate standardele (naionale, profesionale, sau de firm) este


caracterul repititiv al regulilor, prescripiilor i caracteristicilor comune mai multor
produse, familii de produse etc.
Standardele fac relaia dintre partenerii comerciali inconfundabil
transparent prin introducerea unui limbaj comun.

Standardele pot fi de mai mlte tipuri, in practica fiind luate in considerare


urmatorele:

Standard de baza - cu o aplicare generala sau care contine prevederi


generale pentru un anumit domeniu ;
Standard de terminologie care specifica termeni, de obicei impreuna
cu definitiile acestora si uneori cu note explicative, ilustratii, exemple,
etc;
Standard care specifica metode de incercare, insotire uneori de alte
prevederi referitoare la incercare, cum ar fi esantionarea, utilizarea
metodelor statistice, ordinea incercarilor;
Standard de produs care specifica conditiile pe care trebuie sa le
indeplineasca un produs sau o grupa de produse, pentru a asigura
aptitudinea de utilizare a acestuia/acestora;
Standard de process care specifica conditiile pe care trebuie sa le
indeplineasca un process, pentru a asigura aptitudinea de utilizarea a
acestuia;
Standard pentru servicii care specifica conditiile pe care trebuie sa
le indeplineasca un serviciu pentru a asigura aptitudinea de utilizare a
acestuia;
Standard de interfata care specifica conditiile referitoare la
compatibilitatea produselor sau a sistemelor in punctele lor de
legatura;
Standard de date care trebuie indicate contine o lista de
caracteristici ale caror valori sau alte date trebuie indicate pentru
definirea unui produs, proces sau serviciu.

Elaborarea standardelor se face n legtur cu interesul diverselor pri


interesate. Avantajele lor sunt:
25

Simplificare gamei tot mai mari de produse si proceduri din viata


oamenilor;
Controlul diversitatii si utilizarea eficienta a materialelor, energiei si
resurselor umane;
Compatibilitatea si interschimbabilitatea;
Protectia muncii, sanatatii, vietii si mediului inconjurator;
Reducerea gradului de incertitudine pe piata;
Protectia intereselor consumatorilor si ale comunitatii;
Adecvarea pentru scop;
Eliminarea barierelor comerciale.
Faptul c consumatorii ncep s aib comportamente previzibile i fac
referine la un sistem recunoscut de standarde, influeneaz competitivitatea
societilor care concureaz pe piaa de consum, ceea ce poate modifica n mod
semnificativ echilibrul economic. Reducerea gradului de incertitudine pe pia se
resimte i de ctre societi, printr-o mai mare transparen n situaiile
contractuale, care s determine deciziile de investiie pe termen scurt.

2 Calitatea in sistemele software


26

2.1

Aspecte generale

Produsele software au devenit o parte esentiala a multor sisteme moderne si


n general tind sa transforme decisiv mediul de lucru cotidian prin automatizarea
activitatilor zilnice. De fiecare data cnd sistemele software gresesc consecintele
sunt foarte grave si conduc la scaderea productivitatii, pierderi importante de
bunuri de orice natura, pierderea clientilor si scaderea vnzarilor, potentiale
amenintari la siguranta vietii oamenilor, brese n asigurarea securitatii
informatiilor, pierderi importante de date si informatii, cheltuieli mari pentru
recuperarea datelor si repunerea n functiune a sistemelor. Ca urmare a aderarii
Romniei la Uniunea Europeana a aparut necesitatea dezvoltarii de produse si
servicii care sa fie compatibile si conforme cu standarde specifice pentru
acceptarea lor pe diverse piete. Mai mult, datorita noilor cerinte globale privind
calitatea produselor au capatat o importanta tot mai mare acordurile internationale
referitoare la procedurile de evaluare a calitatii produselor software. Prin acest
proiect partenerii si propun dezvoltarea unei platforme de cercetare care sa
implementeze functiile unui laborator de testare a produselor software, avnd ca
referinta un cadru conceptual metodologic bazat pe standarde internationale.
Conform standardului ISO 9000 -3 produsul software este definit ca fiind:
o creatie intelectuala care cuprinde programe, proceduri, reguli si orice
documentatie asociata referitoare la functionarea unui sistem de prelucrare a
datelor.
Produsul software reprezinta un ansamblu complet format din programe,
proceduri si documentie asociata, pentru calculator precum si datele destinate sa fie
livrate unui utilizator. Deci un produs software include si documentatia de instalare
si operare, documentatia de utilizare si intretinere, proceduri de utilizare si
materiale de instruire.
Fiecare generaie de calculatoare a imprimat particulariti specifice
procesului de dezvoltare software. De la programele monolit scrise n limbaje de
27

nivel sczut la programele structurate pe module sau care includ definiri de


componente, saltul este vizibil.
Odat cu creterea complexitii produsului program sunt implementate
diferite procese de management. Acestea gestioneaz calitatea produsului sau
cantitatea resurselor necesare, se implic n etapele ciclului de via al produsului
final i se confrunt cu un numr foarte mare de factori primari i agregai, ale
cror niveluri trebuie urmrite. Situaia impune modularizarea produsului program
n mai multe componente, fapt ce prezint avantaje prin:
reutilizarea acestora, incluzndu-le n alte produse;
mai bun gestiune a proceselor de analiz, proiectare i
implementare;
obinerea unei imagini clare a componentelor funcionale;
specializarea analitilor, designerilor i programatorilor.

2.2

Calitatea produselor software

Realizarea unui produs software de nivel calitativ ct mai ridicat, este


obiectivul principal n activitatea de obinere a acestuia i este urmrit pe
toat durata ciclului su de realizare. Atingerea acestui obiectiv trebuie evaluat i
probat n final.
Calitatea sistemelor de programe se creeaz n procesul de realizare i se
manifest n procesul de utilizare. Ca urmare apare calitatea funcional modul n care sistemul de programe rezolv cerinele beneficiarului i
calitatea tehnic - performanele tehnico-economice sau cu ce consum de resurse
se realizeaz funciunile globale ale sistemului.
Asigurarea unei eficiene globale a activitii de dezvoltare software
are ca scop minimizarea costurilor prin:

28

folosirea unor mijloace adecvate de elaborare i testare a sistemelor de


programe care s asigure minimul de erori admisibile n momentul
livrrii acestora;
utilizarea unor metode de analiz detaliat a cerinelor utilizatorilor
care s anticipeze cerinele ulterioare; elaborarea sistemelor de
programe ntr-un mod care s permit modificarea i adaptarea
uoar la cerinele impuse.
Calitatea produsului final se realizeaz treptat, pe msur ce se avanseaz n
procesul de obinere a acestuia. Procesul de elaborare este structurat pe etape i
faze i astfel se obin o serie de subproduse intermediare care constituie:
parti din documentatia finala a etapei care fac obiectivul avizarii la
sfarsitul acesteia;
documentatii de lucru destinate comunicarii interne in cadrul echipei
care realizeaza sistemul de programe;
parti din sistem realizate intr-o forma preliminara.

Controlul calitatii pe parcursul realizarii sistemelor de programe se


efectueaza atat in cadrul fiecarei etape din ciclul de realizare control interfazic,
cat si la sfarsitul fiecarei etape control final. Obiectivul controlului calitatii este
de a depista erorile, ambiguitatiile, omisiunile intr-un moment cat mai apropiat de
aparitia lor. Astfel se elimina propagarea acestora la etapa sau faza urmatoare.
Controalele se realizeaza cu ajutorul unor grile si liste de verificari specifice
acestei activitati.
Pentru caracterizarea calitatii sistemelor de programe se recurge la metode
care imbina ideile si practicile statistice, cu cele din ingineria si managementul
proiectelor.
Un sistem de programe trebuie sa intruneasca o serie de caracteristici de
calitate, care depind de natura problemelor rezolvate, de aria de aplicabilitate, de
suportul tehnic si de dinamica conditiilor de folosire. Asemanator altor domenii si
pentru dezvoltarea software se manifesta aceeasi concentrare pe produs, a
29

activitatiilor de conceptie, executie, asigurare si verificare a calitatii , ca si in


faza preindustriala. Datorita insa complexitatii sistemelor de programe care rezulta,
exista grupul de executanti impartit in colective sau indivizi specializati ce
actioneaza pe parcursul diferitelor faze ale procesului de dezvoltare software.
Una din particularitatile productiei de software, consta in faptul ca
activitatile desfasurate sunt specifice unei anumite faze din cadrul ciclului de viata,
sau independente de fazele ciclului de viata. Astfel, modelul de productie in
industria software este un model de productie a proiectelor. Atunci cand se pune
problema importantei calitatii software intervin trei aspecte majore:
exista domenii in care vietile oamenilor depind de buna functionare a
unor sisteme de programe si in care erorile care apar sunt uneori
fatale;
erorile provoaca pierderi de natura materiala, financiara si chiar
umana;
domeniul hardware este caracterizat de o tendinta de scadere a
costurilor, aspect care nu este valabil si in domeniul software unde,
desi a crescut productivitatea ca urmare a noilor metode de proiectare
si realizare, costurile nu urmeaza o tendinta de scadere.
Particularitatiile prin care se manifesta calitatea in domeniul industriei
software si modul in care ele influenteaza costurile sunt:
comportamentul instructiunilor nu se deterioreaza in timp;
erorile care apar sunt provocate de folosirea sau combinarea incorecta
a componentelor elementare, si nu de aceste componente in sine;
interactiunile dintre componentele unui program sunt mai complexe,
mai ales daca acesta ruleaza in cadrul unor sisteme de programe
complexe;
erorile exista deja in programe; ele sunt eliminate cu timpul, ca
urmare a activitatii de depanare, deci programul se imbunatateste prin
trecerea timpului;
eliminarea unei erori nu ofera certitudine asupra faptului ca numarul
total de erori s-a redus cu o unitate;
30

lipsa de calitate a sistemelor de programe este atribuita in intregime


greselilor umane legate de activitatile de proiectare, conceptie,
programare si documentare.
Calitatea produselor software este definita ca masura in care acestea satisfac
cerintele utilizatorilor prin caracteristici tehnice, economice si psiho-sociale.
Definitia porneste de la doua concepte fundamentale: cerintele utilizatorilor si
caracteristicile produsului. Considerate impreuna, acestea ofera o viziune clara
asupra calitatii sistemelor de programe.
In industria software o importanta deosebita o are relatia de dependenta
dintre specificul si calitatea procesului generator, calitatea proiectului si calitatea
produsului. Pe baza acestei interdependente, se deosebesc doi factori esentiali
pentru calitatea sistemelor de programe si anume: modelul specificat proiectul si
fidelitatea reproducerii modelului conformanta fata de proiect.
Produsul final al activitatii de dezvoltare software nu este perceput prin
simturile umane obisnuite si de aceea exista un numar mare de instrumente
proiectate pentru a face software-ul vizibil. Utlizarea acestora scoate in relief
aspecte ca:
logica software exprimata prin scheme logice, diagrame si listinguri
ale codului sursa a programelor;
calitatea software urmareste reprezentarea sau calculul volorilor
unor metrici ce exprima nivele ale unor caracteristici de calitate, sau
alre calitatii globale;
utilizarea unor modalitati de facilitare a comunicatiei reprezentarea
informatiilor despre logica sau calitate software se face in mod
particular pentru fiecare element participant la realizarea sistemelor de
programe; modul de reprezentare a informatiilor este diferentiat in
functie de beneficiarul acestor informatii; astfel programatorii inteleg
mai usor o schema logica in timp ce managerii asimileaza mai bine
aceleasi informatii daca sunt prezentate sub forma unei diagrame;
controlul distorsiunilor si redundantei - utilizarea unor indicatori
statistici precum numarul mediu de erori per modul reprezinta numai
31

primul pas al procesului de eliminare a cauzelor disfunctiilor in


ingineria software; in procesul de elaborare a sistemelor de programe
si implicit de realizare a calitatii lor, sunt necesare informatii despre
fiecare element implicat: logica programelor, schema fluxului de date,
schema bazelor de date, rezultatele testarii, asa cum au evoluat ele in
dinamica procesului de dezvoltare.
Aceste aspecte influenteaza in mod diferit fiabilitatea. Astfel, logica
software permite inlantuirea corecta a instructiunilor si contribuie la diminuarea
probabilitatii de aparitie a erorilor si implicit la cresterea fiabilitatii. Plasarea
componentelor redundante in cadrul unui sistem de programe reprezinta o
modalitate eficienta de obtinere a structurilor tolerante la erori. Acestea elimina
situatiile de blocare a sistemelor de programe in cazul aparitiei unor erori si
contribuie la obtinerea unui nivel ridicat al fiabilitatii.

2.3 Masurarea

calitatii produselor software

Realizarea de produse software pentru aplicatii complexe presupune


repartizarea unor programatori cu experienta si utilizarea unor sisteme de calcul
performante. In acest scop, trebuie sa se specifice cati programatori sunt necesari si
cat timp vor lucra. De asemenea, trebuie specificate cate posturi de lucru se vor
aloca, ce resurse sunt necesare (compilatoare, periferice, memorie, etc) si pe ce
durata. Dezvoltarea de aplicatii complexe presupune analiza, proiectare, testare,
implementare, toate necesitand forta de munca si resurse hardware.
Devizul de cheltuieli care precede elaborarea unui produs software reflecta
valoric consumurile de resurse necesare realizarii produsului, iar stabilirea
costurilor presupune efectuare de masurari.
Cumparatorul (utilizatorul) alege dupa diferite criterii un anumit produs.
Dominanta este corelatia cost-calitate. Atat costul, cat si calitatea, trebuie

32

exprimate cantitativ, pentru a evidentia marimea avantajului pe care o determina


alegerea facuta.
Efectele noilor tehnologii sunt cele care determina aplicarea lor, numai in
masura in care, prin cuantificare, conduc la rezultate superioare. De exemplu,
programarea structurata, prin sistematizarile determinate, a condus la reducerea
complexitatii, la cresterea productivitatii si facilitarea mentenantei software-ului.
Toate acestea au fost puse in evidenta cantitativ, printr-o serie de indicatori.
Programarea orientata spre cresterea gradului de reutilizabilitate determina
economie de munca, chiar daca nivelul de complexitate a problemelor ce se
rezolva este mult mai mare. Aceste tehnologii se implementeaza cu ajutorul unor
produse software dedicate. Studiul profitabilitatii, necesar achizitionarii acestor
instrumente, trebuie sa raspunda la intrebarea in cat timp se recupereaza investitiile
de achizitionare. Acest raspuns este posibil numai prin efectuarea unor cuantificari
ale avantajelor generate de programarea structurata.
Prezentarea n paralel a unor programe destinate rezolvrii aceleiai
probleme, scoate n eviden ceea ce au ele n comun, precum i ceea ce le
difereniaz. Trsturile importante care lipsesc vor determina perfecionri
ulterioare. Cnd se proiecteaz o nou variant, se caut eliminarea
inconvenientelor i preluarea tuturor elementelor pozitive. Noul produs trebuie
caracterizat n mod riguros, att prin costurile implicate ct i prin nivelul
caracteristicilor de calitate obinute.
n prezent marii productori de hardware i software recunosc
importana testrii i evalurii nivelurilor calitii. nc din anul 1986 compania
Siemens a fcut deosebiri ntre categoriile de observare, evaluare i estimare.
Astfel observarea este un proces prin care se apreciaz valoarea
caracteristicilor unui produs n timpul utilizrii. De exemplu, timpul de
rspuns al programelor este observat. Scopul acestei msurri este de a evalua
conformitatea cu proiectul.
Prin evaluare, raportarea unui tip de caracteristic ateptat are loc folosind
un produs n diferite faze de dezvoltare ct i ntr-o aplicare simulat.

33

Estimarea permite evaluarea valorii anticipate a unei caracteristici cu


ajutorul descrierii unui model al produsului sau al contextului aplicaiei. De
exemplu, timpii de rspuns ntr-un sistem informaional pot fi estimai folosind
predicii pe un model simulat.
Dezavantajul folosirii observaiei const n faptul c dezvoltarea produsului
este deja terminat, iar erorile pot deja s existe. Prin estimare pot fi evitate parial
aceste dezavantaje, din moment ce vorbim aici de o observare ipotetic asupra
tipurilor de caracteristici.
Una dintre diferenele dintre predicie (estimare) i observare const n
faptul c, condiiile implementrii produsului sau aplicaiei produsului sunt
numai parial cunoscute. O alt diferen este aceea c n cazul prediciei
ideile se aplic pe un model de produs abstract.
Pentru procesul de dezvoltare al produselor software, se poate aplica
postulatul lui Galileo numr ce este numrabil, msoar ce este msurabil i
dac ceva nu este msurabil, ncearc s-l faci msurabil.
n comparaie cu tehnicile clasice de msurare, tehnicile de msurare
n domeniul dezvoltrii produselor software au fcut doar primii pai.
Prin msurare, n domeniul IT, se nelege obinerea unei mulimi de
valori ale unei metrici a unui proces de dezvoltare, a unui proces de mentenan
sau a unui produs software prin intermediul unor instrumente (de exemplu: prin
analize statice, colectare de date de proiectare i prin sisteme de evaluare a
proiectului).
Procesul de masurare implica parcurgerea urmatoarelor etape:

Determinarea obiectelor masurarii;


Fixarea metricilor masurarii si a scalelor masurarii;
Alocarea metodelor de masurare si a instrumentelor de masurare;
Determinarea valorilor;
Interpretarea rezultatelor.

34

Masurarea caracteristicilor software presupune elaborarea unei descrieri


cantitative adecvate, prin cuantificare, care sa faciliteze si sa pregateasca
masurarea propriu-zisa.
Cuantificarea constituie operatia de introducere a conceptelor cantitative, de
trecere in studiul unui fenomen de la aprecieri atributive la concepte cantitative. In
urma operatiilor de cuantificare numerica se obtin metricile.
Msurarea unui atribut care nu depinde de msurarea altui atribut se numete
msurare direct. Rezultatul msurrii directe caracterizeaz atributele simple, cu
preponderen atributele interne ale produsului.
Msurarea unui atribut care necesit msurarea unuia sau mai multor
atribute ale aceleiai entiti sau ale entitilor din alte clase se numete
msurare indirect. Rezultatul msurrii indirecte se utilizeaz preponderent
pentru caracterizarea atributelor externe ale produselor, n scopuri de evaluare,
control i predicie.
n acest context, numeroase lucrri de specialitate descriu experimente
ale cror rezultate evideniaz existena unor relaii de dependen i de
interdependen ntre atributele interne i atributele externe ale software-ului
fapt foarte important pentru domeniul msurrii i estimrii calitii softwareului, deoarece este mult mai uor s avem msurri directe ale atributelor interne
dect ale atributelor externe.

2.4

Ansamblul caracteristicilor de calitate

Costurile ridicate ce caracterizeaz activitatea de construire a sistemelor


de programe, impun analiza corelaiei dintre performanele acestora i efectele
pe care le are utilizarea curent a lor. Performantele se stabilesc prin luarea in
considerare a dutatei in care se obtine solutia finala si a consumului de resurse
necesare, pentru rezolvarea integrala a problemelor curente. Nivelul performantei
este influentat de modul in care sistemlui de programe i s-au asigurat calitatea de
conceptie-proiectare, calitatea de executie, calitatea de conformitate, capacitatea de
35

utilizare curenta si capacitatea de mentenanta. Caracteristicile si atributele de


calitate formeaza un sistem dinamic complex; cresterea nivelului unei caracteristici
conduce atat la cresterea nivelurilor unei caracteristici, cat si la scaderea nivelurilor
pentru altele. Programatorii trebuie sa cunoasca modul in care interactioneaza
caracteristicile si atributele de calitate, pentru a asigura realizarea echilibrului
necesar incadrarii sistemului de programe intre limite de performante admise.
Caracteristicilor globale ale unui produs software, care confera calitatea
acestuia, le sunt asociate criterii de calitate:

Utilitatea satisfacerea cerintelor impuse in conditii de eficienta


economica ridicata;
Operationalitatea functionarea corecte intr-un mediu de utilizare
prestabilit, fara modificari si la nivelul performantelor specificate;
Adaptabilitatea folosirea sistemelor de programe intr-un mediu de
utilizare prestabilit, prin operarea de modificari cu un efort minim;
Transferabililitate folosirea fara modificari, sau cu modificari
minime, in alt mediu de utilizare decat cel prestabilit.

Utlitatea este un criteriu de calitate functionala, iar celelalte sunt criterii de


calitate tehnica.
Fiabilitatea este influentat in mod direct de nivelul acestor caracteristici.
Astfel, in cazul produselor software destinate evidentei contabile s-a constat ca
daca cerintele utlizatorilor sunt satisfacute in conditii de eficienta economica
ridicata, dispare necesitatea efectuarii de modificari. Implicit se micsoreaza
probabilitatea de introducere a unor noi erori; acest aspect conduce la reducerea
efortului de programare si testare, cu consecinte directe asupra nivelului costurilor
si premite cresterea fiabilitatii sistemelor de programe.
Intre caracteristicile de calitate exista o multime de relatii de subordonare,
interdependenta, ierarhizare, agregare sau de compozitie, iar complexitatea acestor
relatii face ca ansamblul caracteristicilor de calitate sa alcatuiasca un sistem, care
se bazeaza pe urmatoarele considerente:

36

Conexiunea elementelor interne ale sistemului sa fie mai puternica


decat legaturile sistemului cu mediul;
Indiferent de complexitatea unui sistem, el este la randul sau un
subsistem al altuia mai cuprinzator;
Unitatea si complexitatea unui sistem presupune o anumita ordine in
asezarea si functionarea elementelor sale;
Structura reprezinta o caracteristica definitorie a fiecarui sistem in
parte, ce trebuie privita sub forma de reunire a tuturor subsitemelor
sau prin urmarirea diferitelor structuri componente;
Orice subsitem este alcatuit dintr-o multime de bucle de reactie care
se inchid pe anumite portiuni de proces, pe anumite portiuni de
sistem, sau chiar la nivelul intregului sistem; la nivelul sistemului
caracteristicilor de calitate acest lucru se traduce prin
interdependentele si contradictiile existente intre caracteristici.
Caracteristicile de calitate constituie agregri ale atributelor de calitate
ce sunt corespunztoare unor proprieti concrete pe care trebuie s le posede
sistemele de programe.
O enumerare a acestora cuprinde acurateea, completitudinea,
personalizarea sau individualizarea, stabilitatea, conciziunea, simplitatea,
claritatea,
integritatea, confidenialitatea,
consistena,
operabilitatea,
generabilitatea, extensibilitatea, modularitatea, eficiena utilizrii resurselor.
Ordinea de prioritate trebuie specificat nc din etapele iniiale ale ciclului de
dezvoltare software, ntruct asigurarea lor influeneaz soluiile adoptate n
etapele urmtoare. Se face distincie ntre controlul calitii unui sistem de
programe i controlul calitii proiectului de realizare a lui. Acestea constituie
aspecte diferite ale procesului de control al calitii ce se desfoar pe ntregul
ciclu de dezvoltare a sistemului de programe.
Exista mai multe criterii de clasificare a caracteristicilor de calitate:
Faza ciclului de viata a sistemului de programe pune in evidenta
faptul ca exista caracteristici de calitate evidentiate in etapele de
elaborare a sistemului, iar altele apar in etapele de efectuare a
37

modificarilor in structura sistemului pentru a-i asigura mentinerea in


functiune;
Specificitatea sistemului de programe impune ca o caracteristica sa
fie prioritara, iar celelalte caracteristici secundare;
Persoana care elaboreaza, foloseste sau mentine in utilizare sistemul
de programe evidentiaza prezenta sau absenta unei caracteristici de
calitate.
Caracteristicile de calitate reprezint punctul de vedere al utilizatorului i al
efului de proiect asupra calitii, folosit la definirea cerinelor utilizatorului i la
stabilirea obiectivelor de calitate pentru sistemul de programe.
Subcaracteristicile au semnificaie tehnic i sunt relevante pentru
personalul de specialitate. Ele faciliteaz comunicarea ntre eful de proiect i
personalul
de
specialitate, pentru atingerea obiectivelor de calitate.
Subcaracteristicile se definesc pentru componentele sistemului de programe i
diferitele forme de reprezentare pe parcursul ciclului de via.

2.5

Definirea caracteristicilor de calitate ale produselor


software

Exista numeroase definiri si ierarhizari ale caracteristicilor de calitate.


Abordarea acestora este facuta in mod diferit de catre autorii care s-au ocupat de
acesta problema. Ei folosesc fie termenul de caracteristici de calitate, fie le
grupeaza in caracterisitici si atribute, caracteristici si factori sau caracteristici si
subcaracteristici.
Conceptul de fiabilitate se defineste drept probabilitatea ca o functie data sa
fie executata in mod corect de un sistem pe o perioada de timp impusa. Fiablitatea
este privita ca masura increderii pe care o avem in conceptia si in capacitatea unui
sistem de programe de a functiona corect in toate conditiile avute in vedere de la
inceput. Definitia se refera mai mult la fibilitatea procesului decat la cea a
38

sistemului de programe. Este legata de probabilitatea ca o eroare din cadrul


programelor componente ale sistemului sa fie activata de un set specific de date de
intrare.
In comparatie cu fiabilitatea produselor hardware, fiabilitatea produselor
software exprima particularitatile industriei producatoare de software. Abordarile
cantitative ale fiabilitatii software exprima probabilitatea ca un sistem de programe
sa-si indeplineasca functiile cu anumite performante si fara erori intr-un interval de
timp si in conditii de exploatare date. Abordarile calitative privesc fiabilitatea ca o
capacitate a sistemului de programe.
Standardul ISO/IEC 9126, defineste fiabilitatea ca un set de atribute bazat pe
capabilitatea produsului software de a-si mentine nivelul de performanta, in
conditii si pe o perioada de timp stabilite. Analiza acestei caracteristici pune
accentul pe toleranta la defecte si corectitudine.
Tehnicile de obtinere a tolerantei la defecte se aplica in special la
componentele hardware si la sistemele de operare. Principala problema in
programare este corectitudinea sistemelor de programe, in sensul ca acestea trebuie
sa indeplineasca specificatiile functionale stabilite.
Aprecierea fiabilitatii sistemelor de programe se face prin trei elemente:
Disponibilitatea implica conservarea unei capacitati ridicate de
prelucrare a unui sistem de programe, chiar daca apare o anomalie in
textul sursa al componentelor acestuia;
Integritatea impune ca rezultatele sa fie exacte;
Reproductibilitatea prelucrarii urmareste obtinerea acelorasi
rezultate, cu ajutorul unor seturi de date identice, la momente si
conditii de executie diferite.
Functionalitatea este definita in standardul ISO/IEC 9126 ca un set de
atribute bazate pe existenta unui set de functii si pe proprietatile lor specificate.
Functiile satisfac necesitatile stabilite sau implicite. Datorita acestui set de atribute
care definesc functionalitatea se demonstreaza scopul caruia serveste sistemul de
programe, pentru a indeplini cerintele. In acest timp, alte seturi arata momentul si
39

modul in care sistemul de programe corespunde nevoilor utilizatorilor. Pentru a


face referire la nevoile stabilite sau implicite, se porneste de la definitia data
calitatii in standardul ISO 8402, ca totalitatea trasaturilor si caracteristicilor unui
produs sau serviciu bazat pe abilitatea sa de a satisface nevoile stabilite sau
implicite.
Utilizabilitatea este definita ca un set de atribute bazate pe efortul necesar
pentru utilizarea produsului software si pe evaluarea individuala a utilizarii
acestuia, de catre un grup stabilit sau implicit de utilizatori. Termenul utilizator are
un inteles larg si include aici categorii diverse de persoane ca: operatori, utilizatori
finali si indirecti, precum si toate categoriile care isi desfasoara activitatea
dependent, sau sub influenta utilizarii produsului software respectiv.
Eficienta este definita ca o corelatie optima intre consumul de resurse
implicat de utilizarea produsului software si complexitatea problemei de rezolvat.
Aici este introdusa si notiunea de iesire a produsului software, definita ca o relatie
intre complexitatea datelor initiale si a rezultatelor finale. In standardul ISO/IEC
9126, definitia se refera la un set de atribute bazat pe relatia dintre nivelul de
performanta al produsului software si cantitatea de resurse utilizate, in anumite
conditii stabilite. Standardul ISO 8402 ofera un inteles mai larg termenului resurse
consumate si include aici memoria, timpul de executie, precizia, serviciile de
operare, mentenanta sau suport de personal.
Mentenabilitatea este definita ca un set de atribute bazate pe efortul necesar
de a face modificarile specificate in produsul software respectiv. Acestea include
corectii, imbunatatiri sau adaptari la modificari ale platformelor de dezvoltare sau a
celor carora le sunt destinate, modificari in cerinte si specificatii functionale. Un
produs software este mentenabil in masura in care permite o rapida si usoara
actualizare astfel incat sa se utilizeze in continuare, in bune conditii. Sensul in care
sunt privite aceste actualizari este mult mai restrans, deoarece ele se refera la
operatiile realizate la nivelul sistemului de programe, al programelor si modulelor
componente, secventelor de instructiuni ale instructiunilor. Nivelul mentenabilitatii
se stabileste pe baza datelor obtinute in etapele de proiectare, testare si utilizare
curenta.

40

Robustetea este cunoscuta si sub numele de toleranta la erori. Fiabilitatea


sistemelor de programe este dependenta de toleranta la defecte hardware. Toleranta
la erori are ca element specific usurinta diagnosticarii si este influentata de
capacitatea de trecere peste defectiuni hardware minore. Totodata facilitati cum
sunt detectarea erorilor de prelucrare si faptul ca atunci cand apar solicitari eronate,
acestea nu sunt executate, iar sistemele continua sa ramana in executie, conduc la
cresterea robustetei si implicit a fiabilitatii acestora. Pentru detectarea erorilor se
folosesc verificari dinamice ale informatiei si proceduri care sa semnaleze
incompatibilitati de date sau incercari de incalcare a restrictiilor de acces.
Portabilitatea este definita ca o caracteristica de ordin calitativ a sistemelor
de programe ce pot fi executate pe mai multe tipuri de calculatoare. Asigurarea
portabilitatii sistemelor de programe contribuie la mentinerea fiabilitatii la nivel
ridicat.
Pentru unele sisteme de programe, varietatea mediilor de dezvoltare
specifice fiecarui tip de calculatoare, precum si volumul modificarilor necesar
adaptarii face ca in cele mai mutle cazuri sa se opteze pentru solutia rescrierii
acestor programe. Cazurile in care se alege varianta modificarii sistemelor
existente sunt cele in care acestea trebuie transferate intr-un timp scurt. In aceasta
situatie s-a constatat insa ca nivelul fiabilitatii este scazut, iar costurile de
exploatare sunt mari si nu se justifica din punct de vedere economic.
Siguranta in utilizare, stabileste masura in care un sistem de programe nu
permite efectuarea de modificari neautorizate sau nedorite in volumele de date,
precum si distrugerea partiala sau totala a volumelor de date.
Stabilitatea exprima rezistenta sistemului de programe fata de efectele
generate de o modificare a datelor initiale, cat si a secventelor de instructiuni care
compun programele si modulele componente ale acestuia. In functie de nivelul la
care se efectueaza modificarea se definesc stabilitatea la nivel de instructiune, la
nivel de secventa, la nivel de modul, la nivel de program si respective, stabilitatea
globala a sistemului.
Adaptabilitatea reprezinta capacitatea sistemului de programe de a permite
integrarea de noi obiecte si de a include acele secvente de instructiuni care maresc
41

performanta sistemului si il aduc la nivelul eficientei de utilizare de la un moment


dat, ulterior elaborarii. Adaptabilitatea influenteaza fiabilitatea sistemului de
programe si este influentata de nivelul stabilitatii si de complexitate.
Testabilitatea ofera utilizatorilor posibilitatea de a evidentia comportamentul
sistemului de programe in situatii particulare. Prin asigurarea testabilitatii se
urmareste descoperirea cat mai multor variante de probleme rezolvabile cu aceste
sisteme de programe.
n practic s-a observat c un sistem de programe cu robustee ridicat are un
nivel de fiabilitate superior i este n acelai timp un sistem de programe testabil.
n prezent, testarea se realizeaza utilizand fie strategia black box (cand se
urmareste numai comportamentul functional al produsului), fie strategia white box
(se analizeaza comportamentul programului avand la dispozitie codul sursa al
acestuia). Nici o metoda de testare nu garanteaza corectitudinea produselor
software, nsa creste probabilitatea ca acestea sa se ncadreze n limitele de calitate
cerute.
Initial, testarea se facea integral manual, fiind considerata singura solutie de
a descoperi eventualele defecte. Ulterior, testarea manuala a fost ajutata si de
testarea automata. Testele automate executa practic o secventa de actiuni cu
interventie umana minima si pot simula utilizarea unei aplicatii n conditii reale, de
simultaneitate ridicata.
Exista o serie de controverse legate de alternativa manual sau automat.
Unii specialisti considera ca testele automate sunt foarte costisitoare n raport cu
utilitatea lor si, prin urmare, recomanda foarte putin utilizarea ei. Altii recomanda
ca testarea sa se faca 100% automat.
Adevarul este ca fiecare firma aplica mai mult sau mai putin testarea
automata, n functie de specificul fiecarui proiect, dar si de disponibilitatile
financiare. Aplicatiile de testare automata sunt destul de scumpe si putine firme
ajung sa investeasca n achizitionarea lor.
Complexitatea este caracteristica de calitate pentru care s-au dezvoltat cele
mai multe sisteme de metrici, si se studiaza in corelatie cu alte caracteristici. Odata
cu cresterea complexitatii s-a constatat o descrestere accentuata a fiabilitatii. Mai
mult, complexitatea determina si cresterea cheltuielilor de exploatare a sistemelor
42

de programe, precum si eforturile de a dezvolta noi versiuni sau de a rescrie


sistemele de programe sau numai anumite componente.
Flexibilitatea determina volumul de restrictii impus utilizatorilor pentru a
obtine rezultate complete si corecte prin folosirea sistemelor de programe.
Flexibilitatea este relationata cu numarul optiunilor pe care aceste sisteme le pun la
dispozitia utilizatorilor.
Analiza datelor provenite din exploatare a condus la concluzia c
sistemele de programe fiabile sunt n acelai timp flexibile.

2.6

Managementul calitatii software

Managementul calitii software este o component a managementului


general al calitii. Aceasta reprezint o subcomponent a funciei generale de
conducere, care determin i implementeaz politica n domeniul calitii i
deine responsabilitile pentru toate activitile care concur la ndeplinirea
obiectivelor privind calitatea. Sunt definite trei functii pentru managementul
calitatii software si anume: planificarea, asigurarea si imbunatatirea calitatii.
Deoarece fiabilitatea este o caracteristic de calitate urmrit cu atenie de
companiile care dezvolt software, ndeplinirea obiectivelor de fiabilitate necesit
aciuni corespunztoare de planificare, asigurare i mbuntire a acesteia.
Procesul de planificare urmrete dezvoltarea de produse i procese
care s corespund cerinelor clienilor. Planificarea calitii cuprinde activitile
prin care se stabilesc obiectivele i cerinele privind calitatea software precum
i resursele umane, financiare i materiale necesare realizrii obiectivelor. La
nivel strategic, sunt formulate principiile de baz i orientrile generale ale
organizaiei n domeniul calitii software, care se regsesc n politica
referitoare la domeniul calitii. La nivel operaional, planificarea extern are
drept scop identificarea clienilor i a cerinelor acestora, iar prin planificarea
intern se urmrete transpunerea cerinelor clienilor n caracteristici ale
sistemelor de programe i dezvoltarea unor produse software adecvate.

43

Planificarea fiabilitii software este o parte integrant a planificrii


unui proiect software. Activitatea de planificare este concretizat n planul de
fiabilitate. Acesta este corelat cu planul de dezvoltare a sistemelor de programe i
cu planul de calitate software.
Planificarea fiabilitatii software trebuie sa includa urmatoarele activitati:
Alocarea cerintelor de fiabilitate software;
Definirea strategiei pentru obtinea fiabilitatii software;
Definirea strategiei pentru evaluarea fiabilitatii software obtinuta.
Aceste activiti sunt interconectate i iterative. Ele presupun un proces
de inginerie software adecvat, insuficient pentru obinerea fiabilitii software.
Este necesar definirea unui proces care s asigure folosirea corect a
metodelor i tehnicilor corespunztoare, n momente potrivite din ciclul de
dezvoltare. Totui, procesul nu ofer predicii i nu demonstreaz nivelul
fiabilitii software. Pentru a dovedi c sistemele de programe i ating cerinele de
fiabilitate, evaluarea fiabilitii software trebuie planificat ca o activitate
specific. Planul de fiabilitate software descrie:
Cerintele de fiabilitate software derivate din cele sistem;
Procesul de inginerie software;
Tehnicile, metodele si instrumentele folosite pentru evaluarea
fiabilitatii software obtinuta in cadrul fiecarei faze din ciclul de viata;
Analiza riscului proiect pentru software;
Procedurile pentru raportarea progresului inregistrat de fiabilitatea
software;
Documentele si datele care trebuie livrate;
Structura organizationala care se refera la: stabilirea posturilor
individuale implicate in dezvoltarea software; descrierea nivelurilor
minime de competenta pentru posturile identificate; modalitatile de
constientizare a managerilor fata de cerintele fiabilitatii software si de
responsabilitatiile ce le revin; activitatile si cerintele de instruire.

44

Asigurarea calitii cuprinde activitile preventive prin care se


urmrete, n mod sistematic, corectitudinea i eficiena activitilor de
planificare i control, pentru a garanta obinerea unor produse software care s
satisfac cerinele de calitate ateptate de clieni.
Aceast funcie necesit att o abordare intern realizat prin prisma
conducerii companiei care dezvolt software, ct i una extern efectuat prin
prisma clienilor. Pentru asigurarea calitii sistemelor de programe se
ntreprind i aciuni de control. Controlul calitii software include activitile
de monitorizare a desfaurrii proceselor i de evaluare a rezultatelor referitoare
la calitatea software, n raport cu obiectivele stabilite, n scopul eliminrii
deficienelor i prevenirii apariiei acestora.
n ceea ce privete fiabilitatea, ca una dintre principalele caracteristici
de calitate software, ea a fost abordat indirect, prin standardele de asigurare
a calitii software n ansamblu - ISO 9000 i ISO 9126 sau direct, prin
standarde care vizeaz definirea terminologiei, precum i msurarea i evaluarea
fiabilitii software pe ntreg ciclul de via.
Asigurarea fiabilitii sistemelor de programe necesit implementarea unui
set integrat de activiti care cuprind estimarea, predicia, alocarea i
modelarea fiabilitii, precum i activiti de testare. Aceste activiti permit o
evaluare continu att a fiabilitii globale a sistemului, ct i a
componentelor sale. Activitile de estimare i predicie ale fiabilitii
sistemelor de programe cuprind patru categorii fundamentale:
stabilirea scopurilor de fiabilitate pentru componentele sistemelor prin
modelare i alocare;
estimarea fiabilitii designului software prin procesul de predicie a
fiabilitii;
creterea fiabilitii sistemelor de programe prin testarea profilului
operaional;
evaluarea fiabilitii sistemelor de programe obinute prin testarea
calificrii formale.

45

mbuntirea calitii cuprinde activitile desfurate n fiecare etap a


ciclului de via a unui sistem de programe, n scopul obinerii unui nivel
calitativ superior celui planificat, n condiiile desfurrii corespunztoare a
activitilor de planificare, control i asigurare a calitii. mbuntirea
fiabilitii, ca urmare a asigurrii calitii, se face prin verificarea i validarea
sistemelor de programe.
Cea mai puternic reflectare a problemelor optimizrii i mbuntirii
calitii la nivelul managementului, este apariia i dezvoltarea conceptului de
management al calitii totale. Cele trei componente de baz ale
managementului calitii totale sunt mbuntirea continu, satisfacerea
clienilor i creterea organizaiei. mbuntirea calitii are, la rndul ei, trei
componente: standardizarea, mbuntirea i inovaia.
Managementul calitii software constituie responsabilitatea tuturor
nivelurilor de conducere din companiile implicate n producia de software,
ns rolul cel mai important revine conducerii de vrf. n implementarea
managementului calitii software sunt implicai toi angajaii companiei.
Managerii sunt responsabili cu:
monitorizarea strii proiectelor software;
predicia datei de livrare a sistemelor;
determinarea momentului n care se permite efectuarea de modificri
n sistemele operaionale;
alegerea tehnicilor, metodelor i tehnologiilor de inginerie
software ce se aplic unui proiect;
luarea deciziei de acceptare a livrrii sistemelor de programe.
Ajutai de inginerii de sistem, aleg i refac planificrile, bugetele, alocrile i
scopurile fiabilitii componentelor unui sistem, precum i resursele necesare n
dezvoltrile de proiect; supervizeaz personalul cu alte roluri n colectarea
informaiilor i procesele decizionale.
Inginerii de sistem au responsabilitatea esenial pentru nelegerea naturii
sistemului n care se aplic msurarea fiabilitii software:
46

definesc ce nseamn o defectare pentru sistem;


stabilesc tipurile de defecte i le indic pe cele critice n funcie
de datele de defectare colectate;
studiaz raportul dintre fiabilitate, resurse i planificri;analizeaz
diferite opiuni pentru alocarea fiabilitii componentelor sistemelor
i estimeaz impactul costurilor de exploatare.
Responsabilii cu asigurarea calitii rspund de dezvoltarea procedurilor
pentru colectarea datelor necesare msurrii fiabilitii sistemelor de programe.
Primesc informaii de la inginerii de sistem i furnizeaz orientri pentru echipa de
testare i depanatori.
Membrii echipei de testare identific apariia defectrilor i
nregistreaz timpul de execuie sau timpul calendaristic, precum i alte informaii
utile.
n categoria depanatorilor intr programatorii ce au scris codul i care
realizeaz corecia defectelor.
n cadrul companiilor mari de software se desemneaz un inginer cu
fiabilitatea care face parte din colectivul responsabil cu asigurarea calitii. Lui i
revine rolul cheie n acest proces; ine legtura cu personalul implicat n
colectarea informaiilor despre defectri; este responsabil cu eliminarea
defectelor i utilizarea instrumentelor care implementeaz modele de cretere i
predicie a fiabilitii.

47

3. Studiul caracteristicilor de calitate software


Pentru aprecierea importanei care se acord caracteristicilor de calitate a
fost efectuat un studiu n care au fost cuprini un numr de zece programatori i
zece utilizatori.
Acestora li s-au cerut sa specifice nivelul de semnificatie al caracteristicilor
de calitate pe care le considera cele mai importante in procesul de evaluare a
calitatii sistemelor de programe destinate evidentei contabile. Exprimarea s-a
efectuat in format procentual, iar suma acestora nu trebuie sa depaseasca 100 de
procente. Rezulatele obtinute sunt prezentate in tabelele 2.1 si 2.2.
Caracteristica

Utilizabilitatea
Functionalitate
a
Fiabilitatea
Flexibilitatea
Eficienta
Siguranta in
utilizare
Complexibilitat
ea
Portabilitatea
Mentenabilitate
a
Testabilitatea
Robustetea
Adaptabilitatea
Stabilitatea

U
1
1
2
9
1
3
1
0
9

U
2
1
6
1
3
9
9

U
3
1
0
1
2
1
1

U
4
1
3
1
5
1
2

U
5
1
5
1
0
1
3

9
1
0

Utilizatori
U U U
6 7 8
1
1
1
1
4
7
1
1
1
2
0
3
1
1
0
1
9
1
7
7
0

U
9
1
3
1
2
1
0

U1
0

Media(%)

11

13.2

13

11.9

10

10.8

12

8.7

8.2

7.9

6
1
0

8
7

8
6

9
6

7
5

5
7

6
5

8
8

8
5

7
8

6
7

7.2
6.4

7
6
5
3
4

5
6
6
3
3

6
5
7
5
4

6
4
7
5
2

5
5
6
5
5

6
8
6
6
6

5
8
5
6
3

5
5
5
2
4

7
7
6
5
3

9
4
3
3
5

6.1
5.8
5.6
4.3
3.9

Tabelul 2.1 - Semnificaia caracteristicilor de calitate ale sistemelor de


programe pentru contabilitate n viziunea utilizatorilor

48

Caracteristica

Portabilitatea
Fiabilitatea
Complexibilitat
ea
Robustetea
Eficienta
Mentenabilitate
a
Utilizabilitatea
Functionalitate
a
Siguranta in
utilizare
Adaptabilitatea
Flexibilitatea
Testabilitatea
Stabilitatea

P
1
1
0
1
4
1
2

P
2
8
1
2
1
0
1
1

P
3
1
6
9
1
3

P
4
1
2
1
1

P
5
1
3
1
5
1
2

Programatori
P P P P
6 7 8 9
1 1 1 1
0 4 4 2
1 1 1
9 0 1 3
1
1 7 8 7
1
8 9 7 0
1
1
0 9 0 8
1
9 2 7 7
1
8 0 8 7

P1
0

Media(%)

12

12.1

12

11.6

9.7

8.9

8.7

8.3

7.7

8
1
0

9
1
0

7
1
0

6.9

5
5
6
3
5

7
7
6
4
2

5
6
4
5
6

7
6
5
6
4

6
4
2
7
5

6
5
5
5
6

5
4
3
4
4

5
8
5
6
3

6
7
7
5
3

9
5
10
3
4

6.1
5.7
5.3
4.8
4.2

9
1
1

Tabelul 2.2 - Semnificaia caracteristicilor de calitate ale sistemelor de


programe pentru contabilitate n viziunea programatorilor
Caracteristicile de calitate au fost ordonate n tabele n funcie de media
nivelurilor de semnificaie atribuite de utilizatori i programatori. Ordinea
obinut reflect importana acordat fiecrei caracteristici n procesul de
evaluare a calitii sistemelor de programe pentru contabilitate. Transpunerea
acestor rezultate n format grafic este prezentat n figurile 2.3 i 2.4.

49

In figura de mai sus sunt reprezentate ponderile acordate de utilizatori. Din


punctul lor de vedere factorii determinanti in aprecierea calitatii sistemelor de
programe pentru contabilitate, acele caracteristici pe care le percep in mod direct.
Astfel utilizabilitatea (13.2%), functionalitatea (11.9%) si fiabilitatea (10.8%) sunt
caracteristicile principale pe care utilizatorii le urmaresc atunci atunci cand
evalueaza calitatea unui astfel de sistem de programe.
Caracteristicile care nu le confera o perceptie directa asupra sistemului sunt
mai putin importante pentru utilizatori si de aceea ei le atribuie ponderi reduse.
Astfel stabilitatea (3.9%), adaptabilitatea (4.3%) si robustetea (5.6%) sunt
caracteristici de calitate, carora utilizatorii le acorda un nivel redus de importanta.
Acest lucru se datoreaza si faptului ca utilizatorii nu inteleg bine
semnificatia acestor caracteristici si de aceea nu au o viziune corecta asupra
modului in care ele influenteaza calitatea generala a serviciilor oferite de sistemele
de programe pentru compatibilitate.
Utilizatorii acorda niveluri de imortanta medii unor caracteristici cum sunt
eficienta (8.2%), siguranta in utilizare (7.9%) si complexitatea (7.2%). Astfel,
rezulta ca ei inteleg relatia de dependenta dintre calitatea si complexitatea unui
sistem de programe sau faptul ca acesta trebuie sa aiba un nivel de siguranta in
exploatare corespunzator si deasemenea, o buna eficienta.
50

Conform opiniei utilizatorilor aceste caracteristici contribuie la


mbuntirea nivelului de calitate a sistemului de programe dar nu sunt factorii lui
determinani.
Analizate din punctul de vedere al programatorilor, rezultatele exprim
viziunea diferit a acestora n raport cu utilizatorii, fa de nivelul de
importan atribuit caracteristicilor de calitate.
Astfel, acetia sunt interesai de acele caracteristici care produc efecte
majore i imediate asupra activitilor pe care ei le desfoar. Sunt urmrite
aspecte referitoare la reducerea volumului de munc vie, creterea productivitii
i a eficienei programatorilor i nu n ultimul rnd, reducerea costurilor pe care le
implic dezvoltarea sistemelor de programe pentru contabilitate.

Fig 2.4 : Ponderi acordate de programatori


n acest context, programatorii au considerat ca factori determinani n
evaluarea calitii acestor sisteme de programe, urmtoarele caracteristici:
portabilitatea (12,1%), fiabilitatea (11,6%) i complexitatea (9,7%).
O mai mic importan a fost acordat unor carateristici cum sunt
flexibilitatea (5,3%), testabilitatea (4,8%) i stabilitatea (4,2%). A surprins
nivelul redus de semnificaie pe care programatorii l-au atribuit testabilitii.
51

O explicaie a acestui aspect este faptul c n majoritatea companiilor


care dezvolt sisteme de programe pentru contabilitate, asamblarea
componentelor n produsul final i testarea ntregului sistem este efectuat de
aceleai persoane care au participat la activitile de analiz, proiectare i
codificare.
n aceste condiii, acetia au o viziune subiectiv asupra procesului de
dezvoltare i implicit asupra nivelului de importan al fiecrei etape din
ciclul de via al sistemelor de programe.
Mai mult, utilizatorii sunt rareori implicai n procesul de dezvoltare a
sistemelor de programe. Acest lucru este reliefat de diferenele existente n
modul de apreciere a importanei acordate diverselor caracteristici de calitate
care influeneaz calitatea general a serviciilor furnizate de sistemele de
programe pentru contabilitate.
Datele furnizate de utilizatori i programatori au fost cumulate i s-a obinut
o viziune global asupra importanei acordat diferitelor caracteristici de calitate n
procesul de evaluare a calitii generale a sistemelor de programe destinate
evidenei contabile.
Aceasta a fost exprimat sub forma mediei generale a nivelurilor de
semnificaie acordate de cei zece utilizatori i zece programatori pentru
fiecare caracteristic de calitate urmrit. Media a fost nregistrat n format
procentual, iar suma mediilor tuturor caracteristicilor este egal cu 100%.
Rezultatele obinute sunt prezentate n tabelul 2.5.
Caracteristic
a
Fiabilitatea
Utilizabilitatea
Functionalitate
a
Portabilitatea
Eficienta
Complexitatea
Robustetea
Mentenabilitat
ea

Media
generala(%)
11.2
10.45
9.4
9.25
8.45
8.45
7.25
7.2
52

Flexibilitatea
Siguranta in
utilizare
Testabilitatea
Adaptabilitatea
Stabitabilitatea

7
7
5.3
5
4.05

Tabelul 2.5: Nivelurile medii de semnificaie pentru caracteristicile de


calitate ale sistemelor de programe destinate evidenei contabile n viziunea
utilizatorilor i programatorilor.

Transpunerea acestor rezultate in format grafic este redata in figura 2.6 si


2.7.

Fig 2.6: Ponderi globale acordate de utilizatori i programatori

53

Fig 2.7: Ponderi globale acordate de utilizatori i programatori


Analiza acestor date reliefeaza tendinta generala in ceea ce priveste nivelul
de importanta acordat caracteristicilor de calitate, in procesul de evaluare a calitatii
serviciilor furnizate de sistemele de programe pentru contabilitate. S-a observant ca
fiabilitatea reprezinta caracteristica determinanta in acest proces cu o pondere de
11.2%, urmata indeaproape de utilizabilitate cu 10.45% si functionalitate cu 9.4%.
Ponderea ridicata atribuita fiabilitatii este justificata prin atentia sporita care este
acordata acestei caracteristici de calitate, atat in literature de specialitate, cat si in
practica evaluarii calitatii sistemelor de programe.
Complexitatea (8.45%), robustetea (7.25%) si mentenabilitatea (7.2%) sunt
plasate la mijlocul acestei scale de apreciere fapt care intareste convingerea ca atat
utilizatorii, cat si programatorii le inteleg semnificatia si le urmaresc evolutia
atunci cand evalueaza calitatea de ansamblu a sistemelor de programe pentru
contabilitate. Astfel, rezulta ca ambele categorii de persoane sesizeaza relatia de
dependenta dintre gradul de complexitate al unui sistem de programe si nivelul sau
de calitate. Mai mult, este urmarita cu atentie robustetea si mentenabilitatea
acestora, pentru a se face o estimare cat mai exacta a costurilor de exploatare.
Caracteristicile de calitate carora le sunt atribuite nivelurile de importanta
cele mai mici sunt: testabilitate (5.3%), adaptabilitatea (5%) si stabilitatea (4.05%).
54

Aceasta lipsa de interes este justificata prin perceptia diferita pe care cele
doua categorii de persoane o au fata de semnificatia caracteristicilor diferite.
Trebuie mentionat faptul ca rezultatele care s-au obtinut au un anumit grad
de subiectivitate. Intr-un alt context exista posibilitatea ca ele sa se schimbe. De
aceea trebuie privite prin prisma specificului domeniului abordat evaluarea
calitatii sistemelor de programe destinate evidentei contabile.

Concluzii
Produsele software au devenit componente esentiale ale multor sisteme si
produse, precum si un nou factor major in comertul de produse si servicii.
Imbunatatirea calitatii produselor software constituie una din principalele
forme in care se materializeaza capacitatea de creatie. Valoarea economica a unui
produs sotware rezulta din modul in care calitatea acestuia este perceputa de
clientii sau utilizatorii finali. Din ce in ce mai mult, calitatea este perceputa ca un
atribut critic al produsului software, deoarece, lipsa calitatii determina insatisfactia
utilizatorilor, pierderi financiare si chiar pierderi de vieti omenesti.
In scopul elaborarii produselor software avand un nivel ridicat al calitatii si
asigurarii satisfactiei clientilor, producatori de software au adoptat cele mai bune
practici si standarde refritoare la managementul calitatii in ciclul de viata al
produselor software.
Asa cum sunt prezentate si in lucrarea de fata, principalele caracteristici de
calitate ale produselor software sunt: fiabilitatea, utilizabilitatea, functionalitatea,
portabilitatea, eficienta, complexitatea, robustetea, mentenabilitatea, flexibilitatea,
siguranta in utilizare, testabilitatea, adaptabilitatea si stabilitatea.

55

Importanta acestor caracteristici este perceputa in mod diferit. Astfel


utilizatori acorda o mai mare importanta utilizabilitati, functionalitatii si fiabilitatii
in timp ce, pentru programatori mai importante sunt caracteristici precum:
portabilitea sau complexitatea, precum si fiabilitatea. Aceasta din urma detine o
pondere mare atat in conceptia utilizatorilor cat si in cea a programatorilor.
Astfel, in conceperea produselor software trebuie luate in calcul si aceste
caracteristici de calitate si in special fiabilitatea, adica capacitatea unui sistem de
programe de a funciona corect n toate condiiile avute n vedere de la nceput.
Asigurandu-se aceste proprietati ale produselor software, precum si
respectarea regulilor existente in standardele dedicate calitatii, vom obtine produse
software cu un nivel calitativ ridicat, avand o functionare corecta si fiind usor de
utilizat si intretinut.

Bibliografie
1.
2.
3.
4.
5.

Progres tehnic, calitate, standardizare Virginia Ciobotaru


Metode statistice in analiza software Ion Ivan, Catalin Boja
Asigurarea calitatii software-ului Radu Marinescu
Managementul calitatii software Ion Ivan
Calitatea si managementul calitatii Andrei Florin
6. www.pegas.ro
7. Proiectarea si implementarea sistemului calitatii D.
Constantinescu
8. ISO 9000 Quality systems developmenthandbook Hoyle D.
9. Managementul calitatii Olaru M.
10. Managementul calitatii. Tehnici si instrumente. Olaru M.

56

Cuprins
1.2 Caracteristicile produsului.................................................................................5
1.6.1 Functiile managementului calitatii............................................................16
3. Studiul caracteristicilor de calitate software.........................................................48
Concluzii...................................................................................................................55
Bibliografie............................................................................................................... 56
57

Cuprins.....................................................................................................................57

58

S-ar putea să vă placă și