The MDA is a framework for software development that been defined by the OMG (Object
Management Group). It is an approach to creating good designs that can cope with multiple
technology deployments of a software system and is based on widely used standards like the
Unified Modelling Language(UML). The intention of the MDA is to create machine-readable models
that can be understood by automatic tools that generate schemas, code skeletons, testing models,
test packs, and integration code for multiple platforms and technologies. See What is Model Driven
Architecture?
A question that regularly comes up, is that of: Where does the business models fit into this picture?
In organizations that focus on the delivery of software systems that support critical business
processes it is important to create a mappable and traceable business model layer to the MDA
layers. These business models that are defined from the point of view of the business stakeholders
and participants then effectively drives the system requirements that ultimately will lead to the
software systems.
A graphical depiction of such a model can be seen in Figure 1.
Figure 1. Adding the business layer.
Conclusion
Defining and modelling the business layer is an extremely important foundation to the delivery of
mission critical software and should be a crucial part of any software development.