MDSD Glossary

The MDSD glossary explains the most important basic terms regarding model-driven development and serves as orientation guide during the first steps.

MDSD glossary

Abstract syntax
Technology independent part of a domain-specific language, represented by meta models.
AC-MDSD
Architecture-Centric MDSD: a specialisation of MDSD, often used for the domain „software architecture“. Covers a domain beginning from the solution space by utilising reference implementations.
AFAIK
as far as I know
Agile Software Development
A principle for managing the development process with agile technologies.
AOP
Aspect-Oriented Software Programming
AOSD
Aspect-Oriented Software Development
API
Application Programming Interface
Architecture-Centric MDSD
See AC-MDSD.
Aspect-Oriented Software Development
Development paradigm increasing maintainability of complex system by separated treatment of cross-cutting concerns with aspects.
BNF
Backus–Naur Form
Business use case
Function for integration of object-specific business logic into an overall system.
Cartridge
Modularised generator component which executes a specific task and can be flexibly combined with other components.
Cascaded MDSD
Enhancement of AC-MDSD for separation of different generators into modular cartridges. In this context a cascading defines a sequential combination of several cartridges.
CCC
Cross-Cutting Concern
Cheatsheet
Integrated tutorial with interaction elements for an extended user support.
CMOF
Complete MOF
Concrete syntax
Textual, structural, graphical or hybrid notations of a domain-specific language. Serves for describing applications in the form of models by the user.
Constraint
Rule-like definition in context of a meta class. Serves for validation of models which are based on the corresponding meta model.
CORBA
Common Object Request Broker Architecture
Cross-Cutting Concern
A function representing a separatable aspect whose implementation affects multiple program parts. A typical example is the logging of errors.
CSS
Cascading Style Sheets
CVS
Concurrent Version System
Doctrine
An ORM layer for PHP, represents the interface between objects in an application and the relational data storage behind it.
Domain
A limited area of knowledge or interest, represents a problem space from the real world in most cases.
Domain analysis
Process within the meta modeling, cares for finding commonalities and differences between different members of a software system family.
Domain architecture
From the area of product line engineering, marks the sum of a domain-specific language and the platform on which the applications realised with it are executed.
Domain Specific Language
A language offering precise means for expression for a domain. Contains an abstract syntax as well as concrete notations and transformations for further processing of created models.
DSL
Domain Specific Language
Eclipse Modeling Framework
Flexible and powerful framework for Ecore-based meta modeling.
Ecore
Meta meta model implemented in the Eclipse Modeling Framework, compatible to the Meta Object Facility.
EJB
Enterprise Java Beans
EMF
Eclipse Modeling Framework
EMOF
Essential MOF
Framework
Collection of libraries and functions providing a well-defined frame for implementations of a programming language.
Function point analysis
Procedure for measuring the functional complexity of a software system.
Generative software architecture
Specialisation of a domain architecture for encapsulating technical implementation details in the context of architecture-centric MDSD.
GMF
Graphical Modeling Framework
GMT
Generative Model Transformer
Graphical Editing Framework
Eclipse-based framework for the realisation of concrete notations in the form of graphical editors.
Graphical Modeling Framework
Generative bridge between the Eclipse Modeling Framework and the Graphical Editing Framework. Creates graphical editors based on Ecore-based meta models.
GUI
Graphical User Interface
Hook
Special form of a Zikula application, enriches other components by additional functionality.
HTH
hope that helps
HTML
Hypertext Markup Language
IDE
Integrated Development Environment
IIRC
if i remember correctly
Interceptor
Special method in PHP which is called automatically on certain events.
JET
Java Emitter Templates
JSF
Java Server Faces
JSP
Java Server Pages
M2M
Model-to-Model
M2T
Model-to-Text
MDA
Model-Driven Architecture
MDD
Model-Driven Development
MDSD
Model-Driven Software Development
Meta class
Instance of a meta model element in the form of a generated class.
Meta meta model
Defines possible elements and relations for meta models.
Meta model
Abstract syntax of a domain-specific language. Is created based on a meta meta model in the meta modeling process.
Meta modeling
Abstract definition of the core concepts of a domain in the form of meta models. Based on findouts in the domain analysis.
Meta Object Facility
Standard for meta meta models, adopted by the Object Management Group.
Model
A simplifying presentation of structures, functionalities and progress forms. Represents an application in the model-driven software development which is described in an abstract form.
Model-Based
In model-based systems models are the „base“ for an application. They serve for documentation and basis for generating a program skeleton.
Model-Driven
Model-driven systems use domain-specific languages in order to be able to create software completely from models.
Model-Driven Architecture
Standard for the realisation of software systems with a separation of technology independent and dependent parts, defined by the Object Management Group.
Model-Driven Software Development
Pragmatic development paradigm for generation of software from models. See also model-driven.
Module
The module [moˈduːle] is a building block, in general a part of a bigger system. In informatics it stands for a unit which is assembled by multiple elements and can be exchanged at any time.
MOF
Meta Object Facility
MVC
Model View Controller
MWE
Model Workflow Engine
oAW
openArchitectureWare
Object Constraint Language
Standard language for the definition of constraints, adapted by the Object Management Group.
Object Management Group
Consortium developing different standards for improving interoperability, beside others MDA, UML, Object Constraint Language and Query / View / Transition.
OCL
Object Constraint Language
OMG
Object Management Group
ORM
Object-Relational Mapping
PDE
Plugin Development Environment
PDF
Portable Document Format
PHP
PHP Hypertext Processor
PIM
Platform-Independent Model
PLE
Product Line Engineering
Pointcuts
Program code parts where aspects can embed the handling of cross-cutting concerns.
Product line
A software system family in the context of product line engineering.
Product Line Engineering
A principle comparing software development with industrial production processes and aiming on according automations.
PSM
Product-Specific Model
Query / View / Transition
Standardised language adapted by the Object Meta Group for model-to-model transformations
QVT
Query / View / Transition
RAP
Rich Ajax Platform
RCP
Rich Client Platform
Reference implementation
Existing application of a software system family. Used in AC-MDSD for deriving the core concepts of a domain from the solution space.
Rich Ajax Platform
Ajax port for SWT elements and other parts of the Rich Client Platform.
Rich Client Platform
Generic application framework based on Eclipse. Allows the implementation of portable Java applications.
SDK
Software Development Kit
Software Engineering
Engineer discipline for systematic improvement of the quality of software systems.
Software system family
Collection of several applications whose schematic code parts are based on the same architectural principles.
SPL
Standard PHP Library
Sub domain
Functional or technical partition of a domain which deals with the representation of specific aspects of a software system.
SVN
Subversion
SWT
Standard Widget Toolkit
Symfony
Framework used by Zikula, de-facto standard in the PHP ecosystem.
System use case
See Use case.
Transformation
Modification of models leading to other models again or to source code.
Twig
Template engine used in Zikula and Symfony for a strict separation of content and presentation.
UML
Unified Modeling Language
Unified Modeling Language
Standardised language adapted by the Object Management Group for describing software systems with models. The UML works model-based.
Use case
An interaction offered by a software system.
UUID
Universally Unique Identifier
XMI
XML Metadata Interchange
XML
Extensible Markup Language
XML Metadata Interchange
XML-based file format for interoperable storage of models.
XP
Extreme Programming
XSD
XML Schema Definition