Extreme Programming values are the primary guidelines to be used whenever it is not clear how to resolve the particular situation. Value of feedback emphasizes the belief in that requirements always change and/or are not well understood in the beginning of the project. Therefore the only way to build software the customer really needs is to continuously adjust the development basing on his feedback. Same goes to the technical level. Since software production is a new product development, it is rarely possible to plan it in detail in advance. Therefore it's best to develop in such a manner that improving the design basing on how the current one behaves was easily possible.
Primary XP practices directly supporting the value of feedback
- Sit Together and Whole Team- evaluate the decisions quickly with the help of the hallway feedback and by simply talking to the nearby sitting tester. Having people with the different perspectives in one room helps provides the team with the multiple perspectives on all their decisions and solutions
- Pair Programming - code reviews are known to be useful. Then let's do them already while programming. Get the second opinion on the code right, when creating it
- Weekly cycle - wrap up and evaluate things often
- Ten-Minute Build and Continuous Integration - verify that all the code in the system still works in no more, than ten minutes
- Test-First Programming - make the code explicitly tell you, when it is done
- Incremental Design - improve your design iteratively basing on how well the previous iteration works
Corollary XP practices directly supporting the value of feedback
- Real Customer Involvement - when anything is unclear, show the current solution to the customer and ask the him directly
- Root Cause Analysis - find the root causes both for the positive and the negative feedback
- Code and Test - let the code tell you if the solution still works
- Daily Deployment - get the actual view on the deployed current solution daily
- Pay-per-use - empower the customer by letting him pay you basing on how your software works in the real world. Money is the ultimate feedback
This page is a part of the Extreme Programming overview
Bookmark/Search this post with:
About the Author: As the Editor-in-Chief for AgileSoftwareDevelopment.com, Artem is charged with overseeing the direction for content, advertising, and the overall management of the site. Nowadays in his day life, Artem is a product manager in a global telecommunication company where he leads the development of a product developed in extremely distributed environment. Artem has been applying Agile and researching Agile since 2005. Contact Artem
Comments
Post new comment