<!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>Towards a Pragmatic Perspective on Requirements for Conceptual Modeling Methods</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Boris Wyssusek</string-name>
          <email>b.wyssusek@qut.edu.au</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Johannes Maria Zaha</string-name>
          <email>johannes.zaha@sse.uni-due.de</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Queensland University of Technology School of Information Systems Brisbane</institution>
          ,
          <country country="AU">Australia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Duisburg-Essen Software Systems Engineering Essen</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The mere unmanageable amount of techniques for conceptual modeling of information systems poses a challenge both for users of existing techniques and for developers of new techniques. However, interpreting the emergence of new conceptual modeling techniques as a result of changing architectural paradigms for information systems seems to be inappropriate. Through inspection of prevalent architectural paradigms, we show that the derivation of requirements for respective modeling techniques has been neglected frequently and an appropriate connection between architectural paradigms and conceptual modeling techniques is lacking. Motivated by these findings we argue that primarily pragmatic considerations can and should guide the development of new conceptual modeling techniques.</p>
      </abstract>
      <kwd-group>
        <kwd>architectural paradigms</kwd>
        <kwd>modeling methods</kwd>
        <kwd>evaluation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Conceptual modeling is generally regarded as one of the most fundamental
technologies in information systems development. The importance of this technology is
mirrored not only in the vast amount of pertinent academic and professional publications
but also in the substantial effort that has been invested in the development of
conceptual modeling methods. However, the latter phenomenon has been met by a number of
criticisms, the most prominent of which can be seen in the characterization of the
proliferation of conceptual modeling methods as the YAMA syndrome—Yet Another
Modeling Approach [1]. The rationale behind this characterization addresses the lack
of any recognizable theory driving the proliferation of modeling methods, making it
difficult for the modeling practitioner to arrive at a theoretically informed assessment
of the merits of old and new modeling methods and to choose a modeling method
appropriate for the task at hand. The academic community has responded to this
unfavorable and challenging situation with two distinct types of suggestions. On the one
hand it has called for the identification of extant theories or the development of new
ones that would not only guide the development of modeling methods but also serve
as a point of reference for their subsequent evaluation [2]. On the other hand
academics have proposed comparative analyses of methods based on feature lists [3] or meta
models [4]. However, so far none of those proposals has been proven to successfully
address the YAMA syndrome.</p>
      <p>Our work is only partially motivated by the YAMA syndrome, since we believe
that conceptual modeling practitioners do not face the plethora of extant modeling
methods completely unprepared. For those modelers, modeling methods are tools
which help them to accomplish a task—the creation and representation of conceptual
models. Thus, modeling methods are technologies, i.e., they are means to an end.
However, conceptual modeling is not an end in itself, meaning that the conceptual
models eventually created are not a terminal but an intermediate goal since those
models—once created—serve as means for further ends. In means–ends relationships
it is instrumental that the means are appropriate for the achievement of the respective
ends. Thus the ends not only justify the means but ultimately define the requirements
the means have to fulfill. This way, the hierarchy of goals in which lower-level goals
contribute to the achievement of higher-level goals is complemented by a hierarchy of
requirements that have to be met by the corresponding ends. Consequentially we
believe that conceptual modeling practitioners are likely to perform means–ends
analyses [5] and to choose their means in accordance with the ends to be achieved.</p>
      <p>With our focus on means–ends relationships we adopt a pragmatic perspective
which, in the given context, implies that predominantly pragmatic criteria guide the
selection of conceptual modeling methods and should thus also guide their
development. Yet in our research presented in this paper we do not put the selection of
modeling methods center stage. Rather we are interested in learning if and how the
pragmatic perspective can contribute to gaining an understanding of the genealogy of the
proliferation of conceptual modeling methods and derivation of general principles for
the development of modeling methods. Eventually, such principles could be used for
the evaluation of the respective methods. As starting point for our pragmatic
considerations we take paradigms of systems decomposition or architecture respectively
(e.g., [6]). We postulate that the criteria determining systems decomposition or
architecture have—from a pragmatic point of view—the most impact on the requirements
conceptual modeling methods should meet. We substantiate this postulate with an
analysis of the development of paradigms of systems decomposition and architecture
as well as of the corresponding conceptual modeling methods. We also include some
criticism, highlighting constellations where the conceptual modeling methods
obviously do not meet pragmatic requirements.</p>
      <p>With the present paper we do not intent to present a final assessment of the merits
