XP as an Options-Driven Process


We need to make our software development economically more valuable by spending money more slowly, earning revenue more quickly, and increasing the probable productive lifespan of our project. But most of all, we need to increase the options for business decisions. [Beck2000]

Beck's declaration makes it clear that the founders of XP also believe in the importance of creating business options and believe that XP is capable of creating them. Some examples that should be familiar to the XP practitioner are the following:

  • Checkpoints after every iteration, where the customer can make midcourse decisions

  • Talented, trained personnel able to switch course rapidly with new or modified stories

  • The ability to modify the project at a small cost through enabling technologies and best practices

  • Waiting to see whether the customer really wants a feature before implementing it

The 12 practices and four values of XP are also a fertile source of business options.

  • Small releases introduce decision points and opportunities to change course. At the end of a release, the customer has the option to continue, modify the course of the project, or stop, based on what has been learned from the previous releases. This flexibility increases the value of the project while reducing its risk.

  • Refactoring makes future options to modify the system more valuable by keeping the cost of change at bay.

  • Collective ownership increases the chances of an option to improve the system to be exercised in a timely manner, which in turn increases its value.

  • Continuous integration preserves business value. Anytime, you can stop and still have a working system that can be delivered to the customer with some inherent value. The option to exit is more valuable for the customer because of this salvage value.

  • Simplicity creates options to modify the system. Complex code and design ossify the system. The simpler the code, the easier to modify it, and the higher the resulting option value.

  • Communication, feedback, pair programming, on-site customer, and testing all help reveal information and resolve uncertainty. When uncertainty is not resolved, options cannot be exercised in a rational and timely manner, destroying the value of flexibility.

  • Courage is required to exercise the options created. Without it, the options are worth nothing. Without courage, options virtually don't exist. Conversely, courage is also required to let go when it is revealed that an existing option is no longer likely to create business value.

All these points make a convincing argument that XP is a powerful options-driven process, capable of generating significant value. However, we also need an economic foundation for analyzing why and how much value is created by options. This brings us to one of the central activities of finance: valuation.



Extreme Programming Perspectives
Extreme Programming Perspectives
ISBN: 0201770059
EAN: 2147483647
Year: 2005
Pages: 445

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net