Databases Reference
In-Depth Information
Advantages of such environments are the result of their domain specifi city. Domain-
specifi c modeling methodologies enable the concise representation of essential design
views, the formal expression and automated enforcement of integrity constraints and model
composition that is synergistic with the design process in the domain.
While these benefi ts of domain-specifi c development environments are well understood
and documented, their high cost represents a signifi cant roadblock against their wider appli-
cation. Consequently, domain specifi c toolsets are available commercially only for domains
with large markets, where the signifi cant initial investment is offset by high volume. For the
rest of the application areas, one solution is to create confi gurable tools that readily provide
the generic functionality of graphical development environments (creating and manag-
ing design projects, editing and combining diagrams, translating information into output
formats), and let them easily be tailored to use the concepts of a given domain. Such tools
can approach, albeit never fully reach, the features of an environment directly developed
for a given domain. Their key advantage is that effort needed for customizing them for the
domain is orders of magnitude less than developing a custom-made toolset.
Furthermore, these tools ease the development and evaluation of new or modifi ed
modeling methodologies. As we will show, the development of a fully functional modeling
environment using a confi gurable toolset can take from hours to days, depending on the
complexity of the given modeling methodology. On the other hand, the development of a
custom environment from scratch is measured in man-years.
The Generic Modeling Environment (GME) (Ledeczi et al., 2001), developed at the
Institute for Software Integrated Systems at Vanderbilt University (freely available at http://
www.isis.vanderbilt.edu/projects/gme), is one of the more prominent confi gurable model-
ing environments. Its confi guration is accomplished through metamodels specifying the
modeling paradigm (modeling language, modeling methodology) of the application domain.
The modeling paradigm contains all the syntactic, semantic, and presentation information
regarding the domain — which concepts will be used to construct models, what relationships
may exist among those concepts, how the concepts may be organized and viewed by the
modeler, and rules governing the construction of models. The modeling paradigm defi nes
the family of models that can be created using the resultant modeling environment.
Metamodeling is the primary method for specializing a GME instance. The metamodel-
ing language is based on the UML class diagram notation. Metamodels also contain OCL
constraints specifying the static semantics of the modeling language. These constraints are
automatically enforced in the target GME instance. Additional methods for customizing GME
include decorators, interpreters, and add-ons. Decorators are simple software components
that can be attached to a GME instance. They are used for domain-specifi c visualization of
the models. Interpreters and add-ons are external software components that interface with
GME and provide additional domain-specifi c functionality including, but not limited to,
code generation.
The rest of this chapter is organized as follows. In the next several sections the different
methods for providing native support for different modeling methodologies are described
in detail. Then examples are presented that illustrate these techniques. Finally, we compare
two other well-known confi gurable modeling environments to our approach and present
our conclusions.
Search WWH ::




Custom Search