of the pragmatic perspective. Rather our goal lies in demonstrating the validity of a
perspective on the development of conceptual modeling methods that has largely been
neglected in previous research. Thus we contribute to the extant body of research by
broadening the horizon from which the development of conceptual modeling methods
has been theorized so far.</p>
      <p>The remainder of the paper is structured as follows: In section two we introduce
the pragmatic perspective on the selection and development of conceptual modeling
methods in the context of architectural paradigms. Section three provides an
exemplary analysis of four architectural paradigms and their pragmatic implications for
conceptual modeling methods. We further substantiate the validity of the pragmatic
perspective in section four, by showing how changes in architectural paradigms
underlying information systems development entail changes in the requirements for
conceptual modeling methods. We conclude our paper in section five with a short
summary and an outlook on further research.
2</p>
    </sec>
    <sec id="sec-2">
      <title>A Pragmatic Perspective on the Relationship between</title>
    </sec>
    <sec id="sec-3">
      <title>Architectural Paradigms and Conceptual Modeling Methods</title>
      <p>
        Information systems are complex systems and information systems development is a
complex task. In order to deal with those complexities, researchers and practitioners
alike have proposed various strategies such as decomposing systems into parts (e.g.,
[7]) and using stage or process models for the analysis and design of systems (e.g.,
[
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]). The strategy of system decomposition has its analogue in a general principle of
problem solving: structuring larger problems in terms of a hierarchy of ever smaller
problems till a level of elementary, i.e., not further subdividable problems is reached.
Following this principle, the overall problem is solved by decomposing it into
subproblems in a top-down fashion and solving all the sub-problems in a bottom-up
fashion.
      </p>
      <p>
        While such a strategy appears to be quite natural and straight forward, it allows for
considerable leeway posing significant problems itself. The most prevalent problem
of decomposition rests with the required selection of a criterion or principle that
eventually determines the structure of the decomposition. This problem has frequently
been addressed in the information systems literature (e.g., [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]), but it is Parnas’ [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]
analysis which showed that the application of principles of decomposition has
consequences beyond the structuring of the decomposition. We focus on implications for
requirements that have to be met by conceptual modeling methods used in systems
analysis and design, i.e., in systems decomposition and systems composition.
      </p>
      <p>
        The number of principles that could potentially guide systems decomposition is
basically infinite, and so is the number of implications that those principles may have
for the requirements on conceptual modeling methods. But when we look at the
history of information systems development, we can identify the occasional emergence
of paradigms of systems decomposition and composition. Those paradigms are now
generally referred to as architectures or architectural paradigms. According to [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ],
architecture is the “fundamental organization of a system embodied in its
components, their relationships to each other, and to the environment, and the principles
guiding its design and evolution.” As such, architectural paradigms not only
encompass principles of composition and decomposition but also the patterns that eventually
make up the structure or organization of the overall system. Thus, by taking extant
architectural paradigms as starting point, we limit the number of principles of system
decomposition that have to be taken into consideration. While such a constraint
certainly limits the generalizability of any propositions derived from our investigation, it
is in line with the pragmatic considerations that have led to the emergence of
architectural paradigms in the first place, as evidenced by our analysis of prevalent
architectural paradigms in the next section of this paper. The emergence and development of
those paradigms was usually not informed by theory, but largely driven by pragmatic
considerations. It is thus consequential if we extend this pragmatism to the theorizing
of the link between the principles of system decomposition underlying architectural
paradigms and requirements for conceptual modeling methods used in systems
architecture.
      </p>
      <p>
        The emergence and evolution of architectural paradigms is a manifestation of
