Managing for Value with Agile Software Development

At the end of the iteration, the customer reviews the working system functionality with the team. Based on the review, the customer can

Reprioritize and change the next set of top-priority requirements

Request that the demonstrated increment be delivered as a working system

Increase the cost of future iterations by requesting that additional teams work on the product backlog

Adjust the quality to increase or decrease the amount of functionality delivered in an iteration

Not fund additional iterations because the business value received for the cost is inadequate

In any case, the customer controls the variables and is free to change them at the end of every iteration. The customer controls the project, guiding the work to deliver what constitutes business value. The ability to actively review what the team produces at every iteration greatly helps the customer make this determination. In this way, value driven development gives the customer flexibility. The customer is provided with the tools to maximize the business value produced with every iteration, and business value can be refocused before each new iteration.

Agile processes employ value driven development to increase the success of development projects. Side benefits include development team satisfaction, awareness of the business that they support, and reduced costs (since only the code that is needed is built).

Value-driven software development was described by James Bach in Process Evolution in a Mad World at Software Quality Week, 1994 (look for it under "Articles" at www.satisfice.com)--and by Ken Schwaber in Controlled Chaos, at OOPSLA in 1995. Since then, value driven software development has been incorporated into all of the agile processes, although the approach varies by process. However, collaboration between customer and development team is the common thread among all of them.

Agile methods and value driven software development are also described at the following sites:

Pages

About the author

The opinions and positions expressed within these guest posts are those of the author alone and do not represent those of the TechWell Community Sites. Guest authors represent that they have the right to distribute this content and that such content is not violating the legal rights of others. If you would like to contribute content to a TechWell Community Site, email editors@techwell.com.