A Domain-Driven Development Approach for Enterprise Applications, using MDA, SOA and Web Services

Since 2005, the Ministry of Defence, the Brazilian Navy, the Planning Ministry, and the Database Laboratory of the Federal University of Rio de Janeiro have joined forces to use a new development approach to improve a set of management practices applied to software projects. After shifting from traditional development paradigms to Model Driven Development – MDA, we have obtained important results regarding productivity and project cost.

To illustrate, by using MDA tools [17], we have cut our development time by approximately 20%. Basically, we have gained more efficiency in our development process without inflicting on requirement quality. After these three years, we have seen that the adoption of new technologies, when carefully applied, might prove very useful as the results came up satisfactorily. Along this period, after delivering many software systems, we decided to standardize the way in which domain modelling was done.

We felt that by doing it we could use these standardized models to develop new software projects, not from scratch but, starting a few steps ahead. Given the foregoing, it is necessary to explain the problematic scenario we were facing with in public organization projects. Essentially, it was common practice in public organizations to develop similar software more than once, and wasting taxpayer’s money, when a simple generalization of concepts and a cooperative policy could speed up development by using previously conceived domain analysis.

To solve it we began by stating three topics that needed to be immediately addressed: 1. How to standardize domain and services analysis in order to allow different organizations to use the same concepts? 2. How to implement a distributed environment in which different organizations could share their domain analysis? 3. How to automate the development process by using MDA and SOA theories? The following sections try to answer each question by detailing what we have done to create the development environment.

However, the overall picture can be perceived as: 1. By creating a generic Service-Oriented Access Bus it becomes easy to integrate different business services. 2. By using Web Services technology it is possible to create a cooperative environment in which different organizations can share architectural standards and conceptual models. 3. By automating code generation different organizations can produce the same software product using the same set of models.

admin

Recent Posts

Innovative React Js and Node Js Project Titles

Innovative React Js and Node Js Project Titles As web development continues to evolve, technologies like React.js and Node.js have…

1 year ago

Ultimate MERN Stack Project with Source Code

Ultimate MERN Stack Project with Source Code The MERN stack (MongoDB, Express.js, React.js, and Node.js) continues to be one of…

1 year ago

Best React JS Projects for 2024 and 2025

Best React JS Projects for 2024 and 2025 Introduction: React JS continues to be one of the most popular frameworks…

1 year ago

Best React Native Projects for Final-Year Students

Best React Native Projects for Final-Year Students React Native is one of the most popular frameworks for building mobile applications,…

1 year ago

Top React Js Projects for Final-Year Students

Top React Js Projects for Final-Year Students React.js, developed by Facebook, has become one of the most popular libraries for…

1 year ago