Model Driven Architecture: Feasibility or Fallacy?
Track: Core Technologies
Audience Level: High Level View
Time: Thursday, November 18 at 11:00
Keywords: Data Representation, DTD, MDA, Model Driven Architecture, Metadata, Ontology, Schema, Stylesheet, TCO, UML, W3C XML Schema, XMI, XInclude, XML, XPath, XQuery, XSLT
Abstract:
The high integration costs which exist today mean that we must automate interface maintenance and integration tasks or go insane, or worse, out of business. Ongoing pressure to reduce software development costs while increasing the quality and completeness of the work provide an opportunity for the use of model driven computing. MDA (Model Driven Architecture) is a technique for model based platform independent software specification based on the MOF (Meta-Object Facility) and XMI (XML Meta-data Interchange) standards from the OMG (Object Management Group). There are a number of tool vendors using XMI (especially UML (Unified Modeling Language) drawing tools) but common use and value seem to be slow to show themselves.
Although there has been significant interest in this topic in the research community for some time there has recently been a significant growth in the commercial industry. This can be evidenced mainly in the articles and reports now being released. MDA provides a mechanism where high-level architectural model descriptions of software systems are produced using UML in a standard UML tool. Most UML tooling supports the OMG XMI standard which allows the expression of the UML software system description in a standard XML representation.
The formalism of model-based descriptions of systems and their code automation will be requirements for the progression of this industry and profession. The key questions that arise with respect to MDA then become: why aren't XDoclet, Cocoon and similar code annotation tools sufficient; why has the uptake of MOF been rapid but the uptake of XMI much slower; are there alternatives to code generation such as the use of next-generation languages; what code can reasonably be generated; and what are the best tools to target these areas?
These questions are answered in this paper. Underlying this discussion is the absolute criticality of XML and specific requirements on XML tooling for this essential area of software development.
XML version
HTML version
PDF version
SVG version