analysis and design patterns that have proven successful in their practical application.
As such, architectural paradigms are expressions of practical wisdom that has been
generalized for a class of recurring problems in the analysis and design of information
systems. The practical value of such pragmatic generalizations has already been
postulated in 1968 at the famous NATO conference on Software Engineering [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], when
McIlroy [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] proposed an approach to systems architecture which later became
known as the component-oriented architectural paradigm. He based his argument
solely on pragmatic considerations such as structuring, reuse, and productivity.
Similarly, in the domain of programming languages such considerations led to the
development of languages that explicitly support analogue variants of structuring programs
and program development (e.g., [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]).
      </p>
      <p>Understanding conceptual modeling as a technology, i.e., as a means to an end, we
conceptualize the development of conceptual modeling methods from a pragmatic
perspective as follows: The starting point for the development of a technology is a
goal that needs to be achieved. In the case of conceptual modeling, the goal (i.e., the
end) is the creation and representation of conceptual models. To achieve this goal in a
systematic fashion with a predictable outcome an appropriate method is required. In
the case of conceptual modeling such a method would be a conceptual modeling
method. Ideally, the practical use of a method should be supported by appropriate
tools. In the case of conceptual modeling such a tool would be an implementation of
the respective conceptual modeling method in a conceptual modeling tool. Thus, both
the modeling method and its implementation in some tool are technologies, i.e., the
means to the end of conceptual modeling. This way we arrive at a conceptualization
linking the task (conceptual modeling) with a method (conceptual modeling method)
and a tool (conceptual modeling tool) in a hierarchical structure of means–ends
relationships along which pragmatic criteria in the form of requirements are propagated
from top to bottom. So far, this conceptualization does not take into consideration that
conceptual modeling is not an end in itself. However, it seems that theory-driven
approaches towards the development of conceptual modeling methods adopt this
perspective. Yet following our pragmatic orientation we extend the hierarchical structure
of means–ends relationships by including not only goals conceptual modeling serves
but also requirements for conceptual modeling methods that derive from the
respective goals.</p>
      <p>Having taken our starting point in architectural paradigms, our conceptualization of
the development of conceptual modeling methods in terms of an extended hierarchy
of means–ends relationships enables us to establish a conceptual as well as pragmatic
link between architectural paradigms and conceptual modeling methods used in
systems architecture. This link finds its material expression in requirements for
conceptual modeling methods that derive from the architectural paradigms. The obviously
most prominent requirement for conceptual modeling methods is to be seen in the
explicit methodical support of the principles of systems architecture of the respective
architectural paradigm—acknowledging that architectural paradigms can be based on
more than one principle, and that multiple architectural paradigms can be utilized in
the creation of a single concrete architecture.</p>
      <p>The pragmatic perspective on the development and selection of conceptual
modeling methods would be incomplete if it would limit the sources of pragmatic
implications. While it is consequential in the context of systems architecture to focus on the
pragmatic implications that derive from architectural paradigms used in the creation
of a system’s architecture, other significant sources of implications should not be
overlooked without prior consideration. Adopting the pragmatic perspective will help
in the differentiation between pragmatic and other types of implications, thus ensuring
that only pragmatic implications, i.e., requirements that are instrumental for the
achievement of the respective goals are brought to bear in either the selection or the
development of conceptual modeling methods; non-instrumental requirements as well
as fads and fashions will be excluded. Decisions regarding the inclusion of pragmatic
implications should be based on the concept of the hierarchy of means–ends
relationships outlined above, thus ensuring that only pragmatic implications are considered
that can be meaningfully integrated in such a hierarchy, i.e., which are instrumental
with respect to the overall goal of the respective endeavor.</p>
      <p>
        We wish to emphasize that we do not claim that theoretical considerations should
