12
Ureche Mihai Cotoc Ginel-Dragos Gr. 443A

Capability Maturity Model Integration

  • Upload
    gizi

  • View
    66

  • Download
    2

Embed Size (px)

DESCRIPTION

Capability Maturity Model Integration. Ureche Mihai Cotoc Ginel-Dragos Gr. 443A. Cuprins. Introducere Cele cinci nivele ale procesului de maturitate Definitia operational a capabilitatii modelului de maturitate Directii viitoare ale CMM Concluzii. 1. Introducere. - PowerPoint PPT Presentation

Citation preview

Page 1: Capability Maturity Model Integration

Ureche MihaiCotoc Ginel-Dragos

Gr. 443A

Page 2: Capability Maturity Model Integration

CuprinsIntroducereCele cinci nivele ale procesului de maturitateDefinitia operational a capabilitatii modelului

de maturitateDirectii viitoare ale CMMConcluzii

Page 3: Capability Maturity Model Integration

1. Introducere Dupa doua decenii de promisiuni neonorate cu privire la cresterile de

productivitate si de calitate de la aplicarea unor noi metodologii de software si tehnologii, organizatiile isi dau seama ca problema lor fundamental este incapacitatea de a gestiona procesul de software.

In Noiembrie 1986, Institutul de Inginerie Software (SEI), cu asistenta din partea Corporatiei Mitre, au inceput dezvoltarea unui framework care au ajutat organizatiile sa isi imbunatateasca procesul software. In septembrie 1987, SEI a lansat o scurta descriere a framework-ului de maturitate a procesului, care a fost extins ulterior in cartea lui Humphrey, Gestionarea Procesului de Software.

Dupa patru ani de experimentare cu framework-ul de maturitate al proceselor de software si versiunile preliminarii ale chestionarului de maturitate, SEI a evoluat framework-ul de maturitate in Capability Maturity Model for Software (CMM). CMM prezinta seturi de practice recomandate intr-o serie de domenii cheie care si-au dovedit capacitatea de a consolida procesul de software.

Stabilirea obiectivelor pentru procesul de imbunatatire necesita o intelegere a diferentei dintre organizatiile de software imature si mature. Intr-o organizatie de software imatura, procesele software sunt in general improvizate de practicieni si de gestionarea acestora pe parcursul proiectului.

Page 4: Capability Maturity Model Integration

Intr-o organizatie imatura, nu exista nici un obiectiv de baza pentru evaluarea calitatii sau pentru rezolvarea produsului sau problemelor procesului. Prin urmare, este dificil de a prezice calitatea produsului. Pe de alta parte, o organizatie de software matura poseda o abilitate la nicel de organizatie pentru gestionarea proceselor de dezvoltare si intretinere a soft-ului.

Un proces software poate fi definit ca fiind un set de activitati, metode, practice si transformari pe care oamenii le folosesc pentru a dezvolta si mentine software-ul si produsele associate ( ex: planuri de proiecte, documente de proiectare, codul si manuale de folosire ). Ca o organizatie matura, procesele de software devin mai bine definite si sunt implementat mai consistent in cadrul organizatiei.

Capabilitatea proceselor software descrie valoarea rezultatelor asteptate care pot fi atinse urmand procesele software.

Performanta proceselor software reprezinta rezultatele actuale obtinute urmand procesul software. Astfel, performanta proceselor software sunt concentrate pe rezultatele obtinute, in timp ce capabilitatea proceselor software sunt concentrate pe rezultatele asteptate.

Maturitatea proceselor software este masura in care un process specific este explicit definit, gestionat, masurat, controlat si eficient.

Page 5: Capability Maturity Model Integration

2.Cele cinci nivele ale procesului de maturitate Imbunatatirea continua a procesului se bazeaza pe pasi mici mai degraba decat

inovatii revolutionare. Structura CMM-ului se bazeaza pe principii de calitate expuse de catre Walter Shewart, W. Edwards Deming, Joseph Juran si Philip Crosby. CMM ofera un framework folosit pentru organizarea acestor etape evolutive in cinci niveluri de maturitate care pun bazele succesive pentru imbunatatirea continua a proceselor.

Un nivel de maturitate este un platou evolutiv bine definit spre realizarea unui proces software matur. Fiecare nivel cuprinde un set de obiective, care atunci cand sunt indeplinite stabilesc o componenta importanta a procesului software.

Organizarea CMM in cinci niveluri prezentate in figura urmatoarea prioritizeaza actiuni de ameliorare pentru cresterea procesului de maturitate software. Sagetile din figura indica tipul de capacitate a procesului de a fi institutionalizat de catre organizatie pentru fiecare pas din cadrul framework-ului de maturitate.

Cele 5 niveluri sunt urmatoare: - Nivelul de initializare - Nivelul de repetabilitate - Nivelul de definitie - Nivelul de gestiune - Nivelul de optimizare

Page 6: Capability Maturity Model Integration
Page 7: Capability Maturity Model Integration

Nivelul de initializare La nivelul initial, organizatia de obicei nu ofera un mediu stabil pentru

dezvoltarea si mentinerea software. In timpul unei crize, proiectele de obicei abandoneaza procedurile planificate si revin la codificare si testare.

Nivelul de repetabilitate La nivelul repetabil, politicile de gestionare a proiectului software si

