2016/17 Undergraduate Module Catalogue
COMP2911 Requirements Engineering
10 creditsClass Size: 100
Module manager: Jill Duggleby
Email: J.Duggleby@leeds.ac.uk
Taught: Semester 2 (Jan to Jun) View Timetable
Year running 2016/17
Pre-requisite qualifications
An understanding of the role of requirements capture and documentation in software engineering, for example to A Level IT/ Computing or equivalent BTec standard.This module is not approved as a discovery module
Module summary
Requirements represent the real-world needs of users, customers, and other stakeholders affected by a system. The construction of requirements includes elicitation and analysis of stakeholders’ needs and the creation of an appropriate description of desired system behaviour and qualities, along with relevant constraints and assumptions. The module provides practical skills in requirements as a key activity within successful software engineering. The teaching complements software engineering at Level 2 and will prepare students for applied computer science projects at Level 3. The content will include use cases, fieldwork, process modelling, prototypes, analysis and design steps, enterprise architecture, requirements documents, version control and managing change.Objectives
The module will teach students the range of techniques used in requirements engineering.Learning outcomes
On completion of this module students should be able to:
• Understand the role of requirements engineering within the software engineering discipline.
• Use a wide range of fieldwork, modelling and deskwork techniques to investigate and communicate the requirements for a software system.
• Be able to judge the effectiveness and appropriateness of requirements techniques.
• Manage the process of requirements capture and maintenance as part of a professional software engineering project.
Skills outcomes
Modelling (UML), use cases, fieldwork, requirements
Syllabus
Requirements analysis and specification (6 sessions) - Requirements fundamentals; Definition of requirements (e.g. product, project, constraints, system boundary, external, and internal); Requirements process, Layers/levels of requirements (e.g. needs, goals, user requirements, system requirements, and software requirements); Requirements characteristics (e.g. testable, unambiguous, consistent, correct, traceable, and priority); Analysing quality (non-functional) requirements (e.g. safety, security, usability, and performance) Software requirements in the context of systems engineering Requirements evolution; Traceability; Prioritization, trade-off analysis, risk analysis, and impact analysis; Requirements management (e.g. consistency management, release planning, and reuse); Interaction between requirements and architecture.
Eliciting requirements (2 taught sessions, one 8 hour assignment) - Elicitation sources (e.g., stakeholders, domain experts, and operational and organization environments); Elicitation techniques (e.g., interviews, questionnaires/surveys, prototypes, use cases, observation, and participatory techniques).
Modelling and Analysis principles (6 practical sessions) - Modelling principles (e.g. decomposition, abstraction, generalization, projection/views, and use of formal approaches); Information modelling (e.g. entity-relationship modelling and class diagrams), Behavioural modelling (e.g. state diagrams, use case analysis, interaction diagrams).
Requirements specification and documentation (2 taught sessions, one 8 hour assignment) - Requirements documentation basics (e.g. types, audience, structure, quality, attributes, and standards); Software requirements specification techniques (e.g. plan driven requirements documentation, decision tables, user stories, and behavioural specifications)
Advanced Requirements (4 sessions) - Reviews and inspections; Prototyping to validate requirements; Acceptance test design; Validating product quality attributes; Requirements interaction analysis (e.g. feature interaction); Formal requirements analysis. Architectural modelling (e.g. architectural patterns and component diagrams); Domain modelling (e.g. domain engineering approaches); enterprise modelling (e.g. business processes, organizations, goals, and workflow); enterprise architecture. Requirements within software engineering
Teaching methods
Delivery type | Number | Length hours | Student hours |
Class tests, exams and assessment | 1 | 2.00 | 2.00 |
Fieldwork | 2 | 8.00 | 16.00 |
Lecture | 12 | 1.00 | 12.00 |
Seminar | 8 | 1.00 | 8.00 |
Private study hours | 62.00 | ||
Total Contact hours | 38.00 | ||
Total hours (100hr per 10 credits) | 100.00 |
Private study
Students will be provided with a recommended reading list including books, text book chapters, case studies and online resources. They will receive weekly guidance on where to focus this reading and advice on how it links to module content.Opportunities for Formative Feedback
Eight seminars based on discussion and short exercises.One formative peer and tutor assessed presentation will be used part way through the module.
E-mail and VLE resources will be used to provide feedback and support to students
Methods of assessment
Coursework
Assessment type | Notes | % of formal assessment |
Report | 1,000 word report | 20.00 |
Practical Report | 1,000 word report on practical | 20.00 |
Total percentage (Assessment Coursework) | 40.00 |
Normally resits will be assessed by the same methodology as the first attempt, unless otherwise stated
Exams
Exam type | Exam duration | % of formal assessment |
Unseen exam | 2 hr 00 mins | 60.00 |
Total percentage (Assessment Exams) | 60.00 |
Normally resits will be assessed by the same methodology as the first attempt, unless otherwise stated
Reading list
The reading list is available from the Library websiteLast updated: 27/02/2017
Browse Other Catalogues
- Undergraduate module catalogue
- Taught Postgraduate module catalogue
- Undergraduate programme catalogue
- Taught Postgraduate programme catalogue
Errors, omissions, failed links etc should be notified to the Catalogue Team.PROD