be abandoned. As already mentioned in the introduction, our concern is the
broadening of the horizon from which the development of conceptual modeling methods has
been theorized so far. Pragmatic considerations are no substitute for theoretical
reflections. Nevertheless, our explicit pragmatic orientation does not come without a
criticism of the predominantly theory-oriented research on the development of conceptual
modeling methods. As evidenced by pertinent conceptual modeling methods, theory
did not play any significant role in their development. Thus it does not come as a
surprise if none of the contemporary theoretical considerations, for example informed by
cognitive psychology (e.g., [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]) or ontology (e.g., [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]) are able to explain the
proliferation of conceptual modeling methods. Hence shifting the focus of research from
theory-orientation to pragmatic considerations may prove to be a viable strategy for
research policy in this area, since the theory-oriented research does not appear to
appropriately address the issues pertinent to the development of conceptual modeling
methods.
3
      </p>
    </sec>
    <sec id="sec-4">
      <title>Architectural Paradigms and Modeling Methods</title>
      <p>In this section we describe four prevalent, implementation-oriented architectural
paradigms and the motivations for their emergence. The architectural paradigms entail
specific views that have to be captured by conceptual modeling methods used in
information systems development based on the respective paradigm. The views entailed
differ with respect to the level of abstraction chosen during conceptual modeling.
However, there are generic requirements for conceptual modeling methods which are
independent from the level of abstraction. In the following, we will the views that are
associated with a concrete paradigm and the resulting generic requirements for
conceptual modeling methods necessary to describe these views.</p>
      <p>
        From a historical point of view, monolithic information systems were the first to
emerge. The architectural paradigm of the monolithic architecture (e.g., [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]) implies
that the individual parts of the system are highly interwoven and it requires strong
efforts to separate the constituting parts, e.g., to change or to replace them. All parts of a
software system that are necessary for the execution of a given task are included in
one entity, no matter if they are directly related to the task to be performed or if they
represent functionality that is independent of the task. This integration of all
taskrelated parts allows for a centralized maintenance of the information system.
Nonetheless, the maintenance can be costly since during the implementation of these
systems basic principles of software engineering like separation of concerns or
information hiding have been ignored frequently. Another drawback of monolithic
information systems is the lack of integration between the systems for related task-areas, e.g.
separate systems for procurement, production and sales.
      </p>
      <p>
        The necessity to integrate data and processes of related task-areas was the
motivation for an architectural paradigm called three-tier architecture (e.g., [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]). This
paradigm implies the separation of the system parts in three layers: presentation layer,
application layer and data layer. The presentation layer includes functionality to perform
the interaction with users. Application layer and data layer comprise functionality to
actually support a task and to store and retrieve data respectively. This separation is
hierarchical, since there is a specific order of precedence: the presentation layer is
only interacting with the application layer, which in turn is only interacting with the
data layer. The separation allows for distribution as well as for centralization of
functionality. An example for simultaneous realization of both principles would be the
implementation of application servers for different tasks, combined with one central
database within an organization and with presentation systems that exclusively
support the interaction with end-users. Assuming that the implemented application
servers comprise less functionality than an application server for a whole task-area, the
complexity to be tackled while implementing and maintaining the information system
is reduced. Moreover, the architecture fosters the flexibility when adapting the
information system to changing requirements.
      </p>
      <p>The three tiers of this architectural paradigm correspond to three views on the
information system. For describing these views, specific modeling techniques are
needed that have to fulfill certain requirements. For describing the view on the
information system from the perspective of an end-user, techniques for depicting
userinterfaces or techniques to capture different scenarios of usage are needed. The view
on application tier and database tier requires techniques like process description
languages and languages to describe the operations to be performed by the database
management system.</p>
      <p>
        The partition of an information system into functional elements is the main
