requirements analysis | defining the problem to be solved and what software will be created to solve it | - misunderstanding and lack of understanding of the domain or the real problem
- Requirements can change rapidly, resulting in requirements 'churn'
- attempting to do too much which occurs when inadequate boundaries have been placed on the problem or the solution, or when those boundaries are not respected
- It may be hard to reconcile conflicting sets of requirements
- It is hard to state requirements precisely
| requirements and specification | The process of deciding on the requirements of a software system | domain analysis | over-constraint | the life of a software system | | use case analysis | 4.6 - Some Techniques for Gathering and Analyzing Requirements | analysis | the responsibilities of a system |