Real-time software systems engineering (2IN70) autumn 2019 (for AT)


Last update: November 11th, 2019.




·         2019-11-11: The web-page has been created.



On this site the current status of the course will be maintained. Assignments and presented slides will become available through OASE.



For earlier examinations with draft answers, see CANVAS.



The course addresses basic concepts of software systems engineering for automotive in general and real-time aspects of these systems in particular. This course combines two courses given in earlier editions (2014/2015 and earlier) of the MSc-AT curriculum:

·         Software system engineering (2IW60): see here.

·         Real-Time Architectures (2IN60): see here.

The academic year 2015/2016 was a transitional year in which these two courses were merged into a single course.


Course objectives (content-wise):

Knowledge: Students know and understand basic notions of software engineering, such as requirements engineering, conceptual modeling, software evolution, and software architecture. Next to these general software engineering notions, they understand the basics of a microprocessor organization for the purpose of embedded control, have insight in in-vehicle computation and communication and the scheduling thereof, and have an overview of vehicle ICT infrastructure and proposed standards.
Capabilities: Students can model communication between software components and perform basic behavior analysis on those models. In addition, students have seen the structure of a real-time kernel and have some experience with programming and scheduling real-time tasks on a microprocessor. Finally, students can analyze timing properties of small real-time systems to determine whether or not requirements are met.


Course objectives (field):

Students can access and appreciate current literature on the topic of in-vehicle hard- and software.


Prior Knowledge:

Students are expected to have a sound base in object-oriented concepts and the C++ programming language and to have been introduced to the structure and working of general-purpose machines that can execute computer programs. Students with a BSc with a major in Automotive will satisfy this criterion, but those with a BSc in mechanical or electrical engineering will not. The latter are therefore expected to be familiar with the contents of (or passed) module 7 “C(++) and computer organization” of the homologation course 4AT900 for AT, SC, and SE.



Course program (preliminary):

Quartile 2 (November 11th, 2019 - January 31st, 2020; see academic calendar):

Track 1: Software systems engineering



Track 2: Real-time architectures

Lectures                                                                           Exercises

Week 1: (13 – 11) Introduction + deriving requirements            1 Freescale simulator

Week 2: (20 – 11) Microcontrollers & Multitasking                     2 Multitasking

Week 3: (27 – 11) Preemption and atomicity                           3 disabling interrupts

Week 4: (04 – 12) Real-time Operating Systems: mC/OS-II        4 disabling scheduler

Week 5: (11 – 12) Synchronization                                        5 mutexes

Week 6: (18 – 12) Real-time analysis                                     6 semaphores


             (25 – 12) No classes (Christmas Holidays)

             (01 – 01) No classes (Christmas Holidays)                7 analysis


Week 7: (08 – 01) Networked systems                                  8 communication

Week 8: (15 – 01) No classes                                             9 car


Lecturers: R.J. Bril

          Bldg.: MF 6.068, tel.: 5412, homepage

Dr.Ir. I. Barosan

          Bldg.: MF 6.091, tel.: 3764, homepage


References (Block II):