Archive for June 8, 2008

MDA- Model Driven Architecture for Software Devlopment

Posted in MDA, OMG with tags , , , on June 8, 2008 by javaforweb

In this post I will discuss about Model Driven Architecture and its potential in building big projects at rapid pace with high proficiency.

Experienced application developers often invest more time in building models than they do in actually writing code. Well-constructed models make it easier to deliver large, complex enterprise systems on time and within budget.
            MDA-OMG

MDA is a framework advanced by the Object Management Group (OMG) allows developers to build systems according to their core business logic and data—independently of any particular hardware, operating system, or middleware.

 This framework is based on UML and other industry standards for visualizing, storing, and exchanging software designs and models.This Framework emphasizes on importance of models in the software development process.

 In MDA the software development is done by evolving models of the system to be developed.

               MDA software development life cycle

             MDA Devlopment Cycle

MDA identifies same process that is present in traditional software development for developing a System.

 The following three models are at the core of the MDA.

 

 

 

 

 1) Platform Independent Model

2) Platform Specific Model

3) Code

Platform Independent Model

The first model that MDA defines is a model with a high level of abstraction that is independent of any implementation technology. This is called a Platform Independent Model (PIM).

Platform Specific Model

PIM is transformed into one or more Platform Specific Models (PSMs). A PSM is tailored to specify your system in terms of the implementation constructs that are available in one specific implementation technology. For example, an EJB PSM is a model of the system in terms of EJB structures. It typically contains EJB-specific terms like “home interface,” “entity bean,” “session bean,” and so on. A relational database PSM includes terms like “table,” “column,” “foreign key,” and so on.

Code

This is the final step in the development is the transformation of each PSM to code. Because a PSM fits its technology rather closely, this transformation is relatively straightforward.

At every step the level of Abstraction increases. PIM, PSM, and code are shown as artifacts of different steps in the development life cycle.

 

                       The three major steps in the MDA development process

             MDA Devloment Cycle

 Rational product support for MDAs

IBM Rational software has several products that support MDA and Model Driven Development (MDD) in varying capacities. These tools fall into the following basic categories:

 

 

 

 

 

 

 

 

General-purpose

 

Domain-specific

Supporting

Rational Software Architect supports both the principles of MDA as well as the standards upon which MDA is based. It adds full support for MDD, including UML Version 2.0 modeling, code generation, patterns and model transformations, and a new approach to implementing the MDA style of development.

In general purpose category for Java™-based MDA applications IBM provide

MDA toolkit for Rational XDE Java which is an Eclipse plug-in that complements existing patterns and code template features and adds some additional capabilities.

In the domain-specific category IBM Rational System Developer provides a complete UML-based design and development environment optimized for engineering and other types of technical applications developed in C or C++.

In the supporting category, IBM WebSphere Business Modeler is used to model and simulate business processes. As new business processes are developed, models can be exported from the tool and imported into Rational Software Architect or Rational Rose XDE Developer to drive an MDA development process.

MDA Faq’s Visit

http://www.omg.org/mda/faq_mda.htm

Java Tutorials by Ashutosh Sharma pls visit:

http://sharma.ashutosh84.googlepages.com