Courses

Dependable Systems

Course type: Lecture 

Value in ECTS: 3

Overview of the Course

Fast growth and proliferation of computer and communication, and especially embedded systems, forces the increased demand for properties such as dependability, timeliness and security. In this course, we focus on dependability but references to other two properties are also included. After introducing the various dependability perspectives on system design as well as the methodology of dependable design, we introduce basic concepts, measures and models used in dependable  computing and communication. We then describe testing methods, fault diagnosis, fault recovery and fault tolerance techniques that are essential in the dependable systems design. We conclude the course with case studies, which demonstrate what techniques have been used for the dependability enhancement in the real life systems and outline the current trends.

Contents

  • Introduction, Motivation and Scope (1 hour)

  • Project Assignment (1hour)

  • Dependability Concepts and Measures (3 hours)

  • Teams Formation, Concept Definition and Project Topics(2 hours)

  • Dependability Modeling and Tools(4
    hours)

  • Testing Techniques(2 hours)

  • Project and Assignments(2 hours)

  • Fault Diagnosis Techniques (2 hours)

  • Fault Recovery and Fault Tolerance Techniques (2 hours)

  • Dependable and Fault-Tolerant Memories
    (2 hours)

  • Project and Assignments (2 hours)

  • Dependable and Fault-Tolerant Software
    (3 hours)

  • Case Studies (2 hours)

  • Current Trends (autonomic, trustworthy and proactive computing) (1 hour)

  • Project (2 hours)

  • Project Presentations (4-5 hours, depending on the number of teams)

Introduction to Embedded Systems

Overview of the course

Embedded systems increasingly pervade all walks of our lives where applications range from agriculture and healthcare to energy, manufacturing and social networks. The course will provide an overview of embedded systems, including cyber-physical systems.

Basic concepts and forms of computing in embedded systems will be discussed and properties such as real time, dependability, safety and security will be covered. Basic scheduling techniques will be introduced as well as key protocols for wireless communication.

Then main operating systems and processor architectures used in the embedded systems will be reviewed followed by applications case studies and trends.

Contents

  • Introduction

  • World of embedded systems

  • Real-time systems

  • Scheduling and worst-case execution time (WCET)

  • Dependability and safety

  • Security

  • Wireless Communication (IrDA, WLAN,Bluetooth, ZigBee, GSM, UMTS)

  • Real-time communication

  • Busses

  • Group communication and consensus

  • Clock synchronisation

  • Operating systems basics

  • Operating systems: RealTime Linux, Windows CE, OSEK and PURE OS

  • Processor architectures for embedded systems: ARM

  • Processor architectures for embedded systems: AVR

  • Asynchronous processors

  • Low Power – basic techniques

  • Radio Frequency Identification (RFID)

  • Case studies and trends

Designing and Managing Embedded Applications

The course is structured in two parts: a first part, based on “conventional” lectures, and a second part that will directly involve students in interactive training.

Part 1: Problem formalization and identification of constraints: hypotheses, constraints and specification.  Problem decomposition and solution techniques: Modeling the unavailable parts of the solution: from system identification to learning from data; Dealing with complexity: a deterministic vs. a probabilistic approach; System optimization techniques: selecting the appropriate figures of merit. Assessment of the solution.

Part 2: The course is built on real-world examples that naturally show how the theory emerges from the application needs. The interactive part of the course will guide students through the various steps: Brainstorming techniques; dealing with a complex design space or use of multi-objective optimization and integration; verifying design assumptions; quantifying and checking the models obtained against real-world measures.

Technology Project Management and Leadership

Course type: Lecture

Value in ECTS: 3

Contents

The course is structured in series of seminars on leadership, project and product management and entrepreneurship.