characteristic of the paradigm called component-based architecture (e.g., [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]). In contrast
to the three-tier architecture, the criteria for separation of one component from
another can be diverse. One could imagine a component that provides functionality for
realizing a specific function in a user interface or a component that additionally writes
the input of this interface into a database. Thus, the component-based paradigm is not
dependant on the three-tier architecture. However, typical component-based
architectures combine these two paradigms while the application layer is divided into
components that realize specific business functionality. While defining the borders of a
component, the principle of modularization is applied: the components should be
homogenous inside, heterogeneous to each other, and their functionality should be
accessible via well-defined interfaces. They are integrated via a mediator that ensures
communication between the components and between the components and their
environment (e.g., with the two remaining tiers). The application of this paradigm fosters
the reduction of complexity during development and maintenance, and it increases the
flexibility of the resulting information system since components can be easily
updated, replaced and added. Moreover it allows for reusing existing components in
different scenarios, which reduces development time and costs.
      </p>
      <p>The architectural paradigm of component-based architecture leads to several views
on an information system. Assuming that this paradigm is combined with a three-tier
architecture, there are already three extant views requiring adequate modeling
techniques. Since these tiers can be further divided into components, there have to be two
additional views on these components that capture the functionality provided and how
to utilize this functionality. Therefore, modeling techniques to describe the
component’s interfaces and their functional capabilities are needed. Additionally, there is a
process view on succession relationships between the executions of services offered
by the components. Examples for modeling techniques to describe this view would be
process description languages or temporal logics.</p>
      <p>
        Modularization is also the principle behind the architectural paradigm of
serviceoriented architecture (e.g., [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]). This paradigm implies that functionality is
encapsulated in services and that these services are orchestrated to realize specific business
functionality, requiring a mediator that ensures communication between the services
and between the services and the remaining system parts. As in component-based
information systems, this concept can be combined, e.g., with a three-tier architecture,
resulting in similar views and the respective requirements for modeling techniques.
However, the fact that a service can be remote and only the interface and the
description of its functional capabilities are used while integrating it in the information
system, leads to a higher level of flexibility. As long as the interface is not changing, the
implementation of the service can be changed without changing the implementation
of the information system. This offers, for example, the possibility to update service
implementations or replacing the information system that provides the service. The
ad-hoc integration of services to fulfill certain requirements is another scenario that
comes along with the service-oriented paradigm. Thus, modeling techniques for the
description of the behavior of services in different scenarios and environments that
allow for the generation of a view on the information system from an orchestration
perspective that is dependent on the concrete usage scenario are needed.
4
      </p>
    </sec>
    <sec id="sec-5">
      <title>Implications of Architectural Paradigms for Requirements on</title>
    </sec>
    <sec id="sec-6">
      <title>Conceptual Modeling Methods</title>
      <p>In this section we use an example to demonstrate how the objective of conceptual
modeling changes by altering the architectural paradigm of an information system.
Based on the changes of the objective of conceptual modeling, we have the ability to
derive the changes of the requirements for modeling techniques that are needed to
describe the views on an information system (defined by an architectural paradigm).
These new requirements for conceptual modeling techniques are subsequently
compared with the properties of modeling techniques that are associated with the
respective architectural paradigm. Finally, the differences between claimed and actually
existing properties are examined with respect to the extent to which pragmatic
considerations are the reasons for these differences and how their influence can be used
while developing new modeling techniques.</p>
      <p>To compare two architectural paradigms, we will consult the paradigms three-tier
architecture and service-oriented architecture. Since the architectural paradigm
service-oriented architecture allows for a considerable leeway when designing a concrete
architecture, we narrow the leeway in the following by consulting a concretization of
this architectural paradigm. The service-oriented architecture considered in the
following is combined with a three-tier architecture and the services in this architecture
are only encapsulating functionality on the application layer. As already mentioned
above, the goals for conceptual modeling of information systems can be derived from
the properties of the underlying architectural paradigm. When analyzing the
architectural paradigm three-tier architecture, these properties can be separated in one area for
each of the three layers presentation layer, application layer, and data layer. These
three views on an information system shall be described with respect to the
requirements determined by the potential recipient of the respective view. In the three-tier
architecture, these recipients are: the end-users for the presentation layer, the
presentation layer for the application layer, and the application layer for the data layer. The
requirements of these three recipients for the respective views influence the
requirements for the modeling techniques to be used. Generally speaking, these requirements
include the description of different usage scenarios, the description of provided
functionality including process descriptions, and the description of operations to be
performed by the database management system. These requirements are fulfilled by
numerous modeling techniques, e.g., by the OMG standards UML communication
diagram and UML activity diagram, and by SQL, to name one example for every layer.</p>
      <p>
        Since we assume that our service-oriented architecture is combined with a
