A Functional Technique for Decomposing the Complexity of Requirements Analysis
Abstract:
This paper is based on an operational approach to requirements specification for embedded systems, in which a requirements specification is an executable model of the proposed system interacting with its environment. The operational model is described in terms of asynchronously interacting digital processes. This paper addresses directly the question How can such specifications for complex systems be developed The proposed technique exploits an identification of intuitively recognizable system functions with processes in the formal specification of that system, so that its process structure can be determined during early analysis. Since the formal language supports incremental development of a specification, one process at a time, the requirements analyst can then elaborate the requirements one function at a time. Since the elaboration of each function entails quite a number of decisions, significant decomposition of complexity is achieved. The technique is illustrated within the domain of process-control systems, but its extensibility to other applications is argued. The specifications produced are good with respect to several important criteria, including modifiability and representation of performance constraints.