ACM Home Page
Please provide us with feedback. Feedback
Why use the model driven architecture to design and build distributed applications?
Full text PdfPdf (125 KB)
Source International Conference on Software Engineering archive
Proceedings of the 27th international conference on Software engineering table of contents
St. Louis, MO, USA
SESSION: State of the practice table of contents
Pages: 37 - 37  
Year of Publication: 2005
ISBN:1-59593-963-2
Author
Jon Siegel  Object Management Group, Needham, MA
Sponsors
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 19,   Downloads (12 Months): 140,   Citation Count: 2
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1062455.1062471
What is a DOI?

ABSTRACT

OMG's Model Driven Architecture® (MDA®)[1] unifies and simplifies modeling, design, implementation, and integration of applications -- including large and complex ones -- by defining software fundamentally at the model level, expressed in OMG's standard Unified Modeling Language® (UML®)[2]. An MDA-based development goes through three steps -- two producing models, one producing code -- and typically iterates through these several times.An MDA application's base model specifies every detail of its business functionality and behavior in a technology-neutral way; in MDA terminology this is the application's Platform-Independent Model (PIM). Use of well-known patterns, imported into the model from a library and parameterized to suit the application, speeds development and reduces error while still producing a complete and detailed PIM. Technology independence allows domain experts to concentrate on getting the business process correct, and preserves the model's usefulness beyond the technology churn cycle.Working from the PIM, MDA tools follow an OMG-standard mapping to generate an intermediate model tailored to the target middleware implementation platform. (OMG is standardizing mappings to all popular middleware platforms; several have already been adopted.) Termed a Platform-Specific Model (PSM), this intermediate product adds non-business, computing-related details (typically affecting performance and resource usage), possibly following "markup" inserted on the PIM by your architects, and the version produced by the MDA tool will probably require some hand-tuning before it can be used for the next step. (The amount of hand-tuning required will vary depending on the sophistication of the tool, the complexity of the application, and the maturity of the MDA in your application domain.In the final development step, working from the PSM, MDA tools generate interface definitions, application code, makefiles, and configuration files for the PSM's middleware platform. Because the industry has been working on this transformation for years already, and the model is tailored specifically for this transformation, the automated conversion in this step is typically 100% or nearly so. Performing a "build" on these artifacts yields a deployable application.Because the PIM is middleware-neutral and conversion to the PSM and then to the implementation is mostly automatic, it is practical to produce equivalent implementations of MDA-based applications on multiple target platforms. In addition, tools can generate cross-platform invocations, allowing easy interworking among suites of MDA-based applications wherever they reside. Another benefit of the MDA: because industry standards defined as an MDA PIM are platform-independent, they can be implemented on multiple targets and then used by every enterprise even in industries that haven't converged on a single middleware platform.Based on UML, automation, and sound architectural principles, the MDA supports applications over their full lifecycle starting with design and moving on to coding, testing, and deployment, through maintenance, and eventually to evolution to a new platform when an application's existing platform becomes obsolete. The MDA became the base architecture for OMG standards in September 2001.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Object Management Group, http://www.omg.org/mda.
 
2
Object Management Group, http://www.omg.org/uml; http://www.omg.org/technology/documents/modeling_spec_catalog.htm