Pair programming . Continuous integration . New code is integrated with the current system after no more than a few hours. When integrating, the system is built from scratch and all tests must pass or the changes are discarded. Collective ownership .
Every programmer improves any code anywhere in the system at any time if they see the opportunity.
On-site customer . A customer sits with the team full-time. 40-hour weeks . No one can work a second consecutive week of overtime. Even isolated overtime used too frequently is a sign of deeper problems that must be addressed.