Course ObjectiveAfter taking this course, students will:
• understand the key concepts of RE and its relevance for system and
software engineering; (Knowledge and understanding)
• know how to properly elicit and evaluate requirements; (Applying
knowledge and understanding) (Making Judgements)
• know how to properly specify and document requirements; (Applying
knowledge and understanding)
• know how to create goal models for the purpose of capturing functional
and non-functional goals; (Applying knowledge and understanding)
• know how to create UML class diagrams for the purpose of capturing the
structure and the inter-relations between the conceptual objects
manipulated in the system; (Applying knowledge and understanding)
• know how to create operational models and behavioural models for the
purpose of capturing the operational and behavioural aspects of the
system. (Applying knowledge and understanding)
Course ContentRequirements engineering (RE) is concerned with the identification of
the goals that need to be achieved by an envisioned system, the
operationalisation of these goals into services and constraints, and the
assignment of responsibilities for the resulting requirements to agents
such as humans, devices, and software. The processes involved in RE
include domain analysis, elicitation, specification, assess- ment,
negotiation, documentation, and evolution. Getting high-quality
requirements is difficult and critical. Recent surveys have confirmed
the growing recognition of RE as an area of utmost importance in
software engineering research and practice.
Within this course, we put an emphasis on requirements elicitation,
specification, and modelling. The overall goal is to teach the key
concepts related to RE and to create an awareness for the importance of
this topic in practice. The various lectures and instructions will be
devoted to the following topics:
• Introduction to Requirements Engineering: In this lecture, you will
learn what RE is all about, its aim and scope, its critical role in
system and software engineering, and its relationship to other
disciplines. You will also learn what requirements are, what they are
not, and what good requirements are.
• Requirements Elicitation and Evaluation: In this lecture (and the
corresponding exercise session), you will learn a variety of techniques
that we may use for understanding the domain in which a software project
takes place and for eliciting the right requirements for a new system.
What is more, you will learn how to evaluate the elicited requirements.
• Requirements Specification and Documentation: In this lecture (and the
corresponding exercise session), you will learn how to specify
requirements in a proper way. Among others, we will discuss templates in
natural language, diagrammatic notations, and formal specification
methods for critical aspects of the to-be system.
• Modelling System Objectives: In this lecture (and the corresponding
exercise session), you will learn how to model the functional and
non-functional goals of the to-be system. The models you will learn to
create are referred to as goal models.
• Modelling Conceptual Objects: In this lecture (and the corresponding
exercise session), you will learn how to capture the structural
perspective of the system. More specifically, you will learn how to use
UML class diagrams to characterise, structure, and inter-relate the
conceptual objects manipulated in the system.
• Modelling System Operations and Behaviours: In this lecture (and the
corresponding exercise session), you will learn how to model the
functional and the behavioural perspectives of the system. To this end,
you will learn how to create operational models and behavioural models.
Teaching MethodsLectures and practical tutorials.
Method of AssessmentExam (50%) and practical assignment (50%). Details are publishes on the
Canvas page of the course.
LiteratureDetails available on the Canvas page of the course.
Target AudienceB Econometrics and Operations Research (elective)
B Information Sciences (year 2)
|Language of Tuition||English|
|Faculty||Faculty of Science|
|Course Coordinator||dr. S. Lusini|
|Examiner||dr. H. Leopold MSc|
You need to register for this course yourself
Last-minute registration is available for this course.
|Teaching Methods||Seminar, Lecture|
This course is also available as: