<!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>Ontological Analysis of KAOS Using Separation of Reference ∗</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Raimundas Matulevičius</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Patrick Heymans</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Andreas L. Opdahl</string-name>
          <email>Andreas.Opdahl@uib.no</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Computer Science Department, University of Namur</institution>
          ,
          <country country="BE">Belgium</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Department of Information Science and Media Studies, University of Bergen</institution>
          ,
          <country country="NO">Norway</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Goal modelling is emerging as a central requirements engineering (RE) technique. Unfortunately, current goal-oriented languages are not interoperable with one another or with modelling languages that address other modelling perspectives. This is a problem because the emerging generation of modeldriven information systems are likely to depend on coordinated use of several modelling languages to represent different perspectives on the enterprise and its proposed information system. The paper applies a structured approach to describe a well-known goal-oriented language, KAOS, by mapping it onto a philosophically grounded ontology. The structured approach facilitates language interoperability because, when other languages are described using the same approach, they become mapped onto the same ontology. The approach thereby provides an intermediate language for comparison, consistency checking, update reflection, view synchronisation and, eventually, model-to-model translation both between goal-oriented languages and between different languages.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Goal-oriented modelling has become an important technique during early IS
development stages. Current trends towards model-driven IS development and
agentoriented IS makes it likely that the importance of goal modelling will continue to
increase. One central goal-oriented language is Knowledge Acquisition in autOmated
Specification (KAOS) [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. In addition to the conventional what, it offers a
multiperspective approach to specifying the why, who and when of enterprises and their IS.
Like other modelling languages, KAOS does not support all aspects and phases of IS
development equally well. For example, it offers strong support for representing,
reasoning about and specifying trust during analysis and specification, but it offers
less support for tracing and realising trust concerns during design and system
generation. In addition, an intermediate language is needed to support integrated
management of enterprise, IS, and problem domain models expressed in different languages.
∗ This work is partially supported by the Commission of the European Communities under the
sixth framework programme (InterOP Network of Excellence, Contract 508011), URL:
http://www.interop-noe.org/.
      </p>
      <p>
        This paper presents a preliminary ontological analysis of KAOS using separation
of reference [
        <xref ref-type="bibr" rid="ref18 ref19">18, 19</xref>
        ], a technique that analyses modelling languages by first breaking
each construct down into its ontologically primitive parts and then mapping the parts
onto a common ontology that elaborates the Bunge-Wand-Weber (BWW)
representation model [
        <xref ref-type="bibr" rid="ref26 ref27">26, 27</xref>
        ] and Bunge’s philosophical ontology [
        <xref ref-type="bibr" rid="ref4 ref5">4, 5</xref>
        ]. The aim is to facilitate
comparison, consistency checking, update reflection, view synchronisation and,
eventually, model-to-model translation both between goal-oriented languages and across
language families. The current work is a part of a larger effort to establish an
intermediate language that supports integrated use of enterprise models expressed in
different languages. The approach used in this paper is currently being applied to
develop version 2 of the Unified Enterprise Modelling Language (UEML).
      </p>
      <p>The paper is structured as follows: Section 2 provides the theoretical research
background. Section 3 describes the research method. Results are presented in
Section 4 and discussed in Section 5. Finally, in Section 6 we conclude and give
directions for future work.</p>
    </sec>
    <sec id="sec-2">
      <title>2 Theory</title>
      <p>
        2.1 KAOS
This section discusses KAOS’ main features and introduces the UEML approach.
The paper uses the KAOS definition in [
        <xref ref-type="bibr" rid="ref15 ref25">15, 25</xref>
        ], the latest self-contained description
we know of, although it does not take into account recent language extensions [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ].
The main purpose of KAOS is to ensure that high-level goals are identified and
progressively refined into precise operational statements, which are then assigned to
agents of the software-to-be and its environment. Together, the two form the
socalled (composite) system-to-be. In this process, various alternative goal assignments
and refinements are considered until the most satisfactory solution can be chosen.
      </p>
      <p>
        The KAOS approach consists of a modelling language, a method, and a software
environment. In this paper, we will consider only the KAOS modelling language –
called KAOS, from now on. A KAOS model includes a goal model, an object model,
an agent model and an operation model. Each of them has a graphical and a textual
syntax. Some constructs can be further defined using the KAOS real-time temporal
logic1 in order to facilitate rigorous reasoning. For sake of brevity, we will introduce
KAOS through examples from the London Ambulance Service system, adapted from
[
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] and shown in Fig. 1. Our focus is the goal model, but agent, object and operation
models cannot be excluded completely, as all KAOS models are interrelated.
      </p>
      <p>A goal is a prescriptive assertion that captures an objective which the system-to-be
should meet. Goals are either maintain, avoid, achieve and cease goals. For example,
goal AccurateLocationInfoOnNonStationaryAmbulance follows the maintain
pattern in which a property always holds.
AmbulanceAllocationBasedOnInci1 See FormalDef in the textual goal syntax in Fig. 1.
dentForm follows the achieve pattern where a property eventually holds. A goal is
refined through G-refinement, which relates a set of subgoals whose conjunction,
possibly together with domain properties, contributes to the satisfaction of the goal.
A goal can have alternative G-refinements (e.g. AccurateStationaryInfo). A set
of goals is conflicting if these goals cannot be achieved together (e.g.
LocationContactedByPhone and InformationSentByEMail). This means that under some
boundary condition these goals become logically inconsistent in a considered domain.</p>
      <p>
        An object (e.g. Ambulance in the object model in Fig. 1) is a thing of interest in
the system. Its instances can be distinctly identified and may evolve from state to
state. Objects have attributes. Goals concern objects and attributes (see Def in
textual goal syntax in Fig. 1). An agent plays a role towards a goal’s satisfaction by
monitoring or controlling object behaviour. Goals are refined until they are assigned
to individual agents. A goal effectively assigned to a software agent (e.g. CAD —
Computer Aided Despatch) is called a requirement. A goal effectively assigned to an
environment agent (e.g. Ambulance Staff) is called an expectation (assumption in
[
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]). An operation is an input-output relation over objects. Operations are
characterised textually by domain and required conditions. Whenever the required conditions
hold, performing the operations satisfies the goal. If a goal is operationalised and has
a responsible agent, the latter performs the operations (see operation model in Fig. 1).
      </p>
      <sec id="sec-2-1">
        <title>2.2 The UEML approach</title>
        <p>
          The UEML approach [
          <xref ref-type="bibr" rid="ref18 ref19">18, 19</xref>
          ] builds on the BWW model [
          <xref ref-type="bibr" rid="ref26 ref27">26, 27</xref>
          ] and Bunge’s
ontology [
          <xref ref-type="bibr" rid="ref4 ref5">4, 5</xref>
          ] to describe modelling constructs in a way that facilitates precise
language integration. The approach adapts BWW-model analysis in two ways: Firstly,
whereas the BWW model only maps a construct onto an ontological concept in
general, such as class, property, state or event, the UEML approach maps it onto a
specific ontological class, property, state or event. Secondly, whereas the BWW model
usually maps a construct onto single ontological concept, the UEML approach
recognises that a construct may represent a scene where multiple classes, properties, states
and events play parts. The UEML approach offers a structured approach to construct
description, where the description of each construct is separated into descriptions of:
– Instantiation level: Is the construct intended to represent individual things and their
particular properties, states and events? Is it intended to represent classes and their
characteristic properties, states and events? Can it be used to represent both levels?
– Classes: Which thing or class of things in the problem domain is the construct
intended to represent? Even when a construct primarily represents a property, state
or event, this field remains relevant, because every property, state or event must be
a property in, state of, or event in, a specific thing or class. A construct definition
can have several class entries, because some constructs are even intended to
represent more than one thing or class at the same time.
– Properties: Which property or properties in the problem domain is the construct
intended to represent? Again, even when a construct primarily represents not a
property but, e.g., a state or event, this field is relevant, because every state or
event pertains to one or more properties. This entry can also be repeated.
– Behaviour: Even when two modelling constructs are intended to represent the
same properties of the same things or classes, they may be intended to represent
different behaviours. For example, one modelling construct may be intended to
represent just their existence, i.e., a static representation. Other modelling
constructs may be intended to represent a state of the classes, things or properties, or
an event, or a process, i.e., alternative dynamic representations.
– Modality: Although we are used to think about enterprise and IS models as stating,
or asserting, what is the case, not all modelling constructs are intended for stating
assertions. Other types of constructs are intended to represent recommendations,
obligations, permission etc. The modality entry is used to identify such constructs.
The various ontological concepts – i.e., the classes, properties, states and events – that
are used to describe modelling constructs are maintained in a common ontology. The
common ontology was initially derived from the BWW model and Bunge’s ontology
and is designed to grow incrementally as additional classes, properties, states and
events are introduced in order to describe new modelling constructs. Its classes,
properties, states and events are organised in abstraction hierarchies in order to simplify
ontology management and facilitate language integration. In consequence, when two
modelling constructs – either from the same or from different languages – have both
been described using the UEML approach, the exact relationship between them can
be identified through their mappings onto the common ontology, paving the way for
comparison, consistency checking, update reflection, view synchronisation and,
eventually, model-to-model translation.
        </p>
        <p>Initial attempts to use the UEML approach were made by the InterOP partners,
who applied it to describe BPMN, coloured Petri-nets, GRL, ISO/DIS 19440, UEML
1.0, selected diagram types of UML 2.0. Language descriptions are currently being
negotiated and entered into the Protege-OWL based prototype tool, called
UEMLBase.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3 Research method</title>
      <p>
        The research method has two main steps: (1) defining KAOS’ abstract syntax and (2)
applying the UEML approach to selected KAOS constructs from the abstract syntax.
Getting a precise view of KAOS’ constructs and their interrelations was not an easy
task. A part of the metamodel is exposed in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] through structures and
metaconstraints, described in conventional mathematics but intertwined with other topics.
In [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ], all focus is on the metamodel, but the author uses non-standard constructions
to visualise it, omitting some multiplicities, specialisation-related constraints and
abstract classes. Furthermore, integrity constraints are only given partially and
informally. To facilitate analysis, we represented our understanding of KAOS in a UML
2.0 class diagram shown in Fig. 22. Our metamodel focuses on the goal model, the
main object of our analysis, but also includes a few closely related constructs from
the other KAOS models.
      </p>
    </sec>
    <sec id="sec-4">
      <title>4 Results</title>
      <p>Table 1 outlines how the KAOS constructs have been represented in terms of the
