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 ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
134 <strong>Meranie</strong> a životný cyklus softvéru<br />
definovať vzorec, ktorý je funkciou jednotlivých metrík. Tento model<br />
používala aj spoločnosť Hawlett-Packard, kde softvéroví inžinieri<br />
vytvorili model na základe intuitívného stanovenia vzorca a pomocou<br />
kalibrácie subjektívnymi hodnotami. Základný regresný model mal štyri<br />
parametre. Tento vzorec vyzerá nasledovne:<br />
Udržovateľ nosť = 171 − 3.42 × ln(aveE) − 0.23 × aveV(g' ) − 16.2 × ln(aveLOC) + aveCM<br />
kde aveE je priemerná hodnota námahy (average effort), aveV(g’) je<br />
priemer cyklomatickej zložitosti jednotlivých modulov, aveLOC je<br />
priemerný počet riadkov a aveCM je počet komentárov pre jednotlivé<br />
moduly v softvérovom systéme.<br />
Predbežné výsledky ukazujú, že tento model je príliš citlivý na veľký<br />
počet komentárov, čo predovštkým v malých moduloch nevhodne zvýši<br />
ukazovateľ udržovateľnosti. Na odstránenie tohto efektu nahradíme<br />
hodnotu počet komentárov (aveCM) s percentuálnym podielom<br />
komentárov v zdrojovom kóde (perCM), a celú funkciu obmedzíme<br />
koeficientom 50. Finálny model, ktorý obsahuje štyri metriky a používa<br />
sa aj v súčasnosti, má nasledujúci tvar:<br />
Udržovateľnosť<br />
= 171 − 5.2 × ln(aveVol) − 0.23 × aveV(g' ) − 16.2 × ln(aveLOC) + (50 × sin(<br />
2.46 × perCM ))<br />
Tento model bol porovnaný s predhádzajúcim a rozdiel medzi<br />
indexami udržovateľnosti bol menší ako 1.4.<br />
Polynomiálnu regresnú analýzu taktiež môžeme používať na<br />
porovnanie udržovateľnosti celých systémov alebo na porovnanie<br />
jednotlivých modulov jedného systému.<br />
Systém, na ktorom bol testovaný tento prístup, mal 236000 riadkov<br />
zdrojového kódu, bol napísaný v jazyku C pre operačný systém UNIX. Na<br />
základe indexu udržovateľnosti môžeme systém zaradiť do jedenej z<br />
troch kategórií. Ak index udržovateľnosti je menší ako 65 systém alebo<br />
testované moduly sú veľmi ťažko udržovateľné. Ak index udržovateľnosti<br />
je medzi hodnotami 65 a 85, systém alebo moduly sú mierne<br />
udržovateľné. Ak táto hodnota je väčšia ako 85, testovaný softvérový<br />
systém alebo moduly sú veľmi dobre urdžovateľné. Musíme si však<br />
uvedomiť, že tieto hranice vytvárali softvéroví inžinieri v Hawlett-<br />
Packard. Tieto hodnoty boli prispôsobené k ich technickému prostrediu a<br />
boli vytvorené veľmi intuitívne. V tab. 3 sú porovnané dva softvérové<br />
systémy. Systém-1 bol získaný z externého zdroja a počas testovania mu<br />
priradili index udržovateľnosti 89. Systém-2 je ukážkovým príkladom<br />
firmy Hewlett-Packard, ukazuje ako má vyzerať dobre udržovateľný<br />
systém. Hoci Systém-1 má väčšiu hodnotu udržovateľnosti ako 85, s<br />
porovnaním tohoto indexu s indexom systému-2 vidíme značný rozdiel,<br />
takže na základe ananlýzy je systém-1 ťažko udržovateľný.<br />
Tab. 3: Porovnanie dvoch softvérových systémov podľa regresnej analýzy.<br />
Metriky Systém 1 Systém 2