3. Work products and documentation practices Flashcards
(109 cards)
Work product (Artifact)
a recorded intermediate or final result generated in a work process
Characteristics of work products
- purpose
- size
- representation
- lifespan
- storage
Representation of requirements
- natural language
- templates
- models
Overview of RE work products
Single requirements
1. Individual requirement
2. User story
Coherent sets of requirements
1. Use case
2. Graphic model
3. Task description
4. External interface description
5. Epic
6. Feature
Documents of documentation structures
1. System requirement specification
2. Product and sprint backlog
3. Story map
4. Vision
Other WP
1. Vision
2. Textual note or graphic sketch
3. Prototype
Categories of Work Products w.r.t. lifespan
- temporary
- evolving
- durable
Temporary requirements
created to support communication and create shared understanding.
discarded after use, no metadata is kept
Evolving work products
emerge in several iterations
metadata shell be kept
change control might be needed
Durable work products
baselined or released
full set of metadata should be kept
strickt change procedure
Typical levels of abstraction for requirements
- business
- system
- component
may co-evolve
Typical levels of abstraction for requirements depends on
- subject to be specified
- purpose of the specification
do not mix the levels!
The level of details of the requirements depends on
- problem and project context
- degree of shared understanding of the problem
- degree of freedom left to designers and programmers
- ability of rapid stakeholder feedback
- cost vs value of a detailed specification
- Standards and regulations
General RE documentation guidelines
- Select a wp type that fits the intended purpose
- Avoid redundancy by referencing content instead of repeating the same content again
- Avoid inconsistencies between wp, particularly when they cover different aspects
- use terms consistently
- structure was appropriately
Work product planning
- in which wp shall the requirements be recorded and for what purpose
- which abstraction level to take
- up to which level of detail to document at each level
- how shall the requirements be represented in these was
Why define RE work products at an early stage
- Help in the planning of efforts and resources
- ensures that appropriate notations are used
- ensures that all results are recorded in the right wps
- ensures that no major reshuffling of information and final editing is needed
- helps to avoid redundancy
Aspects to be considered
- aspects within functional requirements
- quality requirements (usability, reliability, security, performance)
- constraints
- context and boundary / domain assumptionsG
Aspects within functional requirements
- Structure and data (requirements concerning static structure of the system and data the system must know)
- Function and flow (functions that a system shall provide and flow of control)
- State and behavior (state dependent behavior of a system - how react to external events, depending on the current state)
Performance requirements deal with
- Time
- Volume
- Frequency
- Throughput
- Resource consumption
Documenting quality requirements
Very difficult
- qualitative representation - hard to validate, ambiguous
- quantitative representation - measurable, but can be expensive to specify
- operationalised representations - quality requirement in terms of functional requirements for achieving the desired quality (i.e. no login possible)
Quantitative representation of quality requirements suffice in the following situations
- there is sufficient implicit shared understanding
- stakeholders, RE and developers agree on a known solution that satisfies the requirements
- stakeholders only want to give general quality directions and trust the developers to get the detail right
- short feedback loops are in place and can be detected early
- able to generalise from examples
- requirements are not safety critical
Categories of constraints
- technical
- legal
- organisational
- cultural
- environmental
- physical
- particular solutions required by stakeholders
Glossary content
- definitions for all terms that are relevant for the system
- all abbreviations and acronyms
- homonyms shell be avoided
helps to establish shared understanding
Glossary rules
- creation and maintenance (centrally over the entire project, one person responsible, stakeholders must agree on terminology)
- usage: must be mandatory
Standard best practice in RE
Frequently used requirements documents
- stakeholder requirements specification
- user requirements specification
- system requirements
- business requirements
- vision documents (conceptual imagination of a future system describing its key characteristics and how it creates value to the user)
Frequently used documentation structures
- product backlog
- sprint backlog
- story map (time & content)