In this paper, all the practices of XP and how they fit into a development organization are described. This includes pair programming, test-first programming, continuous integration, collective ownership, the planning game, open office, and so on. XP is a development process that is strongly focussed upon producing sound software architectures while delivering required functionality to customers on time, and within budget. The many successes that XP has enjoyed lend weight to its controversial arguments concerning up front analysis and design, manpower deployment, and testing.