<!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>OperettA: Organization-Oriented Development Environment</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Huib Aldewereld Utrecht University</institution>
          ,
          <country country="NL">The Netherlands</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Virginia Dignum Delft University of Technology</institution>
          ,
          <country country="NL">The Netherlands</country>
        </aff>
      </contrib-group>
      <fpage>14</fpage>
      <lpage>20</lpage>
      <abstract>
        <p>-The increasing complexity of distributed applications requires new modeling and engineering approaches. Such domains require representing the regulating structures explicitly and independently from the acting components (or agents). Organization computational models, based on Organization Theory, have been advocated to specify such systems. In this paper, we present the organizational modeling approach OperA and a graphical environment for the specification and analysis of organizational models, OperettA. OperA provides an expressive way for defining open organizations distinguishing explicitly between the organizational aims, and the agents who act in it.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>I. INTRODUCTION</title>
      <p>The engineering of applications for complex and dynamic
domains is an increasingly difficult process. Requirements
and functionalities are not fixed a priori, components are not
designed nor controlled by a common entity, and unplanned
and unspecified changes may occur during runtime. There
is a need for representing the regulating structures explicitly
and independently from the acting components (or agents).
Organization computational models, based on Organization
Theory, have been advocated to specify such systems.</p>
      <p>
        Traditionally, Multi-Agent Systems (MAS) stress the
