The Generic-Model Approach To Requirements Capture



All system engineering should proceed from a clear, quality assessed, statement of requirements. When embarking upon the production of a body of requirements which need to be formally stated, either as a basis for inviting tenders, responding to tenders or as the starting point for design or implementation, one cannot overestimate the importance of producing a good requirements specification document or the importance of ensuring its completeness, coherence, consistency and correctness or of the impact of all four of these attributes on long term costs and productivity.

The Generic-Model Approach to Requirements Capture (for more details please click here) improves the ability to produce coherent, well-structured requirements specifications. Once a specification has been produced in, or converted to, the G-MARC fundamental structure, the inevitable stream of updates and modifications, to which all systems are subject, becomes much more easy to manage and to maintain and the impact on the rest of the system becomes much more easy to determine.

In addition to being able to elicit a specification directly from the mind of its Operator - at any level of abstraction, the G-MARC support tool can also be used to introduce a standard structure into previously unstructured specification documents and, once again, to maintain the result in the face of continuous change and modification.  Important advantages that arise as a result of the nature of this structure are the increased ease with which associated estimating activity can be conducted and the facility with which risk assessments can be carried out. The G-MARC tool can also be used to produce and display data flow diagram representations of the functional aspects of any specification and to animate these diagrams in order to verify the dynamic viability of the system being specified - again at any level of abstraction.

In order to develop direct elicitation capability, a requirements capture method needs to be able to guide and control the creation of a previous-experience knowledge base. This is in order that, given an application area, the requirements specifier is able to identify the structure, and evolve the content, of a new specification by re-using previous experience. Ready access to previous experience invariably facilitates the elicitation of requirements for each new project in the area of interest.

The G-MARC methodology embodies a set of rules and procedures that enables a generic form to be produced for any specified application area. Via this generic form (or model) both long term costs and complexity of requirements specification activity are able to be progressively reduced.  In addition, Generic Modelling can also be used to support specific applications modelling and animation facilities - based on identified functional requirements. Such facilities enable the requirements analyst/specifier to verify, at whatever level of detail he chooses, that his requirements constitute a viable system specification and that his specification will lead, eventually, to a viable operational system.

The ability to re-use previous experience constitutes a major breakthrough in the state of the art in requirements capture for structurally complex systems - a notoriously difficult and demanding process. This difficulty is manifest by virtue of the painful fact that, again and again, the requirements for each new system that is produced without such organised support, prove subsequently to have been inadequately developed. Even more painful, the same kinds of mistakes are regularly repeated. In other words, organisations need a mechanism for storing and retrieving previous experience in a cost effective way.

A generic model in any application area constitutes a consensus for what are regarded as being the important layers of interest and what are the important levels of consideration within each layer of interest. It acts as a repository for all the fundamental experience that has been accumulated in the application area as a result of all the projects previously carried out in that area. The ready availability of such a repository significantly minimises the problems associated with staff migration and multiple projects. Once a Generic Model exists it enables the information that is collected for each new Statement of Requirements to be treated in a standardised and objective manner and it facilitates the ability of co-workers to benefit from each other’s efforts.

The importance of the investment involved in the production of a Requirements Specification is almost invariably underestimated - to the ultimate detriment (in both financial and performance terms) of the system concerned. With modern, highly complex systems the need for properly structured, carefully controlled, system specifications, which are internally correct, consistent and complete and which adequately satisfy the requirement, is vital. Further there is a need to ensure that such specifications can be readily modified without incurring either too much consequential effort and delay or without introducing spiralling increases in cost and complexity. In order to approach this virtual Nirvana, computer aided support is essential. This is the case primarily because of the enormous decrease in routine manual calculation and information sorting that is thereby achieved. The human participants in the process are correspondingly relieved of the error-prone, tedious and, more often than not, fruitless series of trial solutions which are nearly always necessary in order to generate an adequate context for balanced judgements to be made during the development of any system.