Tuesday, May 3, 2011

Extreme Programming Installed Ch 13-15

Reference Information:
Title: Extreme Programming Installed
Author: Ron Jeffries, Ann Anderson, Chet Hendrickson
Editor: Addison-Wesley Professional, October 2000

Summary:

Chapter 13 - Unit tests
This chapter talks about the automated unit testing process and recommends to test every tiny feature that can possibly break. When there's collective ownership of the code, unit tests must be run every time a new feature is implemented so that the bugs are caught early, thus maintaining the pace of programming. The tests should return 100% results every time before proceeding to the next step. Tests are written from the beginning of the coding process and are continuously updated throughout the entire process. The final code is released only if all milestones are met and only if all tests return 100% results.

Chapter 14 - Test First, by Intention
This is a brief chapter about testing by intention. This chapter says that instead of thinking about "How" to implement something, emphasis must be laid on "What" needs to be implemented. Once you have a clear idea of what needs to be implemented, it's easier to write test cases for those features.

Chapter 15 - Releasing Changes
Three main phases in code release process:
- Local Phase: This is when pairs of programmers start coding.
- Release Candidate Phase: The feature is complete and ready for testing.
- Repository Phase: The feature is thoroughly tested and is guaranteed to work. Now the code is ready to be committed to the repository.
Problems:
- Slow integration: integrate frequently and continuously.
- Lost changes: have a backup of your code at each phase.

Discussion:
Ideas are very well presented. However, no project is ideal. Problems do arise and things often do not turn out as they were expected. All the ideas presented in this book prepare the development team for such situations.

No comments:

Post a Comment