Model Driven Architecture will produce quicker, better software

More than 50 years into the Computer Era, we are now living in the Age of Software. More and more essential and useful functions depend entirely on the proper working of software, and organisations are increasingly constrained by their ability to create and modify business critical (or mission critical) applications.

But the industry needs a quicker way to produce efficient, secure reliable software. Inevitably, the key must lie in automating the development process, because no matter how intelligent and experienced, a human being can only do one thing at a time.

A new technique approach to development, called Model Driven Architecture (MDA) has emerged, in which high level (analysis) models are transformed into more detailed lower-level (design) models for platforms such as J2EE and .NET

MDA frees application experts from the drudgery of writing the same routine code segments over and over again and allows them to use their creativity and skills to produce innovative, efficient answers to the challenges of development.

Some of the larger corporations, such as financial institutions, have started looking seriously at adopting MDA technology.

They are starting to recognise the benefits not only in terms of saving labour: cost cutting is a major attraction as is the functionality that MDA provides. Using MDA, organisations can change their application development methods to keep up with the demands of business. They can deliver applications in less time, saving money while meeting deadlines.

There is powerful synergy between MDA and platforms like J2EE and .NET. Starting from models of business requirements, it is possible to generate source code for typical commercial applications through a series of successive translations

The best thing about MDA is that it eliminates 'developer overload'. Why is this? Well, the problem was that the developer had to juggle too much information: user requirements, the details of the relevant business processes, technical architecture and programming techniques. MDA introduces a 'separation of concerns' which assigns these responsibilities to those best able to handle them.

Once MDA is up and running, all sorts of constraints disappear. Modifications to reflect new business conditions can be made in a fraction of the time currently required to process change requests using traditional tools. Instead, domain experts can update the models as the need arises to support new or changed business processes.

Companies that use MDA are assured that their systems do not need to be rewritten every time new technologies are introduced. Models represented in UML do not become redundant when technological changes are made because application code based on the business model can be regenerated, targeting the technology of choice.

The positive impact from an IT staffing perspective is a reduced need for software developers with platform-specific knowledge and expertise, which is hard to acquire and can easily become obsolete. Instead, software developers can concentrate on modelling and developing the business application rather than the implementation details of the chosen technology, thus increasing productivity and software recoverability.

Compuware offers OptimalJ, an MDA-based enterprise application development environment designed for organizations that are adopting J2EE standards and MDA, as standardised by OMG, in order to accelerate the development, integration and maintenance of applications for competitive advantage.

OptimalJ uses patterns to automatically translate business models into working applications by implementing OMGs MDA in its entirety. OptimalJ enables organisations to rapidly respond to change, increase development efficiency and dramatically decrease maintenance costs.

Issued by Citigate PR (011) 804-4900
Contact Peter Mashigo, Citigate PR
Published November 2005