Specification
Detailed and precise proposal for a system
Provides the technical basis for a contract
Typically increases understanding and causes some revision in the analysis
Ideally, a specification should:
- enable clients to validate the system (solve the right problem)
- establish a basis for developers to verify the system (solve the problem right)