TTM4160 - Design of Cyber-Physical Systems


Examination arrangement

Examination arrangement: Aggregate score
Grade: Letter grades

Evaluation Weighting Duration Grade deviation Examination aids
Oral exam 70/100 40 minutes A
Individual Readiness Assurance Tests (RATs) 15/100 E
Team Readiness Assurance Tests (RATs) 15/100 E

Course content

The course discusses the construction of efficient and dependable software solutions for distributed cyber-physical systems (CPS), with the use of formal specifications expressed in the language UML. It consists of six major units:

  1. State Machines: The syntax, semantics, and realizability of executable state machines are discussed.
  2. Implementation Design: Here, one learns how given specifications can be mapped to physical components. Further, one should understand how state machines can be used to support certain hardware needs.
  3. Software Design: Patterns and methods necessary to create event-driven software will be taught including internal organization and interface issues of software components.
  4. Cyber-Physical Systems: The basics of cyber-physical systems will be introduced. This includes ways supporting the management of these systems that often produce a vast amount of data. In particular, interesting communication architectures and protocols are discussed.
  5. Development of IoT and ITS Systems: The "Internet of Things" and "Intelligent Transportation Systems" are two important application domains for CPS. The students will learn technologies to create such systems that often have to guarantee stringent real time and safety properties. The learned knowledge will be deepened by the design of a larger example system.
  6. Testing: The students should learn about the main ideas and techniques for testing systems.

Learning outcome

A. Knowledge:

  1. The general nature of distributed cyber-physical systems, how they can be modeled and the role of modeling to ensure system quality and timeliness in development processes.
  2. Selected modeling languages, methods and tools, in particular, the mainstream industry languages UML and TTCN.
  3. General principles for meeting real-time, dependability and performance constraints.
  4. Validation of systems by testing.
  5. Implementation design: the principal differences between specification and design models and physical realization in hardware and software including principal design trade-offs and solutions.
  6. Tools for specification, design, implementation and analysis: model-driven development from abstract system models, through design synthesis to code generation and execution.

B. Skills:

  1. Analyzing existing cyber-physical systems.
  2. Specifying, design and implementation of new cyber-physical systems according to the defined requirements.
  3. Practical developing, executing and using selected services such as distributed, mobile services using Java based platforms and the ability to use state of the art tools for model driven development.

C. General competence:

  1. Application of the principles for software design of distributed cyber-physical systems.
  2. Basic understanding of the mechanisms in support systems and platforms, as well as concrete experience in realizing a cyber-physical system by using a UML-based engineering method and a Java framework.

The learning outcomes of this course are related to the construction of cyber-physical systems that can be the backbone of digital infrastructures. For this reason, such systems are critical to society and therefore must implement relevant functions in a robust, safe, secure, and efficient manner. Thus, they are directly related to UN Sustainable Development Goal (SDG) 9 (Industry, Innovation and Infrastructure). Indirectly such systems also contribute to other SDGs as enablers in various domains, in particular to goal 2 (Zero Hunger), 3 (Good Health and Wellbeing), 7 (Affordable Clean Energy), and 11 (Sustainable Cities and Communities).

Learning methods and activities

The course is taught according to the principle of team-based learning. It consists of individual work, group work and immediate feedback. The objective is to foster active student participation in the course. The principle is explained at Throughout the semester, students receive feedback on the learning process by several readiness assurance tests, which also contribute to the final grade. To qualify for the final exam, a student has to reach at least 40% of the possible points in the readiness assurance tests.

Further on evaluation

Three assessments provide the basis for the final grade in the course, individual Readiness Assurance Tests (RATs), team RATs and an oral final exam that count for 15, 15, and 70% of the final grade, respectively. All three parts must be passed in order to pass the course. The results for each of the parts are given with a letter grade. If a student also after the re-sit exam has the final grade F/failed, the student must repeat the entire course. Also in the case a student wants to try to improve his/her grade, he/she must repeat all three assessments.

Course materials

To be announced at the beginning of the term.

Credit reductions

Course code Reduction From To
SIE5065 7.5
More on the course



Version: 1
Credits:  7.5 SP
Study level: Second degree level


Term no.: 1
Teaching semester:  AUTUMN 2023

Language of instruction: English

Location: Trondheim

Subject area(s)
  • Telematics
  • Technological subjects


Examination arrangement: Aggregate score

Term Status code Evaluation Weighting Examination aids Date Time Examination system Room *
Autumn ORD Individual Readiness Assurance Tests (RATs) 15/100 E





Room Building Number of candidates
Autumn ORD Team Readiness Assurance Tests (RATs) 15/100 E





Room Building Number of candidates
Autumn ORD Oral exam 70/100 A 2023-12-21
Room Building Number of candidates
Summer UTS Oral exam 70/100 A
Room Building Number of candidates
  • * The location (room) for a written examination is published 3 days before examination date. If more than one room is listed, you will find your room at Studentweb.

For more information regarding registration for examination and examination procedures, see "Innsida - Exams"

More on examinations at NTNU