Use Case Points Slide 1 Use Case Points* Use Case Points (UCP) is a current technique for measuring functionality of a software system. It can be used for each use case or all use cases. *Apparently also called “use case function points”, based on analogy to function point metric. Slide 2 Use-Case Points l A size and effort estimation technique that was developed around use cases • l Better for OOSAD projects than function points Requires at a minimum: • • • The set of essential use cases The use case diagram All actors and use cases classified as simple, average, or complex Slide 3 Steps of UCP (Use Case Points) Estimation For each use case: 1. Classify actors, to determine UAW (Unadjusted Actor weight) 2. Classify use case, to determine UUCW (Unadjusted Use case Weight) 3. Compute UUCP (Unadjusted Use Case Points) 4. Compute technical and environmental factors 5. Computer the Adjusted Use Case Points 6. Translate into an estimate of human effort Slide 4 Steps in UCFP Estimation 1. Determine the UAW (Unadjusted Actor weight) a. Using the Actor Classification Table determine the classification of each of the actors in the system. b. Add the values of all the actors to determine the unadjusted actor weight of the system. Slide 5 Actor Classification Table Classification Simple Test to recognize classification Communicate to system through API. Average Value/Factor 1 2 Interact with the system through some protocol (HTTP, FTP, or probably some user defined protocol), or Are data stores (Files, RDBMS). Complex Interacts through HCI (GUI) 3 Slide 6 Steps in UCFP Estimation 2. Determine number of UUCW (Unadjusted Use case Weight) 1. Using the Use Case Classification Table, determine the classification of each use case on the use case diagram. 2. Add the values of each use case to yield the unadjusted use case weight. Slide 7 Use Case Classification Table Use Case Type Simple Average Complex Test to recognize classification 1-3 transactions 4-7 transactions More than 7 transactions Value/Factor 5 10 15 Slide 8 Steps in UCFP Estimation 3. Determine Total UUCP (Unadjusted Use Case Points) using the formula below. Total UUCP = Total UAW + Total UUCW. Slide 9 Technical Complexity Factors Factor Description Number Weight T1 Distributed system 2.0 T2 Response time or throughput performance objectives 1.0 T3 End-user online efficiency 1.0 T4 Complex internal processing 1.0 T5 Reusability of code 1.0 T6 Easy to install 0.5 T7 Ease of use 0.5 T8 Portability 2.0 T9 Ease of change 1.0 Technical Complexity Factor (TCF) = 0.6 + (0.01 * TFactor) Slide 10 Environmental Factors Factor Description Number Weight E1 Familiarity with system development process in use 1.5 E2 Application experience 0.5 E3 Object-oriented experience 1.0 E4 Lead analyst capability 0.5 E5 Motivation 1.0 E6 Requirements stability 2.0 E7 Part time staff -1.0 E8 Difficulty of programming language -1.0 Environmental Factor (EF) = 1.4 + (-0.03 * EFactor) Slide 11 Person-Hours Multiplier If the sum of (number of Efactors E1 through E6 assigned value < 3) and (number of Efactors E7 and E8 assigned value > 3) ≤ 2 PHM = 20 Else If the sum of (number of Efactors E1 through E6 assigned value < 3) and (number of Efactors E7 and E8 assigned value > 3) = 3 or 4 PHM = 28 Else Rethink project; it has too high of a risk for failure Slide 12 Computing Use-Case Points l Adjusted Use Case Points (UCP) = l UUCP * TCF * ECF l Effort in Person Hours = l UCP * PHM Slide 13