Generating Optimized Code for Embedded Systems From UML
The benefits of an implementation-free model, fashionably named Platform Independent Model (PIM), are now widely recognised. However, the space and speed constraints characteristic of many embedded systems means there is necessarily a significant distortion of the PIM when deriving a Platform-Specific Implementation (PSI). This leads to the situation where maintenance of the PIM in the face of changes to the PSI becomes very costly, and in most cases is abandoned, leaving the PIM to fall into obsolescence. It is then the PSI that must be maintained in the face of requirement changes. The problem with the PSI is that it is many times larger and more complex than the PIM, and is correspondingly more expensive to maintain. Also, it is obviously platformspecific, so migration to a new platform, where different optimizations may be required, becomes increasingly difficult.