developer.com
Search EarthWeb
CodeGuru | Gamelan | Jars | Wireless | Discussions
Navigate developer.com
Architecture & Design  
Database  
Java
Languages & Tools
Microsoft & .NET
Open Source  
Project Management  
Security  
Techniques  
Voice  
Web Services  
Wireless/Mobile
XML  
New
 
Technology Jobs  

   Developer.com Webcasts:
  The Impact of Coding Standards and Code Reviews

  Project Management for the Developer

  Defining Your Own Software Development Methodology

  more Webcasts...




Return in early January to see which technologies and products won.




Developer Jobs

Be a Commerce Partner














 


Developer News -
Shifts for Enterprise Linux, Green Networks in '09    December 26, 2008
Gifts for All in Linux 2.6.28    December 24, 2008
Merb Merges With Rails    December 24, 2008
Sun's Unwired Motherboard Plans    December 24, 2008
Free Tech Newsletter -

Addressing Problems with Model Driven Architecture
By Michel Brassard and Mario Cardinal

Go to page: Prev  1  2  3  Next  

  • UML model implementation: While there are several benefits to object-oriented programming and UML, these advances do not by themselves eliminate the time-consuming and error-prone tasks of manually mapping a UML model to platform-specific code. Developers may still spend considerable time during the coding phase performing numerous nearly repetitive manual operations. Architects cannot enforce the architecture in platform-specific code unless code reviews are done. Even code reviews are time-consuming and usually can only cover a very small portion of the code.
  • What is the Model Driven Architecture (MDA)?

    The Model Driven Architecture (MDA) initiative from the Object Management Group seeks to create a specification to protect the UML investments made during business domain modeling and to provide adequate agility to encompass the challenges facing implementation of a UML domain model over a software infrastructure. As shown in Figure 1, this goal is accomplished by differentiating between the platform independent model (PIM) and platform-specific models (PSMs).

    Two-phase commit protocol

    Figure 1: OMG's Model Driven Architecture

    MDA defines an approach whereby you can separate the system functionality specification from its implementation on any specific technology platform. This way, you can have an architecture that will be language, vendor and middleware neutral. For creating MDA-based applications, the first step will be to create a Platform Independent Model (PIM), which you should express in UML.

    The PIM represents the logical view in which the composition and behavior of all components (but not their implementation) are fully specified. The PIM serves a function that is similar to that of a refined analysis model. Since the PIM, by definition, does not contain technology details, it is envisaged that the PIM will be mapped to one or more platform-specific models (PSMs). The PSM serves the function of a refined physical model to target platforms such as Microsoft .NET (COM+), Enterprise JavaBeans (EJB) or the CORBA Component Model (CCM). The PSM represents the source code or its UML representation. There will be as many PSMs as there are different implementations of a given PIM.

    What are the benefits of MDA?

    The MDA approach offers a number of benefits:
    • Enhanced portability and interoperability between platforms;
    • Business models and technologies that evolve at their own pace;
    • Improved productivity for architects and programmers;
    • Lower cost of application development and management;
    • Reduced application time to market by allowing independent reuse of business domain code from platform specific code;
    • Lowered risk associated with technology and business requirements evolution.

    Who should adopt MDA?

    In the long term, because of MDA's benefits, every large enterprise will adopt MDA principles. However, early adopters will be organizations that have strong experience with UML modeling and large enterprises that are starting new projects. You do not start implementing MDA in the middle or at the end of a project. They will implement MDA at early stage for one of two reasons: either because they need to develop applications requiring portability and interoperability between different middleware platforms or because they need business domain code that is loosely coupled with platform specific code in order to gain the flexibility and agility to evolve business requirements independently from technology.

    Go to page: Prev  1  2  3  Next  


    Tools:
    Add www.developer.com to your favorites
    Add www.developer.com to your browser search box
    IE 7 | Firefox 2.0 | Firefox 1.5.x
    Receive news via our XML/RSS feed


    Architecture & Design Archives






    internet.comearthweb.comDevx.commediabistro.comGraphics.com

    Search:

    Jupitermedia Corporation has two divisions: Jupiterimages and JupiterOnlineMedia

    Jupitermedia Corporate Info

    Legal Notices, Licensing, Reprints, Permissions, Privacy Policy.
    Advertise | Newsletters | Tech Jobs | Shopping | E-mail Offers