Embedded systems must interact with their real-time environment in a timely and dependable fashion. Most embedded-systems architectures and design processes consider "non-functional" properties such as time, energy, and reliability as an afterthought, when functional correctness has (hopefully) been achieved. As a result, embedded systems are often fragile in their real-time behaviour, and take longer to design and test than planned. Several techniques have been proposed to make real-time embedded systems more robust, and to ease the process of designing embedded systems, including
Precision-timed and time-triggered architectures, to make time a first-class citizen of system design. Deterministic architectures for repeatable timing behaviour. Composability, which guarantees that the (non)-functional behaviour of components is unchanged on integration in a larger system.
The aim of this tutorial is to present the state of the art and major approaches to time-predictability and composability, such as BIP, TTA, PRET, PTIDES, Giotto, TipToe, and CompSOC.
Full information is available here