threetier architecture, the above mentioned basic views and respective requirements for
modeling techniques also hold for this architecture. Additionally, the architectural
paradigm service-oriented architecture involves new views that imply corresponding
requirements for modeling techniques. In particular, there are three new views to be
considered: two views describing the functionality of a service and how to utilize this
functionality, and one view describing the behavior of services in different scenarios
and environments. However, available modeling techniques are partly neglecting the
requirements associated with these views. While there exist numerous languages for
describing the functionality of a service and how to utilize it—like the Web Service
Description Language (WSDL) [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ], the Business Process Execution Language
(BPEL) [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ], the Web Services Choreography Description Language (WS-CDL) [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ]
or Let’s Dance [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ]—, these languages provide no sufficient support for the
description of the behavior of services in different scenarios and environments. Thus, the
change of the architectural paradigm from three-tier architecture to service-oriented
architecture has a one-sided influence on the development of new modeling
techniques. Modeling techniques fostering the technical integration of services are far
more dominant than techniques supporting the description of the usage context, which
is highly relevant during the orchestration of services to form service-oriented
architectures.
5
      </p>
    </sec>
    <sec id="sec-7">
      <title>Summary and Conclusion</title>
      <p>The proliferation of conceptual modeling methods has generally been acknowledged
to be problematic, both from practical and theoretical points of view. Proposals
regarding our dealings with this proliferation either call for the development of
theoretical foundations or for comparative analyses of conceptual modeling methods.
However, so far none of those proposals proved to address the phenomenon adequately. In
response to this unsatisfactory situation we propose a pragmatic perspective, based on
the conceptualization of the development and selection of conceptual modeling
methods in terms of hierarchies of means–ends relationships. Taking architectural
paradigms in information systems development as context, we have illustrated how the
pragmatic perspective not only helps in gaining an understanding of the proliferation
of conceptual modeling methods but also how this perspective can be used to derive
requirements for conceptual modeling methods. However, due to space limitations we
did not take non-hierarchical constellations of means–ends relationship into
consideration. This is clearly a major limitation of this paper, since strictly hierarchical
constellations of means–ends relationships cannot account for conflicting goals which are
likely to be present in complex information systems development projects. We will
address this issue in another paper.</p>
    </sec>
    <sec id="sec-8">
      <title>Acknowledgements</title>
      <p>We are thankful to the four anonymous reviewers for their many helpful comments
