This is a 3 day course. The price shown includes the exam fee, but excludes VAT.
Requirements Engineering is an essential business analysis skill. Being able to pinpoint your consumers’ expectations for a newly introduced or modified existing product is key to the success of the completed solution. For testers this knowledge will help to steer the design of your validation tests.
Based around a Requirements Engineering framework, this course will teach you a range of techniques for elicitation, analysis, documentation and managing requirements. All with the help of a detailed case study that allows you to practice applying the techniques you learn. Some of the key areas we’ll look at include requirements categorisation, prioritisation and documentation, traceability and management of changes to requirements, and use case modelling and stories. For testers, this will help with the design of the verification tests, up front as taught in the CTFL course.
Requirements Engineering (a three-day course)
Course Content
Rationale for requirements engineering
- Definition of a ‘requirement’ and requirements hierarchies
- Knowledge types
- Requirements engineering framework: linear and Agile development
The role of the analyst
- Stakeholders in requirements engineering
- Roles and responsibilities
Requirements planning and management
- Planning for requirements engineering
- The business context and business case: linear and Agile development
- Project initiation
Requirements elicitation
- Interviews: preparing and conducting
- Workshop: planning and facilitating; roles and responsibilities
- Techniques to elicit information and document workshop results
Requirements elicitation – supplementary techniques
- Observation and focus groups
- Quantitative elicitation techniques: including surveys and document analysis
- Scenario analysis
- Throwaway versus evolutionary prototyping: rationale and risks
- Suitability of elicitation techniques
Requirements analysis
- Organising requirements
- Ordering and refining a backlog for Agile development
- Assessing feasibility and aligning requirements with business goals
- Prioritising requirements using MOSCOW
- Checking requirements against quality criteria
- Requirements testability and defining acceptance criteria
- Identifying and resolving requirements conflicts
Documenting requirements
- Types and hierarchy of requirements
- Documentation formats: user stories, use cases and requirements catalogue
- Applicability to linear and Agile development
Modelling requirements
- Context diagrams
- Modelling functions: use case diagrams for scope definition/re-definition
- Modelling data: class models
- Cross-checking use cases against class models
Requirements validation
- Stakeholder responsibilities in requirements validation
- Requirements validation in linear and Agile development
Requirements management
- Requirements management in Agile development
- Change through collaboration and iteration
- Requirements management in linear development
- Version and change control
- Requirements traceability
- Requirements engineering support tools
- Requirements re-use and patterns
Delivering the requirements
- Approaches to solution delivery
- Linear and iterative development approaches
- Post deployment and benefits confirmation.