What is Extreme Programming?
https://ronjeffries.com/xprog/what-is-extreme-programming/circles.jpg
IMO:サークルオブライフはまずこの記事に当たりたい
Conclusion
Extreme Programming is a discipline of software development based on values of simplicity, communication, feedback, and courage.
It works by bringing the whole team together in the presence of simple practices, with enough feedback to enable the team to see where they are and to tune the practices to their unique situation.
Core Practices
Whole Team
All the contributors to an XP project sit together, members of one team.
ロール(役割)
a business representative – the “Customer”
programmers
testers, who help the Customer define the customer acceptance tests.
Analysts may serve as helpers to the Customer, helping to define the requirements.
coach
manager
None of these roles is necessarily the exclusive property of just one individual
「これらのロールのどれも必ずしもたった一人の個人が独占するとは限らない」
The best teams have no specialists, only general contributors with special skills.
「最良のチームはスペシャリストを持たず、特別なスキルを持つ総合的なコントリビュータのみからなる」
Planning Game
Customer Tests
Small Releases
Simple Design
Pair Programming
Test-Driven Development
Design Improvement (Refactoring)
Continuous Integration
Collective Code Ownership
Coding Standard
Metaphor
Sustainable Pace