autonomy and encapsulation characteristics of agents. In such
agentcentric view, interactions between agents are mostly seen as
speech acts whose meaning may be described in terms of
the mental states of an agent. As systems grow to include
hundreds or thousands of agents, it is necessary to move
from an agent-centric view of coordination and control to an
organization-centric one. Organizations provide stable means
for coordination that enable the achievement of global goals.
In this sense, organization models play a critical role in the
development of larger and more complex MAS [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        Comprehensive analysis of several agent systems has shown
that different design approaches are appropriate for different
domain characteristics [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. In particular, agent organization
frameworks are suitable to model complex environments
where many independent entities coexist witing explicit
normative and organizational structures and global specification
of control measures is necessary.
      </p>
      <p>
        Models for agent organizations must, on the one hand, be
able to specify global goals and requirements but, on the other
hand, cannot assume that participating actors will always act
according to the needs and expectations of the system design.
Concepts as organizational rules [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ], norms and institutions
[
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], and social structures [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] arise from the idea that the
effective engineering of organizations needs high-level,
actorindependent concepts and abstractions that explicitly define the
organization in which agents live [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ]. These are the rules and
global objectives that govern the activity of an organization.
      </p>
      <p>
        The OperA model [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] proposes an expressive way for
defining agent organizations distinguishing explicitly between
the organizational aims, and the agents who act in it. OperA
enables the specification of organizational structures,
requirements and objectives, and at the same time allows participants
to have the freedom to act according to their own capabilities
and demands. OperA has been applied is many domains,
including knowledge management, work practice analysis, and
serious games and social simulation. Space constraints do not
allow for a comparison of OperA with other approaches. For
this effect, we refer the reader to [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        In this paper, we present OperettA, a graphical environment
for the specification, validation and analysis of organizational
models, based on the OperA formalism [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. This organization
specification tool builds heavily on mechanisms from Model
Driven Engineering (MDE), which enables the introduction
and combination of different formal methods hence enabling
the modeling activity through systematic advices and model
design consistency checking.
      </p>
      <p>The paper is organized as follows: first, in section II we
introduce and briefly explain the OperA framework. In section
III the specification of organizational models in OperA is
detailed. In section IV we introduce the OperettA Environment.
In section V we provide some design guidelines for
organization models. Finally, section VI gives our conclusions.
II. ORGANIZATION MODELING: THE OPERA FRAMEWORK</p>
      <p>
        Organizational models should enable the explicit
representation of structural and strategic concerns and their adaptation
to environment changes in a way that is independent from the
behavior of the agents. Organization models, combining global
requirements and individual initiative, have been advocated
to specify open systems in dynamic environments [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
We take formal processes and requirements as a basis for the
modeling of complex systems that regulate the action of the
different agents.
      </p>
      <p>
        The deployment of organizations in dynamic and
unpredictable settings brings forth critical issues concerning the
design, implementation and validation of their behavior [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ],
[
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], and should be guided by two principles.
• Provide sufficient representation of the institutional
requirements so that the overall system complies with the
norms.
• Provide enough flexibility to accommodate heterogeneous
components.
      </p>
      <p>Therefore, organizational models must provide means to
represent concepts and relationships in the domain that are rich
enough to cover the necessary contexts of agent interaction
while keeping in mind the relevance of those concepts for the
global aims of the system.</p>
      <p>
        The OperA model [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] proposes an expressive way for
defining open organizations distinguishing explicitly between
the organizational aims, and the agents who act in it. That is,
OperA enables the specification of organizational structures,
requirements and objectives, and at the same time allows
participants to have the freedom to act according to their
own capabilities and demands. At an abstract level, an OperA
model describes the aims and concerns of the organization
with respect to the social system. These are described as
organization’s externally observable objectives, that is, the
desired states of affairs for the organization.
      </p>
      <p>The OperA framework consists of three interrelated models.
The Organizational Model (OM) is the result of the
observation and analysis of the domain and describes the desired
behavior of the organization, as determined by the organizational
stakeholders in terms of objectives, norms, roles, interactions
and ontologies. The OM provides the overall organization
design that fulfills the stakeholders requirements. Objectives
of an organization are achieved through the action of agents,
which means that, at each moment, an organization should
employ the relevant agents that can make its objectives happen.
However, the OM does not specify how to structure groups
of agents and constrain their behavior by social rules such
that their combined activity will lead to the desired results.
The Social Model (SM) maps organizational roles to agents
and describes agreements concerning the role enactment and
other conditions in social contracts. Finally, the Interaction
Model (IM) specifies the interaction agreements between
role-enacting agents as interaction contracts. IM specification
enable variations to the enactment of interactions between
roleenacting agents.</p>
      <p>
        The OperettA framework is developed to specify
organization models, according to the OperA OM, which will be
described in more detail in section III, using as example the
conference organization scenario taken from [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. In section
IV-B we describe the use of MDE principles to implement
this framework.
characteristics of a domain from an organizational perspective,
where global goals determine roles and interactions, specified
in terms of Social and Interaction Structures. E.g., how should
a conference be organized, its program, submissions, etc.
      </p>
      <p>Moreover, organization specification should include the
description of concepts holding in the domain, and of expected
or required behaviors.Therefore, these structures should be
linked with the norms, defined in Normative Structure, and
with the ontologies and communication languages defined in
the Communication Structure.</p>
      <sec id="sec-1-1">
        <title>A. The Social Structure.</title>
        <p>The social structure of an organization describes the roles
holding in the organization. It consists of a list of role
definitions, Roles (including their objectives, rights and
requirements), such as PC-member, program chair, author, etc.; a list
of role groups’ definitions, Groups; and a Role Dependencies
graph.</p>
        <p>Abstract society objectives form the basis for the definition
of the objectives of roles. Roles are the main element of the
Social Structure. From the society perspective, role
descriptions should identify the activities and services necessary to
achieve society objectives and enable to abstract from the
individuals that will eventually perform the role. From the
agent perspective, roles specify the expectations of the society
with respect to the agent’s activity in the society. In OperA,
the definition of a role consists of an identifier, a set of role
objectives, possibly sets of sub-objectives per objective, a set
of role rights, a set of norms and the type of role. An example
of role description is presented in table I.</p>
        <p>Id
Objectives
Sub-objectives
Rights
Norms &amp;
Rules</p>
        <p>PC member
paper reviewed(Paper,Report)
{read(P), report written(P, Rep), review received(Org, P, Rep)}
access-confmanager-program(me)
PC member is OBLIGED to understand English
IF paper assigned THEN PC member is OBLIGED
to review paper BEFORE given deadline
IF author of paper assigned is colleague
THEN PC member is OBLIGED to refuse to review asap</p>
        <p>Groups provide means to collectively refer to a set of roles
and are used to specify norms that hold for all roles in the
group. Groups are defined by means of an identifier, a
nonempty set of roles, and group norms. An example of a group
in the conference scenario is the organizing team consisting of
the roles program chair, local organizer, and general chair.</p>
        <p>The distribution of objectives in roles is defined by means of
the Role Hierarchy. Different criteria can guide the definition</p>
        <p>III. THE ORGANIZATION MODEL of Role Hierarchy. In particular, a role can be refined by
A common way to express the objectives of an organization decomposing it in sub-roles that, together, fulfill the objectives
is in terms of its expected functionality, that is, what is of the given role.
the organization expected to do or produce.In OperA, the This refinement of roles defines Role Dependencies. A
Organization Model (OM) specifies the means to achieve such dependency graph represents the dependency relations
beobjectives. That is, OM describes the structure and global tween roles. Nodes in the graph are roles in the society.
Arcs are labelled with the objectives for which the parent
role depends on the child role. Part of the dependency graph
for the conference society is displayed in figure 1. For
example, the arc between nodes PC-Chair and PC-member
represents the dependency between PC-Chair and PC-member
concerning paper-reviewed (P C − Chair paper reviewed
P C −M ember).The way objective g in a dependency relation
r1 g r2 is actually passed between r1 and r2 depends on the
coordination type of the society, defined in the Architectural
Templates. In OperA, three types of role dependencies are
identified: bidding, request and delegation.</p>
        <p>organizer
role</p>
        <p>paper_submitted
conference_organized
author
role
PC chair
role</p>
        <p>PC
member</p>
        <p>role
program _fixed</p>
        <p>session_organized
paper_reviewed
paper_presented
session
chair
role
presenter</p>
        <p>role</p>
      </sec>
      <sec id="sec-1-2">
        <title>B. The Interaction Structure.</title>
        <p>Interaction is structured as a set of meaningful scenes that
follow pre-defined abstract scene scripts. Examples of scenes
are the registration of participants in a conference, which
involves a representative of the organization and a potential
participant, or paper review, involving program committee
members and the PC chair. A scene script describes a scene
by its players (roles), its desired results and the norms
regulating the interaction. In the OM, scene scripts are specified
according to the requirements of the society. The results
of an interaction scene are achieved by the joint activity
of the participating roles, through the realization of (sub-)
objectives of those roles. A scene script establishes also the
desired interaction patterns between roles, that is, a desired
combination of the (sub-) objectives of the roles. Table II gives
an example of a scene script.</p>
        <p>
          OperA interaction descriptions are declarative, indicating
the global aims of the interaction rather than describing exact
activities in details. Interaction objectives can be more or less
restrictive, giving the agent enacting the role more or less
freedom to decide how to achieve the role objectives and
interpret its norms. Following the ideas of [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ], [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ], we call
such expressions landmarks, defined as conjunctions of logical
expressions that are true in a state. Landmarks combined
with a partial ordering to indicate the order in which the
landmarks are to be achieved are called a landmark pattern.
Figure 2 shows the landmark pattern for the Review Process.
Several different specific actions can bring about the same
assign
paper
PC1
assign
paper
PC2
receive
review
PC1
receive
review
        </p>
        <p>PC2
start</p>
        <p>Assign
deadline</p>
        <p>Review
deadline
end
state, that is, landmark patterns actually represent families of
protocols. The use of landmarks to describe activity enables
the actors to choose the best applicable actions, according to
their own goals and capabilities. The relation between scenes is
start</p>
        <p>SendCal for
Participation</p>
        <p>Form PC
SendCal
forPapers</p>
        <p>Paper
Submission</p>
        <p>Registration
Review
Process</p>
        <p>Paper
Acceptance</p>
        <p>Conference
onsite
registration</p>
        <p>end
M Conference</p>
        <p>Sessions
NWorkshops
represented by the Interaction Structure (see figure 3). In this
diagram, transitions describe a partial ordering of the scenes,
plus eventual synchronization constraints. Note that several
scenes can be happening at the same time and one agent can
participate in different scenes simultaneously. Transitions also
describe the conditions for the creation of a new instance of the
scene, and specify the maximum number of scene instances
that are allowed simultaneously. Furthermore, the enactment of
a role in a scene may have consequences in following scenes.
Role evolution relations describe the constraints that hold for
the role-enacting agents as they move from scene to scene.</p>
      </sec>
      <sec id="sec-1-3">
        <title>C. The Normative Structure.</title>
        <p>At the highest level of abstraction, norms are the values of
a society, in the sense that they define the concepts that are
used to determine the value or utility of situations. For the
conference organization scenario, the desire to share
information and uphold scientific quality can be seen as organization
values. However, values do not specify how, when or in
which conditions individuals should behave appropriately in
any given social setup.</p>
        <p>In OperA, norms are specified in the Normative Structure
using a deontic logic that is temporal, relativized (in terms
of roles and groups) and conditional. For instance, the
following norm might hold: “The authors must submit their
contributions before the deadline”, which can be formalized
as: Oauthor(submit(paper) ≤ Deadline)</p>
        <p>Furthermore, in order to check norms and act on possible
violations of the norms by the agents within an organization,
abstract norms have to be translated into actions and concepts
that can be handled within such organizations. To do so, the
definition of the abstract norms are iteratively concretized into
more concrete norms, and then translated into specific rules,
violations and sanctions.</p>
        <p>
          Concrete norms are related to abstract norms through a
mapping function, based on the counts-as operator as developed
in [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ]. For example, in the context of Org, submit(paper)
can be concretized as:send mail(organizer, f iles) ∨
send post(organizer, hard copies) →Org submit(paper)
        </p>
      </sec>
      <sec id="sec-1-4">
        <title>D. The Communication Structure.</title>
        <p>Communication mechanisms include both the representation
of domain knowledge (what are we talking about) and
protocols for communication (how are we talking). Both content
and protocol have different meanings at the different levels of
abstraction (e.g. while at the abstract level one might talk of
disseminate, such action will most probably not be available
to agents acting at the implementation level). Specification of
communication content is usually realized using ontologies,
which are shared conceptualizations of the terms and
predicates in a domain. Agent communication languages (ACLs)
are the usual means in MAS to describe communicative
actions. ACLs are wrapper languages in the sense that they
abstract from the content of communication.</p>
        <p>In OperA, the Communication Structure describes both the
content and the language for communication. The content
aspects of communication, or domain knowledge, are
specified by Domain Ontologies and Communication Acts define
the language for communication, including performatives and
protocols.</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>IV. OPERETTA ENVIRONMENT</title>
      <p>In order to support developers designing and
maintaining organization models, tools are needed that provide an
organization-oriented development environment. The
requirements for such a development environment are the following.
1) Organizational Design: The tool should provide means
for designing organizational models in an ‘intuitive’
manner. The tool should allow users to create and
represent organizational structures, define the parties
involved in an organization, represent organizational and
role objectives, and define the pattern of interactions
typically used to reach these objectives.
2) Organizational Verification: The tool should provide
verification means and assistance in detecting faults in
organizational designs as early as possible, to prevent
context design issues from being translated to the other
levels of system specification.
3) Ontology Design: The tool should to be able to specify,
import, and maintain domain ontologies. Domain
ontologies specifying the knowledge for a specific domain
of interaction should be able to be represented, existing
ontologies containing such information should be able
to be included (and provide inputs for organizational
concepts, such as role or objective names). Ontologies
should be maintainable and updatable.
4) Connectivity to System Level: The output of the
organizational design tool is intended for use by system
level tools, namely MAS environments and agent
programming languages. The output of the tool thus needs
to provide easy integration and connection between the
organization and system level.
5) User-Friendly GUI: A user-friendly graphical interface
is to be provided for users to create and maintain
organizational models easily. Help and guidelines are
useful for beginners to use the tool.
6) Availability: The tool should be available under open
source license and for use by other projects.</p>
      <p>We have developed the OperettA development environment as
