Metrici Ale Complexitatii Software (2)

Embed Size (px)

Citation preview

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    1/19

    UNIVERSITATEA POLITEHNICA BUCURESTI

    METRICI ALE COMPLEXITATIISOFTWARE

    Iliuta VirgilBalint George

    GRUPA 441A

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    2/19

    Metri i !o"t#are

    Metricile software sunt mo ele!re"uli# folosite $entru a masura cantitati% anumitecaracteristici ale sistemelor informatice& Metricile software 'n"lo(ea)* mo ele+in icatori ,i $ro$riet*-ile acestora+ $recum ,i mo alit*-i e e%aluare ,i %ali are&Metricile software se folosesc $entru a re uce su(iecti%itatea a$recierii unui $ro"ram&

    $e"initie %ate%ati a&

    Metrica software este un mo el matematic e)%oltat 'n .urul unei ecua-ii e forma/

    y = f( x )

    Un mo el matematic cu$rin e una sau mai multe ecua-ii+ inecua-ii ,i are una sau maimulte func-ii o(iecti%+ iar rolul lui este e a escriestarea sistemuluiasociat& Metricasoftware are rolul e a m0sura o anumit0 caracteristic0 a unui $ro us $ro"ram+ lu1n

    'n calcul factorii ce influen-ea)0 ni%elul caracteristicii m0surate& A$lic1n u2se tuturor $ro uselor software intr2un lot omo"en+ metrica e%ine instrumentul $rininterme iul c0ruia se efectuea)0 clasific0ri ,i ierar3i)0riale $ro uselor software& Ometric0 software este func-ie o(iecti% a mo elului matematic c0ruia 'i a$ar-ine+

    ac0 $rin a$licarea ei se are 'n %e ere ma4imi)area sau minimi)area ni%eluluicaracteristicii cercetate 'n func-ie e to-i factorii einfluen-0/

    f(X) < 5 sau f(X) > 6un e/

    X 7 %ectorul factorilor ce influen-ea)0 caracteristica software m0surat08

    5 ,i 67 ni%eluri limit0 a mise&Metrica software este restric-ie a mo elului matematic ac0 $lasea)0 ni%elul m0suratal caracteristicii 'ntr2un inter%al efinit e/

    6 < f(X) < 59n tim$ ce mo elul matematic are ca o(iecti% efinirea structurii software+ metricacreea)0 con i-iile care $ermit com$ararea,i are caracter normati%

    :estionarea eficient0 a oric0rui $roces necesit0 cuantificare+ m0surare+ ,imo elare& Metricile software ofer0 o (a)0 cantitati%0 $entru e)%oltarea ,i %ali areamo elelor $rocesului e e)%oltare software& Metricile $ot fi utili)ate $entru'm(un0t0-irea $ro ucti%itatii ,i calitatii software& ;e,i curent m0sur0torile ,imo elele sunt cu si"uran-0 ina ec%ate+ un numar e or"ani)a-ii au re)ultate $romi-0toare $rin utili)area lor&

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    3/19

    Fun tii in'e(linite& Metricile software au rolul e a reali)a/

    Fun )ia 'e %*!urare & Cu si"uran-0 cea mai im$ortant0 func-ie a metricilor software+m0surarea re$re)int0 o(iecti%ul $rinci$al 'n .urul c0ruia sunt e)%oltate acesteinstrumente& Pro usele software a$ar-in unui omeniu strict o(iecti%+ 'n care oricereali)are are fun amente matematice ,i caracteristici escrise e %alori numerice+

    eci care sunt m0sura(ile ,i re$re)entate $rin numere& La (a)a tuturor in icatorilor ,ic3iar la (a)a sistemului e caracteristici e calitate efinit e stan ar ul IEEE se"0sesc atele $rimare+ o(-inute $rin sim$lele 'nre"istr0ri ale ni%elurilorcaracteristicilor software/ num0rul e linii surs0+ num0rul e rul0ri+ num0rul e erori+num0rul e instruc-iuni+ num0rul e cicluri ma,in0& Cum 'n ansam(lul anali)ei lotului

    e $ro use software aceste ate sunt consi erate e (a)0+ ele sunt su$use unor $relucr0ri ulterioare $rin intro ucerea e metrici a"re"ate+ a 1ncin astfel cercetarea&Re)ultatul utili)0rii unei metrici este e4$rimat 'n unit0-i concrete e m0sur0 ,i are o $o)i-ie $recis0 'n sistemul e metrici software $rin interme iul c0ruia este escris unlot e $ro"ram&

    Fun )ia 'e o%(arare & Sco$ul final al utili)0rii metricilor software este e a anali)ain $unctul e %e ere al unei caracteristici software un $ro"ram ,i e a2l com$ara cu

    el 'nsu,i + 'nca r1n u2l 'ntr2o cate"orie efinit0 e $ro"rame+ sau e a2l com$ara cualte $ro use software+ $las1n u2l $e o anumit0 trea$t0 in ierar3ia software&Com$arare se re)um0 la reali)area iferen-ei 'ntre oi termeni e4$rima-i 'n aceea,iunitate e m0sur0 cu %erificarea $o)i-iei re)ultatului fa-0 e =+ sau la calculareara$ortului+ cu %erificarea $o)i-iei re)ultatului fa-0 e >&

    Fun )ia 'e anali+* & Re)ult0 in orin-a e a a semnifica-ie re)ultatelor numericeo(-inute $rin a$licarea mo elelor matematice asociate metricilor& 9n finalul anali)ei+ $e (a)a numerelor o(-inute+ $ro usului software i se confer0 calit0-i ca fia(ilitate+economie e tim$+ economie e resurse+ calit0-i care sunt mult mai $uternice ,i maisemnificati%e ec1t sim$lele %alori numerice in care sunt e use&

    Fun )ia 'e !inte+* & 9n situa-ia cercet0rii $e "ru$e "enerale e $ro use software+ ee4em$lu anali)a statistica a $ro"ramelor scrise 'n lim(a.ul C?? ,i Pascal+ esteim$osi(il0 %erificarea tuturor $ro"ramelor scrise 'ntr2unul in lim(a.e ,i seconstruiesc loturi omo"ene cu num0r o$tim e $ro"rame& Valorile m0surate $rinutili)area iferitelor metrici sinteti)ea)0 'ntr2o sin"ur0 e4$resie numeric0 ceea ce esteesen-ial ,i ti$ic $entru 'ntrea"a cate"orie e $ro"rame&

    Fun )ia 'e e!ti%are & Metrica software+ asemenea in icatorilor statistici+ este folosit0 $entru m0surarea ten in-ei e cre,tere@sc0 ere a ni%elului caracteristicii softwarecercetate+ $lec1n u2se e la i$ote)a c0 %aria(ilele sunt acelea,i&

    Fun )ia 'e ,eri"i are & Re)ultatele o(-inute a$lic1n metrica software sunt toto at0utili)ate $entru a confirma ,i 'nt0ri sau $entru a infirma conclu)iile o(-inute $rin altemeto e& Utili)area unei metrici software 'n $ractic0 im$lic0 i$ote)a %ali 0rii acesteia,i asi"urarea in e$en en-ei re)ultatelor&

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    4/19

    Cri)a software tre(uie s0 fie a(or ata ,i+ in m0sura 'n care este $osi(il+re)ol%ata& Pentru a face acest lucru se necesit0 mai multe $ro"rame e4acte ,i estim0ri

    e costuri+ calitate mai (un0 $entru $ro use+ ,i $ro ucti%itate mai mare& Toateacestea $ot fi reali)ate $rintr2un mana"ement software mai eficient + care+ la r1n uls0u+ $oate fi facilitat $rin utili)area e metrici software&

    Mana"ementul software curent este ineficient+ eoarece e)%oltarea softwareeste e4trem e com$le4a+ ,i a%em oar c1te%a m0suri e 'ncre ere (ine efinite in $rocese sau $ro use $entru a 'n ruma ,i e%alua e)%oltarea& Estimarea eficienta sie4acta+ $lanificarea+ ,i controlul sunt a$roa$e im$osi(il e reali)at & 9m(un0t0-irea $rocesului e "estionare a lucrului e$in e e a(ilitatea 'm(un0t0-it0 e a i entifica+m0sura+ ,i controla $arametrii esen-iali ai e)%olt0rii $roceselor& Acesta este sco$ulin icatorilor Software& I entificarea ,i m0surarea sunt esen-ialii $arametri care

    afectea)0 e)%oltarea e software&Metricile software ,i mo ele au fost $ro$use ,i folosite e ce%a tim$&Re)ultatele recente in ic0 c0 $unerea 'n a$licare a unei com(ina-ii 'ntre un $ro"ramsoftware si metrici $oate a.uta la atin"erea unor re)ultate mai (une+ at1t $e termenscurt !$entru un anumit $roiect# cat si $e termen lun" !'m(un0t0-irea $ro ucti%itatii $entru $roiecte %iitoare#& O mai (un0 utili)are a metricilor e4istente $are a fi unfactor im$ortant 'n re)ol%area cri)ei software2ului&

    $e"initia Metri ii So"t#are

    Este im$ortant s0 se efineasc0 'n continuare software-ul. 9n esen-0+ software-ul se ocu$0 cumăsurătorile $ro usului software ,i a $rocesului $rin care acesta estee)%oltat& 9n aceast0 iscu-ie+ $ro usul software ar tre(ui s0 fie $ri%it ca un o(iecta(stract care e%oluea)0 e la o eclara-ie ini-ial0 e necesitate la un sistem softwareterminat + inclusi% co ul surs0 ,i co ul o(iect ,i i%erse forme e ocumentare $ro use 'n tim$ul e e)%oltare&

    9n mo o(i,nuit+ aceste sunt stu iate ,i e)%oltate $entru utili)area 'n mo elareae $rocese software& Aceste %alori ,i mo ele sunt a$oi folosite $entru a estima

    antici$a costurile $ro uselor ,i s0 m0soare $ro ucti%itatea ,i calitatea $ro uselor&Informatiile o(-inute in m0sur0tori a$oi $ot fi utili)ate 'n "estionarea ,i controlul

    e)%oltarii $rocesului e 'm(un0t0-ire a re)ultatelor&

    M0sur0torile (une ar tre(ui s0 facilite)e e)%oltarea e mo elele care suntca$a(ile e a $re)ice un $roces sau $arametrii e $ro us+ nu oar a le escrie& Astfel+metricele i eale ar tre(ui sa fie sim$le si $recis efinite+ astfel 'nc1t s0 fieclar cum o metrica $oate fi e%aluat0/

    • o(iecti%+ 'n cea mai mare m0sur0 $osi(il08• cu un cost re)ona(il• u,or e o(-inut• metrica ar tre(ui s0 m0soare ceea ce este estinat0 s0 m0soare• insensi(ila la mo ific0ri nesemnificati%e 'n $rocesul e e)%oltare al

    $ro usului &

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    5/19

    9n $lus+ $entru utilitate ma4im0 'n stu iile analitice ,i anali)ele statistice+m0sur0torile ar tre(ui s0 ai(0 %alori care a$ar-in e m0suratoareacores$un)0toare&

    & Calit0-i fun amentale necesare $entru orice sistem te3nic sunt/• func-ionalitate+corectitu ine+ fia(ilitate• $erforman-0+ tim$ e r0s$uns+ e(it+ %ite)a• Cost sca)ut+ eficacitate&

    Performan-a este cu si"uran-0 im$ortanta+ ar nu este inclusa 'n ca rul iscu-iilore software+ cu o e4ce$-ie 'n ceea ce $ri%e,te ac0 $ro usul 'n e$line,te cerin-ele

    s$ecifice e $erforman-0 $entru acest $ro us&

    E%aluarea $erformantei este eseori tratata e c0tre cei im$lica-i 'nevaluarii de performanţă, stu iide renovare, ar acestea nu sunt 'n "eneral incluse 'n ceea ce este

    cunoscut cametrica software& Este $osi(il ca+ 'n %iitor+ omeniul e a$licare almetricilor software sa fie e4tins $entru a inclu e $erforman-a si e%aluarea+ sau ca am(ele acti%it0-i sa $oata ficonsi erate $arte intr2o su$rafa-0 mai mare care ar $utea fi numit software demăsurare.

    Com$le4itatea software este o caracteristic0 e calitate care se re"0se,te 'ncalculul e%i)elor $entru e)%oltarea software ,i $entru corectarea in icatorului e $ro ucti2%itate a $ro"ramatorilor& Metricile software s2au efinit $e (a)a a trei surse/ metrici (a)ate $e te4tul

    surs0+ metrici (a)ate $e "raful asociat $ro"ramului+ metrici e com$ortament care'nre2"istrea)0 ni%eluri ale $arametrilor 'n tim2$ul e4ecu-iei $ro"ramului&

    Cara teri!ti i&

    Si%(litate / ;efinirea si utili)area metricilor este una sim$la&

    O-ie ti,e / Masuratori facute e $ersone iferite au acelasi re)ultat&

    U!or 'e ole tat / Efortul si costurile colectarii atelor necesare este acce$ta(il&

    Ro-u!te / Sunt insensiti%e la sc3im(a minore $ermitan com$aratii utile&

    Vali'e / Masuratorile facute e%i entia)a situatia reala&

    E.e%(le 'e Metri i>& Numar e linii e co

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    6/19

    >=& Bu"2uri $e numarul e linii e co>>& COCOMO !COnstructi%e COst Mo el#

    Metri i 'e o%(le.itate

    1/ Co%(le.itatea i lo%ati a

    Utili)ea)a :raful e Control al $ro"ramului& I$ote)a/ ificultatea e intele"erea unui $ro"ram este in mare masura eterminata e com$le4itatea "rafuluiflu4ului e control

    Este o masura a ificultatii e testare a mo ulelor si a fia(ilitatii la ni%el e

    mo ul&Com$le4itatea unei entitati este eterminata e relatiile intre $artile sale&Partile unui mo ul software sunt instructiunile sale& Relatiile intre ele se (a)ea)a $etrei structuri/

    Se ,enta / (loc ma4imal in i%i)i(il e instructiuni care se e4ecuta intot eauna inaceeasi or ineSele tia !con itia#Iteratia !ciclul#& Iteratia $oate fi simulata $rin salt la o con itie&

    Com$le4itatea ciclomatica este efinita $entru un mo ul $e (a)a "rafului e control almo ulului&M Ca-e 'e"ine!te o%(le.itatea i lo%ati a a unui gra" 'e ontrol a!t"el&

    , 0 e n 2 3un e/ Je este numarul e arce !e "es#8 Jn este numarul e no uri&

    Pentru o sec%enta+ %K>& Este necesara o sin"ura e4ecutie e test $entru a e4ecutafiecare instructiune in sec%enta&

    Diecare salt a au"at la un mo ul creste com$le4itatea sa cu > si necesita oe4ecutie e test su$limentara $entru testarea sa&;eci+ com$le4iatea ciclomatica a unui mo ul a numarul minim e e4ecutii e test aleunui mo ul+ $entru aco$erirea tuturor arcelor&

    Gra"uri 'e ontrol

    F

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    7/19

    Gra"uri 'e ontrol (entru !tru turile 'e ontrol aleProgra%arii !tru turate5

    Instructiunile e eci)ie cu mai multe $re icate tre(uie sa fie se$arate in $re icatesim$le inainte e masurarea com$le4itatii ciclomatice& ;e e4em$lu+ eci)iaif!A&an &B&an C#t3en&& tre(uie se$arata in eci)ii sim$le&

    G

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    8/19

    Meto'a 'e te!tare !tru turala / com$le4itatea ciclomatica a unui mo ul sa fielimitata la >=& Stu iile arata ca erorile se concentrea)a in mo ule cucom$le4itati mai mari ca aceasta limita&

    In ti%(ul (roie tarii 'e 'etaliu li%itarea tre-uie !a "ie la 67 'eoare eo%(le.itatea re!te intot'eauna in ti%(ul o'arii/ Mo ulele caree$asesc aceasta limita tre(uie sa fie re$roiectate&

    3/ Co%(le.itatea i lo%ati a totala

    Co%(le.itatea i lo%ati a totala a unui (rogra% se o(tine insumancom$le4itatile ciclomatice ale mo ulelor sale&Este e4$rimata $rin formula/

    , 0 e n 2 3(un e( e!te nu%arul 'e %o'ule &

    e e!te nu%arul 'e ar e 'in toate %o'ulele n e!te nu%arul 'e no'uri 'in toate %o'ulele

    O formula ec3i%alenta este/, 0 ,12,32//2,(

    un e %>+ %

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    9/19

    E4em$lu/

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    10/19

    Co%(le.itatea (roie tarii %o'ulului e!te o%(le.itatea i lo%ati a agra"ului re'u! 9i, 0 e n23:

    Co%(le.itatea (roie tarii %o'ulului ignora aile a o(erite in te!tarea%o'ulului7 are nu ontin a(eluri 'e %o'ule e.terne & Caile ramase suntnecesare $entru a testa interfetele mo ulului&

    4/ Co%(le.itatea (roie tarii unui an!a%-lu 'e %o'ule

    S= K i%> ? i%< && ? i%n

    un e i%>+ i%=

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    11/19

    ;/ Co%(le.itatea integrarii

    Com$le4itatea inte"rarii unui ansam(lu e N mo ule+ notata e McCa(e cu S>+Este efinita astfel/ S> K S = 2 N ? >

    Com$le4itatea inte"rarii a N mo ule care nu contin ramificatii este eci >&

    Dormal+ com$le4itatea inte"rarii necesita masurarea com$le4itatii $roiectariifiecarui mo ul&

    In tim$ul $roiectarii ar3itecturale+ e re"ula+ nu este is$oni(il "raful flu4uluie control al fiecarui mo ul& Totusi+ ar tre(ui sa fie is$oni(ila suficienta

    informatie $entru a efini com$le4itatea $roiectarii fiecarui mo ul+ c3iarfara a cunoaste lo"ica mo ulelor&

    Di"ura urmatoare re a o ia"rama e structura $rin care se ilustrea)a cum tre(uiee%aluata S> cunoscan oar con itiile e a$el ale fiecarei com$onente+ a ica flu4ulcontrolului&;re$tun"3iurile cores$un com$onentelor e $roiectare iar sa"etile marc3ea)a flu4ulcontrolului& Prin rom( se in ica un transfer al controlului con itional/

    Jcom$onenta a a$elea)a fie com$onenta ( fie com$onenta c Jcom$onenta ( a$elea)a sec%ential com$onenta si com$onenta e Jcom$onenta c a$elea)a una intre com$onentele e+ f+ " sau nici una

    Com$le4itatea inte"rarii mo ulelor re$re)entate in ia"rama e structura este &

    Estimarea com$le4itatii inte"rarii folosin ia"rama e structura

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    12/19

    ;etermina $uterea cu$larii intre mo ule&Intele"erea mo ulelor cu un numar mare e $arametri cere mai mult tim$si efort&Mo ificarea mo ulelor cu un numar mare e $arametri $oate a%ea efecteasu$ra altor mo ule&

    =u%arul 'e %o'ule a(elate e!ti%ea+a o%(le.itatea intretineriiPentru un mo ul/

    Dan2in/ numarul e mo ule care il a$elea)aDan2out/ cate mo ule sunt a$elate e el

    Dan2in mare/ un numar mare e mo ule e$in e elDan2out mare/ mo ulul e$in e e multe mo ule

    Cu(larea (rin 'ateDie tri$letul !$+ +Q#+ un e/

    o $ si Q sunt mo uleo este o %aria(ila accesi(ila in $ si QCu(larea (otentiala (rin 'ate&

    o este eclarata in am(ele+ ar nu se %erifica accesul la eao Reflecta $osi(ilitatea ca $ si Q sa comunice $rin %aria(ila

    Cu(larea (rin 'ate utili+ateo $ si Q utili)ea)a &o Mai "reu e eterminat ecat cu$larea $otentiala& Necesita mai multa

    informatie es$re lo"ica interna a mo ulului&Cu(larea (rin 'ate e"e ti,a

    o $ atri(uie o %aloare lui si Q o refera&o Cel mai "reu e eterminat+ ar in ica un flu4 e informatie e la $ laQ&

    Metri i ale oe+iuniiSe construieste "raful e flu4 $entru un mo ulo Pentru fiecare no + se inre"istrea)a %aria(ilele referite in instructiunile

    in noSe etermina cat e multe cai in e$en ente ale mo ulului trec $rin fiecarenoo Un mo ul are coe)iune mare aca cea mai mare $arte a %aria(ilelor

    sunt utili)ate $e ma.oritatea cailor o Cea mai mare coe)iune/ toate caile in e$en ente utili)ea)a toate

    %aria(ilele in mo ul

    COMPLEXITATEA >ALSTEA$

    Metrica Halstea este efinita $rin in icatorii/

    C K com$le4itatea $ro"ramuluiE K efortul e $ro"ramare

    >

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    13/19

    V K %olumul $ro"ramuluiL K ni%elul $ro"ramului

    un e/

    F

    <

    >

    lo"i ii

    n n=

    = ∑

    sau+ consi er1n > > < > < <

    lo" ii

    ! " n=

    = ∑ F

    R

    >

    i

    i

    " n=

    = ∑

    R

    in a%1n aceea,i semnifica-ie ca ,iin + ar contori)ea)0 totalurile+ nu numai $e celeistincte&

    R! #

    ! =

    V este %olumul minim al $ro"ramului+ care este calculat in num0rul minim e $arametrii I O necesar $entru a s$ecifica o$era-ia unui al"oritm ,i returul re)ultatului+a%1n e4$resia/

    R R R

    7 num0rul e ti$uri fun amentale e ate care a$ar istinct 'n $ro"ramn< 7 num0rul e ti$uri eri%ate e ate care a$ar istinct 'n $ro"ramn 7 num0rul e instruc-iuni istincte utili)ate e $ro"ramator n 7 num0rul e o$eran)i istinc-i care a$ar 'n $ro"ramn 7 num0rul e o$eratori istinc-i $entru referire care a$ar 'n $ro"ramnF 7 num0rul e func-ii istincte a$elate

    8/ COMPLEXITATEA MCCABE

    Mo elul McCa(e este folosit $entru e%aluarea com$le4itatii $ro"ramelor& 9ni$ote)a omo"enitatii $erfecte a instructiunilor se construiesc "rafuri asociate

    >

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    14/19

    sec%entelor e $ro"ram+ $entru care se masoara com$le4itatea+ fiecare instructiune I>+I& :raful asociat sec%entei e $ro"ram S>

    C K m2n?

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    15/19

    • E%aluarea calitati%* ofer* o in icatie a c1t e a$roa$e este $ro usul softwaree cerintele im$licite si e4$licite ale clientului8

    • E%aluarea te3nic* e%i entia)* mai e"ra(a caracteristicile $ro usului software!e4&/ com$le4itatea lo"ic*+ "ra ul e mo ulari)are# ec1t $rocesul $rin careacesta a fost e)%oltat8

    • E%aluarea imensional* este utili)at* $entru a colecta e%alu*rile irecte alere)ultatelor si calit*tii $rocesului e in"inerie software8

    • E%aluarea functional* ofer* o e%aluare in irect*8• E%aluarea orientat* $e resursele umane ofer* informatii asu$ra mo ului 'n care

    $ro"ramatorii e)%olt* un $ro us software $recum si asu$ra $erce$tieieficientei instrumentelor si mo elelor e e)%oltare&

    9n continuare %om face o a(or are etaliat* a ou* intre meto ele e e%aluaree4$use ce sunt mai frec%ent utili)ate e c*tre casele e soft&

    >& Meto a e%alu*rii imensionale E%aluarea imensional* a $ro usului software re$re)int* o estimare irect* aacestuia $recum si a $rocesului $rin care el este e)%oltat& ;aca un mana"er e $roiect mentine 'nre"istr*ri sim$le+ $oate fi creat un ta(el cu atele or onate u$acriteriul imensiunii& Pentru fiecare $roiect+ atele imensionale u)uale sunt/

    • efortul estimea)* necesarul e resurse umane si se m*soar* 'n $ro"ramatori2 $e2lun* sau $ro"ramatori2$e2an8

    • LOC ! ilo Lines of Co e# 2 mii e linii e co 8

    • %aloarea este e4$rimarea (*nesc* a efortului8• $a"ini e ocumentatie8• num*rul e erori ra$ortate e utili)atori 'ntr2o $erioa * e tim$ ! e $il * un

    an#&• num*rul e $ro"ramatori care au lucrat la e)%oltarea $ro usului software&

    ;in atele $rimare continute 'ntr2un astfel e ta(el $oate fi reali)at* o e%aluare a $ro ucti%it*tii si una a calit*tii+ orientate imensional+ $entru fiecare $roiect 'n $arte/

    Productivitatea = KLOC / Programatori-pe-lunãCalitatea = Numãr de erori / KLOC

    9n com$letare+ $ot fi calculati alti $arametrii interesanti/

    Cost = Valoare / KLOCDocumentatie = Pagini de documentatie / KLOC

    Utili)area $arametrilor imensionali ! LOC+ efort+ etc este contro%ersat* siei nu sunt uni%ersal acce$tati ca re$re)ent1n cea mai (un* meto * e e%aluare a $rocesului e e)%oltare software& Contro%ersa se 'n%1rte 'n .urul utili)*rii liniilor eco LOC ca m*rime $rinci$al*& Sustin*torii %aria(ilei LOC afirm* c* aceasta este un

    artefact al tuturor $roiectelor e e)%oltare software si $oate fi usor calculat*+ c*multe mo ele e estimare utili)ea)* LOC sau LOC ca ate e intrare $rinci$ale si c*

    >

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    16/19

    e4ist* e.a o literatur* imens* !$lus ate asociate# e icat* LOC& Pe e alta $arte+o$o)antii reclam* c* %aria(ila LOC este e$en ent* e lim(a.ul e $ro"ramare+ c*LOC $oate $enali)a $ro"rame (ine $roiectate ar scurte+ c* nu se $oate asocia usorlim(a.elor ne$roce urale si c* utili)area ei 'n estimare necesit* un ni%el e etalierecare $oate fi ificil e o(tinut !e4/ mana"erul e $roiect tre(uie s* estime)e num*rul

    e linii e co ce tre(uie $ro use cu mult 'nainte ca anali)a si $roiectul $ro"ramuluis* fi fost 'nc3eiate#&

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    17/19

    Valorile e a.ustare a com$le4it*tii !Di+ iK>&&&> # se etermin* e%alu1ninfluenta a > factori/

    • Necesit* sistemul (ac 2u$ si reco%er• Sunt necesare facilit*ti e comunicatii e ate• Sunt necesare functii e $rocesare istri(uit*• Este criteriul $erformantei critic• Va rula sistemul 'ntr2un me iu o$erational utili)at intens• Necesit* sistemul intr*ri e ate 'n re"im on2line• Necesit* sistemul e intr*ri e ate 'n re"im on2line+ ca $rocesul e

    intro ucere al atelor s* ai(* loc $e ecrane sau $rin o$eratiuni multi$le• Sunt fisierele actuali)ate on2line• Sunt intr*rile+ iesirile si intero"*rile com$le4e• Este $rocesul intern com$le4

    • Este co ul $roiectat astfel 'nc1t s* fie reutili)at• Sunt con%ersia si instalarea $ro"ramului incluse 'n esi"n• Este sistemul $roiectat $entru instal*ri multi$le 'n or"ani)atii iferite• Este a$licatia $roiectat* astfel 'nc1t s* facilite)e mo ificarea si usurinta 'n

    utili)are in $artea (eneficiarului

    Diecare factor este e%aluat cu o not* e la = la + a%1n semnificatiile/

    = 2 Nu influentea)*8> 2 Inci ental8< 2 Mo erat8

    2 Me iu8 2 Semnificati%8 2 Esential8

    O at* ce scorul functional a fost calculat+ el este utili)at 'ntr2o manier*asem*natoare cu meto a LOC ca o m*sur* a $ro ucti%it*tii+ a calit*tii si a altoratri(ute ce efinesc $ro"ramul/

    Productivitatea = SF / Programatori-pe-lunãCalitatea = Numãr De+ecte / SF

    Costul =Valoare / SFDocumentatia = Pagini de Documentatie / SF

    E%aluarea $e (a)a scorului functional a fost conce$ut* initial $entru a $utea fiutili)at* 'n sistemele e informatii $entru afaceri& Totusi+ e4tin erea $ro$us* ulterior+

    enumit* scor caracteristic !SC#+ $oate $ermite a$licarea acestei meto e si 'n ca)ul $ro"ramelor in omeniul sistemelor in"ineresti& Scorul caracteristic este a ec%at

    escrierii a$licatiilor 'n care com$le4itatea al"oritmilor este 'nalt*& A$licatiile 'n tim$real+ e control al $roceselor $recum si cele orientate s$re o(iecte au ten inta e a

    a%ea o com$le4itate al"oritmic* mare si sunt $rin urmare $otri%ite e%alu*rii $rinmeto a scorului caracteristic& Pentru a calcula acest scor %alorile omeniului

    >G

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    18/19

    informational sunt in nou contori)ate si $on erate& S$re eose(ire e calcululscorului functional+ scorul caracteristic ia 'n consi erare 'nc* un omeniu einformatie !al"oritmi# iar %alorile e $on erare sunt fi4e !%e)i caseta CalcululScorului Caracteristic #& Valoarea scorului caracteristic final se o(tine in ecuatia/

    SC = totalul-de-calcul !"#$ % !"!& S'( )Fi*,

    ;e remarcat c* scorul caracteristic ia 'n consi erare o nou* imensiune a soft2ului+ si anume al"oritmii& In%ersarea unei matrici+ eco ificarea unui sir e (iti sautratarea unei 'ntreru$eri sunt toate e4em$le e al"oritmi& Tre(uie e asemenearemarcat c* scorul caracteristic si cel functional semnific* acelasi lucru+ si anume

    functionalitatea sau utilitatea furni)ate e c*tre software& 9n fa$t+ am1n ou*e%alu*rile au re$t re)ultat aceeasi %aloare a SD2ului 'n situatia calculului in"ineresccon%entional sau a a$licatiilor e ti$ "estiune a informatiilor& Pentru sistemele 'n tim$real+ mult mai com$le4e+ scorul caracteristic este a esea cu

  • 8/15/2019 Metrici Ale Complexitatii Software (2)

    19/19

    AUTORI

    Iliuta Virgil / Intro ucere Metrici software! efinitii+ functii+ caracteristici#Balint George / Metrici e com$le4itate!ti$uri+ Halstea + Mcca(e#

    BIBLIOGRAFIE

    ?tt(&@@###/!o"t#are %etri !/a!e/ro@arti ole@METRICI 3 3 SOFTWARE/?t%

    ?tt(&@@ ri!ti/!el"i(/ o%@#or'(re!!@tag@%etri i !o"t#are@

    ?tt(&@@###/! ri-'/ o%@'o @;