Skip to Main Content
On the surface, model-driven architecture (MDA) appears to be a fundamentally new paradigm compared to traditional software development. Upon closer examination, however, MDA mainly shifts the focus of iterative development to a higher level of abstraction. The traditional waterfall software development process (and its variations) dictates that the system development be driven by low-level design and coding. This can introduce many productivity, maintenance and documentation issues into the process. Using the MDA pushes development to a higher level, where platform-independent analysis and detailed platform-specific design modeling make it easier to trace back to the requirements, thereby introducing a more stringent governance over the project. Also, it introduces a technology and platform independent standardized development process, system interoperability internally as well as the ability to provide communication bridges with external systems. The systems can be portable, which allows for what the creators of the MDA, the object management group (OMG), refer to as "future proofing" of software systems. This is the ability to have long-lived models that can be applied to any new implementation technologies that will ultimately be created and introduced to the software development world. This paper seeks to introduce and demystify MDA concepts and features, and show how their application can be used to develop highly interoperable and robust medical device software systems. In particular, if medical devices are designed using the MDA approach, they can quickly be adapted to utilize any interoperability (or "plug and play") standard that evolves in the future.