must be made to run at 100%.Acceptance Tests are written with the customer to verify the application is doingwhat the customer needs it to do.Pair Programming provides constant code reviews. No more dreary code reviewmeetings -- put two sets of eyes on the code as it's written. Collective Ownership of the code by all members of the team helps ensure even more eyes will see the code,increasing the amount of code review performed.1.3 SimplicityThe customer is the ultimate driving force in XP. Do what the customer needs, assimply as possible, and nothing else. Take on a mindset to reduce complexity fromthe beginning.All code should be refactored as often as possible. Refactoring is a process of improving a code's structure without changing its functionality. Refactoringproduces highly decoupled objects which makes them easy to test, easy to use,more flexible, and therefore, more changeable.1.4 CourageNo more fragile code. With smooth communication, quick feedback and simplecode, programmers have the support they need to dive into changes when theycome ... and they will come.
2. The 12 practices
2.1. Planning Game
Each iteration begins with the Planning Game, an informal process that sets theagenda for the iteration. The game starts with the customer defining requirements,or 'user stories'. Technical members work with the customer to normalize thesestories into manageable chunks and break them down into specific tasks, as wellas introducing technical tasks needed to support the customer's requests (e.g.upgrading development software, automating builds, etc). Then the developersplace ideal time estimates on the stories/tasks. Based on the time estimates given