Terms, Activities and Context Flashcards
what is RE?
Requirements Engineering (RE) is an iterative, systematic approach, designed for efficiency and
effectiveness, with the goal of creating explicit requirements and system specifications that are
agreed upon with all stakeholders.
Core Activities of RE
Core Activities:
* Collect/identify requirements (Elicitation)
* Analyze, negotiate, consolidate requirements (Analysis)
* Structure, model, document requirements (Specification)
* Check requirements for quality and validity (Validation & Verification)
what is Requirements Management?
Requirements Management (RM) aims at an efficient and effective administration and use of
requirements throughout the entire system life cycle, including
* Archiving
* Modification based on new findings during development
* Tracking, tracing and verification of requirements:
− Impact analyses
− Support of change processes
Example: cost and risk assessment, planning
definition of requirement
A requirement is:
1. a condition/capability/feature that a stakeholder demands for a product or process to solve a problem or
achieve a goal.
Most important stakeholder: The user! (Remember there are users and operators.)
2. a condition/capability/feature that a system must meet in order to fulfill a contract, standard, specification
or other formal document.
3. a documented representation of a condition/ability/property as defined in 1. or 2
two types of requirement
user and system
first classification of requirements
Functional requirements
* Requirements that describe the behavior of the system, especially with regard to its use (including time
behavior when relevant for functionality: mp4 player)
Quality requirements
* Requirements on quality properties of the system (characteristic/quantitative properties with regard to
behavior), general conditions
Process requirements (project-specific requirements):
* Development process requirements (project plan, milestones, budget, deadlines, quality assurance, etc.)
* Implementation specifications (boundary conditions, constraints): Components or technologies to be used
Quality and process requirements are often vaguely called non-functional requirements.
second classification of requirements
Business requirements
* Describe the benefits and value that is created by this project
* Mostly very high-level
* Example: “We want to achieve data integrity for the data created by department x.“
Stakeholder requirements / User requirements
* Describe what stakeholders / users need and want to do with the system
* User requirements are used as input for deducing system requirements.
* Example: “As a user, I want to be able to restore my data if the system crashed.”
System requirements:
* Often used as input for implementation
* Example: “The system shall create backups of the data every 24 hours.”
forms and content of requirements
In case of requirements, we distinguish between
* their external form (“syntax”): How the requirement is described (language, text, image, formula,
model, …)
* their content (“semantics”): Which property it stipulates
what is requirement artifact?
documented form of one (or more) requirements
who is a stakeholder?
A stakeholder (in RE) is an individual/institution with interest in the project and/or the system to be
created
− e.g. user, administrator, security officer …
− and thus a potential source of requirements
what is requirement source?
A requirement source designates the origin of a requirement, i.e. the real-world aspect, which
causes the requirement (justification)
− Stakeholders
− (old) legacy systems in operation
− Laws, regulations and standards, guidelines, …
− Literature
− More details are explained later in the course
what is requirement justification?
A requirement justification (rationale) explains and justifies, why a certain requirement is
demanded
Ideal view of RE: Iterative refinement and abstraction, Top Down RE
Based on recorded and coordinated, generally formulated goals:
* The product must be internationally applicable
rough requirements are established, compared and documented:
* The product must be applicable in third world countries
* The product must be usable independently of the power supply
then refined, concrete requirements are obtained:
* The system must be equipped with a dynamo that generates the
necessary current; the voltage is …
and finally, a system specification is drawn up:
* A dynamo RT242pt of company D-Dyn is used
The results of RE are used in
- Designing the architecture of the system
- Implementing the functionality
- Quality assurance and testing
- Drafting contracts and acceptance tests
- Project organization and management
− the cost estimate,
− development process
− team composition
− the project planning (releases, test plan etc.)
− communication with stakeholders (customer, users, development engineers, …)
error and correction costs
The earlier an error is caused and
the later an error is detected, the
more expensive is its removal.