220 ◾ Software Engineering: The Current Practice
Requirements Creep
Requirements creep is a common thing in our lives. When shopping for a car, it is tempting to
look at cars that are slightly bigger and have a few more features than the car that we originally
budgeted. In a restaurant, it is tempting to order an especially tasty dessert after a hearty meal,
and so forth.
The same thing can happen in software projects: When doing initial development, why not
add a couple of features? Or opt for a bolder and more comprehensive feature? Or try a brand
new idea? This is called requirements creep, and it is one of the reasons for project failures.
One extra feature here, another one there, and soon one of them becomes the proverbial straw
that ...