After finishing the course, the students will be able to:
- Evaluate the implications and the main challenges of requirements on the broader system development lifecycle, and on specific organizational contexts.
- Design a requirements engineering process that fits specific system delivery project contexts (agile, waterfall, outsourcing/contract-driven development).
- Critically reflect on the choice of process and methods and on your own experience gained in using the process and method in a case study project
- Integrate knowledge gained from experience with knowledge possessed, and take action on insights (e.g.., at hindsight, did you make the right choices, and how a RE can be redesigned if needed to include the right choices?)
- Plan and execute a RE process:
a. Evaluate and justify choices regarding how much of the context to include in a RE process for a project.
b. Design a requirements elicitation and validation session with stakeholders.
c. Apply requirements specification and management techniques to trace requirements from elicitation through analysis and into specifications.
d. Apply review techniques to ensure the quality of requirements and project management work products.
e. Apply risk management techniques to the development of software products and services.
Requirements Engineering includes the study of tools, methods and description techniques applicable from initial requirements elicitation to requirements validation. This course includes:|
1. Specific advanced techniques for:
- validation, and
- management of requirements.
2. Ethical practice of RE and software engineering.
3. The application of these techniques to a variety of specific industrial contexts of software system delivery:
- contract-driven software development,
- big data intensive projects,
- systems-of-systems development.
4. The relationship between RE and other software lifecycle phases, in particular software architecture design and testing.
5. The role of context in evaluating the suitability of a particular technique for use.