NDAB19001U Reactive and Event Based Systems
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 three active research topics at DIKU with applications in industry that can serve as basis for a bachelor project: 1) Declarative Process Models and Event-Based systems, 2) Actors and databases, 3) Event stream processing.
Knowledge about:
- Declarative Process Models and Event-Based systems
- Processes and how to
model them
- Declarative vs. imperative
process notations
- Process Modelling with
Dynamic Condition Response Graphs
- Mapping properties of
event-based systems to declarative
constraints
- Run-time monitoring of
event-based systems with a declarative process engine
- Actors and databases
- Actor-based modeling and
programming
- Actor-oriented vs.
actor-relational databases
- Relational actor programming
model and main implementation issues
- Event stream processing
- Data and programming models for event stream processing
- Issues of implementing event stream processing systems
Skills to:
- Model event-based systems using formal declarative notations.
- Leverage a declarative process engine to control and monitor event-based systems.
- Build software solutions based on actors and databases.
- Build real-time event-driven applications.
Competences
- Can apply declarative process technologies to event-based systems.
- Can structure and implement an actor-based application to address a concrete problem scenario.
- Design and implement applications using event stream processing techniques.
See Absalon
Discrete Math and basic algorithms and data structures as obtained in Diskret Matematik og Algoritmer (DMA)
- Category
- Hours
- Exam
- 1
- Exam Preparation
- 13
- Lectures
- 24
- Preparation
- 56
- Project work
- 80
- Theory exercises
- 32
- Total
- 206
- Credit
- 7,5 ECTS
- Type of assessment
- Oral examination, 20 minAt the exam the student will be asked to give a prepared presentation (8 min) of one of the mandatory hand-ins, decided at random at the exam. The students are allowed to collaborate in the preparation of presentations of hand-ins. After the presentation the student will get questions to the presentation and in general within the entire curriculum.
- Exam registration requirements
There will be 3 mandatory hand ins (programming tasks) that must be approved for each group.
- Aid
- Written aids allowed
The student is allowed to bring notes, laptop with the hand ins (to make demonstrations) and a prepared presentation of each mandatory hand in.
- Marking scale
- 7-point grading scale
- Censorship form
- No external censorship
- Re-exam
As ordinary exam.
If you are not already qualified for attending the re-exam, you can achieve qualification by handing in the three mandatory hand ins no later than three weeks before the exam (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 assesment
The grade will be based on the ability at the exam to demonstrate the achievement of the goals given in the course description. In particular, it is required that the student can explain the hand-ins and argue for choices made in the hand-in.
Course information
- Language
- English
- Course code
- NDAB19001U
- Credit
- 7,5 ECTS
- Level
- Bachelor
- Duration
- 1 block
- Placement
- Block 2
- Schedule
- B
- Course capacity
- 60
- Continuing and further education
- Study board
- Study Board of Mathematics and Computer Science
Contracting department
- Department of Computer Science
Contracting faculty
- Faculty of Science
Course Coordinators
- Thomas Troels Hildebrandt (hilde@di.ku.dk)
Lecturers
Yongluan Zhou
Tijs Slaats
Thomas Hildebrandt
Marcos Antonio Vaz Salles