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.

<strong>Meranie</strong> v etape návrhu 103<br />

Metrika pre zložitosť podľa [Card90]<br />

Táto metrika je navrhnutá pre počítanie zložitosti jednotlivých modulov,<br />

z čoho sa odvodí celková zložitosť systému. Autori rozlišujú tri typy<br />

zložitosti modulu:<br />

• Štruktúrna zložitosť<br />

S( i)<br />

Fan Out(<br />

i)<br />

2<br />

= − ,<br />

kde Fan-Out(i) je počet výstupných vetiev z modulu i.<br />

• Dátová zložitosť<br />

v(<br />

i)<br />

D ( i)<br />

=<br />

,<br />

Fan − Out(<br />

i)<br />

−1<br />

kde v(i) je súčet počtu premenných vstupujúcich a vystupujúcich z<br />

modulu i.<br />

• Systémová zložitosť C(i) je daná súčtom štruktúrnej a dátovej<br />

zložitosti modulu i.<br />

C ( i)<br />

= S(<br />

i)<br />

+ D(<br />

i)<br />

• Celková zložitosť modulárneho systému (overall project complexity)<br />

P je daná súčtom systémových zložitostí všetkých modulov v systéme.<br />

P = ∑C(<br />

i)<br />

i<br />

Metrika pre zložitosť podľa [Card90] nespĺňa axiómy pre zložitosť,<br />

lebo pri štrukturálnej zložitosti je hodnota Fan-Out umocnená na druhú<br />

[Briand a kol., 1995].<br />

Metriky pre zložitosť založené na teórii grafov<br />

Požitie tejto triedy metrík si vyžaduje, aby návrh systému bol<br />

reprezentovaný pomocou silne spojitého grafu (graf, pri ktorom existuje<br />

cesta medzi ľubovoľnými dvoma uzlami). Uzly v grafe reprezentujú<br />

moduly systému a hrany reprezentujú spojenia medzi modulmi. Na<br />

základe tejto reprezentácie boli navrhnuté tri metriky pre zložitosť:<br />

• Statická zložitosť, definovaná pomocou vzťahu<br />

C = E − N +1,<br />

kde E je počet hrán a N je počet uzlov v grafe.<br />

• Zovšeobecnená statická zložitosť, ktorá okrem spojení medzi<br />

modulmi berie do úvahy aj používanie zdrojov systému.<br />

C =<br />

E<br />

⎛<br />

∑⎜Ci<br />

+ ∑( d<br />

k<br />

× rki<br />

)<br />

⎝<br />

K<br />

i= 1 k = 1<br />

⎞<br />

⎟ ,<br />

⎠<br />

kde K je počet zdrojov v systéme, dk je zložitosť alokácie k-tého zdroja<br />

(napríklad zložitosť procedúry, pomocou ktorej sa alokuje daný

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

Saved successfully!

Ooh no, something went wrong!