Assumptions Management in Software Development
August 2004 • Technical Note
This technical note explores assumptions management as a method for improving software quality.
Software Engineering Institute
CMU/SEI Report Number
Software developers constantly make assumptions about the interpretation of requirements, design decisions, operational domain, environment, characteristics of input data, and other factors during system implementation. These assumptions are seldom documented and less frequently validated by the people who have the knowledge to verify their appropriateness. Additionally, the business, legal, and operating environments are always changing, as well as the software itself, rendering previously valid assumptions invalid. This technical note explores assumptions management as a method for improving software quality. This exploration covers assumptions management concepts, results of work on a prototype Assumptions Management System, conclusions, lessons learned, and potential work in this area.