procedurile pentru a implementa aceste politici sunt stabilite. Planificarea si gestionarea de noi proiecte se bazeaza pe experienta cu proiectele similare.

Nivelul de definitie La nivelul definit, procesul standard pentru dezvoltarea si mentinerea soft-

ului din intreaga organizatie este documentat, incluzand atat procesele de inginerie software cat si cele de management, iar aceste procese sunt integrate intr-un intreg coerent.

Nivelul de gestiune La nivelul gestionat, organizatia stabileste obiectivele calitative atat

pentru produsele software cat si pentru procese. Nivelul de optimizare La nivelul de optimizare, toata organizatia este concentrata pe procesul

continuu de imbunatatire. Organizatia are ca scop identificarea punctelor slabe si sa consolideze procesul de productivitate, cu scopul de a preveni aparitia de defecte.

Page 8: Capability Maturity Model Integration

3. Definitia operational a capabilitatii modelului de maturitate CMM este un framework ce reprezinta o cale de imbunatatire recomandata

pentru organizatiile software care vor sa isi creasca capabilitatea procesului software. Aceasta elaborare operational a CMM este conceputa pentru a sprijini mai multe moduri ce vor fi utilizate. Sunt cel putin patru utilizari ale CMM care sunt acceptate:

a. Echipele de evaluare vor folosi CMM pentru a identifica punctele forte si punctele slabe in cadrul organizatiei

b. Echipele de evaluarea vor folosi CMM pentru a identifica riscurile de a alege intre diferiti contractori pentru acordarea de afaceri si pentru a monitoriza contractele.

c. Managementul superior va folosi CMM pentru a intelege activitatile necesare pentru lansarea unui process de imbunatatire a programului software in cadrul organizatiei lor.

d. Personalul tehnic si grupurile de imbunatatire a proceselor, cum ar fi SEPG, vor folosi CMM ca un ghid pentru a le ajuta sa defineasca si sa imbunatateasca procesul software in organizatia lor.

Fiecare nivel de maturitate a fost descompus in parti constituente. Exceptie facand nivelul 1, descompunerea fiecarui nivel de maturitate variaza de rezumatele abstracte ale nivelelor de jos pana la definirea lor operationale in practicile cheie, asa cum este ilustrat in Figura 3.1.

Page 9: Capability Maturity Model Integration
Page 10: Capability Maturity Model Integration

Cu exceptia nivelului 1, fiecare nivel de maturitate este descompus în mai multe zone cheie de procesare care indica unde o organizatie ar trebui sa se concentreze pentru a imbunatati procesul de software.

Fiecare zona cheie a procesului identifica un grup de activitati legate de faptul ca, atunci cand sunt efectuate in mod colectiv, ating un set de obiective considerate importante pentru marirea capacitati procesului. Zonele cheie ale procesului au fost definite astfel incat sa sa apartina unui nivel de maturitate unic, cum se arata in figura 3.2.

Calea spre atingerea obiectivele unei zone cheie de proces poate diferi de la proiecte bazate pe diferentele in domeniile sau mediile de aplicabilitate.

Page 11: Capability Maturity Model Integration

4. Directii viitoare ale CMM Atingerea unor niveluri mai ridicate de maturitate a procesului software

sunt elementare si necesita un angajament pe termen lung pentru imbunatatirea continua a proceselor. Organizatiilor Software le pot lua zece ani sau mai mult pentru a construi fundatia pentru, si o cultura orientată spre, imbunatatirea continua a proceselor.

CMM nu este un glont de argint si nu abordeaza toate aspectele care sunt important pentru proiectele de succes. De exemplu, CMM in prezent nu apeleaza la expertiza in domenii de aplicabilitate speciale, specifice tehnologiilor software, sau sa sugereze cum sa selecteze, angajeze, motiveze, si sa pastreze persoane competente. Desi aceste aspecte sunt cruciale pentru succesul unui proiect, ele nu au fost integrati in CMM.

SEI , de asemenea, lucreaza cu Organizatia Internaţionala de Standardizare (ISO) in eforturile sale de a construi standardele internationale de evaluare a procesului de software, imbunatatire, si capacitatea de evaluare. Acest efort va integra concepte de la mai multe metode diferite folosite in procesul de imbunatatire. Dezvoltarea Standardelor ISO (si contributiile de la alte metode) vor influenta CMM v2.0, chiar ca activitatea SEI va influenta procesul de activitate ISO.

Page 12: Capability Maturity Model Integration

5. Concluzii CMM reprezinta un "simt comun de inginerie" care abordeaza

imbunatatirea procesului software. Nivelurile de maturitate, zonele cheie de proces, caracterisitcile comune,si practicile cheie au fost discutate pe larg si revizuite in cadrul comunitatii software.

CMM ofera o structura conceptuala pentru imbunatatirea managementului si dezvoltarea de produse software intr-un mod disciplinat si consecvent. Aceasta nu garanteaza ca produsele software vor fi construite cu succes sau ca toate probleme in ingineria software vor fi rezolvate in mod corespunzator.

CMM identifica practici pentru un proces de software matur si ofera exemple de state-of-the-practice (si, in unele cazuri, state-of-the-art), dar aceasta nu este menit sa fie exhaustiv sau dictatorial.

CMM identifica caracteristicile unui proces eficace de software, dar organizatia matura abordeaza toate aspectele esentiale pentru un proiect de succes, inclusiv oameni si tehnologie, precum si procesul.