Activity: Eliciting Production Requirements
Purpose
The purpose of this activity is to:
- Clarify and formalize, or write down, the functional and non-functional requirements of the software production chain.
The interest of this activity is to:
- Scope the production process.
- Position the production process in its context.
- Identify the implied engineering needs (e.g., domains, software qualities, tools, frameworks, architecture).
- Identify the principles to be enacted.
Inputs
Inputs of this activity are:
Outputs
Outputs of this activity are:
- Functional and non-functional requirements.
Work Guidelines
This activity must be able to answer to the following questions:
- What is the objective of the software production process?
- What are the actors (human or not)?, how do they interact?, and what are the interests to use this production process?
- What are the real expected improvements (e.g., productivity, quality, maintenance, predictability) and the constraints?
- What are the inputs and outputs of the production chain, seen as a system?
This activity is generally iterative because i) it covers all aspects of the software production process and ii) it is refined while analysis and implementation are already started, what is not in contradiction with an agile approach.