USP Estimation - SwanseaCon 2016
-
Upload
fred-heath -
Category
Software
-
view
61 -
download
0
Transcript of USP Estimation - SwanseaCon 2016
Hello!I am Fred Heath
Developer, Problem solver, Ruby / Nim evangelist, Agile practitioner.
You can find me at:
FredAtBootstrap
www.bootstrap.me.uk
What’s this all about
● Current estimation methods not fit for purpose● A new algorithmic-based, empirical way introduced:
USP estimation
USP = User Story Point
Ben implements the story
Ben struggles
Jerry helps
Ben struggles some more
PO getting stressed
Scrum begins...
What went wrong
Environmental factors ignored
Ben unfamiliar with project, programming language and application domain.
Technical factors ignored
Asynchronous processing is inherently complex, setup is not trivial.
Human interaction factors ignored
Jerry charismatic and influential leader. Peer pressure always wins.
Velocity Assumptions
● Stable previous velocity
● Team doesn’t change
● Sprint duration doesn’t change
● Technology / platform doesn’t change
● Individual productivity doesn’t change
Use Case Points
Environmental Factors (EF)
Project familiarity, application experience, motivation, language complexity, etc.
Technical Factors (TF)
Complex algorithms, concurrency, cross-platform support, etc.
Use Case complexity (UUCP)
Simple, average or complex
Use Case Points = UUCP * TCF * ECF
UCP References1. Karner, G, 1993, “Metrics for Objectory”. Diploma thesis, University of
Linköping, Sweden. No. LiTHIDA-Ex-9344:21. December 1993.2. Smith, John, 1999, “The Estimation of Effort Based on Use-Cases.
Rational Software.Cupertino, CA.TP-171. October 1999.3. Anda, Bente, D. Dreiem, Dag Sjøberg and Magne Jørgensen, 2001,
“Estimating Software Development Effort Based on Use-Cases - Experiences from Industry”, The Unified Modeling Language.Modeling Languages, Concepts, and Tools, 4th International Conference, Toronto, Canada, October 1-5, 2001, LNCS 2185
4. Roy Clem, Project Estimation with Use Case Points, http://www.codeproject.com/KB/architecture/usecasep.aspx
COMPLEXITY FACTORS (1/2)Weight Name
2 Distributed or Parallel processing
2 Concurrency or Synchronisation
2 High Performance
1 Reusability & Modularity
1 Complex internal Processing
COMPLEXITY FACTORS (2/2)Weight Name
0.5 Ease of Use
1.5 Cross-Platform Support
0.5 Complex Setup or installation
1 Extensibility & Compliance
1 Security
PRODUCTIVITY FACTORS
Name Weight Score Impact
Project Familiarity 1.5 4 6
Application Experience 0.5 4 2
Programming paradigm experience
1 2 2
Team Cohesion 1 4 4
PRODUCTIVITY FACTORS
Name Weight Score Impact
User Story Robustness 1.5 5 7.5
New / part-time team-members
-1 3 -3
Programming language complexity
-1 3 -3
Motivation 1 5 5
TOTAL IMPACT = 20.5
User Story
Epic: “As a user, I want to backup my hard drive.”
Story: “As a power user, I can specify files or
folders to backup based on file size, date created and date modified.”
USCP = 7