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.

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

množín interakcií typu DD a DS vo vnútri modulu s výnimkou interakcií<br />

typu DD medzi dátovou deklaráciou a formálnym parametrom<br />

podprogramu v module.<br />

Na základe tejto definície bola definovaná metrika pomeru súdržných<br />

interakcií RCI softvérovej súčiastky sp ako pomer počtu prvkov množiny<br />

súdržných interakcií C k počtu prvkov množiny všetkých interakcií M<br />

softvérovej súčiastky sp.<br />

RCI ( sp)<br />

=<br />

CI ( sp)<br />

M ( sp)<br />

Táto metrika bola použitá v [Briand a kol., 1994] na odhad<br />

náchylnosti modulov k chybám v rámci rovnakého experimentu ako pri<br />

metrike zviazanosti na základe interakcií.<br />

Súdržnosť vo fáze návrhu podľa [Bieman98]<br />

Pri tejto metrike sa vychádza zo závislosti medzi vstupmi a výstupmi<br />

modulu reprezentovanej grafom závislostí medzi vstupmi a výstupmi<br />

(input-output dependence graph, IODG). Každý vstup prispieva<br />

k jednému alebo viacerým výstupom z modulu. Vychádzajúc<br />

z reprezentácie pomocou IODG grafov sa v [Bieman98] definuje šesť<br />

relácií, pomocou ktorých je možné rozlíšiť jednotlivé úrovne súdržnosti<br />

(usporiadané od najslabšej k najsilenejšej):<br />

1. náhodná - dva výstupy z modulu nezávisia medzi sebou ani od<br />

spoločného vstupu.<br />

2. podmienečná - dva výstupy z modulu podmienečne závislé od<br />

spoločného vstupu (hodnota vstupu rozhoduje o vetvení programu).<br />

3. iteračná - dva výstupy z modulu sú iteračne závislé od spoločného<br />

vstupu (hodnota vstupu rozhoduje o prerušení opakovania).<br />

4. komunikačná - dva výstupy z modulu závisia od spoločného vstupu.<br />

Vstup sa používa na počítanie hodnôt oboch výstupov, ale sa podľa<br />

neho nerozhoduje pre niektý z výstupov ani o procese iterovania.<br />

5. postupná – jeden výstup závisí od druhého.<br />

6. funkcionálna – existuje iba jeden výstup z modulu.<br />

Metrika súdržnosti vo fáze návrhu (design-level cohesion) DLC sa<br />

určuje na základe relácií medzi pármi výstupov z modulu. Pre každý pár<br />

sa berie najsilnejšia úroveň súdržnosti medzi nimi. Výsledná súdržnosť<br />

modulu je najslabšia z úrovní súdržností párov výstupov z modulu.<br />

Platnosť tejto metriky bola v [Bieman98] preskúmaná na<br />

systémových programoch operačného systému UNIX aj na programoch<br />

vytvorených študentmi. Výsledky analýzy ukázali, že výsledky merania<br />

súdržnosti vo fáze návrhu vo vysokej miere zodpovedajú výsledkom<br />

merania zdrojového kódu.

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

Saved successfully!

Ooh no, something went wrong!