common ontology. For each construct, the table indicates (1) the instantiation level
(type or instance), (2) the primary class of things or property of this class, (2) the type
of behaviour that the construct is intended to represent and (4) modality. Although a
construct may be intended to represent more than one class and/or more than one
property, we have only indicated the most important (“primary”) ones in the table3.
2 Our metamodel together with formalised integrity constraints is elaborated in a report
available at http://www.info.fundp.ac.be/_rma/KAOSanalysis/KAOSmetaModel.pdf
3 The complete, construct descriptions are available at
http://www.info.fundp.ac.be/_rma/KAOSanalysis/KAOSconstructs.pdf
In order to illustrate the approach, we will present the Goal construct, which is central
in KAOS, in greater detail. We will discuss the five parts of the UEML approach –
instantiation level, classes, properties, behaviour and modality – separately.</p>
      <p>Instantiation level: A Goal can be used to restrict either individual Objects or
Objects that represent classes of individuals. The instantiation level of Goal is
therefore both, i.e., either instance level or type level.</p>
      <p>Classes: A KAOS Goal says something about two things (if at the instance level)
or two classes of things (if at the type level): There is the goalOwner, i.e., the thing or
class that holds the intent of reaching the Goal, and there is the concernedObject, i.e.,
the thing or class for which a certain state must be maintained or avoided or a certain
event must be achieved or ceased for the goal to be reached. In the common ontology,
the goalOwner is mapped onto the class of ActiveThings, because attempting to reach
a goal entails activity. Possibly, goalOwner can be mapped onto a more specific class
of ActorThings, i.e., ActiveThings that also hold Goals. The concernedObject is
mapped onto the class of ActedOnComponentThings in the common ontology, a
common subclass of ActedOnThings and ComponentThings. They are ActedOnThings
because attempting to reach a goal entails acting on the object. They are
ComponentThings because a concernedObject in KAOS is always a component of the system.</p>
      <p>Both the goalOwner and the concernedObject can be composite, e.g., to account
