|
Model Driven Architecture (MDA) FAQ...
Q:
What is the Model Driven Architecture® (MDA®) and
how is it different from other architectures? MDA development focuses first on the functionality and behavior of a distributed application or system, undistorted by idiosyncrasies of the technology platform or platforms on which it will be implemented. In this way, MDA divorces implementation details from business functions. Thus, it is not necessary to repeat the process of defining an application or system's functionality and behavior each time a new technology (Web Services, for example) comes along. Other architectures are generally tied to a particular technology. With MDA, functionality and behavior are modeled once and only once. Mapping from a PIM through a PSM to the supported MDA platforms is being implemented by tools, easing the task of supporting new or different technologies. This article in SD Times, by OMG's Dr. Jon Siegel, explains the MDA development process in more detail.
Q:
Can you tell me something about the history of the MDA?
Q:
What is the role of UML and MOF in the MDA? Although not formally required, UML is still a key enabling technology for the Model Driven Architecture and the basis for 99% of MDA development projects. (Work in some specialized fields requires specially tailored modeling languages, although the additional capabilities added to UML by the 2.0 revision satisfies this need in many cases.) So, application development using the MDA is typically based on a normative, platform-independent UML model. By leveraging OMG's universally accepted MOF and UML standards, the MDA allows creation of applications that are portable across, and interoperate naturally across, a broad spectrum of systems from embedded, to desktop, to server, to mainframe, and across the Internet. The basis on MOF was made official in August, 2004, when OMG's Object and Reference Model Subcommittee (ORMSC) unanimously adopted the definition of MDA that is being used to revise the official MDA Guide (from this current version). The August definition states:
Q: What is the role of Patterns in the MDA? A: Patterns play a critical role in most MDA-based development projects. Successful transformation from PIM to PSM, and from PSM to code, requires that the PIM contain enough detail to completely guide the software tools through the process. By incorporating this detail through the use of patterns, instead of inserting it by hand, we gain multiple benefits: Our architects do less work, the resulting PIM reflects the collective wisdom of many contributors, and the tools can work the pattern (parameterized as necessary in our UML models) through the transformations, ultimately pulling implementation code from a library written by experts and inserting it into the application.
Q:
What is the role of middleware platforms in the MDA? Because the PIM, PSMs, and interface definitions are all part of an MDA specification, OMG now adopts specifications in multiple middleware platforms under the MDA. Suitable targets for MDA development projects and OMG specifications includes Web Services, XML, .NET, EJB, and of course OMG's own favorite, CORBA.
Q:
How does MDA enable cross-platform interoperability? Q: What services will be available in the MDA environment? A: OMG members are well aware of the extensive services necessary to support distributed computing, both within an enterprise and among many over the Internet. In CORBA, OMG's answer to this need was originally the CORBAservices, already defined and available here. In the MDA, these have been renamed the Pervasive Services because a single implementation of each, regardless of the platform on which it runs, can service every application or client that needs its capabilities via MDA-generated cross-platform bridges. Enterprises struggling to maintain and synchronize large directory services replicated on multiple platforms will surely appreciate the opportunity to trim down to a single instance! OMG plans to define four Pervasive Services:
Additional services, as suggested by the list of CORBAservices already available, will be added as needed to keep the environment complete. Q: How will Domain-Specific Software and Standards take advantage of the MDA? A: The MDA has so many advantages for industry-specific software that some of OMG's Domain Task Forces started writing specifications in the MDA before it became an official part of our architecture! In order to benefit an industry, a standard must be used by a critical mass of companies. Technology-specific standards will have trouble getting established where platform incompatibility prevents achieving this critical mass. Sometimes the problem is even deeper than this: In some industries, architecturally excellent standards have been adopted in the formal sense but failed to gain hold because they were written for a platform that few companies were willing to support. MDA completely removes these roadblocks. Under MDA, the functional description of every standard is technology independent, and the architecture is capable of producing interoperating implementations on multiple platforms. This allows an industry to define the business functionality and behavior of its standards as a PIM, and then produce PSMs and implementations on whatever platforms the participants require. In addition, technology-based standards become obsolete as their base platform ages; in fact they lose some of their appeal as soon as a new platform gets some play in the industry press. This is not a problem for MDA-based specifications: Because they are based on platform-independent PIMs and can be made to interoperate with new platforms, or even re-implemented on them, through the MDA development process, MDA-based applications and specifications are truly "future-proof". Bottom line: Using MDA, the industry gets a standard, every company uses it, none are forced to switch platforms in order to benefit, and the standard lasts as long as the industry process that it serves. Everybody wins!
Q: How does MDA compare or compete with Microsoft's .NET
or Web Services?
Q:
Who is responsible for the MDA?
Q: What are the top three benefits of the MDA to
enterprises trying to cope with today's computing
environment?
Q:
How is the MDA being delivered? In what kind of tools? In terms of products, MDA is being implemented by tools - or tool chains, which may come from a single vendor or a number of vendors - that integrate modeling and development into a single environment that carries an application from the PIM, through the PSM, and then via code generation to a set of language and configuration files implementing interfaces, bridges to services and facilities, and possibly even business functionality. Several vendors already provide tools that support integration at about this level, including substantial code generation. OMG has collected links to MDA products and vendors that we know about here. Today's tools typically automate 50% to 70% of the PIM-to-PSM transformation; because the industry got started on the second step much earlier, automation of the PSM-to-code transformation is typically 100% or nearly so. Last updated on 11/16/2007
|
|
Copyright © 1997-2008 Object Management Group, Inc. All Rights
Reserved. For questions about the WEBSITE , please contact
webmaster@omg.org For
TECHNICAL questions, please contact
webtech@omg.org This site is best
viewed with Netscape Navigator, Mozilla Firefox or Internet Explorer versions
6.0 or
later or any browser capable of viewing JavaScript and CSS 2.0. The site is using DHTML JavaScript Menu By Milonic.com. Last Updated Tuesday, January 01, 2008 |