Použijte případové body - Use case points - Wikipedia
Použijte případové body (UCP nebo UCP) je softwarový odhad technika použitá k předpovědi velikosti softwaru pro projekty vývoje softwaru. UCP se používá, když Unifikovaný Modelovací Jazyk (UML) a Racionální jednotný proces Pro návrh a vývoj softwaru se používají metodiky (RUP). Koncept UCP je založen na požadavcích na zapisovaný systém případy užití, která je součástí sady technik modelování UML. Velikost softwaru (UCP) se počítá na základě prvků případů použití systému s factoringem, který zohledňuje technické a environmentální aspekty. UCP pro projekt lze poté použít k výpočtu odhadovaného úsilí pro projekt.
Dějiny
Technika UCP byla vyvinuta Gustavem Karnerem v roce 1993, zatímco byla používána v té době známé jako Objectory Systems, která se později sloučila do Rational Software a pak IBM. Metoda UCP byla vytvořena za účelem řešení odhadu velikosti softwaru systémů, které byly objektově orientovaný. Je založen na podobných principech jako Funkční bod (FP) metoda odhadu, ale byla navržena pro specifické potřeby objektově orientovaných systémů a systémové požadavky založené na případy užití.[1][2][3]
Metoda
Metoda pro stanovení odhadu velikosti pro vývoj systému je založena na výpočtu s následujícími prvky:
- Hmotnost neupraveného případu použití (UUCW) - velikost bodu softwaru, která odpovídá počtu a složitosti případů použití.
- Unadjusted Actor Weight (UAW) - velikost bodu softwaru, která odpovídá počtu a složitosti aktérů.
- Faktor technické složitosti (TCF) - faktor, který se používá k úpravě velikosti na základě technických úvah.
- Faktor složitosti prostředí (ECF) - faktor, který se používá k úpravě velikosti na základě vlivů na životní prostředí.
Po výpočtu předchozích čtyř prvků lze vypočítat konečný odhad velikosti. Toto konečné číslo je známé jako body případů použití nebo UCP pro projekt vývoje softwaru.
Následující části procházejí různými výpočty k určení UCP pro projekt.
Hmotnost neupraveného případu použití (UUCW)
UUCW je jedním z faktorů, které přispívají k velikosti vyvíjeného softwaru. Vypočítává se na základě počtu a složitosti případů použití systému. Chcete-li najít UUCW pro systém, musí být každý z případů použití identifikován a klasifikován jako jednoduchý, průměrný nebo komplexní na základě počtu transakcí, které případ použití obsahuje. Každá klasifikace má přiřazenou předdefinovanou hmotnost. Jakmile jsou všechny případy použití klasifikovány jako jednoduché, průměrné nebo komplexní, celková hmotnost (UUCW) se stanoví sečtením odpovídajících hmotností pro každý případ použití. Následující graf ukazuje různé klasifikace případů použití na základě počtu transakcí a hodnoty váhy přiřazené každému případu použití v rámci klasifikace.
Použijte klasifikaci případů | Počet transakcí | Hmotnost |
---|---|---|
Jednoduchý | 1 až 3 transakce | 5 |
Průměrný | 4 až 7 transakcí | 10 |
Komplex | 8 nebo více transakcí | 15 |
- UUCW = (Celkový počet případů jednoduchého použití x 5) + (Celkový počet průměrných případů použití x 10) + (Celkový počet případů komplexního použití x 15)
Neupravená hmotnost herce (UAW)
UAW je dalším faktorem, který přispívá k velikosti vyvíjeného softwaru. Vypočítává se na základě počtu a složitosti aktérů systému. Podobně jako při hledání UUCW musí být každý z aktérů identifikován a klasifikován jako jednoduchý, průměrný nebo komplexní na základě typu aktéra. Každá klasifikace má také přiřazenou předdefinovanou hmotnost. UAW je součet vah každého z herců. Následující tabulka ukazuje různé klasifikace aktérů a přiřazenou hodnotu hmotnosti.
Herecká klasifikace | Typ herce | Hmotnost |
---|---|---|
Jednoduchý | Externí systém, který musí interagovat se systémem pomocí dobře definovaného API | 1 |
Průměrný | Externí systém, který musí komunikovat se systémem pomocí standardních komunikačních protokolů (např. TCP / IP, FTP, HTTP, databáze) | 2 |
Komplex | Lidský herec pomocí rozhraní aplikace GUI | 3 |
- UAW = (Celkový počet jednoduchých herců x 1) + (Celkový počet průměrných herců x 2) + (Celkový počet komplexních herců x 3)
Faktor technické složitosti (TCF)
TCF je jedním z faktorů použitých na odhadovanou velikost softwaru za účelem zohlednění technických úvah o systému. Určuje se přiřazením skóre mezi 0 (faktor je irelevantní) a 5 (faktor je zásadní) každému z 13 technických faktorů uvedených v tabulce níže. Toto skóre se poté vynásobí definovanou váženou hodnotou pro každý faktor. Součet všech vypočítaných hodnot je technický faktor (TF). TF se poté použije k výpočtu TCF podle následujícího vzorce:
- TCF = 0,6 + (TF / 100)
Faktor | Popis | Hmotnost |
---|---|---|
T1 | Distribuovaný systém | 2.0 |
T2 | Cíle doby odezvy / výkonu | 1.0 |
T3 | Efektivita koncového uživatele | 1.0 |
T4 | Složitost interního zpracování | 1.0 |
T5 | Opakovaná použitelnost kódu | 1.0 |
T6 | Snadná instalace | 0.5 |
T7 | Snadné použití | 0.5 |
T8 | Přenositelnost na jiné platformy | 2.0 |
T9 | Údržba systému | 1.0 |
T10 | Souběžné / paralelní zpracování | 1.0 |
T11 | Bezpečnostní funkce | 1.0 |
T12 | Přístup pro třetí strany | 1.0 |
T13 | Školení koncových uživatelů | 1.0 |
Faktor složitosti prostředí (ECF)
ECF je dalším faktorem použitým na odhadovanou velikost softwaru za účelem zohlednění environmentálních aspektů systému. Určuje se přiřazením skóre mezi 0 (žádná zkušenost) a 5 (odborník) každému z 8 faktorů prostředí uvedených v tabulce níže. Toto skóre se poté vynásobí definovanou váženou hodnotou pro každý faktor. Součet všech vypočítaných hodnot je faktor prostředí (EF). EF se poté použije k výpočtu ECF pomocí následujícího vzorce:
- ECF = 1,4 + (-0,03 x EF)
Faktor | Popis | Hmotnost |
---|---|---|
E1 | Znalost použitého procesu vývoje | 1.5 |
E2 | Zkušenosti s aplikací | 0.5 |
E3 | Objektově orientovaná zkušenost týmu | 1.0 |
E4 | Schopnost vedoucího analytika | 0.5 |
E5 | Motivace týmu | 1.0 |
E6 | Stabilita požadavků | 2.0 |
E7 | Zaměstnanci na částečný úvazek | -1.0 |
E8 | Obtížný programovací jazyk | -1.0 |
Použít případové body (UCP)
Nakonec lze UCP vypočítat, jakmile bude stanovena neupravená velikost projektu (UUCW a UAW), technický faktor (TCF) a environmentální faktor (ECF). UCP se počítá na základě následujícího vzorce:
- UCP = (UUCW + UAW) x TCF x ECF
Příklad
Pro ilustraci procesu výpočtu UCP bude použit systém online nakupování. Níže uvedený diagram znázorňuje diagram případů použití pro systém, který má být vyvinut.
Hmotnost neupraveného případu použití (UUCW)
Pro výpočet UUCW musí být definovány případy použití a identifikován počet transakcí pro každý případ použití. Diagram případů použití systému Online Shopping ukazuje, že pro systém existuje devět případů použití. Za předpokladu, že 2 z těchto případů použití jsou jednoduché, 3 jsou průměrné a 4 jsou složité, výpočet pro UUCW je následující:
- UUCW = (Celkový počet případů jednoduchého použití x 5) + (Celkový počet průměrných případů použití x 10) + (Celkový počet případů komplexního použití x 15)
- U systému online nakupování je UUCW = (2 x 5) + (3 x 10) + (4 x 15) = 100
- UUCW = 100
Neupravená hmotnost herce (UAW)
Pro výpočet UAW musí být identifikováni aktéři. Diagram případů použití systému Online Shopping zobrazuje pět aktérů; Jeden jednoduchý pro systém zpracování plateb a čtyři komplexní pro každého z aktérů lidských uživatelů (tj. Online zákazník, marketingový administrátor, pracovník skladu, manažer skladu). Výpočet pro UAW je následující:
- UAW = (Celkový počet jednoduchých aktérů x 1) + (Celkový počet průměrných herců x 2) + (Celkový počet komplexních aktérů x 3)
- U systému online nakupování je UAW = (1 x 1) + (0 x 2) + (4 x 3) = 13
- UAW = 13
Faktor technické složitosti (TCF)
Pro výpočet TCF je každému z technických faktorů přiřazena hodnota na základě toho, jak zásadní je technické hledisko pro vyvíjený systém. Níže uvedený diagram ukazuje přiřazené hodnoty pro systém online nakupování. Hodnoty se vynásobí váženými hodnotami a stanoví se celkový TF.
Faktor | Popis | Hmotnost | Přiřazená hodnota | Hmotnost x Přiřazená hodnota |
---|---|---|---|---|
T1 | Distribuovaný systém | 2.0 | 5 | 10 |
T2 | Cíle doby odezvy / výkonu | 1.0 | 5 | 5 |
T3 | Efektivita koncového uživatele | 1.0 | 3 | 3 |
T4 | Složitost interního zpracování | 1.0 | 2 | 2 |
T5 | Opakovaná použitelnost kódu | 1.0 | 3 | 3 |
T6 | Snadná instalace | 0.5 | 1 | 0.5 |
T7 | Snadné použití | 0.5 | 5 | 2.5 |
T8 | Přenositelnost na jiné platformy | 2.0 | 2 | 4 |
T9 | Údržba systému | 1.0 | 2 | 2 |
T10 | Souběžné / paralelní zpracování | 1.0 | 3 | 3 |
T11 | Bezpečnostní funkce | 1.0 | 5 | 5 |
T12 | Přístup pro třetí strany | 1.0 | 1 | 1 |
T13 | Školení koncových uživatelů | 1.0 | 1 | 1 |
Celkem (TF): | 42 |
Dále se vypočítá TCF:
- TCF = 0,6 + (TF / 100)
- U systému online nakupování je TCF = 0,6 + (42/100) = 1,02
- TCF = 1,02
Faktor složitosti prostředí (ECF)
Pro výpočet ECF je každému z faktorů prostředí přiřazena hodnota na základě úrovně zkušeností týmu. Níže uvedený diagram ukazuje přiřazené hodnoty pro systém online nakupování. Hodnoty se vynásobí váženými hodnotami a stanoví se celkový EF.
Faktor | Popis | Hmotnost | Přiřazená hodnota | Hmotnost x Přiřazená hodnota |
---|---|---|---|---|
E1 | Znalost použitého procesu vývoje | 1.5 | 3 | 4.5 |
E2 | Zkušenosti s aplikací | 0.5 | 3 | 1.5 |
E3 | Objektově orientovaná zkušenost týmu | 1.0 | 2 | 2 |
E4 | Schopnost vedoucího analytika | 0.5 | 5 | 2.5 |
E5 | Motivace týmu | 1.0 | 2 | 2 |
E6 | Stabilita požadavků | 2.0 | 1 | 2 |
E7 | Zaměstnanci na částečný úvazek | -1.0 | 0 | 0 |
E8 | Obtížný programovací jazyk | -1.0 | 4 | -4 |
Celkem (EF): | 10.5 |
Dále se vypočítá ECF:
- ECF = 1,4 + (-0,03 x EF)
- Pro systém online nakupování je ECF = 1,4 + (-0,03 * 10,5) = 1,085
- ECF = 1,085
Použít případové body (UCP)
Jakmile je stanovena hmotnost neupraveného případu použití (UUCW), neupravená hmotnost herce (UAW), faktor technické složitosti (TCF) a faktor složitosti prostředí (ECF), lze body případu použití (UCP) vypočítat podle následujícího vzorce:
- UCP = (UUCW + UAW) x TCF x ECF
- U systému online nakupování UCP = (100 + 13) x 1,02 x 1,085 = 125,06
- UCP = 125,06
U systému online nakupování je celková odhadovaná velikost pro vývoj softwaru 125,06 bodů použití.
Nyní, když je známa velikost projektu, lze odhadnout celkové úsilí projektu. Pro příklad systému online nakupování bude použito 28 člověkohodin na bod případu použití.
- Odhadované úsilí = UCP x hodin / UCP
- U systému online nakupování odhadované úsilí = 125,06 x 28
- Odhadované úsilí = 3501 hodin
Další vývoj
Jednou z hlavních slabin metody Use Case Points je, že nikdy nebyla důkladně kalibrováno použitím regresní analýza z důvodu nedostatku statisticky dostatečného počtu projektů. Lineární model Karnersova přístupu navíc nebere úspory z rozsahu v úvahu, které se vyskytují v projektech vývoje softwaru.[4] Snadno použitelný přístup k dimenzování a pravidla počítání poskytují mnoho výhod pro odhady v raných fázích, a umožňují tak rychle získat FSM (měření funkční velikosti, v tomto případě UUCW + UAW) aplikace nebo produktu IT. Tento FSM lze poté kombinovat se statisticky ověřenými odhadovacími modely, jako je COCOMO II získat spolehlivější výsledky odhadu.[4]
Viz také
Reference
- ^ Murali Chemuturi, Osvědčené postupy, nástroje a techniky pro odhad softwarového projektu pro odhady softwarových projektů, J.Ross Publishing, 2009, s. 84-87
- ^ Dennis, Alan R., Barbara Haley Wixom a David Tegarden. Analýza a návrh systémů s UML verze 2.0: Objektově orientovaný přístup, třetí vydání „John Wiley & Sons, 2009, kapitola 5 - Funkční modelování
- ^ Dennis, Alan R., Barbara Haley Wixom a David Tegarden. Analýza a návrh systémů s UML verze 2.0: Objektově orientovaný přístup, čtvrté vydání„John Wiley & Sons, 2012, kapitola 2 - Řízení projektů
- ^ A b Carl Friedrich Kress, Olivier Hummel, Mahmudul Huq: Praktický přístup ke spolehlivému odhadu předprojektového úsilí. In: CEUR Workshop Proceedings, sv. 1138, s. 23, 2014