Site Tools


swe:xp-programming

Table of Contents

Extreme programming

Extreme programming is a software development methodology that takes proven practices and pushes them to their logical extreme. If testing is good, test everything via Test-driven development. If code review is good, review code continuously via pair programming.

Code review after the fact catches some bugs but leaves many untested corners. Developers resist reviews as overhead, so many practices skip them. Pair programming, CI/CD, and Test-driven development are inconvenient upfront but catch problems immediately rather than deferring them to integration.

The defining practices are pair programming for continuous review, Test-driven development for correctness, frequent integration, small releases, refactoring with test support, simple design, collective ownership, sustainable pace, and on-site customer availability. These practices reinforce each other and collectively produce higher quality than any single practice alone.

swe/xp-programming.md · Last modified: by 127.0.0.1