<!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>Organizational Model to Derive Multi-Agent Architecture from Requirements</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Lúcia R. D. Bastos</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jaelson F. B. Castro</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Centro de Informática, Universidade Federal de Pernambuco</institution>
          ,
          <addr-line>S/N, Recife PE, Brazil 50732-970</addr-line>
        </aff>
      </contrib-group>
      <abstract>
        <p>Understanding and supporting the interaction between software requirements and architectures remains one of the challenging problems in software engineering research. To narrow these problems, we are proposing a framework for deriving architectural model in concert with Multi-Agent System requirement specifications. Our framework advocates that a multi-agent system corresponds to the organisational structure, in which actors are members of a group in order to perform specific roles.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Understanding and supporting the interaction between software requirements and
architectures remains one of the challenging problems in software engineering
research. In this paper we present an approach for integration of system requirements
and software architectures. Our framework proposes that the MASs correspond to the
organizational structure, in which actors are members of a group in order to perform
specific tasks. An organization comprises groups, members, roles and interactions.</p>
      <p>Organisational theories define an organisation as a whole consisting of agents
performing tasks [3]. There is a fixed structure of agent tasks and agent communication.
Organisation theory describes how practical organisations are actually structured,
offers suggestions on how new ones can be constructed, and how old ones can change
to improve effectiveness. Hence, the management principles from organisational
theory can be applied in multi-agent systems.</p>
      <p>Multi-agent systems (MAS) present a useful software engineering paradigm where
systems are described as individual agents pursuing high-level goals. MAS approaches
use role concepts for modelling social actors in organisational structure [3], and social
agents in multi-agent systems [6], [7], [9]. Nevertheless, there is no agent framework
or methodology that provides abstractions to support organisational groups, roles and
interactions in building MAS following an architectural style.</p>
      <p>This paper is structured as follows. Section 2 outlines the bank example. Section 3
outlines the definitions of our framework. Finally, Section 4 concludes the paper.</p>
    </sec>
    <sec id="sec-2">
      <title>2. The Bank Example</title>
      <p>Banks act as intermediaries between the people who have money to lend and those
who have the need for money to carry out business transactions. A bank system can be
described in terms of actors that administrate the bank and actors responsible for
monitoring the customer accounts. Fig. 1 shows the organisational model of the bank
example using the i* notation [8]. The i* (i-star) is the modelling framework for
requirements analysis of the Tropos Project [2].</p>
      <p>In Fig.1, the Bank Actor depends on the Customer's money to invest it, and
depends on Customer to request loans and to earn more money (Profitability). The
Customer depends on Bank to hold (in deposit or in savings account) his money and to
earn a certain amount of money called interest for depositing his money in a bank
(Deposit Profitability) and letting the Bank use the money for new investments.</p>
    </sec>
    <sec id="sec-3">
      <title>3. The SIRA Framework</title>
      <p>The SIRA (Systematic Integration between Requirements and Architecture using
Organisational Concepts) Framework emerges from the understanding that, within
organisations, interactions aim at achieving some desired global goals, and the
members are autonomous and heterogeneous. The Multi-Agent system has been described
from the perspective of an organisation [1]. The SIRA approach is based on a set of
complementary analysis models (as seen in Fig. 2): In the Organisational Model, the
main goals are identified from the requirement model. A goal is refined into sub-goals
or tasks so that each task is performed by a set of roles. The organisation of the social
system consists of sub-groups, roles and interactions, as intended by the system and its
environment. In the Assignment Model, roles are organised within sub-groups.
Subgroups are related to components, based on their similarity with the architectural
components. Finally, the Architectural Model describes the resulting architectural
configuration, which is the allocation of sub-groups to architectural components.</p>
      <p>N F R
F r a m e w o r k
A s s i g n m e n t</p>
      <p>M o d e l</p>
      <p>R l
RG lr -- GR rooleu p
C p - C o m p o n e n t</p>
      <p>R e q u ir e m e n t s
m o d e ls</p>
      <p>S I R A</p>
      <p>F r a m e w o r k
O r g a n i z a t i o n a l</p>
      <p>M o d e l</p>
      <p>GGrrGo ur opu p
A r c h i t e c t u r a l</p>
      <p>M o d e l
C p</p>
      <sec id="sec-3-1">
        <title>3.1 Organizational Model</title>
        <p>The SIRA Organisational model considers a group as a collection of roles whose
behaviour co-operatively determines the accomplishment of organisational goals.
SIRA Group is meant to describe systems as organisational group structure at the
conceptual level. Groups can be refined into Sub-Groups, Member, Positions or Role
in order to represent the social structure of an agent society. In this organisational
model, any group is the form G = {SG, P, R}, where SG is a set of sub-groups SG
{sg1, sg2, …sgm} such that i ≠ j ⇒ sgi ≠ sgj and m ≤ n, and P is a set of positions P
{p1, p2, …pm} such that i ≠ j ⇒ pi ≠ pj, and R is a set of roles R = {r1, r2, …rn} such
that i ≠ j ⇒ ri≠rj. Rather than involving the entire group in a goal, the roles that
address a goal are organised into sub-groups. Sub-groups consist of a subset of roles and
are used to deal with local goals. Any sub-group is the form SG = {R}, where R is a
set of roles R = {r1, r2, …rn} such that i ≠ j ⇒ ri≠rj. Roles encapsulate an actor
responsibility and are identified by grouping “related" tasks. The analyst, together with
users and other stakeholders, allocates tasks and defines new tasks for specific roles
within the organisation.</p>
        <p>In SIRA, role identification is done by group tasks with i* means-end analysis, with
goal as means [2]. In the Bank example, the Customer actor depends on the Bank
actor to achieve his goal Getting Loan. Fig. 3 shows the goal refinement for the task
Lending Money. It is one of the two major tasks of any Bank. Lending Money is
refined in three sub-tasks: Customer Profile Management, Loan Request Analysis, and
Loan Account Management.</p>
        <p>L e n d in g
M o n e y</p>
        <p>C u sto m e r</p>
        <p>P r o file
M a n a g e m e n t
L o a n R e q u e st</p>
        <p>A n a ly sis
L o a n A c c o u n t
M a n a g e m e n t</p>
        <p>N e w P r o file</p>
        <p>C r e d it</p>
        <p>A n a ly s is
N e w L o a n
A c c o u n t
A c c o u n tin g</p>
        <p>U p d a te</p>
        <p>P r o file
P a y m e n t
A n a ly s is</p>
        <p>L o a n
B a la n c e</p>
        <p>A social network is a graph (sometimes called a sociogram) that consists of a set of
nodes (or actors) connected by edges (or relations or ties) [4]. A social graph is a set
of relations performed and a set of roles played to fulfil a group goal. The nodes
represent the actors and the arrows represent the relations among them. This
representation makes it possible to distinguish between roles that interact and those that do not.</p>
        <p>Borrower</p>
        <p>Lender
Sequence</p>
        <p>Actor</p>
        <p>Profile
Manager</p>
        <p>Loan
Manager
Security
Manager</p>
        <p>Loan</p>
        <p>Handler
Accountant</p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2 Architectural Selection</title>
        <p>The organisational catalogue from Tropos project are evaluated and compared with
the non-functional properties of MAS architectures [2]. In the correlation catalogue
for the organisational styles, some software quality attributes for multi-agent
architectures were identified from a perspective of organisational styles [5], such as:
predictability, security, adaptability, coordinativity, availability, integrity, modularity,
aggregability.</p>
        <p>In the bank example, one of the most important non-functional requirements when
building information systems to be used on the bank domain is security, integrity and
availability. In our case study, the selected architectural style is the Structure-in-5,
because it contributes more positively for satisficing the softgoals security, availability
and integrity in the bank domain. In this architectural selection, the Structure-in-5
style is an aggregate of five sub-structures [5].</p>
      </sec>
      <sec id="sec-3-3">
        <title>3.3 Assignment Model</title>
        <p>The SIRA Assignment Model proposes the social network analysis as a method for
framing and describing the effects of organisational characteristics to relate
multiagent systems and organisational architectures. The Assignment Model addresses two
issues:
1. How to Cluster Roles into Sub-groups? Our model clusters like and unlike roles
into their respective sub-groups. Cluster analysis groups together the most similar
actors, recalculates similarities, and iterates until all actors are combined. The
cluster analysis enables to get a view of how the actors in one set are
"approximately equivalent" and why different sets of actors are different. Based on the
similarity analysis, the actors Loan Manager and Profile Manager are clustered in
a sub-group named Service Manager. The current bank example has five
subgroups.
2. How to Match sub-group and architectural components? Our model examines the
degree of structural similarity between sub-group and components. In the SIRA
framework, the second major way of examining the similarity is to look for
patterns of relations and then comparing the behaviour of organisational elements
and components, i.e. each architectural component is a sub-group of actors. The
components of such architectural organisation have to be structurally equivalent
or similar to the SIRA Sub-group with respect to the set of roles that they bridge.
+
+
+
+</p>
        <p>Table 1 shows the similarity correlation between Sub-groups and Components for
achieve the goal Get Loan. The notation models respectively, strong (++) or partial
(+) positive association, strong (--) or partial (-) negative associations.</p>
      </sec>
      <sec id="sec-3-4">
        <title>3.4. The Bank Architectural Model</title>
        <p>In bank example, a first architectural configuration is obtained from the sub-groups
assigned to components of the Structure-in-5 Style.
Based on the results presented in Table 1, the bank architectural configuration is
shown in Fig. 5. The bank group elements and architectural components are related as
follow:
1. The Operational Core is a component that carries out the basic tasks and
procedures directly linked to the production of products and services. The sub-group is
the Product Handler.
2. The Strategic Apex is a component that makes executive decisions to ensure that
the organisation fulfils its mission. The sub-group is the General Manager.
3. The Middle Agency establishes a hierarchy of authority. The sub-group is the</p>
        <p>Service Manager.
