Figure 2: The functional meta-model of the multi-role
management service.
3.2 Application of DSM Techniques
To anticipate new uses in the design of the AEB
system and to test the system, an external editor was
also developed. In opposition of the internal editor,
this solution has the advantage to avoid following
the technological constraints and choices from the
existing system.
Similarly to the internal editor, the external one
aims to graphically configure a booklet at the
institutional level and to graphically ease the
specification of roles and functionalities to perform
for these roles. We decided to follow a development
guided by models in the meaning of the DSM
approach (Domain-Specific Modeling), because of
our research results and our experience on the study
and application of their theories and practices for
TEL learning scenarios (Laforcade et al., 08). The
development of the external editor for the
institutional configuration of booklets was also for
us a new opportunity to experiment DSM tools and
techniques.
3.2.1 DSM Domain and Tools
The Domain-Specific Modeling (Kelly and
Tolvanen, 08) is a software engineering
methodology for designing and developing systems,
most often IT systems such as computer software. It
involves the systematic use of a graphic DSM
Language to represent the various facets of a system.
All DSM tools propose meta-modeling
techniques capable of expressing domain-specific
vocabularies (abstract syntaxes), and propose
facilities to construct various notations (concrete
syntaxes). These editing frameworks are supporting
the techniques and many more customizations with
minimal programming effort. As a result, these tools
can generate powerful and user-friendly dedicated
editors for DSM languages. They are kind of meta-
CASE editors capable of generating CASE tools.
The final editors give domain-designers the ability to
graphically specify models from their domain, and
propose some persistence facilities to load and store
these models in a machine-interpreted format.
In our research works we chose to use a unified
set of modeling frameworks and tools from the
Eclipse Modeling Projects (Eclipse EMP, 09): EMF
(main metamodel-oriented framework), GMF
(graphical framework).
3.2.2 Use of the Eclipse EMF/GMF Tooling
From a DSM point-of-view, the graphical
configuration of a booklet can be considered as a
model of the configuration desired by the booklet's
designer; this model being in conformance with a
meta-model specifying the domain terminology in
terms of concepts, relations, properties and
constraints (Figure 2).
To achieve the design and development of this
editor, several studies has been realized within
several iterations and many specifications of models
have been produced in accordance to the DSM
approach when using the EMF/GMF tooling: the
“booklet configuration” domain meta-model (reuse
from the other re-engineering approach: Figure 2 is a
graphical representation of the concrete 'ecore' meta-
model specified with the EMF tooling), the XML
schema describing how AEB configurations will be
serialized, the meta-model for the graphical
formalism, the meta-model for the 'palette' of the
editor (set of basic concepts and relations available
for drawing), the meta-model describing the
mapping between the previous meta-models, etc.
At this point of the iterative process a full-
generated prototype of the booklet configuration
editor was generated by the EMF/GMF frameworks.
When abstract (domain metamodel) and concrete
(notation) syntaxes objectives have been reached, we
realized some extra activities: addition of constraints
to add some semantics on the domain meta-model
(eg. an actor can only be instantiate once, it is not
possible to add the same functionality twice for an
actor, etc.), development of a Rich-Client Platform
version (standalone), addition of support
services/guidances, etc.
Finally, the resulting external editor takes the
form of an application providing a drawing space in
which a graphical configuration can be specified
(see Figure 3). This editor can also be used to
modify existing configurations specified thanks to
CSEDU 2010 - 2nd International Conference on Computer Supported Education
396