Using the COSMIC Method to Estimate Agile User Stories
Upcoming SlideShare
Loading in...5
×
 

Using the COSMIC Method to Estimate Agile User Stories

on

  • 1,472 views

This presentation presents an estimation process based on the COSMIC FSM method jointly with a qualitative driver (quality of documentation)

This presentation presents an estimation process based on the COSMIC FSM method jointly with a qualitative driver (quality of documentation)

Statistics

Views

Total Views
1,472
Views on SlideShare
1,470
Embed Views
2

Actions

Likes
4
Downloads
46
Comments
0

2 Embeds 2

http://www.linkedin.com 1
http://www.docseek.net 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Using the COSMIC Method to Estimate Agile User Stories Using the COSMIC Method to Estimate Agile User Stories Presentation Transcript

  • VALOIR 2011 1° Workshop on Managing the Client Value Creation Process in Agile Projects Torre Canne (BA) – Italy, June 20 2011Using the COSMIC Method to Estimate Agile User Stories Jean-Marc Desharnais Luigi Buglione Buğra Kocatürk www.eng.it
  • Engineering At a glance _ The first Italian ICT player _ more than 730 M/€ revenues Research and PA & HC Finance Industry TELCO Utilities Development _ 1000 clients _ 6,300 IT specialists System Int. & Consultancy % 46 70 54 80 80 Outsourcing % 35 10 27 10 Software % 19 20 19 10 20 ERP IT Security ECM Plant Management Managed Operations Broadband & Media System www.eng.it www.eng.it
  • COSMIC & Agile Goals of the presentation G1. Introduce the estimation issue in Agile projects G2. Discuss main weaknesses and points of attention from thestate-of-the-art G3. Present an estimation process based on a FSM method(COSMIC) jointly with a qualitative driver (quality of documentation)3 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • COSMIC & Agile Agenda• Introduction – A bit of humour… – What is (should be) Agile?• Related Works – Agile Methodologies – The ISBSG repositoty• Our Proposal: a 7-step process 1. Getting UR in terms of US 2. Formulate & Identify Functional Process(es) 3. Determine the Functional Size per US 4. Calculate Effort per CFP 5. Calculate Total Effort 6. Prepare the Initial Project Plan 7. Revise the Project Plan• Conclusions & Future Works• Q&A4 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Introduction A bit of humour... www.dilbert.com URL:5 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Introduction What is (should be) Agile?6 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • COSMIC & Agile Agenda• Introduction – A bit of humour… – What is (should be) Agile?• Related Works – Agile Methodologies – The ISBSG repositoty• Our Proposal: a 7-step process 1. Getting UR in terms of US 2. Formulate & Identify Functional Process(es) 3. Determine the Functional Size per US 4. Calculate Effort per CFP 5. Calculate Total Effort 6. Prepare the Initial Project Plan 7. Revise the Project Plan• Conclusions & Future Works• Q&A7 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Related Works Agile Methodologies (Req. Mgmt) What the customer What the project How analysts What programmers What consultant said asked for manager understood projected it did it was needed How the project was What was effectively What the customer How maintenance What the customer documented installed had to pay was run would have needed8 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Related Works Agile Methodologies (Staffing)9 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Related Works AM – Main Issues• Agile denotes…  …the quality of being agile, readiness for motion, nimbleness, activity, dexterity in motion• “Old” paradigms to be overcome during the ’90s  Shorter time-to-market  More compressed project schedules  Requirements more and more instable  Heavyweight vs lightweight (or agile) methods/approaches agile• “Agile” Methods (AM) as the new paradigm for Sw Development  A more flexible answer to manage projects  Common characteristics and ways to express an iterative-incremental SLC  Plenty of methods between mid ’90 and the start of Y2K, grouped under the Agile Alliance umbrella  XP, SCRUM, FDD, DSDM, Crystal, ….10 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Related Works The Agile Manifesto (2001) 2001 “We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more” Source: www.agilemanifesto.org11 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Related Works AM & Estimation: Planning Poker• Delphi approach with a 4-step iterative process 1. Present US for estimate 2. After discussion, each player estimate the amount of work for a certain US keeping the related card 3. All estimates are still private till the choice of a card 4. At the end, all estimates are revealed and the discussion can be iterated for a refinement• Pros  Sharing ideas and thoughts  F2F discussions• Cons  It’s anyway “guess estimation”  It does not rely on historical dataSource: http://planningpoker.com12 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Related Works AM & Estimation: Some Complaints (2007) 2007 • Main (missing) points: 1. Non-Functional Reqs (NFR) • US expresses only the functional side of the story 2. Sizing Unit • No standard and ‘physical’ measures for sizing US, only time-based approximations (e.g. Story Points) 3. Historical Data • Only DSDM asks to historicize data from an Agile project 3. Standards • A plenty of methods, no agreed standards about how to measure, monitor & controlSource: Buglione L. & Abran A., Improving Estimations in Agile Projects: issues and avenues, Proceedings of the 4th Software Measurement EuropeanForum (SMEF 2007), Rome (Italy), May 9-11 2007, ISBN 9-788870-909425, pp.265-274, URL: http://www.dpo.it/smef2007/papers/day2/212.pdf13 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Related Works ISBSG Repository – www.isbsg.org • 2 repositories: Dev&Enh (D&E), Maint & Support (M&S) • D&E release 11 (2009) -- 5052 projects -- 100+ attributes • Next: e.g. right now, no splitted effort by ReqType (FUR/NFR) Next14 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • COSMIC & Agile Agenda• Introduction – A bit of humour… – What is (should be) Agile?• Related Works – Agile Methodologies – The ISBSG repositoty• Our Proposal: a 7-step process 1. Getting UR in terms of US 2. Formulate & Identify Functional Process(es) 3. Determine the Functional Size per US 4. Calculate Effort per CFP 5. Calculate Total Effort 6. Prepare the Initial Project Plan 7. Revise the Project Plan• Conclusions & Future Works• Q&A15 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Our proposal A 7-step process 1. Get User Requirements (UR) in terms of User Story (US) 2. Formulate & Identify Functional Process(es) 3. Determine the Functional Size per US in COSMIC FP (CFP) 4. Calculate Effort per CFP 5. Calculate Total Effort 6. Prepare the Initial Project Plan 7. Revise the Project Plan16 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Our proposal The COSMIC Method – www.cosmicon.com• COSMIC Method  2° Generation FSM-method (1998-), current version: v3.0.1 (2010) Source: Abran A., Desharnais J.M., Oligny S., St-Pierre D., Symons C., COSMIC-  It is also an ISO standard: ISO/IEC 19761:2011  Three phases: Measurement Strategy, Mapping & Measurement  Introduced the concepts of ‘layer’ and ‘viewpoint’, more stressed than in 1° generation FSM-methods  Convertibility from/to other FSM methods (included FFP v1.0 and IFPUG FPA v4.1)• BFC (Base Functional Components)  Four ‘data movements’: E – Entry, X - eXit, R – Read, W –Write Measurement Manual, v3.0, September 2007, COSMICON• Weighting System  No weighting system  Each data movement counts 1 CFP (COSMIC Function Point)17 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Our proposal 1. Getting UR in terms of US• User story on ‘Customers can rent movies on-site’18 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Our proposal 2. Formulate & Identify Functional Process(es) MS.01 - Definition of purpose of the measurement MS.02 - Definition of scope of the measurement 1. MEASUREMENT STRATEGY (MS) MS.03 - Identification of functional users MS.04 - Identification of level of granularity MA.01 - Application of Generic Software Model 2. MAPPING (MA) MA.02 - Identification of functional processes MA.03 - Identification of objects of interest and data groups • ‘Customer can rent movies on-site’ is a single Functional Process • Some typical questions to pose at this stage of analysis from US are:  how many functional processes within a story  is the story imply a change in the database (write)  what is the trigger of the functional process  etc.19 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Our proposal 3. Determine the Functional Size per US ME.01 - Identification of data attributes ME.02 - Identification of data movements 3. MEASUREMENT (ME) ME.03 - Application of measurement function ME.04 - Aggregation of measurement results • 1 Functional Process • 3 Data Groups • CFP= #Entry (E) + #Exit (X) +#Read (R) + #Write (W) • CFP= 3 (E) + 4 (X) + 3 (R) + 3 (W) = 1320 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Our proposal 4. Calculate Effort per CFP• PDR, Productivity and Estimation  Need to know from your project historical database (PHD) or from reliable sources (e.g. ISBSG)  Productivity is not PDR! They are the opposite (Productivity = PDR-1 and viceversa)  Note that such productivity is ‘nominal’ and not ‘strictly functional’  Use man-hours and not man-days  Do a statistical analysis using common-sense criteria for deriving homogeneous sub- sets of projects (e.g. by functional size, development type, programming language and technical environment, repeatibility of such kind of projects, etc.)  Put in evidence any possible ‘outlier’ also by qualitative fields in your PHD (e.g. Supposed more effort for a higher proportion of NFR vs. FUR for a project) • 1 Functional Process • 3 Data Groups • CFP= 3 (E) + 4 (X) + 3 (R) + 3 (W) = 13 • PDR= hrs/CFP = (assumed) c.a. 5hrs/CFP21 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • n∑i= 1 CFPUSi * EUSi = Our proposal 5. Calculate Total Effort Change Change CFP for CFP for CFP for for for Phase 1 Phase 2 Phase 3 Phase 1 - Phase 2 -   2 3 US 1 13 13 12 0 1 US 1a - 17 16 17 1 US 2 10 4 4 6 0 • 10 US; 15 1 Functional Process US 2a - - 10 0 10 • Some US were split into 1+ FP US 3 4 4 4 0 0 • 3 phases US 3a - 6 6 6 0 • CFPmin:83; CFPmax:132 US 4 12 13 12 1 1 US 5 8 8 8 0 0 • US1=12 CFP US 5a - - 10 0 10 • Effort/CFP:5 hrs/CFP US 6 12 11 10 1 1 • Effort(US1)=5*12=60 hrs US 7 8 8 8 0 0 US 7a - 11 10 11 1 • Overall Project Effort= US 8 4 6 6 2 0 n US 9 US 10 8 4 9 7 9 7 1 3 0 0 ∑i= 1 CFPUSi * EffortUSi Total 83 113 132 48 25 • = 132 * 5= 660 m-hrs 22 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Our proposal 6. Prepare the Initial Project Plan Knowing the overall project effort from the estimation of the n User Stories:  Determine the number of iterations (Sprint, in Scrum)  Prepare the first version of the Project Plan, Resource Plan or Budget Plan  Use the INVEST criteria for determining priorities when scheduling the stories across iterations  Balance FUR and NFR for a proper team staffing  Choose few but core measures covering all the perspectives of interest for the project23 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • Our proposal 7. Revise the Project Plan From the 2° phase on:  Refine the project plan by new estimates and the project monitoring  Elicit and clear any ambiguity and incompleteness in US  Add any eventual new US  Iterate estimate by partial values monitored and achieved in terms of times and costs  Use burndown charts instead of EV charts (how many hours/$ are still available from the project budget?)24 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • COSMIC & Agile Agenda• Introduction – A bit of humour… – What is (should be) Agile?• Related Works – Agile Methodologies – The ISBSG repositoty• Our Proposal: a 7-step process 1. Getting UR in terms of US 2. Formulate & Identify Functional Process(es) 3. Determine the Functional Size per US 4. Calculate Effort per CFP 5. Calculate Total Effort 6. Prepare the Initial Project Plan 7. Revise the Project Plan• Conclusions & Future Works• Q&A25 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • COSMIC & Agile Conclusions & Future Works• Agile Methodologies (AM)  Agile methods are typically applied in small, short-time target, time-boxed projects  Split AM into ASD (Agile Sw Development) and APM (Agile Project Management) methods  Agile Manifesto (4 values; 12 principles) valid but under revision• Agile & Estimation  Some weaknesses when dealing with Estimation in Agile  Main points of attention are about the ‘sizing measure’ and the productivity historical data Using a FSM method with a parametrical approach  COSMIC is a 2° generation FSM method (ISO/IEC 19761:2011)  Easier and faster way to count software product FURs, anyway it cannot take into account NFR  Parametric approach: Add qualitative criteria/drivers for deriving homogeneous project clusters (sub-groups)  In this study the ‘quality of documentation’ driver was applied Some lessons learned  Need to reduce subjectivity and choose few standards measures, in particular when in medium- large organizations  Historical data is one of the core issue to achieve and implent as soon as possible  A functional size measure (fsu) as COSMIC jointly with a qualitative driver can greatly help in improving estimates, by a reduction of project MRE and the ‘cone of uncertainty’ Analyze facts and talk through data (Kaoru Ishiwaka, TQM guru)26 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • COSMIC & Agile Q&A Grazie per l’attenzione! Thanks for your attention!27 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione
  • COSMIC & Agile Contacts Jean-Marc Luigi Buğra Desharnais Buglione KocatürkETS/Bogazici Univ. ETS/Engineering.IT Bogazici Universitydesharnaisjm@gmail.com luigi.buglione@eng.it bugrakocaturk@hotmail.com28 VALOIR 2011 – Torre Canne (BA), June 20, 2011– © 2011 L.Buglione