instrument case pentru măsurarea complexității produselor software

19
Instrument CASE Instrument CASE pentru pentru măsurarea complexității măsurarea complexității produselor software produselor software

Upload: leanna

Post on 06-Jan-2016

56 views

Category:

Documents


1 download

DESCRIPTION

Instrument CASE pentru măsurarea complexității produselor software. Instrument CASE pentru măsurarea complexității produselor software. Agenda Noțiuni de măsurarea complexității software Descrierea instrumentului CASE Exemple și studii de caz Concluzii. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE Instrument CASE pentru pentru

măsurarea complexității măsurarea complexității produselor softwareproduselor software

Page 2: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

AgendaAgenda

1.1. Noțiuni de măsurarea complexității Noțiuni de măsurarea complexității softwaresoftware

2.2. Descrierea instrumentului CASEDescrierea instrumentului CASE

3.3. Exemple și studii de cazExemple și studii de caz

4.4. ConcluziiConcluzii

Page 3: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

1. Noțiuni de măsurarea complexității 1. Noțiuni de măsurarea complexității softwaresoftware

• La elaborarea si întreținerea produselor software, resursele La elaborarea si întreținerea produselor software, resursele consumate ajung să reprezinte 70-80% din costul total al consumate ajung să reprezinte 70-80% din costul total al sistemului (hardware si software)sistemului (hardware si software)

• Pentru a învinge concurenta produsele trebuie să coste cât mai Pentru a învinge concurenta produsele trebuie să coste cât mai puțin, să fie de calitate si să apară pe piață cât mai repedepuțin, să fie de calitate si să apară pe piață cât mai repede

• Unul din primii pași realizați atunci când se ia decizia de Unul din primii pași realizați atunci când se ia decizia de elaborare a unui nou produs este evaluarea calitativă si elaborare a unui nou produs este evaluarea calitativă si cantitativă a acestuia pentru a stabili în mod corect necesarul de cantitativă a acestuia pentru a stabili în mod corect necesarul de resurse umane, materiale și de timpresurse umane, materiale și de timp

• Lucrarea își propune sa realizeze o descriere a celor mai Lucrarea își propune sa realizeze o descriere a celor mai recente metode de evaluare, impuse pe scara largărecente metode de evaluare, impuse pe scara largă

• Atenția se va concentra în special asupra metodelor de evaluare Atenția se va concentra în special asupra metodelor de evaluare dimensională si funcționalădimensională si funcțională

Page 4: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Page 5: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Page 6: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Măsurarea codului sursă – LOC (Lines of Măsurarea codului sursă – LOC (Lines of Code)Code)

• LOC reprezintă numărul de linii sursă ale unui program, fără LOC reprezintă numărul de linii sursă ale unui program, fără includerea comentariilor sau a elementelor de documentareincluderea comentariilor sau a elementelor de documentare

• Măsurarea pe baza linilor de cod sursă LOC este dependentă de Măsurarea pe baza linilor de cod sursă LOC este dependentă de limbajul de programarelimbajul de programare

• Este folosită pentru a măsura dimensiunea unui produs software Este folosită pentru a măsura dimensiunea unui produs software și pentru a previziona efortul necesar pentru a dezvolta produsulși pentru a previziona efortul necesar pentru a dezvolta produsul

• LOC este ineficient în compararea produselor scrise in diferite LOC este ineficient în compararea produselor scrise in diferite limbaje de programarelimbaje de programare

• Există numeroase metrici care depind de LOC ca parametru de Există numeroase metrici care depind de LOC ca parametru de intrare: metrici de cost și efort, COCOMO, PRICE, SEER-SEM etc.intrare: metrici de cost și efort, COCOMO, PRICE, SEER-SEM etc.

Page 7: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Complexitatea ciclomatică McCabe Complexitatea ciclomatică McCabe

• Definită ca fiind gradul de complicare a unui sistem, Definită ca fiind gradul de complicare a unui sistem, determinată de factori cum sunt numărul și complexitatea determinată de factori cum sunt numărul și complexitatea ramurilor condiționale, gradul de imbricare și tipurile ramurilor condiționale, gradul de imbricare și tipurile structurilor de datestructurilor de date

• Este cea mai utilizată metrică software a complexităţii Este cea mai utilizată metrică software a complexităţii

• Definiție matematică Definiție matematică CCMM = na – nn + 2p = na – nn + 2p

• O aplicaţie frecventă a complexităţii ciclomatice este O aplicaţie frecventă a complexităţii ciclomatice este compararea rezultatului obţinut cu o valoare standard compararea rezultatului obţinut cu o valoare standard

Complexitate ciclomatică

Risc

0 – 1 un modul/program simplu, fără risc mare

1 – 2 un modul/program mai complex, cu risc mediu

2 – 5 un modul/program foarte complex, cu risc ridicat

mai mare de 5 un modul/program netestabil, cu un risc extrem de ridicat

Page 8: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Gradul de acoperire al funcționalităților ( Scor Gradul de acoperire al funcționalităților ( Scor Funcțional ) Funcțional )

• Scorul funcțional (SF) este obținut utilizând o relație empirică Scorul funcțional (SF) este obținut utilizând o relație empirică bazată pe estimări calculabile ale domeniului de informație al bazată pe estimări calculabile ale domeniului de informație al produsului precum si pe evaluări ale complexității aplicațieiprodusului precum si pe evaluări ale complexității aplicației

