Title: Integration of System Requirements and MultiAgent Software Architecture
1Integration of System Requirements and
Multi-Agent Software Architecture
- Lúcia Rosangela David Bastos
- Jaelson Freire Brelaz de Castro
August, 2005
2Contents
- Motivation
- Organizational Theory in MAS
- The Tropos Project
- The Bank Example
- The SIRA Framework
- Final Considerations
3Motivation
- Semantic Gap among Requirements and Architecture
- Requirements are derived from concepts and
relationships in the problem domain (for example,
e-commerce, bank accounting) and architecture
models are solution for the problem described in
the requirements - This conceptual differences between what to do
(requirements) versus how to do (architecture)
is one of the challenging problem in software
engineering - Goal-based Organizational Models
- Goals can be related to functional abilities,
business and system qualities - Goals can be used as starting point to construct
the architectural description
Index
4Organizational Concepts
- Organizations are social groups that are
goal-directed and have a set of structured
activities to achieve their goals. - A social group is an organization unit with a set
of organized members being involved in social
relationships, pursuing common goals for some
period of time with an identifiable domain - Actor is a individual with intentional
properties, such as, goals, beliefs, abilities
and compromises. Actors may be people, agents
(software) or organizations. - Agents may become members of such an
organizational group, if they succeed to
undertake one or more roles that contribute
towards the collective objectives. - Role is an abstract representation of the
behavior of actor(s) that perform similar
functions in a group
5Organizational Concepts
Index
- SIRA Framework uses Organizational concepts
- Organizational group consist of a set of
sub-groups. - A sub-group represents a context of a role.
- A organizational domain can define the roles of
various actors. - Responsibilities are defined in terms of goals
and tasks
Multi-agent system organization of members to
achieve particular, possible common goals.
6Tropos Project
Index
Ontology
Actors, social dependencies, goals, resources,...
Application area
(Requirements-driven) Software development
TROPOS
i
SIRA Framework
Detailed design
Early requirements
Architectural design
Late requirements
Tropos, in Greek, means manner (as in manner
of doing things)
7The Bank Example
Index
- Organizational chat of a bank example, which
describes a strict partially set of named
positions and roles. - Bank is an organization that holds money
belonging to others, investing and lending it to
get more money.
8 Systematic Integration between Requirements and
Architecture - SIRA Framework
Index
NFR Framework
Architectural catalogue
Organisational Model Specification
Assignment Model Definition
Architectural Configuration
Requirements models
Organisational Model Architectural Style
Assignment Model
Architectural Configuration
Sequence
9i an Organizational Modeling Framework
- Early requirements (organization modeling)
- these concepts are used to model external
stakeholders (people, organizations, existing
systems), their relevant goals and
inter-dependencies. - Late requirements
- Resource, task and softgoal dependencies
correspond naturally to functional and
non-functional requirements. - Functional Goals are generally operationalized
during Late Requirements
SIRA
10The Bank Example in i notation
Index
SIRA
11The Bank Example in i
- Banks act as intermediaries between the people
who have money to hold and those who depend on
money for business transactions. - Bank Actor depends on the Customer's money
(represented as resource Money) for investment,
and depends on Customer to request loans
(represented as goal Get Loan) and to earn more
money (represented as softgoal Profitability). - Customer depends on Bank to hold his money in
deposit or savings account (represented as goal
Deposit Money), and to earn a certain amount of
money called interest for depositing his money in
a bank (represented as softgoal Deposit
Profitability). He lets the bank use the money
for new investments.
12Architectural Catalogue
- Multi-Agent Architecture as Social Structures
- Global Architecture in terms of interconnected
social components. - Concepts from organization theory (Mintzberg,
Scott, Galbraith, ) - 3 levels
- 1 Macro level Organizational Styles
(Organization Theory) - Vertical Integration, Pyramid, Joint Venture,
Structure in 5, Bidding, Hierarchical
Contracting, Co-optation, Takeover - 2 Micro level Patterns (Broker, Matchmaker,
Contract-Net, Mediator, Monitor, Embassy,
Wrapper, Master-Slave, ) - 3 Atomic Social and intentional concepts
SIRA
13Structure in-5 Style
Strategic and logistic components found in
organizations.
- Operational core basic operations -- the input,
processing, output associated with running the
organization. - Strategic apex executive, strategic decisions.
- Support Assists the operation core for
non-operational services outside the basic flow
of operational procedures. - Coordination standardizes the behavior of other
components, help the system adapt to its
environment. - Middle Agency Actors who join the apex to the
core.
SIRA
14Joint Venture Style
- Based on a agreement between two or more
principal partners. - Principal Partner Autonomous on a local
dimension and interacts directly with other
principal partners to exchange services, data and
knowledge - Joint Management actor coordinates tasks and
manages the sharing of knowledge and resources. - Secondary Partners Supply services or support
tasks for the organization core
SIRA
15Architectural Catalogue and Quality Attributes
Predictability, Security, Adaptability,
Cooperativity, Competitivity, Availability,
Integrity, Modularity, Aggregability
() contributes positively (very positively)
- (--) contributes negatively (very negatively)
SIRA
16The Organizational Model
Index
- Organisational concepts
- Organisation is a group. It consist of a
collection of sub-groups. A Sub-group represents
a context of a role. A organisational structure
can define the roles of various members (actors).
- Roles corresponds to the division of labour
- Members corresponds to a set of agent in the
group - Responsibilities are defined in terms of goals
and tasks - Multi-Agent System corresponds to a group
- Organizational Meta-model
SIRA-OM
17The Organizational Meta Model
Index
- Extension of the i Meta-model in Telos
SIRA-OM
18The Organizational Model Specification
Index
Requirement model
Role Identification
Organizational Model
Goal/Task Refinement
Architectural Selection
Architectural Style
Sequence
NFR Framework
Architectural catalogue
SIRA
19Organizational Model Goal/Task Refinement
- Bank Group is a Multi-Agent System
- Main Responsibilities (Goals)
- Services and capabilities assigned to a Group.
Responsibility is extracted from the goals to be
fulfilled by system actors, like Get Loan or
Deposit Money
SIRA-OM
20Goal/Task Refinement - Get Loan
- Means-end analysis - The goal Get Loan is
achieved through the task Lending Money. - The task is achieved through the sub-tasks
Customer Profile Management, Loan Request
Analysis and Loan Account Management
New Profile
Customer Profile Management
Update Profile
Credit Analysis
Loan Request Analysis
Lending Money
Payment Analysis
Get Loan
New Loan Account
Loan Balance
Loan Account Management
Accounting
Strategic Analysis
SIRA-OM
21Goal/Task Refinement Deposit Money
- Means-end analysis - The goal Deposit Money is
achieved through the task Account Management. - The task is achieved through the sub-tasks
Customer Profile Management, New Account and
Account Transaction and Accounting
SIRA-OM
22Organizational Model Role Identification
- Role Identification involves the distribution of
tasks to perform a group goal, like Get Loan or
Deposit Money
SIRA-OM
23Role Identification Get Loan
- Role Identification involves the distribution of
tasks to perform a group goal
New Profile
Customer Profile Management
Update Profile
Credit Analysis
Loan Request Analysis
Lending Money
Payment Analysis
Get Loan
New Loan Account
Loan Transactions
Loan Account Management
Accounting
Strategic Analysis
24Role Descriptions Get Loan
- The Goal Get Loan is performed with a set of six
roles
25Role Interactions Get Loan
- Social Graph - Interaction sequence of roles
played to fulfil a group goal
26Matrix Representation Get Loan
- Get Loan - Matrix representations
- The sender is the row (out degree)
- The target is the columns (in degree)
27Role Identification Deposit Money
28Role Description Deposit Money
- The Goal Deposit Money is performed with a set of
six roles
29Role Interaction Deposit Money
- Social Graph - Interaction sequence of roles
played to fulfil a group goal
30Matrix Representation Deposit Money
- Deposit Money - Matrix representations
- The sender is the row (out degree)
- The target is the columns (in degree)
31Organizational Model - Architectural Selection
- Architectural Properties
- Each architecture must conform to the application
domain qualities - Each architectural candidate will be analyzed
based on positive contributions to priority
qualities (constraints) of the application domain - NFR Framework
- Each architectural candidate will be analyzed
based on positive contributions to priority
qualities (constraints) of the application domain - Selecting an Architectural Style
SIRA-OM
32Architectural Alternatives of the Bank Example
- Architectural Properties (NFR Framework)
- Security
- Availability
- Integrity
- Selected Architecture - Structure-in-5 Style
() contributes positively (very positively)
- (--) contributes negatively (very negatively)
SIRA-OM
33Organizational Elements of the Bank Example
- Roles, Interactions and Architectural Style
SIRA
SIRA-OM
34The Assignment Model Definition
Index
Sequence
SIRA
35Assignment Model Centrality Analysis
- The Centrality of Actors
- The extent to which an organization revolves
around an actor - The star network
- Two aspects to describe the location of actors in
terms of how close they are to the center in a
organizational structure - Degree Centrality (influence and prominence)
- Closeness Centrality (importance of a position
near to the center) - Centrality analysis Bank Example (Get Loan and
Deposit Money) - Architecture
(Structure-in-5 and Joint Venture)
SIRA-AM
36Centrality Analysis Bank Example - Get Loan
- Degree Centrality
- Influential (out degree)
- Prominent (in degree)
- Closeness Centrality
- The distance of an actor for all other - inverse
of the geodesic distance (farness) and normalized
relative to the most center actor ( g-1 )
37Centrality Analysis Bank Example Deposit
Money
- Degree Centrality
- Influential (out degree)
- Prominent (in degree)
- Closeness Centrality
- The distance of an actor for all other - inverse
of the geodesic distance (farness) and normalized
relative to the most center actor ( g-1 )
38Centrality Analysis Structure-in-5 Style
- Social Graph and Matrix
- Degree Centrality
- Influential (out degree)
- Prominent (in degree)
- Closeness Centrality
- The distance of an actor for all other - inverse
of the geodesic distance (farness) and normalized
relative to the most center actor ( g-1 )
39The Social Graph - Structure-in-5 Style
Social Graph from i model with two more
relations
40Matrix Representation Structure-in-5 Style
41Centrality Analysis Joint-Venture Style
- Social Graph and Matrix
- Degree Centrality
- Influential (out degree)
- Prominent (in degree)
- Closeness Centrality
- The distance of an actor for all other - inverse
of the geodesic distance (farness) and normalized
relative to the most center actor ( g-1 )
42The Social Graph - Joint-Venture Style
Social Graph from i model with two more
relations
Contractual activity
43Matrix Representation Joint-Venture Style
44Assignment Model Cluster Analysis
- Cluster is a technique to identify natural groups
within the data set. - The Cluster analysis is a way to grouping roles
into sub-group. The roles are analyzed using two
techniques - The Centrality Measures
- The centrality analysis indicates the extend to
which a group is organized around its most
central actor - The Degree of Structural Equivalence
- The similarity matrix indicates the extend to
which two actors have the same profile of
relations to all other actors in the group. - Cluster Analysis of the Bank Example
SIRA-AM
45Cluster Analysis Centrality Measures
- The first step is to measure the overall
integration of the group - The degree is measured using by computing the
difference between the centrality scores of the
most central point and those of all other point. - In the Bank Example
- the actors Loan Manager and Profile Manager are
the most central actors - They have partial similarity in the centrality
results - Similar relations with others actors
- Related degree centrality (out degree 100 and
88) - Identical closeness centrality (100)
46Cluster Analysis Structural Equivalence
- The degree of structural equivalence
- Degree to which two actors have the same profile
of relations to all other actors in the group. - The degree is measured using the Pearson
Correlation (r). Correlation is a technique for
investigating the relationship between two
variables. - Person correlation ranges from 1,00 to 1,00.
47Cluster Analysis Pearson Correlation (r)
- The Pearson correlation (r) is used to calculate
each similarity index. - In the bank example, the Person correlation
indices is calculated as follow - Bank Group has n6. Loan Manager is X
1,0,1,1,1,1 and Profile Manager is
Y1,0,0,1,1,1.
?
48Cluster Analysis - Bank Example
- The similarity or distance matrix for all
pair of actors.The Pearson correlation (r) is
used to calculate each similarity index - Taking the score in each cluster that is closest
to some other cluster, the similarity is
recalculated and the next most similar pair is
joined. - The pair most similar is Loan Manager and
Profiler Manager. The calculated similarity is
partial positive (0,6325).
49Cluster Analysis The New Social Graph
50Cluster Analysis The New centrality analysis
SIRA-AM
51Assignment Model Similarity Analysis
- Similarity Analysis examines the correlation
between two groups. - The Cluster analysis is a way to grouping roles
into sub-group. The roles are analyzed using two
techniques - The Centrality Correlation
- The first correlation is based on centrality
measures - The Similarity Correlation
- The similarity matrix indicates the extend to
which the sub-group have the same profile of
relations to the components.
SIRA-AM
52Similarity Analysis Centrality Correlation
- The degree is measured using by computing the
difference between the centrality scores of the
most central point and those of all other point. - Centrality Bank and Structure-in-5
53Similarity Analysis Similarity Correlation
Matrix of correlation based on In-degree
(receiving relations)
Matrix of correlation based on Out-degree
(sending relations)
54Similarity Analysis Correlation Matrix
- Bank graph
Structure-in-5 graph
strong () or partial () positive correlation,
strong (--) or partial (-) negative correlation
SIRA-AM
55Assignment Model Group and Architecture
- Bank graph
Structure-in-5 graph
strong () or partial () positive correlation,
strong (--) or partial (-) negative correlation
SIRA
SIRA-AM
56The Architectural Configuration
Index
Architectural Mapping
Assignment Model
Architectural Configuration
Sequence
SIRA
57Architectural Mapping
58The Bank Architectural Configuration
Index
SIRA
59Final Considerations - Contributions
Index
- Narrowing the gap among requirements gtlt
architectures - Using same concepts for requirements and
architectures - Description in i framework
- Organizational concepts
- Mapping requirements into architecture and
maintaining consistency of interactions - Refine requirement and derive architecture into a
systematic process
60Final Considerations Future Works
Index
- Several Aspects of SIRA Framework requires
further works - Validation in a broad range of applications
- Definition of mechanism to deal with norms and
conflict resolution in the organizational model - Definition of guidelines to identify roles in the
problem domain - Definition of the process to support the
development of SIRA models - Tools to support the SIRA Process
- Architectural Catalogue To include social graph
catalogue
61Publications (2002 2003)
Index
- Bastos, L.R.D. and Castro, J.F.B.(2002) An
Event Based Layered Architecture for Bank
Systems. V Workshop Iberoamericana de
Ingenieria de Requisitos y Ambientes de Software
- IDEAS2002. - Bastos, L.R.D. and Castro, J.F.B.(2002)
Aplicação da Arquitetura com Modelo de Controle
Baseado em Eventos no Banco do Brasil S.A. XVI
Brazilian Symposium on Software Engineering
SBES2002, p.207-221. - Bastos, L.R.D. and Castro, J.F.B.(2003)
Integrating Organizational Requirements and
Socio-Intentional Architectural Styles. Second
International Workshop From SofTware Requirements
to Architectures (STRAW03), 2003. p.114 121. - Bastos, L.R.D. and Castro, J.F.B.(2003)
Integration between Organizational Requirements
and Architecture. WER03 - VI Workshop em
Engenharia de Requisitos.
SIRA
62Publications (2004 2005)
Index
- Bastos, L.R.D. and Castro, J.F.B. (2004)
Systematic Integration between Requirements and
Architecture. Third International Workshop on
Software Engineering for Large-Scale Multi-Agent
Systems SELMAS'04. - Bastos, L.R.D. and Castro, J.F.B. (2004)
Enhancing Requirements to derive Multi-Agent
Architectures. WER04 - VII Workshop em
Engenharia de Requisitos. - Bastos, L.R.D. and Castro, J.F.B. (2005)
Systematic Integration between Requirements and
Architecture. LNCS 3390 Software Engineering
for Multi-Agent Systems III, pp. 85-103.R.Choren
et all. (Eds.), Springer-Verlag, 2005. - Bastos, L.R.D. and Castro, J.F.B. (2005) From
Requirements to Multi-Agent Architecture based on
Organisational Concepts. 4th International
Workshop on Software Engineering for Large-Scale
Multi-Agent Systems SELMAS'05. - Bastos, L. R.D. e Castro, J. F.B. (2005)
Organizational Model to Derive Multi-Agent
Architecture from Requirements. CAISE05 Forum.
SIRA