Skip to main content

Command Palette

Search for a command to run...

Modern Driven Engineering

Updated
2 min read
Modern Driven Engineering
P

As a student, I combine the worlds of learning and blogging. With a thirst for knowledge and a will for writing, I share my notes through engaging blogs. These are the long boring lectures of my life I have survived through that I have summarized to you with a pinch of salt.

Model-driven engineering is an approach to software development where models, rather than programs, are the principal output of the development process. The programs that execute on hardware and software platforms are often generated automatically from these models.

Module-Driven Architecture-

Model-driven architecture is a focused approach to software design and implementation.

There are three types of model-driven architecture models:

  1. Computational Independent Model or Domain Model.

  2. Platform Independent Model.

  3. Platform-Specific Model.

Now let us understand each of these model-driven architectures briefly:

  1. Computational Independent Model:- This models the important domain abstractions used in the system. The computational independent model is also called the domain model. It is the highest level of abstraction in the approach and allows for modelling system requirements. CIM describes system conceptuality and can be transferred into a platform-independent model. The purpose of CIM is to capture the requirements and essential functionality of the system in a way that is understandable to stakeholders who may not have technical expertise.

  2. Platform Independent Models:- PIM is an intermediate level of abstraction, which comes after CIM. PIM is a design model that describes the internal structure of a model without regard to the hosting platform. The PIM is independent of the specific technological platform used to implement it. PIM is usually described using UML models that show the static system structure and how it responds to external and internal events.

  3. Platform-Specific Model:- PSM is the lowest level of abstraction in MDA and is closest to the implementation level. In model-driven engineering, a platform-specific model adds details to the platform-independent model about the use of a specific platform or platform. The platform-specific model describes the functionalities defined in the PIM for specific implementation technology.

Executable UML:-

Executable UML allows us to add information to graphical models about the ways in which operations defined in a model are implemented. A subset of UML 2 is called executable UML or XUML.

To create an executable subset of UML, the number of model types has therefore been dramatically reduced to 3 key model types:

  1. Domain models:- identify the principal concerns in the system. These are defined using UML class diagrams that include objects, attributes, and associations.

  2. Class models:- in which classes are defined along with their attributes and operations.

  3. State models:- in which a state diagram is associated with each class and is used to describe the lifecycle of the class.

This is all about model-driven engineering in system modelling.

More from this blog

C

Coding Minutes Blogs | Tech Articles, Roadmaps, Interview Tips

80 posts

The best resource for Data Structures in C and C++ | Career Roadmaps | Interview Tips and Tricks | Guidance for Computer Science students.