search for books and compare prices
Tables of Contents for Questioning Extreme Programming
Chapter/Section Title
Page #
Page Count
Foreword
xv
 
Preface
xvii
 
Adopting Extreme Programming
xviii
 
Resisting Extreme Programming
xix
 
Looking for Alternatives to Extreme Programming
xix
 
Improving Your Current Software Development Process
xix
 
Why You Should Read This Book
xx
 
Acknowledgments
xxi
 
Part I Introduction
1
12
XP: Hype or Hyper Productive?
3
10
Sample Claims, Counter Claims, and Misinformation
4
1
Is There Any Hard Evidence to Support the Claims for XP?
4
4
All Processes Are Situational
8
1
Do You Need Process Improvement or Process Change?
8
2
Understanding Software Development Processes
10
1
Understanding the Controversy Around XP
11
1
Is XP an Option for You?
11
1
Summary
12
1
Part II What Is a Methodology?
13
42
What Do Methodologies Optimize?
15
10
Why the Focus on Fear?
15
2
Methodologies Record Bad Experiences on Projects
17
1
What Do Developers Look for in a Process?
18
1
Experience, Talent, and Tacit Knowledge
19
2
Heavy, Rigorous, Tailorable, Light, Minimal, and Agile Methodologies
21
1
Summary
22
3
What Are XP Projects Scared Of?
25
4
XP Was Created to Address Project Risks
25
1
But Project Risks Are Symptoms, Not the Disease
26
2
Summary
28
1
What Do Other Methodologies Consider Important?
29
18
What Do Software Engineering Projects Consider Important?
30
6
What Do Open Source Projects Consider Important?
36
2
What Is Important to Agile Projects?
38
7
Summary
45
2
What Is Important for Your Projects?
47
8
Reinterpreting Experience in the Light of New Knowledge
47
1
Understanding Process, Culture, and Methodologies
48
1
Maintenance and Evolution of the Software
49
1
Can a Methodology per Project Really Work?
50
1
So What Is Important to Your Projects?
51
2
Learning From XP to Improve Your Process
53
1
Summary
53
2
Part III Questioning the Core XP Practices
55
38
Planning Incremental Development
57
6
Small Releases
57
1
User Stories
58
1
Planning Game
58
2
Open Questions
60
1
What Can Other Approaches Learn From XP?
61
1
Summary
62
1
Truly Incremental Development
63
8
Simple Design
63
1
Refactoring
64
1
System Metaphor
65
1
Collective Code Ownership
65
1
Continuous Integration
65
1
Open Questions
66
3
What Can Other Approaches Learn From XP?
69
1
Summary
69
2
Are We Done Yet?
71
8
Coding Standards
71
1
Test First Development
72
1
Acceptance Tests
73
1
Open Questions
74
1
What Can Other Approaches Learn From XP?
75
1
Summary
76
3
Working at This Intensity Is Hard
79
6
Forty-Hour Work Week
79
1
Pair Programming
80
1
On-Site Customer
80
1
Open Questions
81
2
What Can Other Approaches Learn From XP?
83
1
Summary
84
1
Is That All There Is to Extreme Programming?
85
8
Keeping an XP Project On Process
86
2
Continuous Reflection
88
1
Distributed Development and Extreme Programming
89
1
Open Questions
89
1
What Can Other Approaches Learn From XP?
90
1
Summary
91
2
Part IV Questioning XP Concepts
93
58
The Source Code Is the Design?
95
10
Software Development Is Mainly a Design Activity
96
3
Managing Complexity
99
1
Why Now? What Has Changed?
100
2
What Does This Mean for XP?
102
1
Summary
102
3
Test First Development?
105
8
But Do Programmers Know Enough About Testing?
105
2
How Expensive Are Automated Acceptance Tests?
107
1
Effectively Defect-Free Versus Good Enough Software
107
1
What About Code That Is Hard to Test?
108
1
Can Acceptance Tests Be Used to Measure Progress?
109
1
Does XP Do Proper Testing?
110
1
Why Now? What Has Changed?
110
1
What Does This Mean for XP?
111
1
Summary
112
1
Large-Scale XP?
113
6
Are Large Teams a Goal?
113
1
Long-Running Projects
114
1
Coordinating Multiple Teams
114
1
Is It OK for a Process to Have Limits?
115
1
Why Now? What Has Changed?
116
1
What Does This Mean for XP?
116
1
Summary
117
2
Is the Cost of Change Really Low?
119
10
What Is the Cost of a Requirements Change?
120
2
What Is the Cost of Fixing a Bug?
122
1
What Is the Cost of Fixing a Design Error?
122
2
What Is the Cost of Fixing an Error of Understanding?
124
1
What Is the Cost of a Release?
125
1
Why Now? What Has Changed?
126
1
What Does This Mean for XP?
127
1
Summary
127
2
Setting the Dials on Ten
129
4
What About the Overdose Effect?
129
1
Pretty Adventuresome Programming
130
1
Why Now? What Has Changed?
131
1
What Does This Mean for XP?
132
1
Summary
132
1
Requirements: Documentation or a Conversation?
133
6
Can Changes to Requirements be Controlled?
133
1
Requirements Traceability Is One Way to Handle Change
134
1
Does the On-Site Customer Know Enough?
135
1
Emergent Requirements
135
1
Why Now? What Has Changed?
136
1
What Does This Mean for XP?
136
1
Summary
137
2
Is Oral Documentation Enough?
139
6
Who Reads the Documentation?
140
1
Is a Handoff to Maintenance Useful?
141
1
Can Maintainers Really Rely on the Documentation?
142
1
Why Now? What Has Changed?
143
1
What Does This Mean for XP?
143
1
Summary
144
1
Playing to Win?
145
6
Does XP Actively Manage All Risks?
146
1
Does XP Require Experienced Teams?
147
1
Can We Win With a Team of Novices?
147
1
Why Now? What Has Changed?
148
1
What Does This Mean for XP?
148
1
Summary
148
3
Part V Understanding the XP Community
151
20
ReallyStrangeSayings
153
6
MixedCase and Initial-Slang
153
1
WikiWords Are Not Always Politically Correct
154
1
YouAren'tGonnaNeedIt
154
1
The Source Code Is the Design
155
1
OnceAndOnlyOnce
155
1
Do the Simplest Thing That Could Possibly Work
156
1
Getting Beyond the Sayings
157
1
Summary
158
1
Feel the Hostility; Experience the Joy
159
6
Just a Bunch of Undisciplined Hacker Cowboys?
159
1
Is XP a Return to the Dark Ages?
160
1
The Best Project We Have Ever Worked On!
161
1
Developers Are Attracted to XP
161
1
So Is XP a Cult?
162
1
Summary
163
2
Transitioning Away From Extreme Programming
165
6
Does XP Lock a Project into the Extreme Practices?
166
1
Welcome to the Hotel California?
166
1
Retraining Extreme Programmers
167
1
Retraining Customers
167
1
What Is Next After Extreme Programming?
168
1
Where Will the Next Process Come From?
169
1
Summary
169
2
Part VI Your Choice
171
14
Is XP for You?
173
6
Is Your Current Approach Broken?
173
1
Is Your Organization Ready for XP?
174
1
Do Your Developers Want to Use XP?
174
1
Is Your Customer Ready for XP?
175
1
Are Your Projects Suitable for XP?
175
1
But We Can Overcome These Difficulties
175
1
Applying the Lessons of Extreme Programming
176
1
Do You Really Need to Adopt XP?
176
1
Rolling Your Own Process
177
1
Summary
178
1
Do You Have a Suitable First Project?
179
6
Assessing Projects for Suitability to Extreme Programming
180
2
Preparing Your XP Team
182
1
Summary
183
2
Epilogue
185
2
Bibliography
187
4
Index
191