Reactive and Event Based Systems (REB)
Course content
In this advanced course, you will get the chance to learn about the basics of reactive and event-based systems, as well as research-based technologies for implementing reactive and event-based systems with applications in various areas such as business process management systems, large scale data processing and distributed systems, games, robotics, and IoT.
Concretely, the course will introduce you to active research topics at DIKU with applications in industry that can serve as a basis for a bachelor project. This means that the course curriculum will consist of a number of research papers and online resources.
Knowledge within
Two or more of the following topics (depending on the lecturers' research areas):
- Topic 1 Declarative Process Models and
Event-Based systems:
- Processes and how to model them
- Declarative vs. imperative process notations
- Declarative Process Modelling with Dynamic Condition Response Graphs
- Topic 2:
- Modelling properties of event-based systems as declarative constraints
- Run-time monitoring of event-based systems with a declarative process engine
- Process mining and compliance
- Topic 3 Message passing models and
languages for event based systems:
- Actors and dataflow network
- Process calculus
- Microservices and reactive systems programming
- Topic 4 Event stream processing:
- Data and programming models for reactive and event stream processing systems
- Issues of implementing reactive and event stream processing systems
- Message queues and brokers
Skills to
Do two or more of the following tasks (depending on the
lecturers' research areas):
- Model event-based systems using formal declarative notations.
- Model properties as declarative constraints and leverage a declarative process engine to control and monitor event-based systems.
- Build software solutions based on message passing.
- Build event-driven applications.
Competences to
Do two or more of the following activities (depending on the
lecturers' research areas):
- Apply declarative process technologies to model event-based systems.
- Apply declarative process technologies to describe properties of and monitor event-based systems.
- Structure and implement a message passing based application to address a concrete problem scenario.
- Design and implement applications using event stream processing techniques.
Weekly lectures and modelling or programming tasks in groups, 3 mandatory hand-ins (in groups), deadline approximately every 2nd week.
See Absalon
It is important that the student has:
-Knowledge of programming as obtained in Programmering og
Problemløsning (PoP) and Softwareudvikling (SU).
Knowledge of Discrete Math and basic algorithms and data structures
as obtained in Diskret Matematik og Algoritmer (DMA) or Discrete
Mathematics and Formal Languages (DMFS).
It is recommended to have knowledge of computer systems at the
level of the DIKU course, Computer Systems
(CompSys).
The students will be able to book online slots for each group to receive feedback during the course and will also get written feedback on mandatory assignments.
- ECTS
- 7,5 ECTS
- Type of assessment
-
Oral examination, 20 minutes (no preparation)
- Type of assessment details
- At the exam the student will be asked to give a presentation (8 min) of one of the mandatory assignments, decided at random at the exam. There will not be time for preparation at the exam so presentations of all mandatory assignments should be prepared by the student before the exam. The students are allowed to collaborate in the preparation of presentations of assignments. After the presentation the student will get questions to the presentation and in general within the entire course curriculum.
- Exam registration requirements
-
There will be 3 mandatory assignments (modelling and/or programming tasks) during the course that must be approved in order to be qualified for the exam.
- Aid
- All aids allowed
The student is allowed to bring notes, laptop with the assignments (to make demonstrations) and a prepared presentation of each mandatory assignment.
- Marking scale
- 7-point grading scale
- Censorship form
- No external censorship
- Re-exam
-
Same as ordinary exam.
If you are not already qualified for attending the re-exam, you can achieve qualification by handing in the three mandatory assignments no later than three weeks before the re-exam week (and getting these approved). If you base these on earlier group assignments, it must be made clear what your new contributions are.
Criteria for exam assessment
See Learning Outcome.
Single subject courses (day)
- Category
- Hours
- Lectures
- 16
- Preparation
- 64
- Theory exercises
- 16
- Project work
- 90
- Exam Preparation
- 19
- Exam
- 1
- English
- 206
Kursusinformation
- Language
- English
- Course number
- NDAB19001U
- ECTS
- 7,5 ECTS
- Programme level
- Bachelor
- Duration
-
1 block
- Placement
- Block 2
- Schedulegroup
-
B
- Capacity
- 60
The number of places might be reduced if you register in the late-registration period (BSc and MSc) or as a credit or single subject student. - Studyboard
- Study Board of Mathematics and Computer Science
Contracting department
- Department of Computer Science
Contracting faculty
- Faculty of Science
Course Coordinator
- Thomas Troels Hildebrandt (5-6d6e71696a45696e33707a336970)
Se skema
Er du BA- eller KA-studerende?
Kursusinformation for indskrevne studerende