Fundamental principles of RE Flashcards
What are the 9 principles of RE
- Value orientation: requirements are a means to an end, not an end itself
- Stakeholders: RE is about satisfying the stakeholder’s desires and needs
- Shared understanding: a common basis is required for the system’s success
- Context: a system cannot be understood in isolation
- Problem, requirement, solution: an intertwined triple
- Validation: non-validated requirements are useless
- Evolution: changing requirements is the normal case
- Innovation: more of the same is not enough
- Systematic and disciplined work: we can’t do without RE
What are the costs of RE
The costs for eliciting, validating, documenting and managing requirements
What are the benefits of RE
The degree to which it contributes to
- building a successful system
- reducing the risk of failure and costly rework
What are the impacts of cutting on RE
It considerably increases the risk of expensive rework in later stages of the project
What are the main factor to determine the amount of RE
The criticality of a requirement in terms of the stakeholder(s) who state the requirements and the impact of missing the requirements
What are the additional factors besides criticality to determine the amount of RE
- Effort needed to specify the requirement
- Distinctiveness of the requirement (how much it contributes to the success of the overall system)
- Degree of shared understanding between stakeholders and developers and among developers
- Existence of reference systems (that can serve as a specification)
- Length of feedback cycle (the time between getting a requirement wrong and detecting the error)
- Kind of customer-supply relationship
- Regulatory compliance required
When to use personas
When there are too many individuals or when individuals are unknown, you can use a persona as a stakeholder substitute
How to classify the stakeholders
By their degree of influence on the success of the system
- Critical : not considering these stakeholders will result in severe problems and probably make the system fail or render it useless
- Major : not considering these stakeholders will have an adverse impact on the success of the system but not make it fail
- Minor : not considering these stakeholders will have no ou minor influence of the success of the system
What are the two forms of shared understanding
- Explicit : through carefully elicited, documented and agreed requirements
- Implicit : based on shared knowledge while not fully specified in writing
What are the proven practices for achieving shared understanding
- Working with glossaries
- Creating prototypes
- Using an existing system as a reference point
What are the six enablers of shared understanding
- Domain knowledge
- Domain-specific standards
- Previous successful collaboration
- Existence of reference systems known by all people involved
- Shared culture and values
- Informed (not blind!) mutual trust
What are the six obstacles to shared understanding
- Geographic distance
- Supplier-customer relationship guided by a mutual distrust
- Outsourcing
- Regulatory constraints
- Large and diverse teams
- High turnover among the people involved
What are the 3 things to check when validating requirements
- Agreement about the requirements has been achieved among the stakeholders (conflicts resolved, priorities set)
- The stakeholders’ desires and needs are adequately covered by the requirements
- The domain assumptions are reasonable (they can be met)
What are the goals to pursue to deal with changing requirements
- Permit requirements to change
- Keep requirements stable
Change is necessary but stability is needed. These are contradictory but both are necessary