Agile EVMS


Published on

Integrating Agile and Earned Value Management

Published in: Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Agile EVMS

  1. 1. Submitted to Agile Development, June 25–28, 2003 Salt Lake City, Utah Agile Project Management Methods Meet Earned Value Management Glen B. Alleman Michael Henderson Kaiser–Hill LLC Golden, Colorado Abstract: Earned Value Management Systems (EVMS) provide valuable in- formation for planning and controlling complex software development projects in high ceremony environments. The primary shortcoming of EVMS is its em- phasis on retrospective data and the concept of driving in the rearview mirror. Agile software development systems provide tools for adapting to changing re- quirements in low ceremony environments. The primary shortcoming of Agile development is it inability to participate in large population of government and commercial development environments where staff and funding are managed in more formal ways. Instead of requiring the high ceremony environment to abandon their primary project reporting method, merging Agile development activities with trusted earned value management reporting is an obvious ap- proach. The principle management concern in every environment is how much value is being delivered for the invested funds. The answer to this question is the natural domain of the metrics of EVMS. Merging EVMS with Agile devel- opment processes creates new synergies by leveraging the best of both proc- esses in a variety of domains. This paper describes such an effort in a Depart- ment of Energy IT environment.1. INTRODUCTION Measuring progress to plan on software projects is difficult but important no mat-ter what the business domain. The Agile community claims such measurements are anatural part of their development methods. Extreme Programming, SCRUM, DSDM,FDD, Crystal, etc. provide techniques for capturing requirements, developing highquality software, and delivering value to the customer. [1] The discussion of the effec-tiveness of an Agile method in a specific business environment is not the topic of thispaper. Using Earned Value Analysis (EVA) to report progress to plan is assumed. Thequestion is how can Agile software development methods be integrated with EVA toachieve the benefits of both approaches while also maintaining the integrity of bothapproaches.
  2. 2. BACKGROUND On government agency, construction, and civilian aerospace technology projectsthe “earned value” performance measurement technique has been used since 1967.The United States Department of Defense originally required earned value to be im-plemented with Cost/Schedule Control Systems Criteria (C/SCSC). In the past, manyprograms managed under C/SCSC assumed software development was unmeas-uredable and classified this development as a level of effort. [2] In the past C/SCSC was required on significant contracts and subcontracts withinDoD, DoE and other sub–agency acquisition programs. DoD instruction 5000.2 de-fines significant contracts as research, development, test, and evaluation contractswith an estimated cost of $60 million or more (in FY 90 constant dollars), or pro-curement contracts of $250 million or more. This number seems ridiculously high forthe typical software development contract or project in any modern organization.However the cost and schedule of a typical ERP system, enterprise level e–commercedevelopment, multi–site manufacturing execution system, or large–scale customerrelationship management system can easily approach $10 million and many years ifleft unchecked.EARNED VALUE MANAGEMENT OVERVIEW The Earned Value Management principles define the methods to:§ Plan all work scope for the program to completion§ Break down the work scope into finite pieces that can be assigned to responsible person or organization for control of technical, schedule, and cost objectives.§ Integrate program work scope, schedule, and cost objectives into a performance measurement baseline plan against which accomplishments many be measured. Control changes to the baseline plan.§ Use actual costs incurred and recorded in accomplishing the work performed.§ Objectively assess accomplishments at the work performance level.§ Analyze significant variances from the plan, forecast impacts, and prepare an estimate at completion based on performance to date and work to be performed.§ Use EVMS information in the company’s management processes. Like any good methodology a set of terms unique to that method are needed.Earned Value terms include:§ Budget Cost for Work Scheduled (BCWS) – this is the Plan and represents the total budgeted cost. It answers the question how much do we plan to spend?§ Budget Cost for Work Performed (BCWP) – this is the Performance or Earned Value and is the cost originally budgeted to accomplish the work that has been completed. It answers the question how much work has actually been completed?§ Actual Cost for Work Performed (ACWP) – this is the Cost of the Performance or the Investment and is the actual cost to accomplish all the work that was per-
  3. 3. formed. It answers the question how much did we actually spend to deliver the Earned Value?2. THE VALUE CREATION PROBLEM The critical aspect of Earned Value Analysis is the determination of “value” de-livered (BCWP) in exchange for hours or dollars invested (ACWP) for software pro-jects. This earned value is the basis for determining the cost and schedule perform-ance for a task or project. The “simple” way to calculate the earned value is to consider tasks as:§ 100% complete when 100% of the budgeted funds have been expended. In this case BCWP = BCWS. In this 0/100% approach, no credit will be given to the task until it is 100% complete. At that time BCWP = BCWS, otherwise BCWP = 0.§ 50% of the credit for BCWS is taken when the task starts and the remaining 50% is taken when the task ends.§ Discrete milestones within the task. The BCWS is assigned as earned value at the completion of each milestone.§ Percent complete within the task. This is a subjective assessment of the amount for work performed for each work period. This value is then used to calculate BCWP as a percentage of BCWS for the task.EVMS VALUE MEASUREMENT All of the methods described above depend either on a binary event or some sub-jective assessment of the progress that has been made during the reporting period.Both approaches fail the integrity test for software project management. This test asksthe question – how do we know that the software will behave as specified? If it doesbehave as specified, then the development phase is complete. If not, then rework isneeded.AGILE D EVELOPMENT VALUE MEASUREMENTS If we take the approach of booking 0% or 100% of a task as BCWP AND makethe task durations sufficiently small, something happens to the EVMS “value generat-ing” approach – it looks like an Agile software development process. With this fine–grained task breakdown process, all the EVMS principles are still in place, but thebehavior of the management system has many of the attributed of an agile process. There are still gaps to be closed, but the two paradigms are now closer togetherthan one would first imagine.
  4. 4. XP’s Approach to Measuring Delivered Value In the Extreme Programming paradigm work is planned in small releases. “Sto-ries” define the scope of work for the release cycle. These “stories” define what thesystem will do. Programmers estimate the effort for the “stories” in units of “points.”This process is called the “Planning Game.” These “points” are dimensionless units that represent the relative complexity ofthe “story” as well as the productivity of the development team. In the “PlanningGame” the developers create “Stories” in which they:§ Get the customer to tell them “stories” about how the system will work§ They write these stories down on cards§ They organize the cards into topics§ They classify the cards as High, medium, Low priority§ They define an associated Functional Test foe each “story” With all the programmers working as a team a “Release Plan” is created. Thisprocess estimates to the resources needed for the iteration, the estimated “velocity” inunits of “engineering weeks.” In XP there is a defined sequence to creating a “Release Plan:” [2, 3, 12]§ Write enough stories to define a successful product§ Do any necessary exploration§ Estimate the difficulty of implementing each story§ Estimate the speed of the story implementation in units of “points”§ Choose stories for the first release based on the business value and difficulty of the stories. There are several interesting aspects to this approach:§ The units of measure are arbitrary. “Points” have no normalized unit of measure. <Find out specific units from XP teams>
  5. 5. MERGING EVMS WITH AGILITY AND MEASURING VALUE3. EVMS AND AGILITY FRAMEWORK4. INTEGRATION OF XP WITH EVMS Not everything that can be counted counts, and not everything the counts can be counted. – Albert Einstein An earned value management system is not a reporting system, contract admini-stration, cost analysis, accounting, or a contractors task management system. It is ameasure of the value of physical progress in a project and as such adds additionaleffort to the work of managing a project. Beyond the additional effort of an EVMS,care must be taken to avoid hindering the project team’s ability to use its organicmanagement systems. With the Earned Value and Agile methods now outlined, let’s look at the similari-ties of each as ask why can’t Agile methods be used in an EVMS environment?Earned Value Management Methods Agile Management MethodsDefine the scope of workDevelop an integrated bottom–up forperforming the scope of workAssign resources for each task in the planMeasure the performance of these re-sources against the planMeasure the cost efficiency against thecost planForecast the final cost based on the cur-rent performanceManage the remaining workMange changes to the baseline
  6. 6. 5. REFERENCESThe following resources have been used as assemble the compendium of ideas pre-sented in this paper. Since many of the ideas presented here are not mine, I give fullacknowledgement to the original source and authors of the materials presented here.1. Abrahamsson, Pekka, Outi Salo, Jussi Ronkainen, and Juhani Warsta “Agile Software Development Methods: Review and Analysis,”, ESPOO 2002.2. Beck, Kent and Martin Flower, Planning Extreme Programming, Addison Wesley, 2001.3. Beck, Kent, Extreme Programming Explained, Addison Wesley, 2000.4. Christian, David S. and Daniel V. Ferns “Using Earned Value for Performance Measurement on Software Development Projects,”, Acquisition Review Quar- terly, Spring 1995, pp. 155– 171.5. EIA Standard 748–A: Earned Value Management, January 2002.6. Fleming, Quentin and Joel Koppelman “Earned Value Project Management a Powerful Tool for Software Projects”7. Fleming, Quentin, “Earned Value for the Masses,” The Measurable News, Dec 2001.8. Lett, Steve, “Earned Value Management for Self Directed Software Teams,” Software Engineering Process Group, Lockheed Martin.9. Lipke, Walter H., “EVM and Software Project Management: Our Story,” Crosstalk, November 2002.10. Lipke, Walter H., “Software Project Planning, Statistics, and Earned Value,” Crosstalk , December 2002.11. Lipke, Walter H., “Applying Management Reserve to Software Project Man- agement,” Crosstalk, March 1999.12. Jeffries, Ron, Ann Anderson, and Chet Hendrickson Extreme Programming Installed, , Addison Wesley, 2001.13. Jeffries, Ron, “Extreme Programming,” ACM professional Development Semi- nar, May 12th , 2001, Boulder County Chapter of the ACM.14. Solomon, Paul J. “Using Earned Value to Manage Successful Software Projects”15. Solomon, Paul “Practical Software Measurement, Performance-Based Earned Value,” Crosstalk , September 2001.16. Solomon, Paul, “Going from Performance Based Earned Value to CMMI,” Crosstalk , September 200217. Using EVMS on COTS– Based Systems, CMU/SEI– 2002–TR– 022. Glen B. Alleman is the Director, Program Management Office of Kaiser–Hill LLC. Prior to KH, Glen was a member of a small consulting firm specializing in ERP systems architecture and deployment. Michael Henderson is the Manager, Applications Development of Kaiser–Hill LLC. Prior to KH Michael was a Vice President of Development with Computer Associates. Kaiser–Hill LLC is the prime contractor for the Rocky Flats Environmental Technology Site, Golden Colorado. Michael and Glen work in the Information Technology Department of KH–
  7. 7. LLC, providing applications and infrastructure support of the closure of Rocky Flats on or be-fore December 15th, 2006.