Agile Process and Practices
Textbook Preconditions For Agile
"Software products are usually standalone systems rather than systems composed of independent subsystems"
"Developed by co-located teams who can communicate informally"
"Consequently, there is no need for formal documents, meetings, and cross-team communication."
Processes and Practices
Process is a collection of practices
Practices are chosen to mesh well and produce the desired result
Agile Principles
Involve the customer
Embrace change
Develop and deliver incrementally
Maintain simplicity
Focus on people, not dev process
Extreme Programming (XP) Practices
Frequent small releases
Continuous integration
Test-first development
Simple design
Refactoring
On-site customer
Sustainable pace
Pair programming
Collective ownership
Incremental planning
Another Look
Some are "apple-pie" platitudes: "simple design", "sustainable pace"
Some are ideals: "collective ownership"
Some are pretty novel even now: "pair programming"