for complex Goals held by a group of people, or for goals about a collection of
things/classes. However, we do not map them, even more specifically, onto the
classes of CompositeActiveThings and CompositeActedOnThings, respectively,
because they do not have to represent composite things.</p>
      <p>Properties: A KAOS Goal represents a particular group of properties of
goalOwners and concernedObjects. The “primary” property represented by a KAOS Goal is a
complex law property of the goalOwner. We call this property simply theGoal. It is a
law because it restricts the states or transformations that the concernedObject can
undergo. It is complex because it enforces this restriction by restricting the various
properties (or attributes) that a concernedObject may possess.</p>
      <p>Fig. 3 illustrates this situation informally4. The goalOwner class/thing possesses a
single complex theGoal law property. The concernedObject class/thing possesses one
or more objAttribute non-law properties. These properties are also sub-properties of
theGoal : They are the properties that theGoal restricts, thereby also restricting the
states and transformations that concernedObject can undergo. In the common
ontology, theGoal is mapped onto ComplexLawProperty.</p>
      <p>
        Fig. 3 thus captures the gist of our interpretation of Goal, making it possible to
discuss its semantics on a very detailed level, which might go into further depth:
– A KAOS Goal has further characteristics, namely name, def, formalSpec,
priority and category, which are subproperties of the theGoal property too.
– In KAOS there is a difference between objAttributes that are explicitly mentioned
in the Goal’s def and those that are left implicit that are not known by the analyst.
4 Fig. 3 simplifies an UML object diagram that instantiates the metameta model, presented in
[
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. Similar object diagrams are shown in [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], but they are too detailed for this brief outline.
A KAOS Goal has even further properties, such as the ability to be assigned, refined,
operationalised and conflicting, which are left out here because they are considered in
descriptions of other constructs (like Assignement, G-refinement,
Operationalisation and Conflict).
      </p>
      <p>Behaviour: The behaviour entry for Goal is simple. A Goal just states the
existence of property theGoal, as opposed to constructs that represent particular states of,
or events in, one or more properties.</p>
      <p>Modality: The modality entry makes it clear that a Goal does not just assert a fact,
but denotes the desire or wish of the goalOwner to reach theGoal with respect to the
concernedObject.</p>
      <p>The Goal subtypes MaintainGoal, AchieveGoal, AvoidGoal, and CeaseGoal,
just refine the ontological grounding of their supertype by indicating which kind of
law theGoal is. In Table 1 MaintainGoal and AvoidGoal are state laws, indicating
the allowable (resp. forbidden) states concernedObjects can be in. AchieveGoal and
CeaseGoal indicate that a change is required between a state where the
concernedObjects’ properties are false (resp. true) and one where they are true (resp. false). In
BWW, this amounts to a transformation law.</p>
    </sec>
    <sec id="sec-5">
      <title>5 Discussion</title>
      <p>
        The section discusses KAOS and the UEML approach with respect to our analysis. It
also compares our approach with related work of language evaluation and integration.
5.1 KAOS
The first problem we encountered was the lack of a standard, consistent description of
the KAOS syntax. Hence, our proposal for abstract syntax – a standard notation like
UML class diagrams complemented with OCL constraints –could serve as a basis for
a complete metamodel of KAOS. Regarding concrete syntax, we could observe
variations between the sources, too. Once a metamodel is in place, concrete visualisations
and variations can be established more clearly. Our major concern is semantics.
KAOS goal model is now equipped with an ontological semantics defined through
the UEML approach. The approach could be used to identify discrepancies in
language definitions. However, this paper concentrates on making the semantics explicit
for later evaluation, comparison and integration. Still, some observations can be
made. We note the intensive use of BWW-model law, mutual and complex property
to ground KAOS constructs ontologically (see Table 1). Indeed, we could observe
intensive use of complex properties in previous analyses [
        <xref ref-type="bibr" rid="ref18 ref7">7, 18</xref>
        ] too. The use of laws
might be influenced by the goal-oriented context, because all the four types of KAOS
goal map to law properties, elegantly matching the BWW model’s distinction
between state and transformation law. This demonstrates a convergence of KAOS’
ontological semantics with its existing formal (modal logic-based) semantics. A
detailed evaluation of KAOS will be envisaged when the other KAOS models will be
analysed.
      </p>
      <sec id="sec-5-1">
        <title>5.2 Goal-oriented approaches</title>
        <p>
          Besides KAOS the most notable goal-oriented approaches include i* [
          <xref ref-type="bibr" rid="ref28">28</xref>
          ], GRL [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ],
Tropos [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ], GBRAM [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ], NFR [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] and Lightswitch [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ]. Kavakli and Loucopoulos
examined 15 and classified them along four dimensions: “usage” (what RE activity
does goal modelling contribute to?), “subject” (what is the nature of goals?),
“representation” (how are goals expressed?) and “development” (how are goal models
developed and used?) [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. The survey shows that, taken separately, each approach
tends to focus only on one “usage”. For example, i* focuses on understanding the
current organisational situation, while KAOS and NFR concentrate on relating
business goals to system components. At the “subject” level, approaches use different
definitions and categories of goals. At the “representation” level, approaches come
with their own language syntax, semantics and degree of formality. The survey
concludes that (1) the research area is fragmented; but (2) “contributions from different
frameworks seem to complement each other”. The authors argue for more integration
efforts to “obtain a stronger framework that takes advantage of the many streams of
goal-oriented research” [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]. In further work [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], “usage”-level integration is
proposed through a unifying goal-oriented method meta-model. Processes of existing
approaches were modelled as a move towards integrated goal-oriented processes.
However, a main obstacle to such integration is fragmentation at the “subject” and
“representation” levels. In our work we address “representation” and “subject” levels
by providing the base for KAOS semantic integration with other languages.
        </p>
        <p>
          Recently, a comparison of various notions of goal in RE was performed by Regev
and Wegmann in [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ]. The authors examine the definitions of goal and related
concepts found in KAOS, GBRAM and GRL. They propose to redefine the notions
based on the “regulation” concept borrowed from system theory. The work results
with the definitions of, and the interrelations between the key concepts made more
precise and theoretically grounded. But the authors suggest formalisation of
definitions using the BWW model. By mapping KAOS and other goal-oriented languages
to a common ontology based on BWW, we open the way for an accurate, systematic
and tool-supported comparison of notations at the syntactic and semantic levels.
        </p>
        <p>
          IS and enterprise modelling require considering goals but also many other
perspectives like data, process, and architecture. Integration is thus not only necessary
between goal techniques but also across different modelling perspectives.
Groundbreaking work reported in [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] combined goals with scenarios to improve business process
re-engineering. Others have investigated the interplay between goals and other
modelling techniques (e.g. [
          <xref ref-type="bibr" rid="ref16 ref17 ref8">8, 16, 17</xref>
          ]). Three results directly concern KAOS. In [
          <xref ref-type="bibr" rid="ref24">24</xref>
          ], a
procedure is devised to infer KAOS goals from scenarios. In [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ], formal behavioural
software specifications are built by stepwise refinement of KAOS models. Finally, [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]
suggests to embed KAOS within the UML by proposing a KAOS UML profile.
However, cross-language relationships are either informal [
          <xref ref-type="bibr" rid="ref16 ref2">2, 16</xref>
          ] or ad-hoc [
          <xref ref-type="bibr" rid="ref14 ref17 ref24 ref8">8, 14, 17, 24</xref>
          ].
They are not based on an explicit mapping to an intermediate semantic representation.
Defining KAOS as a UML profile [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] can make the transformation definition more
standard by relying on general-purpose mechanisms developed around the UML.
However, the UML definition is the source of many problematic referential issues
[
          <xref ref-type="bibr" rid="ref13 ref20">13, 20</xref>
          ], so semantic consistency of transformations is not guaranteed.
        </p>
      </sec>
      <sec id="sec-5-2">
        <title>5.3 Evaluation of the UEML approach</title>
        <p>The KAOS analysis indicates that the UEML approach is difficult to use because it is
based on a particular way of thinking. It is hard to (1) determine exactly which
language part constitutes a modelling construct; (2) find the appropriate classes,
properties, states and events in the common ontology to use when describing a construct; (3)
judge when to choose an existing class, property, state or event in the ontology and
when to define a new one. In consequence, the UEML approach, with its ambition to
facilitate inter-subjective construct descriptions, can produce subjective results.
Problems of this kind are not surprising given that the UEML approach is ambitious and
still new. We are currently looking for ways to countering them, including extended
tool support, better documentation and improving/simplifying the approach itself.</p>
        <p>The KAOS analysis also highlights several advantages the UEML approach. It
offers (1) a detailed advice on how to proceed when analysing individual language
constructs; (2) construct description at a high level of detail, which tends to integrate
languages at a fine-grained level which leads to complete and easily comparable
construct descriptions; (3) ontological analysis in terms of particular classes, properties,
states and events, and not just in terms of the concepts in general; (4) a path towards
tool supported, integrated use of models expressed in different languages, through the
structured format in combination with the common ontology. Finally, it has positive
externality, in the sense that each construct becomes easier to incorporate as more
constructs are already added to UEML and each language becomes easier to
incorporate as more languages are already added. The UEML approach offers a systematic
way of revealing and managing the ontological assumptions inherent in a language.</p>
        <p>
          With respect to the semiotic quality framework [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ], the UEML approach suggests
an analytically sound way of reaching the goals of syntactic and semantic quality. But
it leaves aside other quality types, such as pragmatic, empirical, physical, perceived
semantic and social quality.
        </p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>6 Conclusions</title>
      <p>We have presented our use of the UEML approach to provide an preliminary
ontological grounding of the core concepts of the KAOS language. Mapping KAOS and
other goal-oriented languages to a common well accepted ontological model such as
the BWW model is a way to reduce the observed fragmentation in this research area.
Once discussed, compared and validated by the community, these mappings can serve
as a basis either (1) to create a unique, integrated, expressively complete5
goalmodelling language, or (2) to devise semantic-preserving model transformations,
consistency rules or view synchronization mechanisms to cross language families and
hence exchange goal models between process fragments. Model interoperability
across modelling perspectives can be achieved in the same way and will be explored
in the InterOP project on the basis of our results.</p>
      <p>Currently a prototype tool, UEMLBase, is under development. It helps automating
the UEML approach for defining and for finding common integration points based on
the mappings. The tool will also help future negotiation of construct definitions made
by different (groups of) researchers in order to reach consensus and include these
constructs to the next UEML version.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>I.</given-names>
            <surname>Anton</surname>
          </string-name>
          .
          <article-title>Goal-based Requirements Analysis</article-title>
          .
          <source>In Proceedings of the 2nd Int. Conference on Requirements Engineering (ICRE '96)</source>
          , IEEE Computer Society,
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>A. I.</given-names>
            <surname>Anton</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W. M.</given-names>
            <surname>McCracken</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Potts</surname>
          </string-name>
          .
          <article-title>Goal Decomposition and Scenario Analysis in Business Process Reengineering</article-title>
          .
          <source>In Proc. of the 6th Int. conference on Advanced Information Systems Engineering (CAiSE'94)</source>
          , Springer-Verlag,
          <year>1994</year>
          , pp
          <fpage>94</fpage>
          -
          <lpage>104</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>P.</given-names>
            <surname>Bresciani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Perini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Giorgini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Giunchiglia</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Mylopoulos</surname>
          </string-name>
          .
          <source>Tropos: An Agentoriented Software Development Methodology. Autonomous Agents and Multi-Agent Systems</source>
          ,
          <volume>8</volume>
          (
          <issue>3</issue>
          ),
          <year>2004</year>
          , pp.
          <fpage>203</fpage>
          -
          <lpage>236</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>M.</given-names>
            <surname>Bunge. Ontology</surname>
          </string-name>
          <string-name>
            <surname>I</surname>
          </string-name>
          :
          <article-title>The Furniture of the World</article-title>
          .
          <source>In Treatise on Basic Philosophy</source>
          , volume
          <volume>3</volume>
          .
          <string-name>
            <surname>Reidel</surname>
          </string-name>
          , Boston,
          <year>1977</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>M.</given-names>
            <surname>Bunge</surname>
          </string-name>
          .
          <source>Ontology II: A World of Systems. In Treatise on Basic Philosophy</source>
          , volume
          <volume>4</volume>
          .
          <string-name>
            <surname>Reidel</surname>
          </string-name>
          , Boston,
          <year>1979</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>K. L. Chung</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Nixon</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Mylopoulos</surname>
            , and
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Yu</surname>
          </string-name>
          .
          <article-title>Non-Functional Requirements in Software Engineering</article-title>
          . Kluwer Academic Publishers, Boston,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>G.</given-names>
            <surname>Dallons</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Heymans</surname>
          </string-name>
          ,
          <string-name>
            <given-names>and I.</given-names>
            <surname>Pollet</surname>
          </string-name>
          .
          <article-title>A Template-based Analysis of GRL</article-title>
          .
          <source>In Proceedings of the 10th Int. Workshop on Exploring Modeling Methods in Systems Analysis and Design (EMMSAD'05)</source>
          , Porto,
          <year>June 2005</year>
          . FEUP Edicoes, pp.
          <fpage>493</fpage>
          -
          <lpage>504</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>E.</given-names>
            <surname>Dubois</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Yu</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Petit</surname>
          </string-name>
          .
          <article-title>From Early to Late Requirements: a Process-control Case Study</article-title>
          .
          <source>In Proc. of the 9th Int. Workshop on Software Specification and Design (IWSSD'98)</source>
          , Isobe Japan,
          <year>April 1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>W.</given-names>
            <surname>Heaven</surname>
          </string-name>
          and
          <string-name>
            <surname>A. Finkelstein. UML</surname>
          </string-name>
          <article-title>Profile to Support Requirements Engineering with KAOS</article-title>
          .
          <source>IEE Proceedings - Software</source>
          ,
          <volume>151</volume>
          (
          <issue>1</issue>
          ),
          <year>February 2004</year>
          , pp.
          <fpage>10</fpage>
          -
          <lpage>27</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. ITU. Recommendation
          <string-name>
            <surname>Z.</surname>
          </string-name>
          151
          <source>(GRL) - Version 3</source>
          .0,
          <year>September 2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>E.</given-names>
            <surname>Kavakli</surname>
          </string-name>
          .
          <article-title>Goal-oriented Requirements Engineering: a Unifying Framework</article-title>
          .
          <source>Requirements Engineering Journal</source>
          ,
          <volume>6</volume>
          (
          <issue>4</issue>
          ),
          <year>2002</year>
          , pp.
          <fpage>237</fpage>
          -
          <lpage>251</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12. E. Kavakli and
          <string-name>
            <given-names>P.</given-names>
            <surname>Loucopoulos</surname>
          </string-name>
          . Goal Modeling in Requirements Engineering:
          <article-title>Analysis and Critique of Current Methods</article-title>
          . In J. Krogstie,
          <string-name>
            <given-names>T.</given-names>
            <surname>Halpin</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Siau</surname>
          </string-name>
          , (eds.),
          <source>Information Modeling Methods and Methodologies, IDEA</source>
          ,
          <year>2005</year>
          , pp.
          <fpage>102</fpage>
          -
          <lpage>124</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>J.</given-names>
            <surname>Krogstie</surname>
          </string-name>
          .
          <article-title>Evaluating UML Using a Generic Quality Framework</article-title>
          .
          <source>In UML and the Unified Process</source>
          ,
          <string-name>
            <surname>IDEA</surname>
          </string-name>
          , Hershey, PA, USA,
          <year>2003</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>22</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>R. D. Landtsheer</surname>
          </string-name>
          , E. Letier,
          <article-title>and</article-title>
          <string-name>
            <given-names>A. van Lamsweerde. Deriving</given-names>
            <surname>Tabular</surname>
          </string-name>
          Event
          <article-title>-based Specifications from Goal-oriented Requirements Models</article-title>
          .
          <source>In Proc. of the 11th IEEE Int. Conference on Requirements Engineering (RE'03)</source>
          ,
          <year>2003</year>
          . IEEE Computer Society, pp.
          <fpage>200</fpage>
          -
          <lpage>210</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>E.</given-names>
            <surname>Letier</surname>
          </string-name>
          .
          <article-title>Reasoning about Agents in Goal-Oriented Requirements Engineering</article-title>
          .
          <source>PhD thesis</source>
          , Universit´e Catholique de Louvain,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16. L. Liu and
          <string-name>
            <given-names>E.</given-names>
            <surname>Yu</surname>
          </string-name>
          .
          <article-title>Designing Information Systems in Social Context: a Goal and Scenario Modelling Approach</article-title>
          .
          <source>Journal of Information Systems</source>
          ,
          <volume>29</volume>
          (
          <issue>2</issue>
          ),
          <year>2004</year>
          , pp.
          <fpage>187</fpage>
          -
          <lpage>203</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>J. Mylopoulos</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Kolp</surname>
            , and
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Castro</surname>
          </string-name>
          .
          <article-title>UML for Agent-oriented Development: the Tropos Proposal</article-title>
          .
          <source>In Proc. of the 4th Int. Conference on the Unified Modeling Language, Modeling Languages, Concepts</source>
          , and
          <string-name>
            <surname>Tools</surname>
          </string-name>
          ,
          <year>2001</year>
          , pp.
          <fpage>422</fpage>
          -
          <lpage>441</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <given-names>A. L.</given-names>
            <surname>Opdahl</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Henderson-Sellers</surname>
          </string-name>
          .
          <article-title>A Template for Defining Enterprise Modeling Constructs</article-title>
          .
          <source>Journal of Database Management (JDM)</source>
          ,
          <volume>15</volume>
          (
          <issue>2</issue>
          ),
          <year>2004</year>
          , pp.
          <fpage>39</fpage>
          -
          <lpage>73</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>A. L.</given-names>
            <surname>Opdahl</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Henderson-Sellers</surname>
          </string-name>
          .
          <article-title>Template-Based Definition of Information Systems and Enterprise Modelling Constructs</article-title>
          . In P. Green and
          <string-name>
            <given-names>M.</given-names>
            <surname>Rosemann</surname>
          </string-name>
          , (eds.),
          <source>Business Systems Analysis with Ontologies. IDEA</source>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <given-names>A. L.</given-names>
            <surname>Opdahl</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Henderson-Sellers</surname>
          </string-name>
          .
          <article-title>A Unified Modeling Language without Referential Redundancy. Data and Knowledge Engineering (DKE)</article-title>
          . Special Issue on “Quality in Conceptual Modelling”,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <given-names>G.</given-names>
            <surname>Regev</surname>
          </string-name>
          .
          <article-title>A Systemic Paradigm for Early IT System Requirements Based on Regulation Principles: The Lightswitch Approach</article-title>
          .
          <source>PhD thesis</source>
          ,
          <source>Swiss Federal Institute of Technology (EPFL)</source>
          ,
          <year>August 2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <given-names>G.</given-names>
            <surname>Regev</surname>
          </string-name>
          and
          <string-name>
            <given-names>A.</given-names>
            <surname>Wegmann</surname>
          </string-name>
          .
          <article-title>Where do Goals Come From: the Underlying Principles of Goal-oriented Requirements Engineering</article-title>
          .
          <source>In Proc. of the 13th IEEE Int. Conference on Requirements Engineering (RE05)</source>
          , Paris, France,
          <year>August 2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23. A. van Lamsweerde.
          <article-title>Elaborating Security Requirements by Construction of Intentional Anti-models</article-title>
          .
          <source>In Proc. of the 26th Int. Conference on Software Engineering (ICSE'04)</source>
          , IEEE Computer Society,
          <year>2004</year>
          , pp.
          <fpage>148</fpage>
          -
          <lpage>157</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>A. van Lamsweerde</surname>
            and
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Willemet</surname>
          </string-name>
          .
          <article-title>Inferring Declarative Requirements Specifications from Operational Scenarios</article-title>
          .
          <source>IEEE Trans. on Soft. Eng.</source>
          ,
          <volume>24</volume>
          (
          <issue>12</issue>
          ),
          <year>1998</year>
          , pp.
          <fpage>1089</fpage>
          -
          <lpage>1114</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25. A. van Lamsweerde.
          <article-title>The KAOS Meta-model: Ten Years After</article-title>
          .
          <source>Technical report</source>
          , Universite Catholique de Louvain,
          <year>1993</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Wand</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Weber</surname>
          </string-name>
          .
          <source>On the Ontological Expressiveness of Information Systems Analysis and Design Grammars. Journal of Information Systems</source>
          ,
          <volume>3</volume>
          ,
          <year>1993</year>
          , pp.
          <fpage>217</fpage>
          -
          <lpage>237</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <given-names>Y.</given-names>
            <surname>Wand</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Weber</surname>
          </string-name>
          .
          <article-title>On the Deep Structure of Information Systems</article-title>
          .
          <source>Journal of Information Systems</source>
          ,
          <volume>5</volume>
          ,
          <year>1995</year>
          , pp.
          <fpage>203</fpage>
          -
          <lpage>223</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <given-names>E.</given-names>
            <surname>Yu</surname>
          </string-name>
          .
          <article-title>Towards Modeling and Reasoning Support for Early-phase Requirements Engineering</article-title>
          .
          <source>In Proc. of the 3rd IEEE Int. Symposium on Requirements Engineering (RE'97)</source>
          , IEEE Computer Society,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>