=Paper= {{Paper |id=None |storemode=property |title=OperettA: Organization-Oriented Development Environment |pdfUrl=https://ceur-ws.org/Vol-627/lads_2.pdf |volume=Vol-627 |dblpUrl=https://dblp.org/rec/conf/mallow/DignumA10 }} ==OperettA: Organization-Oriented Development Environment== https://ceur-ws.org/Vol-627/lads_2.pdf
       OperettA: Organization-Oriented Development
                      Environment
                                                        Virginia Dignum
                       Delft University of Technology, The Netherlands, m.v.dignum@tudelft.nl

                                                        Huib Aldewereld
                                    Utrecht University, The Netherlands, huib@cs.uu.nl


   Abstract—The increasing complexity of distributed applica-        [9], [10], and social structures [15] arise from the idea that the
tions requires new modeling and engineering approaches. Such         effective engineering of organizations needs high-level, actor-
domains require representing the regulating structures explicitly    independent concepts and abstractions that explicitly define the
and independently from the acting components (or agents). Or-
ganization computational models, based on Organization Theory,       organization in which agents live [22]. These are the rules and
have been advocated to specify such systems. In this paper,          global objectives that govern the activity of an organization.
we present the organizational modeling approach OperA and               The OperA model [4] proposes an expressive way for
a graphical environment for the specification and analysis of        defining agent organizations distinguishing explicitly between
organizational models, OperettA. OperA provides an expressive        the organizational aims, and the agents who act in it. OperA
way for defining open organizations distinguishing explicitly
between the organizational aims, and the agents who act in it.       enables the specification of organizational structures, require-
                                                                     ments and objectives, and at the same time allows participants
                      I. I NTRODUCTION                               to have the freedom to act according to their own capabilities
   The engineering of applications for complex and dynamic           and demands. OperA has been applied is many domains,
domains is an increasingly difficult process. Requirements           including knowledge management, work practice analysis, and
and functionalities are not fixed a priori, components are not       serious games and social simulation. Space constraints do not
designed nor controlled by a common entity, and unplanned            allow for a comparison of OperA with other approaches. For
and unspecified changes may occur during runtime. There              this effect, we refer the reader to [2].
is a need for representing the regulating structures explicitly         In this paper, we present OperettA, a graphical environment
and independently from the acting components (or agents).            for the specification, validation and analysis of organizational
Organization computational models, based on Organization             models, based on the OperA formalism [4]. This organization
Theory, have been advocated to specify such systems.                 specification tool builds heavily on mechanisms from Model
   Traditionally, Multi-Agent Systems (MAS) stress the auton-        Driven Engineering (MDE), which enables the introduction
omy and encapsulation characteristics of agents. In such agent-      and combination of different formal methods hence enabling
centric view, interactions between agents are mostly seen as         the modeling activity through systematic advices and model
speech acts whose meaning may be described in terms of               design consistency checking.
the mental states of an agent. As systems grow to include               The paper is organized as follows: first, in section II we
hundreds or thousands of agents, it is necessary to move             introduce and briefly explain the OperA framework. In section
from an agent-centric view of coordination and control to an         III the specification of organizational models in OperA is de-
organization-centric one. Organizations provide stable means         tailed. In section IV we introduce the OperettA Environment.
for coordination that enable the achievement of global goals.        In section V we provide some design guidelines for organiza-
In this sense, organization models play a critical role in the       tion models. Finally, section VI gives our conclusions.
development of larger and more complex MAS [5].
   Comprehensive analysis of several agent systems has shown             II. O RGANIZATION M ODELING : THE O PER A F RAMEWORK
that different design approaches are appropriate for different          Organizational models should enable the explicit represen-
domain characteristics [6]. In particular, agent organization        tation of structural and strategic concerns and their adaptation
frameworks are suitable to model complex environments                to environment changes in a way that is independent from the
where many independent entities coexist witing explicit nor-         behavior of the agents. Organization models, combining global
mative and organizational structures and global specification        requirements and individual initiative, have been advocated
of control measures is necessary.                                    to specify open systems in dynamic environments [11], [4].
   Models for agent organizations must, on the one hand, be          We take formal processes and requirements as a basis for the
able to specify global goals and requirements but, on the other      modeling of complex systems that regulate the action of the
hand, cannot assume that participating actors will always act        different agents.
according to the needs and expectations of the system design.           The deployment of organizations in dynamic and unpre-
Concepts as organizational rules [21], norms and institutions        dictable settings brings forth critical issues concerning the



                                                                    14
design, implementation and validation of their behavior [16],       characteristics of a domain from an organizational perspective,
[13], [20], and should be guided by two principles.                 where global goals determine roles and interactions, specified
   • Provide sufficient representation of the institutional re-     in terms of Social and Interaction Structures. E.g., how should
      quirements so that the overall system complies with the       a conference be organized, its program, submissions, etc.
      norms.                                                           Moreover, organization specification should include the de-
   • Provide enough flexibility to accommodate heterogeneous        scription of concepts holding in the domain, and of expected
      components.                                                   or required behaviors.Therefore, these structures should be
   Therefore, organizational models must provide means to           linked with the norms, defined in Normative Structure, and
represent concepts and relationships in the domain that are rich    with the ontologies and communication languages defined in
enough to cover the necessary contexts of agent interaction         the Communication Structure.
while keeping in mind the relevance of those concepts for the
                                                                    A. The Social Structure.
global aims of the system.
   The OperA model [4] proposes an expressive way for                  The social structure of an organization describes the roles
defining open organizations distinguishing explicitly between       holding in the organization. It consists of a list of role defi-
the organizational aims, and the agents who act in it. That is,     nitions, Roles (including their objectives, rights and require-
OperA enables the specification of organizational structures,       ments), such as PC-member, program chair, author, etc.; a list
requirements and objectives, and at the same time allows            of role groups’ definitions, Groups; and a Role Dependencies
participants to have the freedom to act according to their          graph.
own capabilities and demands. At an abstract level, an OperA           Abstract society objectives form the basis for the definition
model describes the aims and concerns of the organization           of the objectives of roles. Roles are the main element of the
with respect to the social system. These are described as           Social Structure. From the society perspective, role descrip-
organization’s externally observable objectives, that is, the       tions should identify the activities and services necessary to
desired states of affairs for the organization.                     achieve society objectives and enable to abstract from the
   The OperA framework consists of three interrelated models.       individuals that will eventually perform the role. From the
The Organizational Model (OM) is the result of the observa-         agent perspective, roles specify the expectations of the society
tion and analysis of the domain and describes the desired be-       with respect to the agent’s activity in the society. In OperA,
havior of the organization, as determined by the organizational     the definition of a role consists of an identifier, a set of role
stakeholders in terms of objectives, norms, roles, interactions     objectives, possibly sets of sub-objectives per objective, a set
and ontologies. The OM provides the overall organization            of role rights, a set of norms and the type of role. An example
design that fulfills the stakeholders requirements. Objectives      of role description is presented in table I.
of an organization are achieved through the action of agents,
which means that, at each moment, an organization should                Id               PC member
                                                                        Objectives       paper reviewed(Paper,Report)
employ the relevant agents that can make its objectives happen.         Sub-objectives   {read(P), report written(P, Rep), review received(Org, P, Rep)}
However, the OM does not specify how to structure groups                Rights           access-confmanager-program(me)
                                                                        Norms &          PC member is OBLIGED to understand English
of agents and constrain their behavior by social rules such             Rules            IF paper assigned THEN PC member is OBLIGED
that their combined activity will lead to the desired results.                            to review paper BEFORE given deadline
                                                                                         IF author of paper assigned is colleague
The Social Model (SM) maps organizational roles to agents                                 THEN PC member is OBLIGED to refuse to review asap
and describes agreements concerning the role enactment and
other conditions in social contracts. Finally, the Interaction                                      TABLE I
Model (IM) specifies the interaction agreements between                                    PC member ROLE DESCRIPTION .
role-enacting agents as interaction contracts. IM specification
enable variations to the enactment of interactions between role-
enacting agents.                                                       Groups provide means to collectively refer to a set of roles
   The OperettA framework is developed to specify organi-           and are used to specify norms that hold for all roles in the
zation models, according to the OperA OM, which will be             group. Groups are defined by means of an identifier, a non-
described in more detail in section III, using as example the       empty set of roles, and group norms. An example of a group
conference organization scenario taken from [8]. In section         in the conference scenario is the organizing team consisting of
IV-B we describe the use of MDE principles to implement             the roles program chair, local organizer, and general chair.
this framework.                                                        The distribution of objectives in roles is defined by means of
                                                                    the Role Hierarchy. Different criteria can guide the definition
             III. T HE O RGANIZATION M ODEL                         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 be-
objectives. That is, OM describes the structure and global          tween roles. Nodes in the graph are roles in the society.



                                                                   15
Arcs are labelled with the objectives for which the parent                  interpret its norms. Following the ideas of [17], [14], we call
role depends on the child role. Part of the dependency graph                such expressions landmarks, defined as conjunctions of logical
for the conference society is displayed in figure 1. For                    expressions that are true in a state. Landmarks combined
example, the arc between nodes PC-Chair and PC-member                       with a partial ordering to indicate the order in which the
represents the dependency between PC-Chair and PC-member                    landmarks are to be achieved are called a landmark pattern.
concerning paper-reviewed (P C − Chair paper reviewed                      Figure 2 shows the landmark pattern for the Review Process.
P C −M ember).The way objective g in a dependency relation                  Several different specific actions can bring about the same
r1 g r2 is actually passed between r1 and r2 depends on the
coordination type of the society, defined in the Architectural                                                 assign                           receive
                                                                                                                paper                            review
Templates. In OperA, three types of role dependencies are                                                       PC1                               PC1
identified: bidding, request and delegation.                                                                                   Assign                            Review
                                                                                        start                                                                                    end
                                                                                                                              deadline                           deadline

                                            paper_submitted                                                    assign                           receive
                           organizer                              author                                        paper                            review
                              role                                 role                                         PC2                               PC2
                                          conference_organized

         program _fixed        session_organized
                                                                                                     Fig. 2.            Landmark pattern for Review Process.
           PC chair                      session
                                          chair
             role                          role
                                                                            state, that is, landmark patterns actually represent families of
       paper_reviewed                  paper_presented
                                                                            protocols. The use of landmarks to describe activity enables
            PC
          member                        presenter                           the actors to choose the best applicable actions, according to
                                           role
           role                                                             their own goals and capabilities. The relation between scenes is

                 Fig. 1.     Role dependencies in a conference.                             Send Call for                                Registration
                                                                                                                                                                                 M
                                                                                                                                                                                     Conference
                                                                                            Participation                                                                             Sessions



                                                                                                                                                                  Conference
B. The Interaction Structure.                                                   start
                                                                                                     Form PC                   Review
                                                                                                                               Process
                                                                                                                                                      Paper
                                                                                                                                                    Acceptance
                                                                                                                                                                     onsite
                                                                                                                                                                  registration
                                                                                                                                                                                                  end



   Interaction is structured as a set of meaningful scenes that                          Send Call               Paper
                                                                                                                                                                                 N
                                                                                                                                                                                     Workshops

follow pre-defined abstract scene scripts. Examples of scenes                           for Papers             Submission



are the registration of participants in a conference, which                              Fig. 3.               Interaction Structure in the Conference scenario.
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                  represented by the Interaction Structure (see figure 3). In this
by its players (roles), its desired results and the norms regu-             diagram, transitions describe a partial ordering of the scenes,
lating the interaction. In the OM, scene scripts are specified              plus eventual synchronization constraints. Note that several
according to the requirements of the society. The results                   scenes can be happening at the same time and one agent can
of an interaction scene are achieved by the joint activity                  participate in different scenes simultaneously. Transitions also
of the participating roles, through the realization of (sub-)               describe the conditions for the creation of a new instance of the
objectives of those roles. A scene script establishes also the              scene, and specify the maximum number of scene instances
desired interaction patterns between roles, that is, a desired              that are allowed simultaneously. Furthermore, the enactment of
combination of the (sub-) objectives of the roles. Table II gives           a role in a scene may have consequences in following scenes.
an example of a scene script.                                               Role evolution relations describe the constraints that hold for
                                                                            the role-enacting agents as they move from scene to scene.
 Scene                    Review Process
 Roles                    Program-Chair (1), PC-member(2..Max)              C. The Normative Structure.
 Results                  r1 = ∀ P ∈ Papers: reviews done(P, rev1, rev2)
 Interact. Pattern        PATTERN(r1 ): see figure 2                           At the highest level of abstraction, norms are the values of
 Norms & Rules            Program-Chair is PERMITTED to assign papers       a society, in the sense that they define the concepts that are
                          PC-member is OBLIGED to review papers assigned
                          before deadline                                   used to determine the value or utility of situations. For the
                                                                            conference organization scenario, the desire to share informa-
                                    TABLE II
                      S CRIPT FOR THE Review Process SCENE .                tion 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
   OperA interaction descriptions are declarative, indicating               any given social setup.
the global aims of the interaction rather than describing exact                In OperA, norms are specified in the Normative Structure
activities in details. Interaction objectives can be more or less           using a deontic logic that is temporal, relativized (in terms
restrictive, giving the agent enacting the role more or less                of roles and groups) and conditional. For instance, the fol-
freedom to decide how to achieve the role objectives and                    lowing norm might hold: “The authors must submit their



                                                                           16
contributions before the deadline”, which can be formalized                  of interaction should be able to be represented, existing
as: Oauthor (submit(paper) ≤ Deadline)                                       ontologies containing such information should be able
   Furthermore, in order to check norms and act on possible                  to be included (and provide inputs for organizational
violations of the norms by the agents within an organization,                concepts, such as role or objective names). Ontologies
abstract norms have to be translated into actions and concepts               should be maintainable and updatable.
that can be handled within such organizations. To do so, the            4) Connectivity to System Level: The output of the or-
definition of the abstract norms are iteratively concretized into            ganizational design tool is intended for use by system
more concrete norms, and then translated into specific rules,                level tools, namely MAS environments and agent pro-
violations and sanctions.                                                    gramming languages. The output of the tool thus needs
   Concrete norms are related to abstract norms through a map-               to provide easy integration and connection between the
ping function, based on the counts-as operator as developed                  organization and system level.
in [1]. For example, in the context of Org, submit(paper)               5) User-Friendly GUI: A user-friendly graphical interface
can be concretized as:send mail(organizer, f iles) ∨                         is to be provided for users to create and maintain
send post(organizer, hard copies) →Org submit(paper)                         organizational models easily. Help and guidelines are
                                                                             useful for beginners to use the tool.
