21.01.2015 Views

Team Se@Msi: Meranie v softvérovom inžinierstve. - FIIT STU ...

Team Se@Msi: Meranie v softvérovom inžinierstve. - FIIT STU ...

Team Se@Msi: Meranie v softvérovom inžinierstve. - FIIT STU ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

102 <strong>Meranie</strong> a životný cyklus softvéru<br />

Zložitosť informačných tokov (information flow)<br />

V [Henry81] je vytvorený model pre počítanie zložitosti modulu, ktorý<br />

berie do úvahy veľkosť modulu a jeho údajové prepojenie s ostatnými<br />

časťami systému. Zložitosť systému je definovaná nasledovným vzťahom:<br />

Zložitosť = dĺžka * (Fan-In * Fan-Out) 2<br />

Chápanie veličiny dĺžka, vystupujúcej vo vzťahu pre zložitosť podľa<br />

[Henry81], zodpovedá definícii veľkosti podľa [Briand a kol., 1995]. Ako<br />

hodnota tejto veličiny sa môže použiť niektorá z metrík pre veľkosť.<br />

Niekedy sa ako dĺžka používa McCabeho cyklomatická zložitosť (pozri<br />

ďalej) [Karkas98].<br />

Fan-In a Fan-Out predstavujú počet informačných tokov z iných<br />

modulov do daného, resp. z daného modulu do iných. Pod informačným<br />

tokom sa myslí vzťah medzi parametrami/premennými daného<br />

a ostatných modulov.<br />

Táto metrika bola overená na meraní systému typu UNIX. Záverom<br />

bolo, že jej použitím sa môžu v systéme identifikovať moduly náchylné k<br />

chybám. Zvýšená hodnota zložitosti informačných tokov sa vyskytla u<br />

modulov, s ktorými skutočne boli problémy a vyžiadali si väčší počet<br />

zmien.<br />

Cyklomatická zložitosť (cyclomatic complexity) (McCabe)<br />

Metrika cyklomatickej zložitosti vychádza z reprezentácii štruktúry<br />

systému pomocou orientovaného grafu. Založená je na meraní počtu<br />

lineárne nezávislých ciest v grafe. Cyklomatická zložitosť systému<br />

reprezentovaného grafom G sa počíta pomocou jednoduchého vzťahu:<br />

v(G) = počet hrán - počet uzlov + 2p,<br />

kde p je počet prepojených uzlov v grafe G.<br />

Takto definovaná zložitosť nespĺňa axiómy pre zložitosť uvedené v<br />

[Briand a kol., 1995], ale upravená hodnota v(G)-p tieto predpoklady<br />

spĺňa. Upravená cyklomatická zložitosť nedáva výrazne odlišné výsledky<br />

od pôvodnej, najmä pri rozsiahlejších systémoch [Briand a kol., 1995].<br />

Cyklomatickú zložitosť je možné použiť na získanie relatívnej<br />

zložitosti rozličných návrhov, čo je použiteľné pri rozhodovaní medzi<br />

alternatívami návrhu. Aplikovaním metriky je tiež možné ohodnotiť<br />

oblasti systému podľa toho, koľko námahy a zdrojov im je potrebné<br />

venovať v ďalších fázach vývoja. Prednosťami tejto metriky sú jej<br />

jednoduchosť a možnosť aplikácie v skorých fázach vývoja systému.<br />

Nedostatkom je, že sa skúma iba zložitosť riadiacich tokov a zložitosť<br />

dátových tokov sa zanedbáva.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!