1. Why Emphasise Requirements
- Issues and terminology
- Lessons from real projects
2. Requirements Within the System Life Cycle
- The Origin of Requirements
- Concept of the system boundary
- The modelling boundary
- The systems engineering process
- Development of system architecture and detail design
- Requirements traceability
- Summary of terms relating to requirements
- Baselines and their use
- The waterfall life cycle paradigm
- Incremental acquisition/development
- Evolutionary acquisition/development
- The spiral model
- Workshop - requirements engineering principles
- Common requirements pitfalls in the system life cycle
3. What are Requirements?
- Definitions and views
- Relationship to design
- Relationship to baselines
4. Types of Requirements
- Why categorise requirements by type?
- Eight basic types
- Differences between requirements for hardware, software, services
- Non-requirements
- Workshop - categorising requirements by type
- Other categories - design drivers, critical, global, priority, importance, stability
5. The Quality of Requirements
- Correctness
- Completeness
- Consistency
- Clarity
- Non-ambiguity
- Traceability
- Testability
- Singularity
- Feasibility
- Freedom from product/process mix
6. Requirements Analysis Techniques
- Primary, Secondary, Tertiary stakeholders
- Initial assessment and planning
- Measuring requirements quality
- Methods of engaging in requirements dialogue
- Context analysis
- Workshop - context analysis
- Design requirements analysis
- States & Modes analysis
- Workshop - states and modes analysis
- Requirements parsing
- Workshop - parsing
- Functional analysis - needs analysis, operational analysis, use cases
- Workshop - functional analysis
- Rest of scenario analysis
- Optional Workshop - rest of scenario analysis
- Out of range analysis
- Optional Workshop - out-of-range
- ERA analysis
- Other constraints search
- Value analysis
- Verification requirements development
- Operational Concept Description
- Clean-up
- Special issues of the human interface
- Supplementary methods and notations
- Common pitfalls in requirements analysis
7. Coping with the Real World
- What to do when the user "doesn't know"
- How to respond to "moving goalposts"
- Protecting yourself from the communication chasm
8. Tool Support to Requirements Analysis
- Tools supporting requirements analysis
- Tools supporting requirements management
- Examples of available tools
- Common pitfalls in using tools
9. Requirements Verification
- Requirements reviews
- Use of metrics
10. Management of Requirements Analysis
- Management issues
- Using and managing "TBDs"
- Designing a requirements codification scheme
- Managing resolution of requirements issues
11. Specification Writing
11.1 Transforming Requirements into Requirements Specifications
- What is a requirements specification?
- How requirements specifications relate to requirements
- How requirements specifications relate to configuration baselines
- Using a requirements database
11.2 Requirements Flowdown into Requirements Specifications
- The specification tree
- Special considerations for interface requirements
11.3 Requirements Types and Formats
- Basic types of requirements specification
- Using DIDs and templates
- IEEE specification standards
- US Military and other national and international specification standards
11.4 Structuring Your Specification
- Solicitation or agreement documents - what to put in system and software requirements specifications, statements of work /service level agreements and the like, conditions of contract
- Structuring a statement of work
- Structuring a system specification
- Structuring a software requirements specification
- Structuring an interface requirements specification
- Introduction and Scope
- Dealing with variants
- Listing applicable and other referenced documents
- Definitions, acronyms and abbreviations
- Requirements Section
- Identification of Required External Interfaces
- Dealing with States and Modes
- Functional, functional and performance, functionally oriented, versus design -oriented requirements specifications
- Differences
- When to use each type
- Sequencing and indenting of specification of function and performance
- Specification of external interface requirements
- Specification of environmental, resource, physical and other qualities requirements
- Structuring the specification of any design direction
- Specification of Verification/Qualification/Test Requirements
- Notes
- Annexes, appendices and applicable documents
11.5 Specification Writing
- Review of requirements quality
- Requirement structural template
- Workshop – expressing strong requirements
- Requirements constructs
- Shall, should, will, and may
- Linking
- Cross-referencing
- Workshop – linking and cross-referencing
- Defining terms
- Workshop – defining terms
- Context dependence
- Reference to applicable documents
- Use of precedence
- Workshop – using precedence
- Using success criteria to express otherwise vague requirements
- Workshop – using success criteria
- Workshop – specification of key requirements for a system
- Paragraph headings
- Use of supporting data
- Mission profiles/use cases
- Baseline designs
- Benchmarks
- Linking the specification to the statement of work or conditions of contract
- Test specifications
- Workshop – evaluation of example specifications
12. Bibliography
- Additional reference material
13. Summary and Conclusion