[Beck1997] K. Beck. Smalltalk Best Practice Patterns . Prentice Hall, 1997.
[Beck2000] K. Beck. Extreme Programming Explained . Addison-Wesley, 2000.
[Beck+2001] K. Beck, M. Fowler. Planning Extreme Programming . Addison-Wesley, 2001.
[Brooks1995] F. Brooks. The Mythical Man-Month, Anniversary Edition . Addison-Wesley, 1995.
[Jeffries+2001] R. Jeffries, A. Anderson. Extreme Programming Installed . Addison-Wesley, 2001.
[Jzquel+1999] J. Jzquel, B. Meyer. "Design by Contract: The Lessons of Ariane." Computer , Volume 30, January 1999.
[Liskov1998] B. Liskov. "Data Abstraction and Hierarchy." SIGPLAN Notices , Volume 23, May 1998.
[Meyer1997] B. Meyer. Object-Oriented Software Construction , Second Edition . Prentice Hall, 1997.
We thank Bertrand Meyer for giving interesting and entertaining talks that introduced us to the concept of contracts; our employer, the Daedalos
About the Authors
Hasko Heinecke and Christian Noack both work for Daedalos International AG in Switzerland and Germany, respectively. They have a strong background in OO technology and the Smalltalk programming language, complemented by several
Chapter 18. Refactoring or Up-Front Design?
—Pascal Van Cauwenberghe
Copyright 2003, Pascal Van Cauwenberghe. All rights reserved.
In Software Engineering Economics , Boehm presented the classic cost curve shown in Figure 18.1. As we progress from analysis to design, coding, testing, and production, the cost of fixing a problem rises. Note that the sharpest rise occurs when the system is released and distributed to its customers.
Figure 18.1. The "cost of fixing errors" curve
In Extreme Programming Explained , Kent Beck argues that this curve no longer represents the current state of software engineering. Instead, this curve is said to be flat. Two remarks can be made.