Database Reference
In-Depth Information
Finally, unlike other approaches cited, our work has a broader scope, since the use of
a metamodeling perspective brings us to a level independent of the specifi c case of State
Machines. This perspective has the advantage of making our approach applicable to other
representation techniques for dynamic systems, such as Petri Nets (Peterson, 1981) or the
different variants of the statechart technique. Furthermore, our proposed architecture aims
to be also applicable within the method engineering context (Brinkkemper, 1996; Brink-
kemper, Lyytinen & Welke, 1996; Dietzsch, 2002; Hofstede & Verhoef, 1997). Method
engineering, as the engineering discipline for designing, constructing and adapting meth-
ods, techniques and tools, has to deal, in particular, with techniques intended to represent
some kind of behavior. Therefore, a method-independent way of representing the behavior
of models seems to be a valuable artifact for method engineers. However, as is claimed in
Saeki (2000), most of the existing metamodeling techniques used with this goal (see, e.g.,
Brinkkemper, Saeki & Harmsen, 1999; Kelly, Lyytinen & Rossi, 1996; Saeki, 1995) focus
their efforts on representing the structural artifacts provided by the methods, leaving out
essential aspects of the behavior. In this context, the architecture suggested in this chapter
can help to broaden the metamodel defi nition provided by any metamodeling technique,
taking into account behavioral aspects.
AN ARCHITECTURE FOR BEHAVIOR
The UML gathers several sub-languages that have been designed with the main aim of
representing some kind of system behavior, such as State Machine Diagrams or Sequence
Diagrams. More specifi cally, fi ve (out of nine) types of UML diagram are involved in the
representation of behavior, and State Machines in particular is the third most complex type
of UML diagram (after the much more complex core type Class Diagrams and the slightly
more complex Component Diagrams ), as is shown in the complexity study in Siau and
Cao (2001).
The purpose of representing behavior is common to other modeling-related fi elds. For
instance, within the modeling of reactive systems, Palanque et al. (Palanque, Bastide, Dourte
& Sibertin-Blance, 1993) classify three approaches to represent this kind of system, namely
state-based, event-based and Petri Nets-based modeling approaches, and several techniques
(or variants of existing techniques) have been developed following each paradigm. This
diversity of languages and techniques suggests that it would be very valuable to have an
infrastructure for representing behavior aspects in a language-independent way.
In order to provide a sound support for the representation of the behavior features of
different languages, we describe in this chapter a full version of the architecture outlined
in Domínguez et al. (2000a). This architecture has been designed to serve as an abstract
framework, and it is not linked to any particular technique or formalism. The architecture
suggested consists of two layers, namely the Base Layer and the Snapshot Layer, and two
maps, denoted TTT and T (see Figure l).
T
T (see Figure l).
Overview of the Architecture
The Base Layer captures those aspects that appear to be independent from any par-
ticular situation, and the Snapshot Layer gathers the aspects characteristic of any particular
situation. If we consider the dynamics of a system as if it were a fi lm, the Snapshot Layer
describes each frame, that is to say, each one of the potential situations in which the system
Search WWH ::




Custom Search