agrams that can be used as CIM, PIM, PSM or PM,
and the tools that support these models in the domain
of management information systems (MIS).
• The Computation Independent Model. CIM
represents the requirements of a system. In this
model, the UML Use Case diagram and the
UML Activity diagram can be used. Diagrams
oriented to the organizational analysis and
identification of business element that will
be supported by the system corresponds to
CIM as well. This is the case of goal oriented
requirements diagrams (Dardenne et al., 1993),
as well as strategic analysis diagrams. For
instance, the i* diagram (Yu, 1995) and the
MAPS diagram (Bennasri et al., 2005) are
examples of these kinds of diagrams.
In addition, diagrams that represent the busi-
ness processes of an organization correspond to
CIM. This is the case of BPMN diagrams, such
us the proposal of (De La Vara et al., 2008).
• The Platform Independent Model. PIM must
have the different views that describe the
system holistically: the static/structural view,
the behavioural/functional view, and the
interaction/presentation view.
For the static/structural view, the UML Class
diagram, the UML object diagram, and the ER
diagram (Chen, 1976) can be used. For the be-
havioural/functional view, the UML State Ma-
chine, the UML Sequence, and the UML Col-
laboration diagrams can be used.
For the interaction/presentation view, we postu-
late that the OO-Method presentation diagram
(Pastor and Molina, 2007), and WebML Hy-
pertext diagram (Moreno et al., 2007) can be
used. At this point, it is important to men-
tion that in contrast to the structural and the be-
havioural view, only few proposals for the in-
teraction view are found in literature.
• The Platform Specific Model The PSM adds
some implementation details to PIM. Thus, the
UML component, the UML package, and the
UML deployment diagrams can be used.
• The Platform Model The PM corresponds to the
final code of the system. This model will
change depending on the technologies available
in a specific domain. For instance, for the MIS
domain, the PSM can be codified using ASP,
PHP, J2EE, .NET, Oracle, SQL, etc. For other
domains, different platforms can be used.
From the matching of diagrams and MDA models,
a general MDD framework related to the information
systems domain (see Figure 1) has been defined.
In Figure 1, dashed lines represent optional di-
agrams and optional transformations. For instance,
sometimes it is necessary to specify analysis diagrams
(such as i*) to properly identify the functional and
non-functional requirements of the system. Later,
these analysis models are transformed into the cor-
responding design artefacts (system views), such as
class diagrams (e.g. the proposal of (GIACHETTI
et al., 2010)), or even other analysis diagrams. Later,
the CIM model must be transformed to a system
model (PIM). Nevertheless, expert software engineers
could decide to go directly to the specification of PIM
models without using CIM models.
In the PIM model, it is necessary (at least) that
software engineers select a diagram that represents
the structural/static view, a diagram that represents the
behavioural/functional view, and a diagram that rep-
resents the interaction/presentation view. In Figure 1,
this situation is represented by rectangles with contin-
uous lines. However, the diagrams that are located in-
side of the rectangles are interchangeable each other.
In the MIS domain, the structural diagram is the core
diagram of a system. The rest of system views are
described from this diagram by using behavioural dia-
grams and interaction diagrams. Thus, we have drawn
a dashed line from the diagrams of the structural view
to the remaining views of the PIM model.
Then, PIM model must be transformed to the cor-
responding PSM model. Nevertheless, some tools go
directly from the PIM to the PM. The PSM model is
internally generated by the model compilation tools
in an automatic and transparent manner.
Finally, the platform specific model (PSM) is
transformed into the platform model (PM). In the gen-
eral MDD framework, we specified the PM as a 3-tier
architecture because it is commonly used for manag-
ment information systems. This architechture is com-
posed by a presentation tier, an application logic tier,
and a database tier. In Figure 1, a list of massive tech-
nologies has been located in each rectangle of the PM.
This general MDD framework is a starting point
for the development of an MDD project. Thus, other
diagrams, technologies, and transformations can be
added to the framework depending on the specific
needs of a project.
2.1 Matching MDA Tools and the
General MDD Framework
Once software engineers have decided the diagrams
that they will use in the specification of the MDD
project, is time to select the tools that support these
diagrams and the necessary transformations. A list of
57 tools and the respective companies was collected
MODELSWARD2013-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
258