Framework-specific modeling language
- Framework-specific modeling language
A framework-specific modeling language[M. 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 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)
* 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
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 (i.e., editors and views) and Part Interactions (e.g., listens to parts, requires adapter, provides selection).The [http://gp.uwaterloo.ca/gpmambo/index.php?option=com_content&task=view&id=58&Itemid=88 prototype] implementation supports automated round-trip engineering of Eclipse plug-ins that implement workbench parts and part interactions.
References
ee also
*General-purpose modeling GPM
*Model-driven engineering MDE
*Domain-specific language DSL
*Model-driven architecture MDA
*Meta-Object Facility MOF
Wikimedia Foundation.
2010.
Look at other dictionaries:
Modeling language — A modeling language is any artificial language that can be used to express information or knowledge or systems in a structure that is defined by a consistent set of rules. The rules are used for interpretation of the meaning of components in the… … Wikipedia
Domain-specific modeling — (DSM) is a software engineering methodology for designing and developing systems, such as computer software. It involves systematic use of a domain specific language (DSL) to represent the various facets of a system. DSM languages tend to support … Wikipedia
Glossary of Unified Modeling Language terms — This glossary of Unified Modeling Language terms covers all versions of UML. Individual entries will point out any distinctions that exist between versions.A* Abstract An indicator applied to a classifier (e.g., actor, class, use case) or to some … Wikipedia
Modeling perspectives — is a set of different ways to represent pre selected aspects of a system. Each perspective has a different focus, conceptualization, dedication and visualization of what the model is representing. In information systems, the traditional way to… … Wikipedia
Language-oriented programming — is a style of computer programming, via metaprogramming in which, rather than solving problems in general purpose programming languages, the programmer creates one or more domain specific programming languages for the problem first, and solves… … Wikipedia
Modeling and Simulation: Conceptual Modeling Overview — Contents 1 Introduction 2 Techniques 2.1 Data Flow Modeling 2.2 Entity Relationship Modeling 2.3 … Wikipedia
Language education — Language Teaching redirects here. For the journal, see Language Teaching (journal). Linguistics … Wikipedia
Domain-specific language — Programming paradigms Agent oriented Automata based Component based Flow based Pipelined Concatenative Concurrent computing … Wikipedia
Domain-specific multimodeling — Domain specific multimodeling[1] is a software development paradigm where each view is made explicit as a separate domain specific language (DSL). Successful development of a modern enterprise system requires the convergence of multiple views.… … Wikipedia
Generic Eclipse Modeling System — Infobox Software name = Generic Eclipse Modeling System developer = Eclipse Foundation latest release version = latest release date = operating system = Cross platform platform = Java platform programming language = Java genre = license = Eclipse … Wikipedia