Framework-specific modeling language
Encyclopedia
A framework-specific modeling language

(FSML) is a kind of domain-specific modeling language which is designed for an object-oriented application framework
Application framework
In computer programming, an application framework consists of a software framework used by software developers to implement the standard structure of an application for a specific development environment ....

.

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 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
    Reverse engineering is the process of discovering the technological principles of a device, object, or system through analysis of its structure, function, and operation...

    )
  • 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
    Round-trip engineering is a functionality of software development tools that synchronizes two or more related software artifacts, such as, source code, models, configuration files, and other documents...


Examples

Eclipse Workbench Part Interaction FSML
An example FSML for modeling Eclipse Parts (i.e., editors and views) and Part Interactions (e.g., listens to parts, requires adapter, provides selection).
The prototype implementation supports automated round-trip engineering of Eclipse plug-ins that implement workbench parts and part interactions.

See also

  • General-purpose modeling
    General-purpose modeling
    General-purpose modeling is the systematic use of a general-purpose modeling language to represent the various facets of an object or a system...

     GPM
  • Model-driven engineering
    Model-driven engineering
    Model-driven engineering is a software development methodology which focuses on creating and exploiting domain models , rather than on the computing concepts...

     MDE
  • Domain-specific language DSL
  • Model-driven architecture
    Model-driven architecture
    Model-driven architecture is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model-driven architecture is a kind of domain engineering, and supports model-driven engineering of...

     MDA
  • Meta-Object Facility
    Meta-Object Facility
    The Meta-Object Facility is an Object Management Group standard for model-driven engineering. The official reference page may be found at OMG's website.- Overview :...

    MOF
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK