Extreme Programming (XP) has been the subject of heated debate since its arrival on the programming scene in 1998—understandably so, as it contradicts many traditional software development beliefs. We¿ve heard success stories about sweeping changes made to organizations as a result of XP. We’ve read books about how this approach can work for our teams. However, are there times when XP isn’t appropriate? There are certainly instances when making the leap to XP could potentially jeopardize a whole project. What’s missing from all of this rhetoric? Witness Pete McBreen, software craftsman, examine the issue from both sides.
In Questioning Extreme Programming, the author helps you examine and answer the following questions:
Is the cost of change really low?
Does XP allow proper testing?
Does XP make sense?
Is XP a return to the dark ages?
Can we adopt XP practices for other approaches?
Do you need process improvement or process change?
Why are developers so zealous about adopting XP?
Is XP suitable for your projects?
What is the next step after Extreme Programming?
After reading this thought-provoking book, software developers can make informed decisions about Extreme Programming, and whether it is suitable for their organization. Readers will also be able to determine whether Extreme Programming is inappropriate for a particular project. The author challenges you to look past the hype and start asking the hard questions about how software is built. Discover for yourself.
Table of Contents
1. XP: Hype or HyperProductive?
- Sample Claims, Counter Claims, and Misinformation
- Is There Any Hard Evidence to Support the Claims for XP?
- All Processes Are Situational
- Do You Need Process Improvement or Process Change?
- Understanding Software Development Processes
- Understanding the Controversy Around XP
- Is XP an Option for You?
- 1. XP: Hype or HyperProductive?
II. What Is a Methodology?
- 2. What Do Methodologies Optimize?
- 3. What Are XP Projects Scared Of?
4. What Do Other Methodologies Consider Important?
- What Do Software Engineering Projects Consider Important?
- What Do Open Source Projects Consider Important?
- What Is Important to Agile Projects?
- 5. What Is Important for Your Projects?
III. Questioning the Core XP Practices
- 6. Planning Incremental Development
- 7. Truly Incremental Development
- 8. Are We Done Yet?
- 9. Working at This Intensity Is Hard
- 10. Is That All There Is to Extreme Programming?
IV. Questioning XP Concepts
- 11. The Source Code Is the Design?
12. Test First Development?
- But Do Programmers Know Enough About Testing?
- How Expensive Are Automated Acceptance Tests?
- Effectively Defect-Free Versus Good Enough Software
- What About Code That Is Hard to Test?
- Can Acceptance Tests Be Used to Measure Progress?
- Does XP Do Proper Testing?
- Why Now? What Has Changed?
- What Does This Mean for XP?
- 13. Large-Scale XP?
- 14. Is the Cost of Change Really Low?
- 15. Setting the Dials on Ten
- 16. Requirements: Documentation or a Conversation?
- 17. Is Oral Documentation Enough?
- 18. Playing to Win?
V. Understanding the XP Community
- 19. ReallyStrangeSayings
- 20. Feel the Hostility; Experience the Joy
- 21. Transitioning Away From Extreme Programming
VI. Your Choice
22. Is XP for You?
- Is Your Current Approach Broken?
- Is Your Organization Ready for XP?
- Do Your Developers Want to Use XP?
- Is Your Customer Ready for XP?
- Are Your Projects Suitable for XP?
- But We Can Overcome These Difficulties
- Applying the Lessons of Extreme Programming
- Do You Really Need to Adopt XP?
- Rolling Your Own Process
- 23. Do You Have a Suitable First Project?
- 22. Is XP for You?
- Title: Questioning Extreme Programming
- Release date: July 2002
- Publisher(s): Addison-Wesley Professional
- ISBN: 0201844575