D. The Communication Structure.                                         6) Availability: The tool should be available under open
   Communication mechanisms include both the representation                  source license and for use by other projects.
of domain knowledge (what are we talking about) and proto-           We have developed the OperettA development environment as
cols for communication (how are we talking). Both content            an open-source solution on the basis of these requirements.
and protocol have different meanings at the different levels of      OperettA enables the specification and verification of OperA
abstraction (e.g. while at the abstract level one might talk of      OMs, which satisfies requirements 1 and 2. OperettA combines
disseminate, such action will most probably not be available         multiple editors into a single package. It provides separate
to agents acting at the implementation level). Specification of      editors on different components of organizational models;
communication content is usually realized using ontologies,          i.e., it has different (graphical) editors for each of the main
which are shared conceptualizations of the terms and predi-          components of an organizational model as defined in the
cates in a domain. Agent communication languages (ACLs)              OperA framework. These specialized editors correspond to
are the usual means in MAS to describe communicative                 the OperA OM structures: social, interaction, normative and
actions. ACLs are wrapper languages in the sense that they           communicative. The OperettA Ontology Manager enable the
abstract from the content of communication.                          specification and import of domain ontologies, as in require-
   In OperA, the Communication Structure describes both the          ment 3.
content and the language for communication. The content                 The OperettA tool is a combination of tools based on the
aspects of communication, or domain knowledge, are spec-             Eclipse Modeling Framework (EMF) [18] and tools based on
ified by Domain Ontologies and Communication Acts define             the Graphical Modeling Framework (GMF) integrated into a
the language for communication, including performatives and          single editor. Developed as an Eclipse plug-in, OperettA is
protocols.                                                           fully open-source and follows the MDE principles of tool de-
               IV. O PERETTA E NVIRONMENT                            velopment. In the following we look at the editors provided by
                                                                     OperettA, and how OperettA connects to MAS solutions, thus
  In order to support developers designing and maintain-             satisfying requirement 4. A graphical interface (requirement 5)
