To understand the requirements process we need some knowledge about our own processes of understanding problems and communicating with people. Requirements analysis is a cognitive process in which we understand problems, learn about domains and negotiate to achieve what we want. We have to understand details describing the real world and then abstract these to create models of the domain. The process of abstraction, in cognitive terms, involves perception and comprehension (making sense of what we hear and see) and learning. Requirements analysis can be seen as discovery-based learning. We start with a vague understanding of what is required and of the domain in which the new system is to be designed. By gathering information and requirements we gradually learn about the goals the new system should fulfil. Requirements is also a form of problem solving. Once the desired state of the world has been understood, i.e. the requirements for a new system, the designer has to solve the problem of achieving them. The inevitable intertwining of requirements and design is a problem-solving process in which the designer uses memory of previous successful solutions, software engineering methods and creative thought to achieve a new design.
KeywordsMental Model Episodic Memory Situation Awareness Semantic Network Requirement Analysis
Unable to display preview. Download preview PDF.