and suggestions that have resulted in improvements of this paper.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <source>Technical Report 92-17</source>
          , Department of Information Systems, University of Nijmegen, Nijmegen, The
          <string-name>
            <surname>Netherlands</surname>
          </string-name>
          (
          <year>1992</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <given-names>Y.</given-names>
            <surname>Wand</surname>
          </string-name>
          , R. Weber: Research Commentary:
          <article-title>Information Systems and Conceptual Modeling-A Research Agenda</article-title>
          .
          <source>Information Systems Research</source>
          ,
          <volume>13</volume>
          ,
          <issue>4</issue>
          (
          <year>2002</year>
          )
          <fpage>363</fpage>
          -
          <lpage>376</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <given-names>N.</given-names>
            <surname>Jayaratna</surname>
          </string-name>
          : Understanding and
          <string-name>
            <given-names>Evaluating</given-names>
            <surname>Methodologies</surname>
          </string-name>
          . NIMSAD:
          <string-name>
            <given-names>A Systemic</given-names>
            <surname>Framework. McGraw-Hill</surname>
          </string-name>
          ,
          <source>Maidenhead</source>
          (
          <year>1994</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <source>In: Proceedings of the ACM Symposium on Applied Computing</source>
          . ACM Press, New York (
          <year>2006</year>
          )
          <fpage>1532</fpage>
          -
          <lpage>1539</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <given-names>A.</given-names>
            <surname>Newell</surname>
          </string-name>
          ,
          <string-name>
            <surname>H. A.</surname>
          </string-name>
          <article-title>Simon: GPS, A Program that Simulates Human Thought</article-title>
          . In: Billings, H. (eds.): Lernende Automaten. Oldenbourg,
          <string-name>
            <surname>München</surname>
          </string-name>
          (
          <year>1961</year>
          )
          <fpage>109</fpage>
          -
          <lpage>124</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>W. Brown</surname>
          </string-name>
          (ed.):
          <article-title>Component-Based Software Engineering: Selected Papers from the Software Engineering Institute</article-title>
          . IEEE Computer Society Press (
          <year>1996</year>
          )
          <fpage>55</fpage>
          -
          <lpage>68</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>P. J. Courtois</surname>
          </string-name>
          :
          <article-title>On Time and Space Decomposition of Complex Structures</article-title>
          .
          <source>Communications of the ACM</source>
          ,
          <volume>28</volume>
          ,
          <issue>6</issue>
          (
          <year>1985</year>
          )
          <fpage>590</fpage>
          -
          <lpage>604</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>B. W.</given-names>
            <surname>Boehm</surname>
          </string-name>
          :
          <article-title>A Spiral Model of Software Development and Enhancement</article-title>
          . IEEE Computer,
          <volume>21</volume>
          ,
          <issue>5</issue>
          (
          <year>1988</year>
          )
          <fpage>61</fpage>
          -
          <lpage>72</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>N.</surname>
          </string-name>
          <article-title>Wirth: Program Development by Stepwise Refinement</article-title>
          .
          <source>Communications of the ACM</source>
          ,
          <volume>14</volume>
          ,
          <issue>4</issue>
          (
          <year>1971</year>
          )
          <fpage>221</fpage>
          -
          <lpage>227</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>D. L. Parnas</surname>
          </string-name>
          <article-title>: On the Criteria To Be Used in Decomposing Systems into Modules</article-title>
          .
          <source>Communications of the ACM</source>
          <volume>15</volume>
          ,
          <issue>12</issue>
          (
          <year>1972</year>
          )
          <fpage>1053</fpage>
          -
          <lpage>1058</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. IEEE:
          <article-title>IEEE Recommended Practice for Architectural Description of Software-Intensive Systems</article-title>
          .
          <source>IEEE Standards 1471-2000</source>
          , ANSI/IEEE (
          <year>2000</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>P.</given-names>
            <surname>Naur</surname>
          </string-name>
          , B.
          <source>Randell: Software Engineering: A Report on a Conference Sponsored by the NATO Science Committee. 7</source>
          .-
          <fpage>11</fpage>
          .
          <year>October 1968</year>
          , Garmisch, NATO Scientific Affairs Division, Brussels (
          <year>1969</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>M. D. McIlroy</surname>
          </string-name>
          :
          <article-title>Mass Produced Software Components</article-title>
          . In: P.
          <string-name>
            <surname>Naur</surname>
          </string-name>
          , B.
          <source>Randell: Software Engineering: A Report on a Conference Sponsored by the NATO Science Committee. 7</source>
          .-
          <fpage>11</fpage>
          .
          <year>October 1968</year>
          , Garmisch, NATO Scientific Affairs Division, Brussels (
          <year>1969</year>
          )
          <fpage>138</fpage>
          -
          <lpage>155</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14. N. Wirth:
          <article-title>Modula: A Language for Modular Multiprogramming</article-title>
          .
          <source>Software - Practice and Experience</source>
          ,
          <volume>7</volume>
          ,
          <issue>1</issue>
          (
          <year>1977</year>
          )
          <fpage>3</fpage>
          -
          <lpage>35</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>K.</given-names>
            <surname>Siau</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Wand</surname>
          </string-name>
          ,
          <string-name>
            <surname>I.</surname>
          </string-name>
          <article-title>Benbasat: Evaluating Information Modeling Methods - A Cognitive Perspective</article-title>
          .
          <source>In: Proceedings of the Workshop on Evaluation of Modeling Methods in Systems Analysis and Design</source>
          . (
          <year>1996</year>
          )
          <fpage>M1</fpage>
          -
          <lpage>M13</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16. Y. Wand:
          <article-title>Ontology as a Foundation for Meta-Modelling and Method Engineering</article-title>
          .
          <source>Information and Software Technology</source>
          ,
          <volume>38</volume>
          ,
          <issue>4</issue>
          (
          <year>1996</year>
          )
          <fpage>281</fpage>
          -
          <lpage>287</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>B. W.</given-names>
            <surname>Boehm</surname>
          </string-name>
          :
          <article-title>A View of 20th and 21st Century Software Engineering</article-title>
          . In: L.
          <string-name>
            <surname>J. Osterweil</surname>
            ,
            <given-names>H. D.</given-names>
          </string-name>
          <string-name>
            <surname>Rombach</surname>
            ,
            <given-names>M. L.</given-names>
          </string-name>
          Soffa (eds.).
          <source>28th International Conference on Software Engineering (ICSE</source>
          <year>2006</year>
          ), Shanghai, China (
          <year>2006</year>
          )
          <fpage>12</fpage>
          -
          <lpage>29</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18. J. Edwards:
          <fpage>3</fpage>
          -
          <string-name>
            <given-names>Tier</given-names>
            <surname>Client</surname>
          </string-name>
          /Server at Work. Wiley, New York (
          <year>1999</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>C. Szyperski: Component Software - Beyond Object-Oriented Programming</surname>
          </string-name>
          .
          <source>AddisonWesley</source>
          , Boston (
          <year>2002</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>M. P. Papazoglou: Service-Oriented</surname>
            <given-names>Computing</given-names>
          </string-name>
          :
          <article-title>Concepts, Characteristics and Directions</article-title>
          .
          <source>In: Proceedings of the Fourth International Conference on Web Information Systems Engineering</source>
          (
          <year>2003</year>
          )
          <fpage>3</fpage>
          -
          <lpage>12</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21. E.
          <string-name>
            <surname>Christensen</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          <string-name>
            <surname>Curbera</surname>
            , G. Meredith,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Weerawarana: Web Services Description Language</surname>
          </string-name>
          (WSDL),
          <source>version 1</source>
          .1,
          <string-name>
            <surname>March</surname>
          </string-name>
          <year>2001</year>
          . Available at http://www.w3.org/TR/wsdl
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <given-names>T.</given-names>
            <surname>Andrews</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Curbera</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Dholakia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Goland</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Klein</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Leymann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Liu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Roller</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Smith</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Thatte</surname>
          </string-name>
          , I. Trickovic,
          <string-name>
            <surname>S.</surname>
          </string-name>
          <article-title>Weerawarana: Business Process Execution Language for Web Services</article-title>
          , version
          <volume>1</volume>
          .1, May
          <year>2003</year>
          . Available at: http://www106.ibm.com/developerworks/webservices/library/ws-bpel
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <given-names>N.</given-names>
            <surname>Kavantzas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Burdett</surname>
          </string-name>
          , G. Ritzinger, Y.
          <source>Lafon: Web Services Choreography Description Language Version</source>
          <volume>1</volume>
          .0,
          <string-name>
            <given-names>W3C</given-names>
            <surname>Candidate</surname>
          </string-name>
          <string-name>
            <surname>Recommendation</surname>
          </string-name>
          ,
          <year>November 2005</year>
          . http://www.w3.org/TR/ws-cdl-10
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>J. M. Zaha</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Barros</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Dumas</surname>
          </string-name>
          , A. ter Hofstede:
          <article-title>Let's Dance: A Language for Service Behavior Modeling</article-title>
          .
          <source>In: Proceedings of the Fourteenth International Conference on Cooperative Information Systems (CoopIS)</source>
          , Montpellier, France,
          <year>2006</year>
          , LNCS 4275.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>