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

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

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

Saved successfully!

Ooh no, something went wrong!