The Unified Modeling Language is rapidly gaining acceptance as the mechanism of choice to model complex software systems at various steps of their specification and design, using a number of orthogonal views that illustrate use cases, class diagrams and even detailed state machine-based behaviours of objects. This text aims to show the reality of UML as a medium for specification and implementation of real-time systems, illustrating both the current capabilities and limits of UML for this task, and future directions that will improve its usefulness for real-time and embedded product design. It also covers selected applications examples.