an open-source solution on the basis of these requirements.
OperettA enables the specification and verification of OperA
OMs, which satisfies requirements 1 and 2. OperettA combines
multiple editors into a single package. It provides separate
editors on different components of organizational models;
i.e., it has different (graphical) editors for each of the main
components of an organizational model as defined in the
OperA framework. These specialized editors correspond to
the OperA OM structures: social, interaction, normative and
communicative. The OperettA Ontology Manager enable the
specification and import of domain ontologies, as in
requirement 3.</p>
      <p>
        The OperettA tool is a combination of tools based on the
Eclipse Modeling Framework (EMF) [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] and tools based on
the Graphical Modeling Framework (GMF) integrated into a
single editor. Developed as an Eclipse plug-in, OperettA is
fully open-source and follows the MDE principles of tool
development. In the following we look at the editors provided by
OperettA, and how OperettA connects to MAS solutions, thus
satisfying requirement 4. A graphical interface (requirement 5)
for OperettA has been developed and is currently being
usertested within the ALIVE project [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. Finally, in accordance
to the last requirement, OperettA is available opensource at
sourceforge1.
      </p>
      <sec id="sec-2-1">
        <title>A. OperettA Components</title>
        <p>The main element of OperettA is the OperA Meta-Model
(see figure 4 for an overview of the tools in OperettA and their
functionalities). The meta-model, created with the EMF tools,
provides the (structural) definition of what organizational
models should look like. This meta-model is extended with
the default EMF edit and editor plug-ins to provide model
accessors and the basic tree-based editor for the creation
and management of OperA models. The basic editor has
been extended with graphical interfaces for editing parts of
the organization model: the social diagram editor, and the</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>1http://ict-alive.svn.sourceforge.net/</title>
      <p>,)-.*+066.'')"'+
