MDD in comparison to similar looking software engineering developments

6
How does Model Driven Development compare to other “advanced software engineering techniques” like CBSE (Component-Based Software Engineering), AOSD (Aspect-Oriented Software Developement) and CAC (Context-Aware Computing)? Are there specific differences, is there an overlap etc?
asked
2 answers
8

Model Driven Development (MDD) or related terms like Model Driven Architecture (MDA) or Model Driven Engineering (MDE) describe a software engineering process driven by models. This means that models are used to specify the implementation of a software system. These models are interpreted by runtime engines to make them executable or they are transformed into source code by a code generator. See this MDE reference guide for a more detailed explanation of MDE and related terms.

The Mendix platform enables MDD / MDE by providing you with a modeling environment and a runtime environment for interpreting the models. See this technology overview for more information.

Component-Based Software Engineering (CBSE) aims to implement software systems by separating functionality in autonomous components. See this wiki entry for more information.

Aspect-Oriented Software Development (AOSD) or Aspect-Oriented Programming (AOP) is a programming paradigm that increases modularity by allowing the separation of cross-cutting concerns. Code can be written once and injected on multiple points of an application. See this wiki entry for more information.

Context-Aware Computing (CAC) refers to the idea that computers can both sense, and react based on their environment. See this wiki entry for more information.

answered
4

I don't think there's a real clearcut answer to your question. You named three different techniques that software developers use to build software. Comparing them to MDD is kinda weird, but you can check out the the wikipedia pages for more info.

Note that those three techniques all have to do with actual Object Oriented programming (ie: typing java code) whereas Mendix aims to build everything through models.

answered