Techniki szacowania - punkty przypadków użycia
ZA Use-Case to seria powiązanych interakcji między użytkownikiem a systemem, która umożliwia użytkownikowi osiągnięcie celu.
Przypadki użycia to sposób na uchwycenie wymagań funkcjonalnych systemu. Użytkownik systemu nazywany jest „aktorem”. Przypadki użycia są zasadniczo w formie tekstowej.
Punkty przypadków użycia - definicja
Use-Case Points (UCP)jest techniką szacowania oprogramowania używaną do pomiaru rozmiaru oprogramowania w przypadkach użycia. Koncepcja UCP jest podobna do PR.
Liczba nieuczciwych praktyk handlowych w projekcie opiera się na:
- Liczba i złożoność przypadków użycia w systemie.
- Liczba i złożoność aktorów w systemie.
Różne wymagania niefunkcjonalne (takie jak przenośność, wydajność, łatwość konserwacji), które nie zostały zapisane jako przypadki użycia.
Środowisko, w którym projekt będzie rozwijany (np. Język, motywacja zespołu itp.)
Szacowanie z wykorzystaniem nieuczciwych praktyk handlowych wymaga, aby wszystkie przypadki użycia były napisane z celem i na mniej więcej tym samym poziomie, podając taką samą ilość szczegółów. Dlatego przed dokonaniem oceny zespół projektowy powinien upewnić się, że napisał swoje przypadki użycia z określonymi celami i na poziomie szczegółowym. Przypadek użycia zwykle kończy się w ramach jednej sesji, a po osiągnięciu celu użytkownik może przejść do innej czynności.
Historia punktów przypadków użycia
Metoda szacowania Punktu Przypadku Użycia została wprowadzona przez Gustava Karnera w 1993 roku. Później licencję na pracę uzyskał Rational Software, który połączył się z IBM.
Proces liczenia punktów przypadków użycia
Proces liczenia punktów przypadków użycia obejmuje następujące kroki:
- Oblicz nieskorygowane UCP
- Dostosuj się do złożoności technicznej
- Dostosuj się do złożoności środowiska
- Oblicz skorygowane UCP
Krok 1: Oblicz nieskorygowane punkty przypadków użycia.
Najpierw obliczasz nieskorygowane punkty przypadków użycia, wykonując następujące kroki:
- Określ nieskorygowaną wagę przypadku użycia
- Określ niedostosowaną wagę aktora
- Oblicz nieskorygowane punkty przypadków użycia
Step 1.1 - Określ nieskorygowaną wagę przypadku użycia.
Step 1.1.1 - Znajdź liczbę transakcji w każdym przypadku użycia.
Jeśli Przypadki Użycia są zapisane z Poziomami Celów Użytkownika, transakcja jest równoważna krokowi w Przypadku Użycia. Znajdź liczbę transakcji, licząc kroki w przypadku użycia.
Step 1.1.2- Klasyfikuj każdy przypadek użycia jako prosty, średni lub złożony w oparciu o liczbę transakcji w przypadku użycia. Przypisz również wagę przypadku użycia, jak pokazano w poniższej tabeli -
Złożoność przypadków użycia | Liczba transakcji | Waga przypadku użycia |
---|---|---|
Prosty | ≤3 | 5 |
Średni | 4 do 7 | 10 |
Złożony | > 7 | 15 |
Step 1.1.3- Powtórz dla każdego przypadku użycia i uzyskaj wszystkie wagi przypadków użycia. Nieskorygowana waga przypadku użycia (UUCW) to suma wszystkich wag przypadków użycia.
Step 1.1.4 - Znajdź nieskorygowaną wagę przypadku użycia (UUCW), korzystając z poniższej tabeli -
Złożoność przypadków użycia | Waga przypadku użycia | Liczba przypadków użycia | Produkt |
---|---|---|---|
Prosty | 5 | NSUC | 5 × NSUC |
Średni | 10 | NAUC | 10 × NAUC |
Złożony | 15 | NCUC | 15 × NCUC |
Unadjusted Use-Case Weight (UUCW) | 5 × NSUC + 10 × NAUC + 15 × NCUC |
Gdzie,
NSUC to nie. prostych przypadków użycia.
NAUC to nie. średnich przypadków użycia.
NCUC to nie. złożonych przypadków użycia.
Step 1.2 - Określ nieskorygowaną wagę aktora.
Aktor w Przypadku Użycia może być osobą, innym programem itp. Niektórzy aktorzy, np. System ze zdefiniowanym API, mają bardzo proste potrzeby i tylko nieznacznie zwiększają złożoność Przypadku Użycia.
Niektóre podmioty, takie jak system wchodzący w interakcje za pośrednictwem protokołu, mają większe potrzeby i do pewnego stopnia zwiększają złożoność przypadku użycia.
Inni aktorzy, tacy jak użytkownik wchodzący w interakcję za pośrednictwem GUI, mają znaczący wpływ na złożoność przypadku użycia. Na podstawie tych różnic można sklasyfikować aktorów jako prostych, średnich i złożonych.
Step 1.2.1 - Klasyfikuj aktorów jako prostych, średnich i złożonych oraz przypisz wagi aktorów, jak pokazano w poniższej tabeli -
Złożoność aktora | Przykład | Waga aktora |
---|---|---|
Prosty | System ze zdefiniowanym API | 1 |
Średni | System współdziałający za pośrednictwem protokołu | 2 |
Złożony | Użytkownik korzystający z interfejsu GUI | 3 |
Step 1.2.2- Powtórz dla każdego aktora i uzyskaj wszystkie wagi aktorów. Nieskorygowana waga aktora (UAW) to suma wszystkich wag aktora.
Step 1.2.3 - Znajdź nieskorygowaną wagę aktora (UAW), korzystając z poniższej tabeli -
Złożoność aktora | Waga aktora | Liczba aktorów | Produkt |
---|---|---|---|
Prosty | 1 | NSA | 1 × NSA |
Średni | 2 | NAA | 2 × NAA |
Złożony | 3 | NCA | 3 × NCA |
Unadjusted Actor Weight (UAW) | 1 × NSA + 2 × NAA + 3 × NCA |
Gdzie,
NSA to nie. prostych aktorów.
NAA to nie. przeciętnych aktorów.
NCA to nie. złożonych aktorów.
Step 1.3 - Oblicz nieskorygowane punkty przypadków użycia.
Nieskorygowana waga przypadku użycia (UUCW) i nieskorygowana waga aktora (UAW) razem dają nieskorygowany rozmiar systemu, zwany nieskorygowanymi punktami przypadków użycia.
Unadjusted Use-Case Points (UUCP) = UUCW + UAW
Kolejne kroki to dostosowanie nieskorygowanych punktów przypadków użycia (UUCP) do złożoności technicznej i złożoności środowiskowej.
Krok 2: Dostosuj się do złożoności technicznej
Step 2.1 - Rozważ 13 czynników, które wpływają na wpływ złożoności technicznej projektu na punkty przypadków użycia i odpowiadające im wagi, zgodnie z poniższą tabelą -
Czynnik | Opis | Waga |
---|---|---|
T1 | System rozproszony | 2.0 |
T2 | Cele dotyczące czasu reakcji lub przepustowości | 1.0 |
T3 | Wydajność użytkownika końcowego | 1.0 |
T4 | Złożone przetwarzanie wewnętrzne | 1.0 |
T5 | Kod musi być wielokrotnego użytku | 1.0 |
T6 | Łatwe do zainstalowania | .5 |
T7 | Łatwy w użyciu | .5 |
T8 | Przenośny | 2.0 |
T9 | Łatwe do zmiany | 1.0 |
T10 | Równoległy | 1.0 |
T11 | Obejmuje specjalne cele bezpieczeństwa | 1.0 |
T12 | Zapewnia bezpośredni dostęp dla stron trzecich | 1.0 |
T13 | Wymagane jest specjalne zaplecze szkoleniowe dla użytkowników | 1.0 |
Wiele z tych czynników stanowi niefunkcjonalne wymagania projektu.
Step 2.2 - Dla każdego z 13 czynników oceń projekt i oceń go od 0 (nieistotne) do 5 (bardzo ważne).
Step 2.3 - Oblicz wpływ czynnika na podstawie ciężaru wpływu współczynnika i wartości znamionowej projektu jako
Impact of the Factor = Impact Weight × Rated Value
Step (2.4)- Oblicz sumę wpływu wszystkich czynników. Daje to całkowity współczynnik techniczny (TFactor), jak podano w tabeli poniżej -
Czynnik | Opis | Waga (W) | Wartość znamionowa (od 0 do 5) (RV) | Uderzenie (I = W × RV) |
---|---|---|---|---|
T1 | System rozproszony | 2.0 | ||
T2 | Cele dotyczące czasu reakcji lub przepustowości | 1.0 | ||
T3 | Wydajność użytkownika końcowego | 1.0 | ||
T4 | Złożone przetwarzanie wewnętrzne | 1.0 | ||
T5 | Kod musi być wielokrotnego użytku | 1.0 | ||
T6 | Łatwe do zainstalowania | .5 | ||
T7 | Łatwy w użyciu | .5 | ||
T8 | Przenośny | 2.0 | ||
T9 | Łatwe do zmiany | 1.0 | ||
T10 | Równoległy | 1.0 | ||
T11 | Obejmuje specjalne cele bezpieczeństwa | 1.0 | ||
T12 | Zapewnia bezpośredni dostęp dla stron trzecich | 1.0 | ||
T13 | Wymagane jest specjalne zaplecze szkoleniowe dla użytkowników | 1.0 | ||
Total Technical Factor (TFactor) |
Step 2.5 - Oblicz współczynnik złożoności technicznej (TCF) jako -
TCF = 0.6 + (0.01 × TFactor)
Krok 3: Dostosuj się do złożoności środowiska
Step 3.1 - Rozważ 8 czynników środowiskowych, które mogą wpłynąć na wykonanie projektu i odpowiadające im wagi, zgodnie z poniższą tabelą -
Czynnik | Opis | Waga |
---|---|---|
F1 | Znajomość używanego modelu projektu | 1.5 |
F2 | Doświadczenie aplikacji | .5 |
F3 | Doświadczenie zorientowane obiektowo | 1.0 |
F4 | Możliwości głównego analityka | .5 |
F5 | Motywacja | 1.0 |
F6 | Stabilne wymagania | 2.0 |
F7 | Pracownicy zatrudnieni w niepełnym wymiarze godzin | -1,0 |
F8 | Trudny język programowania | -1,0 |
Step 3.2 - Dla każdego z 8 czynników oceń projekt i oceń go od 0 (nieistotne) do 5 (bardzo ważne).
Step 3.3 - Oblicz wpływ czynnika na podstawie ciężaru wpływu współczynnika i wartości znamionowej projektu jako
Impact of the Factor = Impact Weight × Rated Value
Step 3.4- Oblicz sumę wpływu wszystkich czynników. Daje to całkowity współczynnik środowiska (EFactor), jak podano w poniższej tabeli -
Czynnik | Opis | Waga (W) | Wartość znamionowa (od 0 do 5) (RV) | Uderzenie (I = W × RV) |
---|---|---|---|---|
F1 | Znajomość używanego modelu projektu | 1.5 | ||
F2 | Doświadczenie aplikacji | .5 | ||
F3 | Doświadczenie zorientowane obiektowo | 1.0 | ||
F4 | Możliwości głównego analityka | .5 | ||
F5 | Motywacja | 1.0 | ||
F6 | Stabilne wymagania | 2.0 | ||
F7 | Pracownicy zatrudnieni w niepełnym wymiarze godzin | -1,0 | ||
F8 | Trudny język programowania | -1,0 | ||
Total Environment Factor (EFactor) |
Step 3.5 - Oblicz współczynnik środowiskowy (EF) jako -
1.4 + (-0.03 × EFactor)
Krok 4: Oblicz skorygowane punkty przypadków użycia (UCP)
Oblicz skorygowane punkty przypadków użycia (UCP) jako -
UCP = UUCP × TCF × EF
Zalety i wady punktów przypadków użycia
Zalety punktów przypadków użycia
UCP opierają się na przypadkach użycia i można je mierzyć na bardzo wczesnym etapie cyklu życia projektu.
UCP (oszacowanie wielkości) będzie niezależne od wielkości, umiejętności i doświadczenia zespołu, który wdraża projekt.
Oszacowania oparte na nieuczciwych praktykach handlowych są zbliżone do wartości rzeczywistych, gdy oszacowania dokonują doświadczeni ludzie.
UCP jest łatwy w użyciu i nie wymaga dodatkowej analizy.
Przypadki użycia są szeroko stosowane jako metoda z wyboru do opisu wymagań. W takich przypadkach UCP jest najlepszą odpowiednią techniką szacowania.
Wady punktów przypadków użycia
UCP można używać tylko wtedy, gdy wymagania są zapisane w formie przypadków użycia.
W zależności od zorientowanych na cel, dobrze napisanych przypadków użycia. Jeśli przypadki użycia nie są dobrze lub jednolicie skonstruowane, wynikający z tego UCP może nie być dokładny.
Czynniki techniczne i środowiskowe mają duży wpływ na UCP. Należy zachować ostrożność przy przypisywaniu wartości czynnikom technicznym i środowiskowym.
UCP jest przydatny do wstępnego oszacowania całkowitego rozmiaru projektu, ale jest znacznie mniej przydatny w kierowaniu pracą zespołu od iteracji do iteracji.