• Nie Znaleziono Wyników

Wykład 15 Przykłady metryk

N/A
N/A
Protected

Academic year: 2021

Share "Wykład 15 Przykłady metryk"

Copied!
4
0
0

Pełen tekst

(1)

Wykład 15 Przykłady metryk

PoniŜej podano pewien zestaw metryk, które umoŜliwiają właściwą ocenę jakości i funkcjonalności oprogramowania na etapie budowy statycznego modelu obiektowego

1. ZłoŜoność połączeniowa: liczba połączeń między obiektami RFC =| Mi wszystkie j {Rij}|,

gdzie Mi jest zbiorem wszystkich operacji klasy, natomiast {Rij} jest zbiorem operacji innych klas wywoływanych przez operację Mi.

2. Spójność semantyczna

Klasy powinny znajdować swoje odwzorowanie w UoD, stąd sztucznie połączone wprawdzie ograniczają liczbę połączeń między klasami, lecz naruszają zasady modelowania dotyczące wielokrotnego wykorzystania klasy.

3. Metryki określające złoŜoność proceduralną, 3.1. Liczba klas abstrakcyjnych DAC

3.2. Liczba atrybutów (rozmiar)

NOA = NIV + DAC, gdzie NIV - atrybuty proste,

DAC - atrybuty typu klasy.

3.3. Liczba metod (rozmiar)

NOM = NHM+ NEM = NIM + NCM gdzie

NHM – metody prywatne NEM – metody publiczne NCM – metody statyczne NIM – metody niestatyczne

(2)

3.4. Łączenie metod i atrybutów (rozmiar) Sc = NOA + NOM

3.5. Suma złoŜoności metod w klasie (struktura logiczna i rozmiar)

W M C c

i i

=

n

=

1 ,

gdzie ci jest statyczną złoŜonością kaŜdej z i - metod (złoŜoność cyklomatyczna). JeŜeli ci jest równe 1, wtedy WMC jest równe liczbie metod n. WMC maleje przy wykorzystaniu polimorfizmu i dziedziczenia

3.6. Spójność klasy (połączenia atrybutów i metod )

L C O M a A m

m

j j

a

=

=

(1 ( ))

1

1

µ

,

gdzie

{Mi} (i = 1,..,m) - zbiór metod w klasie oraz {Aj} - zbiór atrybutów (j = 1,..,a),

µ( Aj) - liczba metod związanych z danym atrybutem.

3.7. Stopień specjalizacji (rozmiar)- S oraz wielokrotne uŜycie klas (rozmiar)- U

U = liczba NadTypów całkowita liczba klas

,

S liczba PodTypów

=

liczba NadTypów

,

Wartości U bliska 1 oraz S bliską 0 określają liniowy model dziedziczenia. Wartości U<<1 oraz S >>1 oznaczają poŜądaną wartość.

(3)

3.8. Liczba NadTypów (rozmiar) w drzewie dziedziczenia, czyli NOC.

3.9. Głębokość dziedziczenia, czyli liczba poziomów w drzewie dziedziczenia odniesiona do liczby klas, określająca zakres dziedziczenia (rozmiar)

.

calkowita liczba klas

=

glebokosc dziedziczenia DIT

1) 2)

3)

(4)

Metryka

Przykład

S (specialization) U (reuse) DIT

1* 1/3 → 0 3/4 → 1 (0+1+2+3)/4=1.5

2* 1/4 → 0 4/5 → 1 (0+0+0+0+(1+1+1+1)/4)/5=0.2 3 4/1 → ∝ 1/5 → 0 (0+1+1+1+1)/5=0.8

4 3/3 3/6 (0+1+1+2+3+3)/6=1.5

5 2/3 3/5 (0+0+1+(1+2)/2+1)/5=0.7

S liczba PodTypów

= liczba NadTypów

U = liczba NadTypów całkowita liczba klas

Przykłady 1 i 2 reprezentują ubogi schemat dziedziczenia.

calkowita liczba klas

=

glebokosc dziedziczenia DIT

4)

5)

Cytaty

Powiązane dokumenty

W kołowym obszarze o promieniu R istnieje jednorodne pole magnetyczne, którego wektor indukcji jest prostopadły do płaszczyzny rysunku. Jaka jest wartość i kierunek wektora

Estry metylowe kwasów tłuszczowych kwasów tłuszczowych stosowane są jako paliwo stosowane są jako paliwo zastępujące olej napędowy zastępujące olej

 Prawo Gaussa stosujemy do obliczania natęŜenia pola elektrycznego gdy znamy rozkład ładunku lub do znajdowania rozkładu ładunku gdy znamy pole..  Prawo Gaussa moŜemy

Diagram stanów jest przedstawieniem w formie graficznej zależności pomiędzy położeniami w których znajdują się poszczególne elementy układu w zależności od czasu.. Diagramy

Patryk Kossakowski –poziom C 1 - praca z tekstem jako czytanie ze zrozumieniem- tu musi być zaznaczone w tekście, gdzie odpowiedź się znajduje.. Część pisemna – wybierasz

Zakreślanie przestrzeni jest to budowanie bryły przez przemieszczenie jej przekroju (płaskiej figury) wzdłuż pewnej trajektorii w przestrzeni.. Najprostszymi przykładami

Automatyka i Robotyka Politechnika Świętokrzyska Laboratorium 2 semestr II stopnia Centrum Laserowych Technologii Metali Technik Wizyjnych.. Opracował: Krzysztof Borkowski

Zasada kontroli rozstrzygnięć opiera się na założeniu, że nawet przy największej staranności sąd orzekający w I instancji może nie wyjaśnić wszystkich