MDApps vs. MDA and OO: from an Architectural Perspective
Author: Tong-Ying Yu, Source: EE-Forum.org, Published: 2013-03-06
Excerpt: A concise comparison on the definition of architecture by ISO/IEC 42010, for OO, MDA, and MDApps as an architecture.
To introduce the idea of model-driven applications (MDApps) , in the context of software development and application, it is necessary to clarify its relationship with model-driven architecture (MDA). In Model-Driven: An Essential Requirement Come from Customers, described why the term “model-driven” was chosen for our conception in origin, that was before the rising of OMG’s MDA and the use was essentially consistent to MDA; this has been further illustrated in Using Model Driven Mechanism to Explain Model Driven Software Development, where shows that the MDA / MDD is indeed based on Model-Driven Mechanism (MDM). As a preparation for this discussion, an general understanding for architecture presents in the latest post–based on it carefully, here is a concise comparison and a bit analysis to MDApps and MDA, also with OO.
Table: A comparison for MDA, OO, and MDApps as an architecture, on the definition by ISO/IEC 42010
|ISO/IEC 42010:2007||OO||MDA||MDApps as Architecture|
|What||The fundamental organization of a system||Using class/object to organize software||Using MDM to organize software development||Using MDM to organize software application|
|embodied in its components, their relationships to each other and the environment||Classes/objects, messages, encapsulation, inheritance,..||Models, metamodels, in metamodeling hierarchy||Applied models, modeling knowledge (metamodels), operational device, which are related in an MDM structure|
|How||the principles governing its design and evolution||OOA/OOD, e.g. RUP||– Using models to direct the course of understanding, design, construction, deployment, operation, maintenance and modification. ||– Programming for the applied models according to the modeling knowledge;
– Evolution on the app model according to the modeling knowledge;
– Keep the device according to / supporting the modeling knowledge
As mentioned in Understanding Architecture, to compare some architectures, we should first identify what the (class of) systems, the target of architecture, they are for. In the table, shows three typical target systems: software by OO, development (systems or organizations) by MDA, and applications by MDApps.
Don’t know if this will cause some controversy, IMHO, MDA is in fact not an architecture for software system but for software development system. Objectively, it appears in fact to be a complementary to OO architecture, though the model-driven approach is not only to be used for OO. MDA + OO may be regarded as a complete architecture for software but that is somewhat weak: in principle, there is no inevitable, certain relationship between the model-driven approach specified by MDA and the software organized in OO style.
Although I prefer take the term model-driven application to refer to a type of a systems, the ideas about MDApps are certainly presented as a rich architecture. It firstly specifies the core structure for its target systems: the MDM structure; this structure brings the significant unique characteristics what appeared in the functionality of the target systems: it will be capable to adapt to the changes of the applying objects (business, etc.) based on evolving the applied models without change the software (platform). Furthermore, for an MDApp, its development, deployment, government, as well as the division of the roles who involved in the whole life cycle, are all different to a traditional software application. The ideas of MDApps are therefore presented as a strong architecture.
 A regular publication about MDApp is in press, see Recent Work on Model-Driven Applications (MDApp). I will introduce such ideas on this blog continuously, and some more information on EE-Forum.org in Chinese.
 Cite from MDA Guide Version 1.0.1, Sec. 2.2.3, OMG, March 06, 2001
MDApps vs. MDA and OO: from an Architectural Perspective by Tong-Ying Yu is licensed under a Creative Commons Attribution-NonCommercial 3.0 Unported License.
GB7714 style: Tong-Ying Yu. MDApps vs. MDA and OO: from an Architectural Perspective[EB/OL]. EE-Forum.org, http://www.ee-forum.org/wp/pub/ty/2013-03-p3519.html, 2013-03-06[2017-05-01 12:38]
Chicago style: Tong-Ying Yu, "MDApps vs. MDA and OO: from an Architectural Perspective", EE-Forum.org, http://www.ee-forum.org/wp/pub/ty/2013-03-p3519.html(accessed 2017-05-01 12:38)
- Prev Post: Understanding Architecture
Leave a Response
You must be logged in to post a comment.