1 / 38

Use-Case Points for Estimating Software Size

Learn about the use case points (UCP) technique for estimating software size in IT project management. Explore the principles and calculations involved in UCP, and its usage in agile development.

richardt
Download Presentation

Use-Case Points for Estimating Software Size

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Use-Case Points for Estimating Software Size EECS/IT811: IT Project Management Sairath Bhattacharjya March 21, 2019

  2. Organization • Introduction • What is use case? • Use case 2.0 • Basic principle of application of use case • Software effort estimation • Use case points calculation • Usage of UCP • The agile way • Conclusions • Question & Answer

  3. Resources Used • All resources shared by Professor Saiedian (on class website) • Book chapters • White papers • Articles • Wikipedia

  4. Why I chose the use-case point topic? • Use case is a very popular method for requirement gathering • Ties the triple constrains (scope, time and cost) really well • Considers non-functional and environmental factors for software development • A more scientific method for estimation • Leads towards agile development

  5. What is a use case? [1 of 4] A use case is all the ways of using a system to achieve a particular goal for a particular user. Taken together the set of all the use cases gives you all of the useful ways to use the system, and illustrates the value that it will provide. Source: https://www.ivarjacobson.com/sites/default/files/field_iji_file/article/use-case_2_0_jan11.pdf

  6. What is a use case? [2 of 4] • A popular approach of collecting the requirements • A user-centric approach: a specific situation in which a product or service could potentially be used by a user • Can be developed to tell a story of how the system will be used from the perspective of each actor

  7. What is a use case? [3 of 4]

  8. What is a use case? [4 of 4]

  9. Use case 2.0 [1 of 2] • A scalable, agile practice that uses use cases to capture a set of requirements • Drive the incremental development of a system • Features of use case 2.0: • Lightweight • Scalable • Versatile • Easy to use

  10. Use case 2.0 [2 of 2]

  11. Basic principle of application of use case • Keep it simple by telling stories • Understand the big picture • Focus on value • Build the system in slices • Deliver the system in increments • Adapt to meet the team’s needs

  12. Software effort estimation • Objective: estimate the most realistic amount of efforts to complete a project • There are many methods • Expert judgment • Analogy-based estimation • Size-based models • Function points • Feature points • Use case points • Story points • …

  13. Use case points [1 of 2] • Use Case Points (UCP) is a software estimation technique used to forecast the software size for software development projects • Helps in determining the overall completion date of a project • Helps in release planning

  14. Use case points [2 of 2] The number of use case points in a project is a function of the following: • The number and complexity of the use cases in the system (UUCW) • The number and complexity of the actors on the system (UAW) • various non-functional requirements (TCF) • the environment in which the project will be developed (EF)

  15. Unadjusted Use Case Weight (UUCW) [1 of 3] • Shows the main scenario and extensions • 2a, 2b, 2c and 3a are outcomes and not considered a transaction • Total transactions: 10

  16. Unadjusted Use Case Weight (UUCW) [1 of 3] • Based on the number of transactions the complexity is defined as follows:

  17. Unadjusted Use Case Weight (UUCW) [3 of 3] • Each use case is categorized based on transactions • Each complexity is assigned a weight • The summation of product of weight and number of use case gives the UUCW • In our example UUCW = 260

  18. Unadjusted Actor Weight (UAW) [1 of 2] • An actor can be a person, system or program • Complexity is defined based on the type of actor

  19. Unadjusted Actor Weight (UAW) [2 of 2] • Each use case is assigned a weight based on the complexity of the actors interacting with the system • The summation of product of weight and number of use case gives the UAW • In our example UAW = 140

  20. Technical Complexity (TCF) [1 of 3]

  21. Technical Complexity (TCF) [2 of 3]

  22. Technical Complexity (TCF) [3 of 3] • There are 13 standard technical factors to estimate the impact on productivity • Weight is the relative impact • Assessment is the perceived complexity of each factor • The summation of the product of weight and assessment gives the Tfactor • TFC is calculated as TCF = 0.6 + (0.01 * TFactor) • In our example TCF = 0.6 + (0.01 * 42) = 1.02

  23. Environmental Complexity (EF) [1 of 3]

  24. Environmental Complexity (EF) [1 of 3]

  25. Environmental Complexity (EF) [1 of 3] • More experienced teams will have a greater impact on the UCP • Development team assigns perceived complexity for each factor between 1 and 5 • The EFactoris calculated as a sum of the product of weight and assessment. • The EF is calculated as EF = 1.4 + (–0.03 • EFactor) • In our case EF = 1.4 + (–0.03 • 17.5) = 1.4 + (–0.51) = 0.89

  26. Calculating the UCP • Use Case Point (UCP) is calculate as UCP = (UUCW + UAW) • TCF • EF • In our example, UCP = (260 + 140) • 1.02 • 0.89 = 363

  27. Effort estimation • Use Case Points (UCP) = 363 • Considering 20 hours per UCP • Total hours for project: 363 * 20 = 7,260 hours • Considering • iterations are of 2 weeks • 5 people are working in the project (40 hours/week) • Total iterations: 7260 / (5 * 40 * 2) = ~ 19 • Total time for completion: 38 weeks

  28. Cost estimation • Total hours for project: 7,260 hours • Rate per person: $45/hour • Total cost of the project = 45 * 7260 = $326,700 • Considering additional costs and buffers the project should cost around $350,000

  29. Release planning • Weight of use case per iteration: Unadjusted Use Case Weight (UUCW) by the number of iterations gives the • Weight per iteration = UUCW / iterations • In our case: 260 / 19 = 13.7 (~14) • Defines the expected velocity of the team • Actual velocity is compared against this to determine if the project is in schedule

  30. The agile way • Use case can be considered as a Epic • Scenarios in a use case can be considered as a user story • Completion of all the scenarios results in completion of the use case • Ties back to use case 2.0 objectives

  31. Conclusions • UCP helps in resource planning • Helps in providing a early estimate of the effort required • UCP method is versatile and extensible to a variety of development and testing projects.

  32. Question and Answers

  33. Resources used [1 of 6] • All resources shared by Professor Saiedian (on class website) • Book: Use case points – Chapter 6 • Wikipedia – Use case • Wikipedia - Software development effort estimation 33

  34. Resources used [2 of 6] • Title: Use Case 2.0, the guide to succeeding with use caseAuthor: Dr. Ivar Jacobson, Ian Spence, Kurt BittnerEdition: December 2011Type: EBookLink: https://www.ivarjacobson.com/sites/default/files/field_iji_file/article/use-case_2_0_jan11.pdf

  35. Resources used [3 of 6] • Title: Introduction to use caseAuthor: Ian Gibson, Matthew Hause (Artisan Software)Type: PresentationLink: https://incoseonline.org.uk/Documents/Bristol/BLG070328-Use-Case.pdf

  36. Resources used [4 of 6] • Title: Getting Started With Use Case ModelingAuthor: Jan Kettenis, Oracle CorporationEdition: May 2007Type: White paperLink: https://www.oracle.com/technetwork/testcontent/gettingstartedwithusecasemodeling-133857.pdf

  37. Resources used [5 of 6] • Title: Project Estimation With Use Case PointsAuthor: Roy K. ClemmonsEdition: February 2006Type: ArticleJournal: CROSSTALK The Journal of Defense Software EngineeringLink: http://www.royclemmons.com/articles/docs/0602Clemmons.pdf

  38. Resources used [6 of 6] • Title: Estimating Effort by Use Case Points: Method, Tool and Case StudyAuthor: S. Kusumoto, F. Matukawa, K. Inoue, S. Hanabusa, Y. MaegawaEdition: September 2004Type: ArticleJournal: 10th International Symposium on Software Metrics, 2004. Proceedings.Link: https://ieeexplore.ieee.org/document/1357913http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.474.9332&rep=rep1&type=pdf

More Related