HOME

TheInfoList



OR:

A framework-specific modeling languageM. Antkiewicz, K. Czarnecki. ''Framework-Specific Modeling Languages with Round-Trip Engineering''. In O. Nierstrasz, J. Whittle, D. Harel, G. Reggio, editors, MoDELS 2006 - Model Driven Engineering Languages and Systems, 9th International Conference, Genoa, Italy, October 2006. (FSML) is a kind of domain-specific modeling language which is designed for an object-oriented application 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 engineering (MDE) is a software development methodology that focuses on creating and exploiting domain models, which are conceptual models of all the topics related to a specific problem. Hence, it highlights and aims at abstract re ...
for creating models or specifications of software to be built. FSMLs enable * the creation of the models from the framework completion code (that is, automated
reverse engineering Reverse engineering (also known as backwards engineering or back engineering) is a process or method through which one attempts to understand through deductive reasoning how a previously made device, process, system, or piece of software accompli ...
) * the creation of the framework completion code from the models (that is, automated forward engineering) * code verification through constraint checking on the model * automated
round-trip engineering Round-trip engineering (RTE) is a functionality of software development tools that synchronizes two or more related software artifacts, such as, source code, models, configuration files, and even documentation. The need for round-trip engineering a ...


Examples

''Eclipse Workbench Part Interaction FSML'' M. Antkiewicz, K. Czarnecki. ''Eclipse Workbench Part Interaction FSML''. Technical Report 2006-09, Electrical & Computer Engineering, University of Waterloo, 2006. M. Antkiewicz. ''Round-Trip Engineering of Eclipse Plug-Ins Using Eclipse Workbench Part Interaction FSML''. In OOPSLA'06 Companion, OOPSLA, Portland, Oregon, USA, Oct 22-26, 2006. An example FSML for modeling Eclipse Parts (that is, editors and views) and Part Interactions (for example listens to parts, requires adapter, provides selection). Th
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 (GPM) is the systematic use of a general-purpose modeling language to represent the various facets of an object or a system. Examples of GPM languages are: * The Unified Modeling Language (UML), an industry standard for m ...
(GPM) *
Model-driven engineering Model-driven engineering (MDE) is a software development methodology that focuses on creating and exploiting domain models, which are conceptual models of all the topics related to a specific problem. Hence, it highlights and aims at abstract re ...
(MDE) *
Domain-specific language A domain-specific language (DSL) is a computer language specialized to a particular application domain. This is in contrast to a general-purpose language (GPL), which is broadly applicable across domains. There are a wide variety of DSLs, ranging f ...
(DSL) *
Model-driven architecture Model Driven Architecture (MDA) 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 doma ...
(MDA) *
Meta-Object Facility The Meta-Object Facility (MOF) is an Object Management Group (OMG) standard for model-driven engineering. Its purpose is to provide a type system for entities in the CORBA architecture and a set of interfaces through which those types can be creat ...
(MOF)


References

{{Reflist Specification languages Modeling languages