Requirements elicitation is a crucial step in software development, as it helps ensure that the system meets the needs and expectations of its users. However, there are often assumptions made during this process that are not explicitly stated or documented. These hidden assumptions can significantly impact the system’s design and functionality, yet they may go unnoticed until late in the development cycle.
To address this issue, the authors propose a conceptual framework for identifying and managing hidden assumptions in requirements elicitation. They define a hidden assumption as any description of a system property or behavior that is not explicitly stated in the requirements document but affects system development, testing, or use. The framework includes several perspectives or views for categorizing and analyzing hidden assumptions, such as the ontological context, which highlights the interdependence of abstract specifications and real-world entities.
The authors also discuss the potential benefits of identifying and managing hidden assumptions, including improved system quality, reduced costs, and enhanced stakeholder communication. They illustrate their approach with examples from previous research and suggest future directions for exploring the use of automated tools to facilitate the identification and management of hidden assumptions.
Overall, the article provides a valuable framework for demystifying complex concepts related to requirements elicitation and highlights the importance of identifying and managing hidden assumptions in software development. By using everyday language and engaging analogies, the authors make the concepts more accessible and easier to understand, while still providing a thorough overview of the topic.
Computer Science, Software Engineering