4-Requirements and Requirements Engineering Flashcards
Hierarchy
needs and requirements can be captured in logical or functional hierarchies. At the end of this module we look briefly at a tool (called the requirements breakdown structure—the RBS) that will assist in developing these hierarchies.
Elicitation
Elicited elements are able to be directly attributed to the source and are normally gathered via interview or workshop. An elicited element could also, however, be drawn directly from some constraint (such as a regulation, for example). Elicited elements
are explicit—that is, they are largely given to us directly by the business or the stakeholders or are taken directly from come constraint.
Elaboration
Elaboration, on the other hand, involves analysis which would conclude in some element that is necessary as a result of the business or stakeholder intentions.
This analysis is either decomposition or derivation:
- Decomposition entails breaking a higher-level function into those lower-level functions that are explicitly required by it.
- Derivation entails requirements engineers drawing some inference. That is, business management or the stakeholders did not state the function directly, but the derived function is a necessary part of the system design if one or more of the directly stated functions are to be met.
Elicitation and Elaboration is for novices?
NO! requirements engineers (or business analysts) must understand:
- the business,
- the application domain,
- the specific problem,
- the needs and constraints of system stakeholders,
- acquisition and project management,
- requirements engineering and systems engineering, and
- the technologies and engineering involved.
Example of Elicitation and Elaboration 1
The ACME Medical Centre is to provide a selected range of Medical Services in a secure and comfortable environment, in order to attain a nominated Profit.
The following functions are decomposed (that is, they are explicit in the statement—here highlighted in bold font):
- Provide selected range of medical services
- Provide a secure environment
- Provide a comfortable environment
- Attain nominated profit level
2nd Example Derivation
The following functions are derived (that is, they
have not been stated explicitly in the statement but
are necessary functions if the explicit functions are to
be achieved):
- Provide medical centre infrastructure
- Manage medical centre and its services
- Support medical services
Technics to identify Needs & Requirements
Needs and requirements can be identified by:
- Structured workshops are the most useful for early design—they are almost certainly the fastest and most efficient way. Workshops should start with strawman artifacts that are fine-tuned and augmented throughout the assigned period.
Workshops should be facilitated where possible to ensure they run smoothly. - Brainstorming and problem-solving sessions can be considered to be unstructured structured workshops and are therefore really only useful early on to assist in the development of initial artifacts.
- Interviews should be considered as one-on-one workshops—that is, they should be structured in that they should start with strawman artifacts, and have an agenda.
- Surveys/questionnaires do not have a great returnrate (somewhere in the vicinity of 10-20%) so they are not good ways of ensuring that all stakeholder views are represented; but questionnaires are a good way of ensuring that the widest number of participants have at least the opportunity to contribute.
- Use cases and operational scenarios are an excellent way to identify detailed needs and requirements. We humans are natural story tellers, so it is a useful way to ask stakeholders to describe their engagement with the system to be developed.
- Similarly, when we are at a sufficiently low level in the design, simulations, models and prototypes are useful ways to understand needs and requirements as well as to conduct various trade studies and analyses.
-
The remainder of the activities are relatively low level and are not really useful until we are well into Preliminary Design. Such efforts can include:
- observation of work studies (time and motion studies)
- participation in work activities
- observation of the system’s organizational and political environment
- market review
- competitive system assessment
- reverse engenieering
- benchmark processes and systems
What the customer have to do before accept the system?
Returning to our diagram showing how requirements engineering assists in the development of requirements, we can now work backwards. Before the customer accepts the system from the contractor, the delivered system is verified against the System Specification (the SyRS).
VERIFICATION AND VALIDATION
The entire systems engineering process aims to produce a system that is both verified against the documentation produced during the systems engineering process, and validated against the original needs and requirements that initiated the system development in the first case. So, there are two principal acts: Verification—which ensures that the system at any stage matches the specifications we have developed for it—that is, we have ‘built the system right’ Validation—which ensures that the system meets the original business needs and requirements—that is, we have also ‘built the right system’.
What the customer have to do before accept the system?
Returning to our diagram showing how requirements engineering assists in the development of requirements, we can now work backwards. Before the customer accepts the system from the contractor, the delivered system is verified against the System Specification (the SyRS).
Check to do before to put into service
Before the system can be put into service, however, it must be validated against the stakeholder needs and requirements (the StRS) and the business needs and requirements to ensure that those needs and requirements are met.
Test and Evaluation
Verification and validation is underpinned by a well managed approach to test and evaluation (T&E), which aims to support the delivery of a system that is both verified and validated. There are three major categories of T&E that are applied to coincide broadly with the activities of the Acquisition Phase, the transition between the Acquisition and Utilization Phases, and the Retirement Phase. Developmental test and evaluation (DT&E). DT&E refers to the T&E activities undertaken during the Acquisition Phase to support the design and development effort. DT&E activities may also occur during the Utilization Phase to support activities such as the development of modifications.
what is the acceptance test?
Acceptance test and evaluation (AT&E). AT&E represents the formal testing conducted to enable the customer to verify the system and to accept it from the developer. AT&E effectively forms the boundary or transition between the Acquisition Phase and the Utilization Phase and, as such, is an important contribution to FQR.
Operational Test and Evaluation
(OT&E). Once the systems is accepted from the developer, OT&E may be conducted under realistic operational conditions by operational personnel in order to validate the capability system. OT&E is normally conducted for a period of time following acceptance of the system by the customer from the contractor (that is, after AT&E) and before introduction into service.
Requirement Management
Requirements management is the process by which changes to requirements are managed throughout the system lifecycle. Requirements change because: they are derived from the stakeholder need and must be managed as they are developed stakeholder requirements change over the life of the system the business may change the environment will no doubt change over the lifecycle laws and regulations will change over the life of the project It is often the case that more than 50% of a system’s requirements are modified before it is put into service.