When software engineers come to implement the UML specification for their design in a language like C or C++ on a commercial or homegrown operating system, they face a number of challenges. Of particular concern is that some of the most important constructs in UML, such as state machines, guarded operations, active objects and signals, don’t have an analogous construct in a language like C or C++. This paper presents some
straightforward patterns that can implement these UML constructs using an example in C++ on top of an OS platform.