3%.14'54&amp;61$*&amp;7.4)/.".8$4.-&amp;19+
!/.".80+:-&amp;1)"+
3%.14'54&amp;61$*&amp;7.4)/.".8$4.-&amp;1)"9+</p>
      <p>C'.'+,,+-.B%&amp;()%'+
!"#$%&amp;'$()%$*+
,)-.*+
!/."0+,.1$2,)-.*+</p>
      <p>3%.14'54&amp;61$*&amp;7.4)/.".8$9+</p>
      <p>I."&amp;B.'+=)-.*+
&gt;=/)"1'E:M/)"1'+)%1)*)#A+
O@&amp;*-'+".)"#$%&amp;'$()%+'6"&amp;/1'+</p>
      <p>I$*&amp;-$()%+</p>
      <p>J"$=.H)"K+
3%.14'54&amp;61$*&amp;7.4)/.".8$46L.6K9+</p>
      <p>!%1)*)#A+
,$%$#.=.%1+
3%.14'54&amp;61$*&amp;7.4)/.".8$4)%1)*)#A9+</p>
      <p>,)-.*+N"$6K."+
3%.14'54&amp;61$*&amp;7.4)/.".8$4=)-.*N"$6K."9+
+
+++*&amp;&amp;&amp;11""'7.)
H
.
%
.
.G
'$:.-F%
interaction diagram editor. A third graphical editor is planned
for editing and managing formulas and norms.</p>
      <p>Next to the graphical editing extensions, OperettA contains
