A UML-Based Notation for Representing MAS Organizations WOA 2011 Dodicesimo Workshop Nazionale "Dagli Oggetti agli Agenti" M. C O S S E N T I N O, C. L O D A T O, S. L O P E S, P. R I B I N O I C A R I N S T I T U T E N A T I O N A L R E S E A R C H C O U N C I L O F I T A L Y V. S E I D I T A, A. C H E L L A D I P. D I I N G. C H I M. G E S T. I N F. M E C C. U N I V E R S I T À D E G L I S T U D I D I P A L E R M O
A UML-Based Notation for Representing MAS Organizations A notation for representing agents organizations to be implemented using Moise+ and Jason. An UML profile was defined for representing the elements of Moise+ organizational model such as role, mission and group
Overview Organizations play a relevant role in multi-agent systems design; They can be seen as the set of constraints ruling the agent s behavior in MAS. Moise+ describes the organization in a MAS by employing three main views: Structural Functional Normative
Moise+ The structural and functional dimensions defined in Moise+ are almost independent. The normative dimension is used to establish a link between them. Moise+ is complemented with the possibilities of quickly and easily programming MAS by means of J-Moise+. J-Moise+ is a Jason extension allowing developers to use Jason for programming agents and their organizations
Moise+ (2) Structural viewpoint: An organization can be seen as a set of Roles linked by Relations and clustered into Groups. Functional viewpoint: Social Schemes define global objectives and the plans for reaching them. The functionalities of the organization are represented as Goals grouped into Missions. Normative viewpoint: A Mission is linked to a Role by means of norms. Norms can be seen as the backbone connecting the functional and structural aspects of an organization.
Objectives The creation of a specific notation for representing the organizational model proposed by Moise+. Advantages: Graphical notations are more readable and understandable than any coding language. It is usually easier to explain a graphical notation to stakeholders involved in the designer than to read the application code with them. The possibility of involving stakeholders like system users enables the adoption of agile development approaches and improves the flexibility of conventional ones.
Notation elements
Notation elements Group may contain several structural elements (Roles) and other grouping elements (sub-groups). The root group represents the entire organization.
Notation elements Group may contain several structural elements (Roles) and other grouping elements (sub-groups). The root group represents the entire organization. Role has properties represented in the form of class attributes. An abstract role is identified using an italic font.
Notation elements Group may contain several structural elements (Roles) and other grouping elements (sub-groups). The root group represents the entire organization. Role has properties represented in the form of class attributes. An abstract role is identified using an italic font. Goal achievement and maintenance.
Notation elements Group may contain several structural elements (Roles) and other grouping elements (sub-groups). The root group represents the entire organization. Role has properties represented in the form of class attributes. An abstract role is identified using an italic font. Goal achievement and maintenance. Mission has the minimum and the maximum commitments to the mission.
Notation elements Group may contain several structural elements (Roles) and other grouping elements (sub-groups). The root group represents the entire organization. Role has properties represented in the form of class attributes. An abstract role is identified using an italic font. Goal achievement and maintenance. Mission has the minimum and the maximum commitments to the mission. Social Scheme where goals and missions are grouped
Relations among organizational elements - Dependency << Stereotype>> Dependency ( ) a generic relationship, with an UML stereotypes that defines the type of dependency.
Relations among organizational elements - Generalization Generalization( ) a relationship between roles in which specialized roles inherit features of the general role.
Relations among organizational elements - Association << Stereotype>> Association ( ) a link between elements of the Moise+ model with an UML stereotypes that attributes a semantic. Used for representing Organizational links Compatibility links Norms
Relations among organizational elements - Association: Organizational links Organizational links define the way in which social exchanges between agent roles occur. Authority Acquaintance Communication <<type of Org. Link>>
Relations among organizational elements - Association: Compatibility links Compatibility links show the possibility of an agent to adopt both roles at the same time <<compatibility>>
Relations among organizational elements - Association: Norms Norms regulates the way a Role performs a Mission Obligations Permissions <<type of Norm>>
Relations among organizational elements - Aggregation Aggregation ( ) a link defining the membership of a goal to a mission
Adopted Diagrams Organizational Diagram OD Scheme Structural Diagram SSD Scheme Functional Diagram SFD
Adopted Diagrams Organizational Diagram OD An UML class diagram for representing the structural and normative specification. The Organizational Diagram focuses on Moise+ elements such as Group, Roles, Missions and different kinds of relationships. Scheme Structural Diagram SSD Scheme Functional Diagram SFD
Adopted Diagrams Organizational Diagram OD An UML class diagram for representing the structural and normative specification. The Organizational Diagram focuses on Moise+ elements such as Group, Roles, Missions and different kinds of relationships. Scheme Structural Diagram SSD An UML class diagram for modeling the social schemes of the organization. Scheme Functional Diagram SFD
Adopted Diagrams Organizational Diagram OD An UML class diagram for representing the structural and normative specification. The Organizational Diagram focuses on Moise+ elements such as Group, Roles, Missions and different kinds of relationships. Scheme Structural Diagram SSD An UML class diagram for modeling the social schemes of the organization. Scheme Functional Diagram SFD An UML activity diagram for representing how a goal can be decomposed in sub-goals.
Organizational Diagram
Scheme Structural Diagram
Scheme Functional Diagram
Future works Conversion the diagrams in a XMI file and then in other kind of code.
Thanks!