For Software Engineering courses for use as a supplement or primary text.
This hands-on software engineering text fills the gap between the way students learn to program and the way software
is written in professional practice with an interactive, project-oriented approach that includes: guidelines for
setting up and presenting an XP software engineering course; tutorials on the core aspects of XP; and detailed
descriptions of what to expect when applying XP to a development project. Using methodologies that are flexible
enough to meet the changing needs of future clients, the text provides a detailed description of what happens in
a typical cycle during an XP development effort and shows students what to do instead of telling them what to do.
Features
- Can be used with traditional software engineering texts and provides a usable XP component for traditional
courses.
- Full set of XP tutorials--Enable students to learn by doing the key XP practices.
- Provides students with step-by-step instruction on test-driven design, refactoring code, writing and running
acceptance test, interacting with the client and using XP's planning game to determine where the development should
focus its energy.
- Text fully integrated with project.
- Provides students with hands-on experience.
- Typical cycle during an XP development effort--Describes in detail the activities, expectations and responsibilities
of all participants in the process.
- Familiarizes students with all aspects from the first interaction with the client, to ongoing meetings and
programming sessions with fellow XP developers, through conclusion of the project.
- Anecdotes and examples.
- Provides students with real-world examples and advice for avoiding problems when processes didn't go as planned.
- Instructor's Resource CD with how-to run the course guidelines.
- Provides instructors with a guide for making the hands-on project successful.
I. THE SPIKE-GETTING UP TO SPEED.
1. The Metaphor-Developing a Sense of Where We're Headed.
2. Getting Started-Introducing the Core XP Practices.
3. Pair Programming-Learning to Work Together.
4. First Test, Then Code-Understanding Why We Test First.
II. THE ITERATION-SHAPING THE DEVELOPMENT PROCESS.
5. The Client-Meeting Another Team Member.
6. The Plans-Beginning an Iteration.
7. The Values, Principles and Practices-Living the Iteration.
8. Acceptance Tests-Determining That a Story is Completed.
9. Evaluation and Regrouping-Wrapping Up an Iteration.
III. CORE PRACTICES-WORKING EXAMPLES OF CORE PRACTICES.
10. Test First-Learning a New Way of Life.
11. User Stories-Exploring with the Customer.
12. The Planning Game-Negotiating the Future.
13. Refactoring-Sharpening Your Knife.
14. Customer Written Tests-Automating the Acceptance Process.
15. Development Mechanics-Organizing Your Project.