• Pentru a calcula scorul funcțional, este utilizata următoarea relație:Pentru a calcula scorul funcțional, este utilizata următoarea relație:

SF = SF = totalul-de-calcultotalul-de-calcul * 0.65 + 0.01 * SUM (Fi); * 0.65 + 0.01 * SUM (Fi);

• totalul-de-calcul totalul-de-calcul este suma rezultatelor parțiale obținute prin este suma rezultatelor parțiale obținute prin ponderarea valorilor domeniului de informațieponderarea valorilor domeniului de informație

• Sunt aplicați coeficienți de corecție Fi, i=1..14Sunt aplicați coeficienți de corecție Fi, i=1..14

• Poate fi estimat pe baza LOC prin introducerea unui coeficient Poate fi estimat pe baza LOC prin introducerea unui coeficient empiric empiric LOC/FP LOC/FP ( număr de linii sursă necesar pentru a dezvolta ( număr de linii sursă necesar pentru a dezvolta o unitate Scor Funcțional )o unitate Scor Funcțional )

Page 9: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Page 10: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

2. Descrierea instrumentului CASE2. Descrierea instrumentului CASE

• Datele de intrareDatele de intrare: codul sursă al produsului software ce : codul sursă al produsului software ce urmează a fi analizat, dezvoltat folosind limbajul de urmează a fi analizat, dezvoltat folosind limbajul de programare Java programare Java

• Compus din cinci componente principale:Compus din cinci componente principale:

Page 11: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

2. Descrierea instrumentului CASE2. Descrierea instrumentului CASE

• Interfața grafică a instrumentului este una ergonomică, axată Interfața grafică a instrumentului este una ergonomică, axată exclusiv pe funcționalitățile de analiză a datelor de intrare exclusiv pe funcționalitățile de analiză a datelor de intrare

• Analizele LOC si McCabe pot fi studiate în detaliu, de la Analizele LOC si McCabe pot fi studiate în detaliu, de la pachete pana la clase si metode Java – funcționalitate de drill-pachete pana la clase si metode Java – funcționalitate de drill-down.down.

• Posibilitate de analiză a distribuțiilor LOC pe pachete și Posibilitate de analiză a distribuțiilor LOC pe pachete și metode, dar și o distribuție a metodelor per pachetmetode, dar și o distribuție a metodelor per pachet

• Interfața grafică este structurată pe trei pagini, corespuzătoare Interfața grafică este structurată pe trei pagini, corespuzătoare celor trei tipuri de analizecelor trei tipuri de analize

• Fiecare pagină conține informații detaliate, dar și valorile Fiecare pagină conține informații detaliate, dar și valorile parametrilor pentru întregul produsparametrilor pentru întregul produs

Page 12: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

2. Descrierea instrumentului CASE2. Descrierea instrumentului CASE

Page 13: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Page 14: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Page 15: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Studiu de caz - CNAS-SIUI RomaniaStudiu de caz - CNAS-SIUI Romania

Analiza LOCAnaliza LOC

Analiza McCabeAnaliza McCabe

CCN Produs = CCN Produs = 1,941,94

Analiza FuncționalăAnaliza Funcțională

Scor Funcțional = Scor Funcțional = 42.66242.662

Efort (om/lună) = Efort (om/lună) = 6.932,51 6.932,51

Pachete Clase Metode LOC Comentarii

per

243 19.076 158.085 115.149.2

68.832 Produs

78,5 650,56 4.738,65 283,26 Pachet

8,29 60,36 3,61 Clasă

7,28 0,44 Metodă

Page 16: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Studiu de caz – NHIF BulgariaStudiu de caz – NHIF Bulgaria

Analiza LOCAnaliza LOC

Analiza McCabeAnaliza McCabe

CCN Produs = CCN Produs = 1,851,85

Analiza FuncționalăAnaliza Funcțională

Scor Funcțional = Scor Funcțional = 32.16932.169

Efort (om/lună) = Efort (om/lună) = 4.624,3 4.624,3

Pachete Clase Metode LOC Comentarii

per

186 13.657 126.754 857.841 59.280 Produs

73,42 681,47 4.612,05 318,71 Pachet

9,28 62,81 4,34 Clasă

6,77 0,47 Metodă

Page 17: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

Studiu de caz – IACS RomaniaStudiu de caz – IACS Romania

Analiza LOCAnaliza LOC

Analiza McCabeAnaliza McCabe

CCN Produs = CCN Produs = 1,91,9

Analiza FuncționalăAnaliza Funcțională

Scor Funcțional = Scor Funcțional = 11.81511.815

Efort (om/lună) = Efort (om/lună) = 1.772,31 1.772,31

Pachete Clase Metode LOC Comentarii

per

335 6.410 46.424 306.999 19.766 Produs

19,13 138,58 916,41 59,71 Pachet

7,24 47,89 3,08 Clasă

6,61 0,43 Metodă

Page 18: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

4. Concluzii4. Concluzii

Page 19: Instrument CASE  pentru măsurarea complexității produselor  software

Instrument CASE pentru măsurarea complexității Instrument CASE pentru măsurarea complexității produselor softwareproduselor software

4. Concluzii4. Concluzii