This article describe the problems facing developers of embedded system-on-chip hardware and software and how executable UML can help. As with most of the hardware-oriented C variants, one solution to the problem of taking a software-oriented language for use in SoC is to add hardware features to it. The same has been proposed for UML, but the authors propose the opposite: use only the minimum necessary to specify system functionality.
Model mappings, coupled with marks that indicate which mapping rule to apply, are then used to translate the application model into hardware and software description languages. This approach enables a major simplification of the use of UML in SoC, and corresponding simplification of the work of SoC developers.