Framework-specific modeling language: Difference between revisions

Content deleted Content added
No edit summary
 
initial content
Line 1:
=Definition=
A Framework-Specific Modeling Language (FSML) is a kind of [[Domain-specific modeling language | Domain-Specific Modeling Language]] which is designed for an [[Application_framework | Object-Oriented Appliaction Framework]].
FSMLs define ''framework-provided abstractions'' as FSML ''concepts'' and decompose the abstractions into ''features''.
The features represent implementation steps or choices.
A FSML concept can be configured by selecting features and providing values for features.
Such a concept configuration represents how the concept should be implemented in the code.
In other words, concept configuration describes how the framework should be ''completed'' in order to create the implementation of the concept.
 
=Applications=
FSMLs are used in [[Model-driven_development | Model-Driven Development]] for creating models or specifications of software to be built.
FSMLs enable
* the creation of the models from the framework completion code (i.e., automated [[Reverse_engineering | reverse engineering]])
* the creation of the framework completion code from the models (i.e., automated forward engineering)
* code verification through constraint checking on the model
* automated [[Round-trip_engineering | Round-Trip Engineering]]