ing organization models, tools are needed that provide an            for OperettA has been developed and is currently being user-
organization-oriented development environment. The require-          tested within the ALIVE project [12]. Finally, in accordance
ments for such a development environment are the following.          to the last requirement, OperettA is available opensource at
  1) Organizational Design: The tool should provide means            sourceforge1 .
      for designing organizational models in an ‘intuitive’
      manner. The tool should allow users to create and              A. OperettA Components
      represent organizational structures, define the parties           The main element of OperettA is the OperA Meta-Model
      involved in an organization, represent organizational and      (see figure 4 for an overview of the tools in OperettA and their
      role objectives, and define the pattern of interactions        functionalities). The meta-model, created with the EMF tools,
      typically used to reach these objectives.                      provides the (structural) definition of what organizational
  2) Organizational Verification: The tool should provide            models should look like. This meta-model is extended with
      verification means and assistance in detecting faults in       the default EMF edit and editor plug-ins to provide model
      organizational designs as early as possible, to prevent        accessors and the basic tree-based editor for the creation
      context design issues from being translated to the other       and management of OperA models. The basic editor has
      levels of system specification.                                been extended with graphical interfaces for editing parts of
  3) Ontology Design: The tool should to be able to specify,         the organization model: the social diagram editor, and the
      import, and maintain domain ontologies. Domain on-
      tologies specifying the knowledge for a specific domain            1 http://ict-alive.svn.sourceforge.net/




                                                                    17
                                                                                    D".$1.E=$%$#.+!,+
                                                                                                   ,+
                                             ,)-.*+066.'')"'+                                                                        !/.".80+:-&1)"+
                                             3%.14'54&61$*&7.4)/.".8$4.-&19+                                                       3%.14'54&61$*&7.4)/.".8$4.-&1)"9+
   ?")7&-.'+.-&(%#+5@%6()%$*&1A+
        -.'+.-&(%#+5@%6()%$*&1A+
      !"#$%&'$()%$*+,)-.*+
   1)+!"#$%&'$()%$*+,)-.*+

                                                                                                                                                ;)6&$*+<&$#"$=+




                                                                                                  :%$F*.'+-&G.".%1+.-&1)"+7&.H'+
                                                              C'.'+
                                                              C'.'+,,+-.B%&()%'+
                                                                                                                                                    :-&1)"+
                                                                                                                                          3%.14'54&61$*&7.4)/.".8$4-&$#"$=4''9+
                                                                                                                                          3


  !"#$%&'$()%$*+                           !/."0+,.1$2,)-.*+                                                                               >%1."$6()%+<&$#"$=+
     ,)-.*+                  <.B%.'+           3%.14'54&61$*&7.4)/.".8$9+                                                                         :-&1)"+
                             '1"@61@".+                                                                                                   3
                                                                                                                                          3%.14'54&61$*&7.4)/.".8$4-&$#"$=4&'9+


                                                                                                                                          !"#$%&'#()*+",)-.&/+")
                                                                                                                                                       3/*$%%.-9+
                  I."&B.'+=)-.*+                   I$*&-$()%+
                                                  J"$=.H)"K+
                                           3%.14'54&61$*&7.4)/.".8$46L.6K9+



            >=/)"1'E:M/)"1'+)%1)*)#A+            !%1)*)#A+
                                                ,$%$#.=.%1+
                                          3%.14'54&61$*&7.4)/.".8$4)%1)*)#A9+



     O@&*-'+".)"#$%&'$()%+'6"&/1'+
                                                ,)-.*+N"$6K."+
                                          3%.14'54&61$*&7.4)/.".8$4=)-.*N"$6K."9+



                                                                                                                                                                                                 Fig. 5.   OperettA Social Diagram Editor.
                                Fig. 4.           OperettA Tool Components.


                                                                                                                                                                                   points between scenes). Together, these define the order in
interaction diagram editor. A third graphical editor is planned                                                                                                                    which objectives are to be reached and how the organization
for editing and managing formulas and norms.                                                                                                                                       works (though specified on a high level of abstraction). The
   Next to the graphical editing extensions, OperettA contains                                                                                                                     Interaction Diagram Editor allows for the graphical creation
three other plug-ins for additional functionality. The Validation                                                                                                                  and maintenance of scenes, transitions and arcs (links between
Framework provides an improvement over the default valida-                                                                                                                         scenes and transitions). The graphical editor provides a user-
tion of EMF-based tools to provide validation of additional                                                                                                                        friendly overview of the structural aspect of the organization,
restrictions. An ontology managing plug-in is included as well                                                                                                                     defining how different interactions within the organization are
to allow the ontology developed with OperettA to be exported                                                                                                                       supposed to help achieve the organizational objectives. Finally,
to OWL, as well as allowing for importing existing ontology                                                                                                                        OperettA allows for the specification and editing of scene
into the organization to boot-strap the organization design.                                                                                                                       properties (like the scene results, the players active in the
Finally, OperettA contains a Model Tracker plug-in that can                                                                                                                        scene, the landmark pattern, etc).
generate re-organization descriptions based on changes made                                                                                                                           3) Ontology Manager: The Ontology Manager part of the
in the OperettA organization editors.                                                                                                                                              OperettA tool is a plug-in for importing and exporting (do-
   We discuss the graphical editors and additional plug-ins in                                                                                                                     main) ontologies. The creation and maintenance of ontologies
more details in the following.                                                                                                                                                     is done by external tools (like, for example, Protégé). Parts of
   1) Social Diagram Editor: This graphical editor provides                                                                                                                        the functionality of organizational ontology editing is included
a view of the Social Structure element of OMs. It allows the                                                                                                                       in the OperettA editors:
graphical creation of organizational Roles and Dependencies,                                                                                                                          • Automatic creation of organizational ontology while de-
thus specifying the social relations between important parties                                                                                                                           signing the organization. As the designer is inputting the
that play a part in the organization. The Social Diagram Editor                                                                                                                          organizational model in OperettA, OperettA maintains
also provides editing capabilities to specify and manage Role                                                                                                                            an ontology of role names, objective names, and logical
related Objectives, to provide context for the different Roles                                                                                                                           atoms that the designer uses to define the organization.
in an organization. Figure 5 depicts the Social Diagram Editor                                                                                                                        • Using an included (existing) ontology for the naming of
of OperettA that is used to enter organizational roles and                                                                                                                               organizational model elements; that is, if an (external)
dependencies between roles. Role objectives are created and                                                                                                                              ontology is present in the organizational model it can
managed via the objectives editor shown in the bottom part of                                                                                                                            be used to pick concept names for different parts of
the figure.                                                                                                                                                                              an organizational model (e.g., the name of a role can
   2) Interaction Diagram Editor: Similar to the Social Di-                                                                                                                              be picked from an existing ontology included in the
agram Editor, the Interaction Diagram Editor provides a                                                                                                                                  model). The addition of the (external) ontology to an
graphical view of the Interaction Structure element of OMs.                                                                                                                              organizational model is done via the ontology manager.
This editor allows for the specification and management of                                                                                                                            The functionality of ontology editing in the OperettA tools
the interaction elements of the organization; that is, it is for                                                                                                                   is limited to organizational ontologies. The Ontology manager
the specification and management of the different interactions                                                                                                                     plug-in extends OperettA with the following capabilities:
that take place in the organization in order to achieve the                                                                                                                           • Importing an ontology from a file (e.g., RDF or OWL
different (role) objectives specified in the social part of the                                                                                                                          [19]). Ontologies about the domain or organization that
OM. The specification of the interaction is done in terms                                                                                                                                is to provide the context of a system might be already
of scenes and transitions (the connection and synchronization                                                                                                                            available. These ontologies tend to be stored in some



                                                                                                                                                                                  18
      conventional ontology file-format. The Ontology Man-
      ager 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
                                                                                         Fig. 6.   A Norm in OperettA.
      an owl file.
   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            6) Norm Editor: Norms are an important part of the or-
to be included in the domain ontology. The integration of            ganizational Model, providing lead ways on a high level of
organizational concepts in a domain ontology is not trivial, as      abstraction for the agents to follow. Norms can be inputted in
it should respect the structure of the domain ontology while         the current version of OperettA via the basic EMF generated
adding organizational concepts as roles, objectives, etc. and the    editor. This editor is not user-friendly. An example norm in
instances of these concepts; role names, objective names, etc.       OperettA is shown below in figure 6. The norm shown in this
The alignment between the exported ontology and the domain           figure describes that buyers should have paid for the items
ontology will have to be done by hand in an external editor.         they have won in an auction before one week has expired.
The inclusion of the ontology manager satisfies requirement          The norm is input using several logical formulas; one for
3.                                                                   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
   The validation plug-in works directly on the model instance       represent the important aspect of the system, be it require-
to verify various modeling constraints, accessing the model via      ments, high-level designs, user data structures, views, interop-
the 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.



                                                                    19
    Finally, OperettA is based on the OperA formalism, which                                       R EFERENCES
assumes that individual agents are designed independently              [1] Huib Aldewereld, Sergio Álvarez-Napagao, Frank Dignum, and Javier
from the organization, to model goals and capabilities of a                Vázquez-Salceda. Engineering social reality with inheritance relations.
given entity. Individual agents are the enactors of organiza-              In Proc. of the 10th Workshop Engineering Societies in the Agents’
                                                                           World (ESAW 2009). 2009.
tional role(s), as a means to realize their own goals [3]. As such     [2] L. Coutinho, J. Sichman, and O. Boissier. Modelling dimensions for
it is necessary that OperettA can connect to such MAS frame-               agent organizations. In V. Dignum, editor, Handbook of Research
works. As a proof of concept, we have done experiments on the              on Multi-Agent Systems: Semantics and Dynamics of Organizational
                                                                           Models. Information Science Reference, 2009.
connection towards frameworks like Brahms and Repast, for              [3] M. Dastani, V. Dignum, and F. Dignum. Role assignment in open agent
the simulation of organizations in which normative properties              societies. In AAMAS03. ACM Press, July 2003.
of the organization can be verified for different populations          [4] V. Dignum. A Model for Organizational Interaction: based on Agents,
                                                                           founded in Logic. SIKS Dissertation Series 2004-1. Utrecht University,
with emergent behavior. As part of the ALIVE project [12] a                2004. PhD Thesis.
connection was made with AgentScape to generate MAS from               [5] V. Dignum. The role of organization in agent systems. In V. Dignum,
the organizational specification.                                          editor, Handbook of Research on Multi-Agent Systems: Semantics and
                                                                           Dynamics of Organizational Models, pages ??–?? Information Science
                                                                           Reference, 2009.
                                                                       [6] V. Dignum and F. Dignum. Designing agent systems: State of the
                   V. D ESIGN G UIDELINES                                  practice. International Journal on Agent-Oriented Software Engineering,
                                                                           4(3), 2010.
   In the previous we introduced organizational modeling and           [7] V. Dignum, F. Dignum, and J.J. Meyer. An agent-mediated approach
the OperettA Environment to support this. In this section we               to the support of knowledge sharing in organizations. Knowledge
                                                                           Engineering Review, 19(2):147–174, 2004.
present a small overview on how one goes about designing an            [8] V. Dignum, J. Vazquez-Salceda, and F. Dignum. Omni: Introducing
organization. After identifying that an organization presents              social structure, norms and ontologies into agent organizations. In
the solution to the problem:                                               Programming Multi-Agent Systems: Second International Workshop
                                                                           ProMAS 2004, volume 3346 of LNAI. Springer, 2005.
  1) Identify (functional) requirements: First one determines          [9] Virginia Dignum and Frank Dignum. Modeling agent societies: co-
     the global functionalities and objectives of the society.             ordination frameworks and institutions. In A. Jorge P. Brazdil, editor,
                                                                           Progress in Artificial Intelligence: Proc. of EPIA-2001, LNAI 2258,
  2) Identify stakeholders: The analysis of the objectives of              pages 191–204. Springer, 2001.
     the stakeholders identifies the operational roles in the         [10] M. Esteva, J. Padget, and C. Sierra. Formalizing a language for
     society. These first two steps set the basis of the social            institutions and norms. In ATAL-2001, LNAI 2333, pages 348–366.
                                                                           Springer, 2001.
     structure of the OperA model.                                    [11] J. Ferber and O. Gutknecht. A meta-model for the analysis and design
  3) Set social norms, define normative expectations: The                  of organizations in multi-agent systems. In ICMAS’98, pages 128–135.
     analysis of the requirements and characteristics of the               IEEE Computer Society, 1998.
                                                                      [12] European Commission FP7-215890. ALIVE, 2009. http://www.ist-alive.
     domain results in the specification of the normative                  eu/.
     characteristics of the society. This results in the norms        [13] Davide Grossi, Frank Dignum, Mehdi Dastani, and Lambèr Royakkers.
     in the normative structure.                                           Foundations of organizational structures in multiagent systems. In
                                                                           AAMAS ’05: Proceedings of the fourth international joint conference
  4) Refine behavior: Using means-end and contribution                     on Autonomous agents and multiagent systems, pages 690–697, New
     analysis, a match can be made between what roles                      York, NY, USA, 2005. ACM.
     should provide and what roles can provide. This aspect           [14] S. Kumar, M. Huber, P. Cohen, and D. McGee. Towards a formalism
                                                                           for conversation protocols using joint intention theory. Computational
     contributes to refinement of role objectives and rights.              Intelligence Journal, 18(2), 2002.
  5) Create interaction scripts: Using the results from steps 3       [15] H.V.D. Parunak and J. Odell. Representing social structures in uml.
     and 4, one can now specify the patterns of interaction for            In M.Wooldridge, G.Weiss, and P. Ciancarini, editors, Agent-Oriented
                                                                           Software Engineering II, LNCS 2222. Springer-Verlag, 2002.
     the organization, resulting in the interaction structure.        [16] L. Penserini, D. Grossi, F. Dignum, V. Dignum, and H. Aldewereld.
                                                                           Evaluating organizational configurations. In IEEE/WIC/ACM Interna-
More details about the methodological steps taken to create                tional Conference on Intelligent Agent Technology (IAT 2009), 2009.
organizational models can be found in [7].                            [17] I. Smith, P. Cohen, J. Bradshaw, M. Greaves, and H. Holmback.
                                                                           Designing conversation policies using joint intention theory. In Proc.
                                                                           ICMAS-98, pages 269–276. IEEE Press, 1998.
                      VI. C ONCLUSIONS                                [18] Dave Steinberg, Frank Budinsky, Marcelo Paternostro, and Ed Merks.
                                                                           EMF: Eclipse Modeling Framework. Eclipse Series. Addison-Wesley
   In this paper, we present an organization-oriented model-               Professional, 2008.
                                                                      [19] W3C. Owl-s, 2004. http://www.w3c.org/Submission/OWL-S.
ing approach for system development. The OperA modeling               [20] H. Weigand and V. Dignum. I am autonomous, you are autonomous.
framework can be used for different types of domains from                  In M. Nickles, M. Rovatsos, and G. Weiss, editors, Agents and Com-
closed to open environments and takes into consideration                   putational Autonomy, volume 2969 of LNCS, pages 227–236. Springer,
                                                                           2004.
the differences between global and individual concerns. The           [21] F. Zambonelli. Abstractions and infrastructures for the design and
OperettA tool supports software and services engineering                   development of mobile agent organizations. LNAI 2222, pages 245–
based on the OperA modeling framework. It has been used in                 262. Springer, 2002.
                                                                      [22] F. Zambonelli, N. Jennings, and M. Wooldridge. Organizational abstrac-
the European project ALIVE [12] that combines cutting edge                 tions for the analysis and design of multi agent systems. LNAI 1957,
coordination technology and organization models to provide                 pages 235–251. Springer, 2001.
flexible, high-level means to model the structure of inter-
actions between services in an environment.



                                                                     20