Foundation Level - CPRE FL
The Foundation Level addresses the advanced beginner in Requirements Engineering and provides the core knowledge of this topic.
The Foundation Level addresses the advanced beginner in Requirements Engineering and provides the core knowledge of this topic.
-
- 1 / 79
-
Cartes-fiches
EO 7.6.2 Knowing the types of requirements conflicts
During the conflict analysis various conflict types are distinguished, in respect to the requirements, which require various strategies for conflict resolution. The various conflict types are:
- Interest conflict – Stakeholders have factually different needs or divergent personal interests (note that this conflict type includes conflicts of both objective and subjective nature. Objective interest conflicts root in factually different stakeholder needs, while subjective ones are caused by divergent personal interests of involved people.)
- Data conflict– Stakeholders interpret given information differently or have information deficits.
- Value conflict – Stakeholders have divergent values and preferences
- Relationship conflicts – There are emotional problems in personal relationships between stakeholders
- Structural conflict – Conflict roots in stakeholders being on different hierarchy and decision power levels in an organization
EO 7.6.3 Knowing the various conflict resolution techniques
In practice, the causes of conflict are frequently mixed. In the resolution of a conflict, all relevant stakeholders should be considered. For conflict resolution there exist a number of conflict resolution techniques, namely:
- Agreement
- Compromise
- Voting
- Definition of variants
- Overruling
- Consider-all-facts
- Plus-minus-interesting
- Decision matrix
EO 7.6.4 Knowing the documentation for conflict resolution
After resolving the conflict, the conflict should be suitably documented. This should record, in particular:
- cause of the conflict
- involved stakeholders
- opinions of the various stakeholders
- the means of resolving the conflict
- potential alternatives
- the decisions and the reasons for the decisions
EO 8.1.1 Knowing the purpose and definition of attribute schemes
To manage the system’s requirements over the whole lifecycle of the system, it is necessary to collect requirements’ information as attributes in as structured a way as possible. The definition of the attribute structure for requirements is done through an attribute scheme, which can be defined either in tabular form or in the form of an information model.
Attribute schemes are frequently defined and adapted for a specific project on the basis of specific conditions. This includes:
- Specific properties of the project
- Constraints of the organization
- Domain rules
- Constraints of the development process
EO 8.1.2 Knowing important attribute types for requirements
Typical attributes are:
- Identifier
- Name
- Description
- Source
- Stability
- Risk
- Priority
The "legal obligation" can also be saved as additional requirement’s information in the form of an attribute.
EO 8.2.1 Mastering and using views on requirements
In practice, the amounts of requirements in a project and the number of dependencies among these requirements are evermore increasing. In order to keep the complexity of the requirements manageable for the project staff, it is necessary to selectively access and thereby filter the requirements depending on the current task. Two kinds of view formation are distinguished:
- Selective views: showing a subset of the attribute values from requirements selected by defined selection criteria
- Condensed views: showing condensed information about requirements selected by defined selection criteria
EO 8.3.1 Knowing methods for prioritizing requirements
Requirements are prioritized, at various times and during various activities, according to various criteria. Preparing prioritization of requirements is based on a simple system:
- Determining the goals and constraints for the prioritization
- Determining the prioritization criteria
- Determining the relevant stakeholders
- Selection of the artifacts to be prioritized
EO 8.3.2 Mastering and using techniques for prioritizing requirements
Based on the results of these activities, one or more techniques for prioritization are selected and the prioritization itself carried out. Among the prioritization techniques are:
- Ranking and top-ten technique
- Single-criterion classification
- Kano classification
- Prioritization Matrix According to Wiegers
EO 8.4.1 Knowing the benefits of requirements traceability
Within the management of requirements, the requirements’ traceability information is recorded, organized and maintained.
The benefits of requirements traceability involves:
- Simplification of verifiability
- Identification of unneeded properties in the system
- Identification of unneeded requirements
- Support of impact analysis
- Support of reusability
- Support of determination of accountability
- Support for maintenance and administration
EO 8.4.2 Mastering and using classes of traceability relationships
With respect to the requirements’ traceability relationships, three classes of traceability relationships are distinguished:
- Pre-requirements-specification traceability
- Post-requirements-specification traceability
- Traceability between requirements
EO 8.4.3 Mastering and using forms of representation for traceability relationships
Only such information should be recorded for which there exists a clear use. The traceability of requirements can be represented in various ways. Typical representation forms are:
- Text-based references and hyperlinks
- Trace matrices
- Trace graphs
EO 8.5.1 Mastering and using versioning of requirements
Requirements’ versioning and configuration makes it possible, over the lifecycle of a system or product, to have specific development states of requirements and requirements documents available. The version number of a requirement has at least two components:
- Version
- Increment
EO 8.5.2 Mastering and using the formation of requirements configurations
A requirements configuration comprises a defined set of logically related requirements, whereby at most one version of each requirement is contained in the requirements configuration. The formation of requirements configurations are defined in two dimensions:
- Product dimension: the individual requirements of the requirements foundation
- Version dimension: the various change states of a requirement
Requirements configurations have several typical properties:
- Logical connection of the requirements in a configuration
- Consistency of the requirements within a requirements configuration
- Unique identifier of the requirements configuration
- Immutability of the requirements within the requirements configuration
- Basis for rollbacks to earlier versions of the requirements base
EO 8.5.3 Mastering and using the formation requirements baselines
Requirements baselines are specific requirements configurations, which comprise stable versions of requirements and often define the delivery increments of the system (system releases) as well.
EO 8.6.1 Knowing the importance of requirements changes
Requirements change over the entire lifecycle of a system. The changes to the requirements are managed and processed in a systematic change management process. In this change management process, the Change Control Board is responsible for processing the incoming change requests.
EO 8.6.2 Knowing the functions and members of a Change Control Board
The tasks of the Change Control Board are:
- Classification of incoming change requests
- Determination of the effort for performing the change
- Assessment of the change requests in respect to effort-benefit
- Definition of new requirements based on incoming change requests
- Deciding whether to accept or reject a change request
- Prioritization of the accepted change requests
- Assign accepted change requests to change projects
Typical member of the Change Control Board are the change manager, contractor, architect, user representative, quality manager and requirements engineer.
EO 8.6.3 Mastering and using the elements of a requirements change request
If changes to requirements are deemed necessary, these are documented in the form of change requests and submitted to the Change Control Board. A change request contains at least the following information:
- Identifier of the change request
- Title of the change request
- Description of the necessary change
- Justification of the need for the change
- Date filed
- Applicant
- Priority of the change as seen by the applicant.
EO 8.6.4 Mastering and using different classes of change requests
There are three types of change requests:
- Corrective changes
- Adaptive changes
- Exceptional changes
EO 8.6.5 Mastering and using a process to handle change requests
The process of change management provides the following steps:
- Impact analysis and assessment of the change
- Prioritization of the change request
- Assignment of the change to a change project
- Communication of the acceptance/rejection of the change request
EO 8.7.1 Knowing the importance of requirements measurements
Based on the requirements validation and management information such as errors, attributes, traces or changes, the quality of the requirements documents and processes can be analyzed. This enables the identification of improvement possibilities. Typical measurements include
- Requirements change rates
- Requirements errors
EO 9.1 Knowing the eight features of a requirements management tool
Many system development tools can also support RE, e.g. test management or configuration management tools, Wikis, office software or visualization software. Also modeling tools are important for RE in order to create and analyze information as models. Requirements management tools are intended only for RE. They should feature the following characteristics:
- manage various information
- manage logical relationships between information
- identify artifacts uniquely
- make information accessible flexibly and securely, e.g. through access control
- support views over the data
- organize the information, e.g. through assignment of attributes and formation of hierarchies
- generate reports over the information
- generate documents out of the information
Standard office tools support these features only to a limited extent, specialized tools refine these, e.g. through traceability management.
EO 9.2 Knowing the five aspects in the introduction of requirements engineering tools
Only after the introduction of RE procedures and techniques can an appropriate tool be sought. The tool introduction requires clear RE responsibilities and procedures. In the process, the following aspects are to be considered:
- Consider necessary resources
- Avoid risks by means of pilot projects
- Evaluation according to defined criteria
- Take into account costs beyond license costs
- Instruct employees
EO 9.3 Knowing the seven views of requirements engineering tools
The variety of aspects to be considered when evaluating RE-tools can be structured using the following seven views:
- Project view (e.g. support for project planning)
- User view (especially usability)
- Product view (functionality)
- Process view (methodological support)
- Provider view (e.g. vendor services)
- Technical view (e.g. interoperability, scalability)
- Economic view (costs)
Clear criteria are to be defined for each view.