4. The Technostructure serves the organisation by standardising work processes,
outputs, and skills. The sub-group is the Bank Controller.
5. The Support provides specialised services outside the basic operating workflow.</p>
        <p>The sub-group is the Financial Manager.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Final Considerations</title>
      <p>Our organisational model advocates that a system corresponds to an organisational
structure, in which actors are members of a group, playing roles in order to perform
specific tasks. Roles can be used both as an intuitive concept in order to analyse
requirements in multi-agent systems as well as a behavioural structure in order to derive
coherent software architectures. Our architectural model describes the MAS at a
macroscopic level in terms of a manageable number of sub-groups.
5. References</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <source>Third International Workshop on Software Engineering for Large-Scale Multi-Agent Systems (SELMAS´04)</source>
          , Endinburg, Scotland, May
          <year>2004</year>
          . LNCS 3390:
          <article-title>´Software Engineering for Multi-Agent Systema III´</article-title>
          , pp.
          <fpage>85</fpage>
          -
          <lpage>103</lpage>
          .R.Choren et all. (Eds.), Springer-Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Bresciani</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giunchiglia</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mylopoulos</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Perini</surname>
          </string-name>
          , A.:
          <article-title>“TROPOS: An Agent-Oriented Software Development Methodology”</article-title>
          .
          <source>In Journal of Autonomous Agents and Multi-Agent Systems</source>
          , Kluwer Academic Publishers Volume
          <volume>8</volume>
          ,
          <string-name>
            <surname>Issue</surname>
            <given-names>3</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pages</surname>
          </string-name>
          203 - 236, May
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Fox</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barbuceanu</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gruninger</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Lin</surname>
            ,
            <given-names>J.: “</given-names>
          </string-name>
          <article-title>An Organization Ontology for Enterprise Modelling”</article-title>
          .
          <source>Simulating Organizations: Computational Models of Institutions and Groups</source>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pritula</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Carley</surname>
          </string-name>
          &amp; L.
          <string-name>
            <surname>Gasser</surname>
          </string-name>
          (Eds), Menlo Park CA: AAAI/MIT Press, pp.
          <fpage>131</fpage>
          -
          <lpage>152</lpage>
          .
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>Hanneman</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          (
          <year>2005</year>
          )
          <article-title>: “Introduction to Social Network Methods”</article-title>
          .
          <article-title>On-line textbook</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>January. http://faculty.ucr.edu/~hanneman/SOC157/TEXT/TextIndex.html.</mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>Kolp</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Giorgini</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Mylopoulos</surname>
          </string-name>
          , J.:
          <article-title>“Organizational Patterns for Early Requirements Analysis”</article-title>
          .
          <source>15th International Conference on Advanced Information Systems Engineering (CAiSE'03)</source>
          , Velden,
          <string-name>
            <surname>Austria. June</surname>
          </string-name>
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>Trzebiatowski</surname>
            ,
            <given-names>G. L.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Münch</surname>
          </string-name>
          , I.: “
          <article-title>The Role Concept for Agents in Multi-Agent Systems”</article-title>
          .
          <source>Modelling Artificial Societies and Hybrid Organizations. Workshop at KI2001</source>
          ,
          <source>the Joint German/Austrian Conference on Artificial Intelligence. Vienna</source>
          ,
          <volume>19</volume>
          -
          <fpage>21</fpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>Wood</surname>
            ,
            <given-names>M.F.</given-names>
          </string-name>
          and
          <string-name>
            <surname>DeLoach</surname>
          </string-name>
          , S.A.:
          <article-title>“An overview of the multiagent systems engineering methodology”</article-title>
          . First international workshop, AOSE 2000 on
          <article-title>Agent-oriented software engineering</article-title>
          , p.
          <fpage>207</fpage>
          -
          <lpage>221</lpage>
          ,
          <year>January 2001</year>
          , Limerick, Ireland.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <string-name>
            <surname>Yu</surname>
          </string-name>
          , Eric and Mylopoulos, John.: “
          <article-title>Understanding Why in Software Process Modelling, Analysis, and Design”</article-title>
          .
          <source>Proceedings of 16th International Conference on Software Engineering, May 16-21</source>
          ,
          <year>1994</year>
          , Sorrento, Italy, pp.
          <fpage>159</fpage>
          -
          <lpage>168</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <surname>Zambonelli</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jennings</surname>
            ,
            <given-names>N.R.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Wooldridge</surname>
          </string-name>
          , M.:
          <article-title>“Developing Multiagent Systems: The Gaia Methodology”</article-title>
          .
          <source>ACM Transactions on Software Engineering and Methodology</source>
          ,
          <volume>12</volume>
          (
          <issue>3</issue>
          ): pp.
          <fpage>317</fpage>
          -
          <lpage>370</lpage>
          .
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>