three other plug-ins for additional functionality. The Validation
Framework provides an improvement over the default
validation of EMF-based tools to provide validation of additional
restrictions. An ontology managing plug-in is included as well
to allow the ontology developed with OperettA to be exported
to OWL, as well as allowing for importing existing ontology
into the organization to boot-strap the organization design.
Finally, OperettA contains a Model Tracker plug-in that can
generate re-organization descriptions based on changes made
in the OperettA organization editors.</p>
      <p>We discuss the graphical editors and additional plug-ins in
more details in the following.</p>
      <p>1) Social Diagram Editor: This graphical editor provides
a view of the Social Structure element of OMs. It allows the
graphical creation of organizational Roles and Dependencies,
thus specifying the social relations between important parties
that play a part in the organization. The Social Diagram Editor
also provides editing capabilities to specify and manage Role
related Objectives, to provide context for the different Roles
in an organization. Figure 5 depicts the Social Diagram Editor
of OperettA that is used to enter organizational roles and
dependencies between roles. Role objectives are created and
managed via the objectives editor shown in the bottom part of
the figure.</p>
      <sec id="sec-3-1">
        <title>2) Interaction Diagram Editor: Similar to the Social Di</title>
        <p>agram Editor, the Interaction Diagram Editor provides a
graphical view of the Interaction Structure element of OMs.</p>
        <p>This editor allows for the specification and management of
the interaction elements of the organization; that is, it is for
the specification and management of the different interactions
that take place in the organization in order to achieve the
different (role) objectives specified in the social part of the
OM. The specification of the interaction is done in terms
of scenes and transitions (the connection and synchronization
points between scenes). Together, these define the order in
which objectives are to be reached and how the organization
works (though specified on a high level of abstraction). The
Interaction Diagram Editor allows for the graphical creation
and maintenance of scenes, transitions and arcs (links between
scenes and transitions). The graphical editor provides a
userfriendly overview of the structural aspect of the organization,
defining how different interactions within the organization are
supposed to help achieve the organizational objectives. Finally,
OperettA allows for the specification and editing of scene
properties (like the scene results, the players active in the
scene, the landmark pattern, etc).</p>
        <p>3) Ontology Manager: The Ontology Manager part of the
OperettA tool is a plug-in for importing and exporting
(domain) ontologies. The creation and maintenance of ontologies
is done by external tools (like, for example, Prote´ge´). Parts of
the functionality of organizational ontology editing is included
in the OperettA editors:
• Automatic creation of organizational ontology while
designing the organization. As the designer is inputting the
organizational model in OperettA, OperettA maintains
an ontology of role names, objective names, and logical
atoms that the designer uses to define the organization.
• Using an included (existing) ontology for the naming of
organizational model elements; that is, if an (external)
ontology is present in the organizational model it can
be used to pick concept names for different parts of
an organizational model (e.g., the name of a role can
be picked from an existing ontology included in the
model). The addition of the (external) ontology to an
organizational model is done via the ontology manager.</p>
        <p>
          The functionality of ontology editing in the OperettA tools
is limited to organizational ontologies. The Ontology manager
plug-in extends OperettA with the following capabilities:
• Importing an ontology from a file (e.g., RDF or OWL
[
          <xref ref-type="bibr" rid="ref19">19</xref>
          ]). Ontologies about the domain or organization that
is to provide the context of a system might be already
available. These ontologies tend to be stored in some
conventional ontology file-format. The Ontology
Manager allows OperettA to import and use such ontologies.
• Exporting (generated) organizational ontologies to file. In
order to align an use the organizational ontology created
by OperettA, the Ontology Manager extends the OperettA
tool with the capability to export the default ontology to
an owl file.
        </p>
        <p>The organizational ontology created by OperettA is stored
in the Organizational Model. The ontological elements need
to be available to the system level of design, and thus need
to be included in the domain ontology. The integration of
organizational concepts in a domain ontology is not trivial, as
it should respect the structure of the domain ontology while
adding organizational concepts as roles, objectives, etc. and the
instances of these concepts; role names, objective names, etc.</p>
        <p>The alignment between the exported ontology and the domain
ontology will have to be done by hand in an external editor.</p>
        <p>The inclusion of the ontology manager satisfies requirement
3.</p>
        <p>6) Norm Editor: Norms are an important part of the
