"The more functionality (or performance) that is provided to a user, the more functionality (or performance) that the user will want."Which supports:
- Give Products to Customers Early
- Grow Systems Incrementally
- Software Will Continue to Change
- The System's Existence Promotes Evolution
More importantly, you must be prepared for the inevitable requests for more.
- Documentation should be organized in such a way that it is easy to update and add to.
- Establish SCM (Software Configuration Management) Procedures Early.
- Systems and processes in place to handle the users' requests.
- Design so that configuration is quick and easy.
Reference:
Curtis, B., H. Krasner, and N. Iscoe, "A Field Study of the Software Design Process for Large Systems," Communications of the ACM, 31, 11 (November 1988), pp. 1268--1287.