The correct behavior of real-time applications depends not only on the correctness of the results of computations but also
on the times at which these results are produced. As a matter of fact, violations of real-time constraints in embedded systems
are the most difficult errors to detect, because they are extremely sensitive both to the patterns of external events stimulating
the system and to the timing behavior of the system itself. Clearly, the development of real-time systems requires rigorous
methods and tools to reduce development costs and “time-to-market” while guaranteeing the quality of the produced code (in
particular, respect of the temporal constraints).