organizational Model, providing lead ways on a high level of
abstraction for the agents to follow. Norms can be inputted in
the current version of OperettA via the basic EMF generated
editor. This editor is not user-friendly. An example norm in
OperettA is shown below in figure 6. The norm shown in this
figure describes that buyers should have paid for the items
they have won in an auction before one week has expired.</p>
        <p>The norm is input using several logical formulas; one for
the activation condition expressing when the norm is active
4) Model Tracker: To support reorganization, OperettA is (the item is bid on and won), one for the expiration condition
extended with a model tracker. This model tracker allows a expressing that the norm is no longer active (the item has
designer to view the changes made on the organizational model been paid for), one for the maintenance condition expressing
since a last save (but not necessarily the previous one). By the formula to be checked when the norm is active to see if
storing the changes to the organizational model in a history violations have happened (the buyer has not paid and the week
file, the model tracker can be used to generate scripts that has not yet expired), and one for the deadline expressing a state
express how an organization is changed. Reorganization scripts of affairs before which the norm should have been fulfilled. A
capture changes in a precise and concise manner, and can user-friendlier (graphical) interface for inputting and managing
be used to communicate organizational changes to the system the norms of an organizational model is planned for a future
level. version of OperettA. This extension, with the graphical editors
5) Validation Framework: The validation plug-in of Op- for the social and interaction structures, fulfills requirement 5.
erettA overwrites the basic validation provided by the EMF
framework. Instead of just verifying constraints specified in B. Connectivity to System Level
the OperA meta-model, the validation has been extended with The OperettA tool has only off-line functionalities; it is
additional verification constraints to minimize organizational used by designers to create the context of the system and
design mistakes. The overall purpose of the validation plug-in their linked ontologies. It provides design and validation
is to provide OM designers meaningful feedback to eliminate functionalities for the creation and management of OperA
design errors as early as possible (in the design process). organizational models. For the connection to implementations
The validation plug-in is installed separately from OperettA, OperettA depends on the Model Driven Engineering (MDE)
but after installation it can be invoked from within each of approach by providing a meta-model of the modeling concepts.
the different OperettA editing views. The validation plug-in MDE refers to the systematic use of models as primary
seamlessly overwrites the standard EMF validation, making it artifacts throughout the Software Engineering lifecycle. The
the new default manner of validating OperettA models. defining characteristics of MDE is the use of models to</p>
        <p>The validation plug-in works directly on the model instance represent the important aspect of the system, be it
requireto verify various modeling constraints, accessing the model via ments, high-level designs, user data structures, views,
interopthe meta-model definitions. Some examples of the constraints erability interfaces, test cases, or implementation-level artifacts
validated are checking that roles have a name, checking such as code. The Model Driven Development promotes the
that role names are unique, checking that all roles have an automatic transformation of abstracted models into specific
objective, and so on. Less stringent constraints are checked as implementation technologies, by a series of predefined model
well, like, for example, whether roles are connected to other transformations.
roles via dependencies; i.e., while it does not hold for every In essence, this means that the models created with the
OM, in most models roles should be connected to other roles OperettA tool can be used for automated transformation
(that is, it should be depending upon (an)other role(s) or being towards applicable (models of) platforms; e.g, service-based
depended upon by (an)other role(s)). Such “soft” constraints implementations or multiagent systems. The only required step
are presented to designer as a warning, intended to have the for such transformation is the definition of the transformations
designer rethink their model and update if appropriate. The based on the OperettA meta-model concepts to the meta-model
validation plugin fulfills requirement 3. of the desired platform.</p>
        <p>
          Finally, OperettA is based on the OperA formalism, which
assumes that individual agents are designed independently
from the organization, to model goals and capabilities of a
given entity. Individual agents are the enactors of
organizational role(s), as a means to realize their own goals [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. As such
it is necessary that OperettA can connect to such MAS
frameworks. As a proof of concept, we have done experiments on the
connection towards frameworks like Brahms and Repast, for
the simulation of organizations in which normative properties
of the organization can be verified for different populations
with emergent behavior. As part of the ALIVE project [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] a
connection was made with AgentScape to generate MAS from
the organizational specification.
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>V. DESIGN GUIDELINES</title>
      <p>
        In the previous we introduced organizational modeling and
the OperettA Environment to support this. In this section we
present a small overview on how one goes about designing an
organization. After identifying that an organization presents
the solution to the problem:
1) Identify (functional) requirements: First one determines
the global functionalities and objectives of the society.
2) Identify stakeholders: The analysis of the objectives of
the stakeholders identifies the operational roles in the
society. These first two steps set the basis of the social
structure of the OperA model.
3) Set social norms, define normative expectations: The
analysis of the requirements and characteristics of the
domain results in the specification of the normative
characteristics of the society. This results in the norms
in the normative structure.
4) Refine behavior: Using means-end and contribution
analysis, a match can be made between what roles
should provide and what roles can provide. This aspect
contributes to refinement of role objectives and rights.
5) Create interaction scripts: Using the results from steps 3
and 4, one can now specify the patterns of interaction for
the organization, resulting in the interaction structure.
More details about the methodological steps taken to create
organizational models can be found in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
    </sec>
    <sec id="sec-5">
      <title>VI. CONCLUSIONS</title>
      <p>
        In this paper, we present an organization-oriented
