<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>A Generative Approach for Creating Stakeholder-speci c Enterprise Architecture Views</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Technische Universitat Munchen, Institute for Informatics</institution>
          ,
          <addr-line>Boltzmannstr. 3, 85748 Garching</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Understanding the architectures of complex system, e.g. enterprises, is greatly facilitated by using graphical views thereof. These views result from the application of an underlying viewpoint to a comprehensive architectural description. The viewpoint thereby describes, which architectural concepts should be visualized in which way. The creation of views that consistently represent the enterprise architecture (EA) from a speci c viewpoint, is a challenge of ongoing interest in EA management. In this paper, we present a technique that can be used to create views consistent to arbitrary architecture viewpoints and show, how this technique is realized in a prototypic tool. Central constituents of the tool are a model providing the graphical primitives for describing visualizations (called visualization model ) and a model-to-model transformation reifying an architectural viewpoint.</p>
      </abstract>
      <kwd-group>
        <kwd>model transformation</kwd>
        <kwd>viewpoints</kwd>
        <kwd>views</kwd>
        <kwd>EA management</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        A major task of enterprise architecture (EA) management is to provide
transparency concerning the overall architecture, i.e. a common goal of EA
management is to foster the communication between the di erent stakeholders with
business and/or IT background [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Commonly, visualizations (views) are regarded
as important means to facilitate communication between the stakeholders from
business and IT. In order to be useful these visualizations should not be arbitrary
"drawings" of the architecture, but should correspond to selected architecture
viewpoints1 on dedicated parts of the overall architecture (cf. [
        <xref ref-type="bibr" rid="ref4 ref9">4, 9</xref>
        ]). What up to
this points reads quite similar to the challenge of architecture visualization in the
context of software engineering, shows at the second look some subtle
complexities. In contrast to the situation in software engineering, where widely-accepted
conceptualizations of software systems, e.g. via "classes", "components", and
"interfaces", exist, the eld of EA management is lacking such well-de ned and
1 The term viewpoint is used in this context according to it's de nition in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
grounded terminology. This might be ascribed to the novelty of the eld, but
quite a few researchers [
        <xref ref-type="bibr" rid="ref1 ref4">1, 4</xref>
        ] give a di erent explanation and challenge the idea
that a "one-size- ts-it-all" conceptualization of EAs exists. These researchers in
contrast expect the EA conceptualization to be organization-speci c, such that
every enterprise has its speci c EA information model that incorporates only
the information necessary for the dedicated EA management approach.
Complementing the variety of information models, di erent organizations also employ
di erent visualization standards, i.e. use viewpoints di ering in respect to the
used symbols as well as to the employed rules underlying the layout. Against
the aforementioned background of largely di ering information models and
visualization principles, it becomes clear that the creation of a consistent EA view
(for an example see Figure 1) is no simple task.
      </p>
      <p>Munich</p>
      <p>
        A technique suitable for generating views consistent with underlying
viewpoints based on arbitrary EA information models has to address di erent
challenges. Matthes et al. give in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] a detailed list of these challenges, of which we
{ due to reasons of brevity { only provide a summary:
Coupling of information and visualization meaning that a link should be
maintained relating graphical elements in the visualization with the
underlying architectural elements. The tool's mechanisms, thereby account for
visualization correctness. If the graphical elements were in contrast
decoupled from the underlying data, the views would degenerate to mere drawings,
which need to be manually maintained if the underlying information changes.
Flexibility of information schema meaning that architectural models
conforming to an arbitrary schema should be accessible to the tool. This re ects
the fact that the information on the EA is gathered according to the speci c
demands of an organization.
      </p>
      <p>Adaptability of viewpoint meaning that an enterprise architect should be
able to adapt the viewpoint to its speci c needs. For example, the architect
should be able to adapt the colors according to the corporate identity of the
enterprise. Adaptability thereby re ects the fact that visualizations, as mean
of communication, heavily rely on stakeholder acceptance.</p>
      <p>Composition and modularization of viewpoints meaning that an
enterprise architect should be able to de ne viewpoint modules, i.e. reusable parts
for creating visualizations. Thereby, especially the widely-used mechanism
of layering visualizations is accounted for.</p>
      <p>In Section 2 we outline a technique suitable for addressing the aforementioned
requirements. The technique is based on the technology of model-to-model
transformations, which is applied to connect information models on the one hand with
a model of visual concepts, namely the visualization model, on the other hand.
Complementing the description of the technique, we describe the prototypical
realization thereof in a tool. Related tools as well as related techniques from
nearby elds are presented in Section 3. Section 4 concludes the article with a
critical re ection of the presented approach and an outlook on future work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Generating visualizations via model transformation</title>
      <p>Model transformation approaches in the context of generating visualizations can
be used to maintain the strict separation between information and visualization,
while also ensuring consistency between both concepts. The model
transformation, called syca transformation in our approach, links di erent types of models,
namely the model of the information to be visualized { the semantic model { and
the model describing the visualization { the symbolic model. The transformation
is thereby described relying on concepts of the models' respective meta
models. These are the information model describing the concepts used for modeling
information and the visualization model de ning the graphical concepts for
describing visualizations. Figure 2 illustrates the basic constituents of the approach
and further introduces the concept of the transformation meta model, which
provides the basis for specifying syca transformations, as well as the concept of a
common meta model for both information and visualization model.</p>
      <p>
        Di erent analyses of the information models used in EA management have
been undertaken, e.g. by Buckl in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], leading to the nding that the majority
of currently used models follows the paradigm of object orientation. While the
information models of many approaches do not explicitly account for the
underlying meta-model, the analysis of Buckl further showed that mostly only core
concepts of object-oriented modeling, e.g. classes, properties, and associations
are used. This advocates for the utilization of a simplistic common meta-model
with the OMG's Meta Object Facility (MOF) [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], more precisely the essential
part thereof (EMOF) being a prominent candidate. The EMOF provides the
meta-model of choice for the technique presented in this paper, especially as an
implementation of the modeling facility is ready at hand as part of the Eclipse
Modeling Framework (EMF). This framework was chosen, as its metamodel,
the ECore-metamodel, can be considered to be very similar to the
EMOFmetamodel2. Additionally, the EMF provides serialization and editing related
functionalities, as well as an active user and developer community.
conforms to
Information
      </p>
      <p>Model
conforms to
Semantic Model</p>
      <p>Common</p>
      <p>Meta Model
is applicable on
Transformation
Meta Model
conforms to</p>
      <p>Syca
Transformation
conforms to
Visualization</p>
      <p>Model
conforms to</p>
      <p>Symbolic Model</p>
      <sec id="sec-2-1">
        <title>Semantic model and information model { the left side</title>
        <p>The information model sets up the language for describing the modeling subject,
i.e. it introduces the core concepts, which are used to create a model of the
subject's reality. In the context of EA management, the information model contains
concepts like business processes, locations, etc., which are represented
irrespective a visualization. Instance data documented in accordance to the information
model is part of the semantic model, which contains so called information
objects. In this sense, the information model (for an example see Figure 3) acts a
meta-model for the semantic model, cf. Figure 4.</p>
      </sec>
      <sec id="sec-2-2">
        <title>Symbolic model and visualization model { the right side</title>
        <p>The visualization model contains elements, which represent graphical concepts,
namely map symbols, e.g. "rectangle", or visualization rules, such as "nesting".
These rules do not represent visible concepts, but they exert distinct demands on
the positioning, size, or overall appearance of the symbol instances. For example,
instances of the "nesting" rule demand that "inner" map symbol instances are
grouped into the "outer" map symbol. Figure 5 introduces the map symbol
2 Only minor di erences concerning naming and the usage of references exist.
and visualization rule that are needed for the exemplary visualization. Figure 6
displays the symbolic model describing that rectangles representing business
applications are nested in the rectangle representing the hosting location.</p>
        <p>The syca transformation creates a symbolic model based on the
corresponding semantic model, while the map symbol instances in the symbolic model
are not yet supplied with absolute positions. These positions are in a second
step calculated by a layouter, which is capable to interpret the visualization
rule instances and to compute appropriate positioning and sizing. Sketching the
mathematical formalism incorporated in the layouter, we give examples of the
layouting constraints that apply on the rectangle instance3:
munich.x - munich.width/2 &lt; onlineShop.x - onlineShop.width/2
munich.x + munich.width/2 &gt; onlineShop.x + onlineShop.width/2
munich.y - munich.height/2 &lt; onlineShop.y - onlineShop.height/2
munich.y + munich.height/2 Y onlineShop.y + onlineShop.height/2
2.3</p>
        <p>The syca transformation and its meta model { the middle
The syca transformation establishes the link between the data and its
visualization and thereby enable the automatic generation of corresponding architectural
views. Di erent types of model-to-model transformation languages may be used
to implement the syca transformation.</p>
        <p>
          The transformer component of the tool interprets the transformation rules
and generates a symbolic model from the corresponding semantic model. Over
the last years, we have successfully applied di erent model-to-model
transformation languages for de ning architectural viewpoints in an executable manner.
Wiegelmann showed in [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] that the Atlas Transformation Language (ATL) [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ]
can be used to describe the necessary transformations. With ATL, architectural
viewpoints can be de ned in a highly declarative manner, although especially
the appropriate instantiation of visualization rules becomes fairly complex, e.g.
when matrix-like views should be created. Example ATL-like code generating
the architectural visualization from Figure 1 is given below.
3 According to the visualization model of Ernst et al. [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ], the symbols' x and
ycoordinates are anchored at the symbols' centers.
rule OrgUnit2Rectangle {
from infoObject : Semantic.OrganizationalUnit
to symbol : Symbolic.Rectangle (text = infoObject.name)
rule BusinessApp2Rectangle {
from infoObject : Semantic.BusinessApplication
to
symbol : Symbolic.Rectangle (text = infoObject.name),
rule : Symbolic.Nesting (
inner = symbol,
outer = transforming (infoObject.hostedAt)
        </p>
        <p>
          Complementing the model-to-model transformation languages, we further
applied java to realize the syca transformations. Java-based transformations do
{ due to the maximum expressiveness { not run into the di culties that the
declarative model transformation languages have to deal with, but are even less
intuitively to develop. Targeting an increased level of usability by rising the level
of abstraction, Ramacher designed in [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] a java-based introspective framework
consisting of highly-reusable transformation primitives that can be composed to
syca transformations. First practical applications of this framework are still to
be undertaken, but the rst experiences are very promising.
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Related approaches and tools</title>
      <p>
        Domokos and Varro present in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] an approach to ensure consistency between
data and the corresponding visualization. The approach provides "open
visualization framework applicable to metamodel based modeling languages", which is
further developed towards executability. With no dedicated visualization model,
the approach aims at transforming arbitrary information models to arbitrary
visual languages, e.g. SVG, as far as both (information and visualization) can
be described with XML. Consequently, the generation of a visualization in fact
is an XSLT-based transformation between two XML-documents. In this respect,
the approach does not reach a high level of abstraction, but calls for very
basic transformation procedures. Further, the article does not encompass a visual
language suitable for expressing the aspects of relative positioning, as the
application concerns petri-nets and their representation as nodes-and-edges.
      </p>
      <p>
        Kruse et al. present in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] a component-oriented tool for supporting EA
management. Central to their approach is a strong 'componentization' in the way,
that di erent types of viewpoints are implemented as di erent components of the
tool. Each viewpoint in this respect brings along a dedicated information model,
that describes the information necessary for creating the corresponding
visualization. A company willing to use the corresponding tool for visualizing their EA
or parts thereof, selects the appropriate visualization components and supplies
a model-to-model transformation transforming parts of the organization-speci c
EA information model to the information model associated with a speci c
viewpoint. Put in other words, the approach of Kruse transforms and projects
instances of one information model to instances of a di erent information model,
which conversely is directly fed into a layout and visualization mechanism.
      </p>
      <p>
        Multiple commercial tools provide support for EA management. Matthes et
al. analyzed in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] nine prominent of these tools, coming to the result that most
of the tools fall for two types of visualization-related problems. On the one hand,
the process- or methodology-driven tools bring along a xed EA information
model that underlies a set of prede ned viewpoints. Visualizations corresponding
to these viewpoints can mostly be generated automatically, and may use a rich
visual language, including relative positioning of symbols to convey information.
On the other hand, metamodel-driven tools can exibly adapt their information
model to the speci c needs of the using organization, but are mostly limited to
visualizations of the nodes-and-edges type. More complex visualizations, using
e.g. relative positioning, have to be programmed in these tools utilizing scripting
languages with no visualization- and layout-speci c concepts.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Critical re ection and outlook</title>
      <p>
        This article presented a technique to create visualizations (views) from arbitrary
EA descriptions. The generated views thereby are consistent with a previously
de ned viewpoint and are created using a model-to-model transformation.
Complementing the presented technique also a prototypic tool implementing the
technique was described. This tool has been used in di erent practice cases in the past
and showed the applicability of the technique on various di erent
organizationspeci c EA information models. Di erent languages were utilized to realize the
model-to-model transformation, namely the basic programming language java
(cf. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]) as well as the model transformation language ATL (cf. [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]). While
both languages were su cient to generate visualizations, they provide a rather
low level of abstraction, when it comes to describing architectural viewpoints.
More precisely, the complexity of the model transformations expressed in these
languages is often beyond the level, that an enterprise architect can cope with.
      </p>
      <p>Increasing the level of abstraction in de ning viewpoints and thereby
facilitating the creation of end-user de ned viewpoints are the challenges to be
addressed next. Two di erent strategies to achieve this can be pursued:
{ Rise the level of abstraction in the visualization model, i.e. replace the ne
grained visualization rules with more coarse ones. As an example, one could
think of a cluster -rule for visualizations like the one in Figure 1.
{ Rise the level of abstraction in the transformation language, i.e. provide
domain speci c concepts for specifying a syca transformation going beyond
basic query model - and transform model -concepts.</p>
      <p>
        While both ideas may be useful to achieve the goals, especially the latter one
seems more appealing. In consequent continuation of the prefabrics of Ramacher
(cf. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]), a tailored transformation language could allow to stay with the basic
visualization model concepts that have a clear and unambiguous semantics.
      </p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgements References</title>
      <p>The development of the herein presented technique and prototypic tool is
supported and partially funded by Siemens IT Solutions and Services (SIS).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>S.</given-names>
            <surname>Aier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Kurpjuweit</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Riege</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Saat</surname>
          </string-name>
          .
          <article-title>Stakeholderorientierte dokumentation und analyse der unternehmensarchitektur</article-title>
          . In H.-G. Hegering,
          <string-name>
            <given-names>A.</given-names>
            <surname>Lehmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H. J.</given-names>
            <surname>Ohlbach</surname>
          </string-name>
          , and C. Scheideler, editors,
          <source>GI Jahrestagung (2)</source>
          , volume
          <volume>134</volume>
          <source>of LNI</source>
          , pages
          <volume>559</volume>
          {
          <fpage>565</fpage>
          ,
          <string-name>
            <surname>Bonn</surname>
          </string-name>
          , Germany,
          <year>2008</year>
          . Gesellschaft fur Informatik.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2. ATLAS group
          <string-name>
            <surname>at</surname>
            <given-names>LINA</given-names>
          </string-name>
          &amp; INRIA. Atl: Atlas transformation language,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>S.</given-names>
            <surname>Buckl</surname>
          </string-name>
          .
          <article-title>Modell-basierte Transformationen von Informationsmodellen zum Management von Anwendungslandschaften</article-title>
          .
          <source>Diploma thesis</source>
          , Fakultat fur Informatik, Technische Universitat Munchen,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>S.</given-names>
            <surname>Buckl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. M.</given-names>
            <surname>Ernst</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Lankes</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Schneider</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C. M.</given-names>
            <surname>Schweda</surname>
          </string-name>
          .
          <article-title>A pattern based approach for constructing enterprise architecture management information models</article-title>
          .
          <source>In Wirtschaftsinformatik</source>
          <year>2007</year>
          , pages
          <fpage>145</fpage>
          {
          <fpage>162</fpage>
          ,
          <string-name>
            <surname>Karlsruhe</surname>
          </string-name>
          , Germany,
          <year>2007</year>
          . Universitatsverlag Karlsruhe.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>P.</given-names>
            <surname>Domokos</surname>
          </string-name>
          and Varro,
          <string-name>
            <surname>Daniel.</surname>
          </string-name>
          <article-title>An open visualization framework for metamodelbased modeling languages</article-title>
          .
          <source>Electronic Notes in Theoretical Computer Science</source>
          ,
          <volume>72</volume>
          (
          <issue>2</issue>
          ),
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>A. M. Ernst</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Lankes</surname>
            ,
            <given-names>C. M.</given-names>
          </string-name>
          <string-name>
            <surname>Schweda</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Wittenburg</surname>
          </string-name>
          .
          <article-title>Using model transformation for generating visualizations from repository contents { an application to software cartography</article-title>
          .
          <source>Technical report</source>
          , Technische Universitat Munchen,
          <source>Chair for Informatics</source>
          <volume>19</volume>
          (
          <issue>sebis</issue>
          ), Munich, Germany,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7. International Organization for Standardization. Iso/iec 42010:
          <article-title>2007 systems and software engineering { recommended practice for architectural description of software-intensive systems</article-title>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>S.</given-names>
            <surname>Kruse</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. S.</given-names>
            <surname>Addicks</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Postina</surname>
          </string-name>
          , and
          <string-name>
            <surname>U.</surname>
          </string-name>
          <article-title>Ste ens. Decoupling models and visualisations for practical ea tooling</article-title>
          .
          <source>In Pre-Proceedings of the 4th Workshop on Trends in Enterprise Architecture Research, November 23rd</source>
          ,
          <year>2009</year>
          , Stockholm, Sweden, pages
          <volume>85</volume>
          {98), Stockholm, Sweden,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>M.</given-names>
            <surname>Lankhorst</surname>
          </string-name>
          . Enterprise Architecture at Work: Modelling,
          <source>Communication and Analysis</source>
          . Springer, Berlin, Heidelberg, Germany,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>F.</given-names>
            <surname>Matthes</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Buckl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Leitel</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C. M.</given-names>
            <surname>Schweda</surname>
          </string-name>
          .
          <source>Enterprise Architecture Management Tool Survey</source>
          <year>2008</year>
          .
          <article-title>Chair for Informatics 19 (sebis</article-title>
          ), Technische Universitat Munchen, Munich, Germany,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. OMG.
          <article-title>Meta object facility (mof) core speci cation</article-title>
          ,
          <source>version 2</source>
          .0 (
          <issue>formal</issue>
          /06-01-01),
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>R.</given-names>
            <surname>Ramacher</surname>
          </string-name>
          .
          <article-title>Entwurf und Realisierung einer Viewpoint De nition Language (VDL) fur die Systemkartographie</article-title>
          . Diplomarbeit, Fakultat fur Informatik, Technische Universitat Munchen,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>J.</given-names>
            <surname>Wiegelmann</surname>
          </string-name>
          .
          <article-title>Analysis and Application of Model Transformation Languages for Generating Software Maps</article-title>
          .
          <source>Bachelor thesis</source>
          , Fakultat fur Informatik, Technische Universitat Munchen,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>