I’ve been away from the software game a while, but I’m still fascinated by “eXtreme programming” — The New X-Men explains:
‘Thou Shalt Work In Pairs’
The 12 commandments of extreme programming:
I The Planning Game
Meet with coders, managers, and the customer each week to schedule tasks for the next phase. Update the plan regularly.
II Small Releases
Put a simple system into production quickly, then release new versions on a short cycle.
III Metaphor
Create an analogy that expresses how the parts of the new system work.
IV Simple design
Design simply, and remove complexity at every stage.
V Testing
Write test programs that assure every portion of the code runs flawlessly before attempting a new task.
VI Refactoring
Edit the code to simplify, add flexibility, or remove redundancy.
VII Pair Programming
Write all code with two programmers at one machine.
VIII Collective Ownership
Permit anyone on the team to change code anywhere in the system at any time.
IX Continuous Integration
Bring components of the program together several times throughout each day to make sure they work in concert.
X 40-Hour Week
Strive to work no more than 40 hours a week. Never work overtime a second week in a row.
XI Onsite Customer
Include a real, live user on the team, available full-time to answer questions.
XII Coding Standards
Use agreed-upon styles and nomenclature to promote easy understanding of what the code does.