
constraints rules. KOGGE (Ebert et al., 1997) sup-
ports the generation of visual languages such as Bon.
The meta-model used to describe the abstract syn-
tax is EER/GRAL. GRAL is used to provide integrity
conditions, which cannot be expressed by EER de-
scriptions.
Such tools do not provide adequate support for
code generation. In particular, they have ad-hoc lan-
guages able to generate simple documentation but are
not suitable to describe complicated dependencies.
On the contrary GENIE allows us to easily perform
translation by adding suitable semantic rules in order
to realize appropriate code and report generation.
An approach similar to ours has been proposed in
ATOM
3
(de Lara and Vangheluwe, 2002). It gener-
ates modeling tools by combining the use of a meta-
modeling technique and graph grammars. In partic-
ular, the ER formalism extended with constraints is
available at the meta-meta-level, where constraints
can be specified as OCL, or Python expressions.
Models are internally represented using Abstract Syn-
tax Graphs and model manipulations such as simu-
lation, optimization, transformation and code gener-
ation are expressed by means of graph grammars by
advantages of graph transformation technique.
The “formal-based tools” are characterized by the
use of a formal method for the specification of the
modeling languages. In this context, special attention
deserves systems that employ grammar formalisms
for specifying the syntax and the semantics of a vi-
sual language (Bardohl, 2002)(Chok and Marriott,
1998)(Minas, 2002)(Rubin et al., 1990)(Zhang et al.,
2001)(Uskudarli and Dinesh, 1995). This approach
allows us to exploit the well-established theoretical
background and techniques developed for string lan-
guages in the setting of visual languages. The main
differences between the existing grammar-based sys-
tems lie in the characteristics of the underlying gram-
mar formalism, its expressive power and the parsing
efficiency.
5 FINAL REMARKS
In this paper we presented a user-centered methodol-
ogy for the development of customized visual mod-
eling environments, and a tool to support it. The use
of UML meta-modeling techniques and formal meth-
ods characterizes the proposed approach. This allows
us to inherit the appealing features of both the ap-
proaches. As a matter of fact, an UML class diagram
is used during the requirements analysis in order to
provide a high-level specification of the modeling lan-
guage, which allows us to describe the entities of the
problem domain, so that they are more understand-
able by language users. Moreover, a visual editor
is automatically generated from the specified meta-
model. Note that the use of UML meta-model for
the specification of visual languages is gaining inter-
est in recent years. As a matter of fact, a meta-model
approach is underlying most generators of diagram-
matic editors. As an example, Metabuilder (Ferguson
et al., 2000) automatically generates an editor for a
new visual language starting from the class diagram
modeling the language. UML meta-modeling has also
been exploited to characterize families of diagram-
matic languages through an abstract syntax given as
a class diagram and a set of constraints in a logical
language.
The specified UML meta-models are translated into
formal specifications (in XPG format) that also in-
clude constraints on the modeling languages. Thus,
due to the use of this grammar formalism the sys-
tem exhibits several advantages. In particular, it al-
lows us to extend the ’compiler-compiler’ approach
widely adopted for the generation of programming
workbenches to visual oriented workbenches. More-
over, it allows us to easily perform several tasks on the
defined language such as customization and modifica-
tions as well as the maintenance and the debug. Suit-
able semantic rules can be defined to realize appro-
priate code and report generation, as well as to real-
ize static verification of the languages. The language
specification can be notably simplified by the adop-
tion of an incremental approach supported by context-
free style grammars. Furthermore, the approach sup-
ports the software reuse through a central repository.
Another interesting characteristic of the visual en-
vironments generated by GENIE is the use of GXL
format as data representation of the sentences. This
feature makes easier the interoperability of the envi-
ronments with other tools. As a matter of fact, some
groups from industry and research committed to pro-
vide facilities to import and export GXL documents to
their tools (Winter et al., 2002). However, the choice
of GXL does not prevent from the use of other XML-
based languages for import/export facilities. For ex-
ample, for UML visual environments, we may need
to represent the sentence also with the XMI format
(XMI, 2003).
Now, several remarkable future researches can be
foreseen. The proposed meta-model/grammar ap-
proach is based on a semi-automatic transformation
of a meta-model into the corresponding XPG specifi-
cation. As a consequence, it could be interesting to
further investigate such an aspect in order to obtain a
more automatic transformation mechanism. Finally,
we intend to carry out usability studies of the pro-
posed meta-model/grammar approach for generating
visual modeling environments.
A USER-CENTERED METHODOLOGY TO GENERATE VISUAL MODELING ENVIRONMENTS
153