modeling approach for system development. The OperA modeling
framework can be used for different types of domains from
closed to open environments and takes into consideration
the differences between global and individual concerns. The
OperettA tool supports software and services engineering
based on the OperA modeling framework. It has been used in
the European project ALIVE [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] that combines cutting edge
coordination technology and organization models to provide
flexible, high-level means to model the structure of
interactions between services in an environment.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Huib</given-names>
            <surname>Aldewereld</surname>
          </string-name>
          ,
          <article-title>Sergio A´ lvarez-</article-title>
          <string-name>
            <surname>Napagao</surname>
          </string-name>
          , Frank Dignum, and Javier Va´
          <fpage>zquez</fpage>
          -Salceda.
          <article-title>Engineering social reality with inheritance relations</article-title>
          .
          <source>In Proc. of the 10th Workshop Engineering Societies in the Agents' World (ESAW</source>
          <year>2009</year>
          ).
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>L.</given-names>
            <surname>Coutinho</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Sichman</surname>
          </string-name>
          , and
          <string-name>
            <given-names>O.</given-names>
            <surname>Boissier</surname>
          </string-name>
          .
          <article-title>Modelling dimensions for agent organizations</article-title>
          . In V. Dignum, editor,
          <source>Handbook of Research on Multi-Agent Systems: Semantics and Dynamics of Organizational Models. Information Science Reference</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>M.</given-names>
            <surname>Dastani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Dignum</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Dignum</surname>
          </string-name>
          .
          <article-title>Role assignment in open agent societies</article-title>
          .
          <source>In AAMAS03</source>
          . ACM Press,
          <year>July 2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>V.</given-names>
            <surname>Dignum</surname>
          </string-name>
          .
          <article-title>A Model for Organizational Interaction: based on Agents, founded in Logic</article-title>
          .
          <source>SIKS Dissertation Series</source>
          <year>2004</year>
          -1. Utrecht University,
          <year>2004</year>
          .
          <source>PhD Thesis</source>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>V.</given-names>
            <surname>Dignum</surname>
          </string-name>
          .
          <article-title>The role of organization in agent systems</article-title>
          . In V. Dignum, editor,
          <source>Handbook of Research on Multi-Agent Systems: Semantics and Dynamics of Organizational Models</source>
          , pages ?
          <fpage>?</fpage>
          -?
          <source>? Information Science Reference</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>V.</given-names>
            <surname>Dignum</surname>
          </string-name>
          and
          <string-name>
            <given-names>F.</given-names>
            <surname>Dignum</surname>
          </string-name>
          .
          <article-title>Designing agent systems: State of the practice</article-title>
          .
          <source>International Journal on Agent-Oriented Software Engineering</source>
          ,
          <volume>4</volume>
          (
          <issue>3</issue>
          ),
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>V.</given-names>
            <surname>Dignum</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Dignum</surname>
          </string-name>
          , and
          <string-name>
            <surname>J.J. Meyer.</surname>
          </string-name>
          <article-title>An agent-mediated approach to the support of knowledge sharing in organizations</article-title>
          .
          <source>Knowledge Engineering Review</source>
          ,
          <volume>19</volume>
          (
          <issue>2</issue>
          ):
          <fpage>147</fpage>
          -
          <lpage>174</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>V.</given-names>
            <surname>Dignum</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Vazquez-Salceda</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Dignum</surname>
          </string-name>
          . Omni:
          <article-title>Introducing social structure, norms and ontologies into agent organizations</article-title>
          .
          <source>In Programming Multi-Agent Systems: Second International Workshop ProMAS</source>
          <year>2004</year>
          , volume
          <volume>3346</volume>
          <source>of LNAI</source>
          . Springer,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Virginia</given-names>
            <surname>Dignum</surname>
          </string-name>
          and
          <string-name>
            <given-names>Frank</given-names>
            <surname>Dignum</surname>
          </string-name>
          .
          <article-title>Modeling agent societies: coordination frameworks and institutions</article-title>
          . In A. Jorge P. Brazdil, editor,
          <source>Progress in Artificial Intelligence: Proc. of EPIA-2001, LNAI 2258</source>
          , pages
          <fpage>191</fpage>
          -
          <lpage>204</lpage>
          . Springer,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Esteva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Padget</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Sierra</surname>
          </string-name>
          .
          <article-title>Formalizing a language for institutions and norms</article-title>
          .
          <source>In ATAL-2001, LNAI 2333</source>
          , pages
          <fpage>348</fpage>
          -
          <lpage>366</lpage>
          . Springer,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>J.</given-names>
            <surname>Ferber</surname>
          </string-name>
          and
          <string-name>
            <given-names>O.</given-names>
            <surname>Gutknecht</surname>
          </string-name>
          .
          <article-title>A meta-model for the analysis and design of organizations in multi-agent systems</article-title>
          .
          <source>In ICMAS'98</source>
          , pages
          <fpage>128</fpage>
          -
          <lpage>135</lpage>
          . IEEE Computer Society,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>European</given-names>
            <surname>Commission</surname>
          </string-name>
          FP7-215890. ALIVE,
          <year>2009</year>
          . http://www.ist-alive. eu/.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>Davide</surname>
            <given-names>Grossi</given-names>
          </string-name>
          , Frank Dignum, Mehdi Dastani, and Lambe`r Royakkers.
          <article-title>Foundations of organizational structures in multiagent systems</article-title>
          .
          <source>In AAMAS '05: Proceedings of the fourth international joint conference on Autonomous agents and multiagent systems</source>
          , pages
          <fpage>690</fpage>
          -
          <lpage>697</lpage>
          , New York, NY, USA,
          <year>2005</year>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>S.</given-names>
            <surname>Kumar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Huber</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Cohen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>McGee</surname>
          </string-name>
          .
          <article-title>Towards a formalism for conversation protocols using joint intention theory</article-title>
          .
          <source>Computational Intelligence Journal</source>
          ,
          <volume>18</volume>
          (
          <issue>2</issue>
          ),
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>H.V.D.</given-names>
            <surname>Parunak</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.</given-names>
            <surname>Odell</surname>
          </string-name>
          .
          <article-title>Representing social structures in uml</article-title>
          . In M.Wooldridge, G.Weiss, and P. Ciancarini, editors,
          <source>Agent-Oriented Software Engineering II, LNCS 2222</source>
          . Springer-Verlag,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>L.</given-names>
            <surname>Penserini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Grossi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Dignum</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Dignum</surname>
          </string-name>
          , and
          <string-name>
            <given-names>H.</given-names>
            <surname>Aldewereld</surname>
          </string-name>
          .
          <article-title>Evaluating organizational configurations</article-title>
          .
          <source>In IEEE/WIC/ACM International Conference on Intelligent Agent Technology (IAT</source>
          <year>2009</year>
          ),
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>I.</given-names>
            <surname>Smith</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Cohen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Bradshaw</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Greaves</surname>
          </string-name>
          , and
          <string-name>
            <given-names>H.</given-names>
            <surname>Holmback</surname>
          </string-name>
          .
          <article-title>Designing conversation policies using joint intention theory</article-title>
          .
          <source>In Proc. ICMAS-98</source>
          , pages
          <fpage>269</fpage>
          -
          <lpage>276</lpage>
          . IEEE Press,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>Dave</surname>
            <given-names>Steinberg</given-names>
          </string-name>
          , Frank Budinsky, Marcelo Paternostro, and Ed Merks.
          <source>EMF: Eclipse Modeling Framework. Eclipse Series</source>
          .
          <string-name>
            <surname>Addison-Wesley Professional</surname>
          </string-name>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <fpage>W3C</fpage>
          . Owl-s,
          <year>2004</year>
          . http://www.w3c.org/Submission/OWL-S.
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>H.</given-names>
            <surname>Weigand</surname>
          </string-name>
          and
          <string-name>
            <given-names>V.</given-names>
            <surname>Dignum</surname>
          </string-name>
          .
          <article-title>I am autonomous, you are autonomous</article-title>
          . In M. Nickles,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rovatsos</surname>
          </string-name>
          , and G. Weiss, editors,
          <source>Agents and Computational Autonomy</source>
          , volume
          <volume>2969</volume>
          <source>of LNCS</source>
          , pages
          <fpage>227</fpage>
          -
          <lpage>236</lpage>
          . Springer,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>F.</given-names>
            <surname>Zambonelli</surname>
          </string-name>
          .
          <article-title>Abstractions and infrastructures for the design and development of mobile agent organizations</article-title>
          .
          <source>LNAI 2222</source>
          , pages
          <fpage>245</fpage>
          -
          <lpage>262</lpage>
          . Springer,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>F.</given-names>
            <surname>Zambonelli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Jennings</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Wooldridge</surname>
          </string-name>
          .
          <article-title>Organizational abstractions for the analysis and design of multi agent systems</article-title>
          .
          <source>LNAI</source>
          <year>1957</year>
          , pages
          <fpage>235</fpage>
          -
          <lpage>251</lpage>
          . Springer,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>