Está en la página 1de 19

Daniel González Peña

Milagros Fernández Gavilanes

ESCUELA SUPERIOR DE
INGENIERÍA INFORMÁTICA
AUML- Sistemas Multiagente
(2005) 1

Índice

{ Introducción
z Qué es AUML
z AUML y FIPA
{ La notación
z Diagramas de clases
z Diagramas de interacción

AUML- Sistemas Multiagente


(2005) 2/38

1
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Qué es AUML?
{ AUML = AGENT UNIFIED MODELING LANGUAGE
(www.auml.org)
{ “Reutilizar UML sólo donde tenga sentido”
{ UML es insuficiente para modelar
sistemas multiagente
z Comparados con los objetos, los agentes son
activos ya que actúan por razones que
emergen de ellos mismos
z Entre otros aspectos, necesitamos modelar los
protocolos de interacción entre agentes

AUML- Sistemas Multiagente


(2005) 3/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Qué es AUML?
{ Inicialmente se identifican dos áreas para el desarrollo
detallado de especificaciones:
z Diagramas de clases
{ Especifican el comportamiento interno de un agente y su
relación con el exterior usando diagramas de clases UML
adaptados
{ Actualmente se han presentado borradores.

z Diagramas de interacciones o protocolo


{ Término genérico que se aplica a diversos tipos de
diagramas centrados en la interacción entre agentes
{ Similar a los diagramas de interacción usados en UML

AUML- Sistemas Multiagente


(2005) 4/38

2
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Qué es AUML?
{ También se identifican otras:
z Multi- vs. Single agent
z Goal & Soft goals
z Use cases
z Social aspects
z Enviroment
z Workflow / planning
z Levels of abstraction
z Temporal constraints
z Deployment and Mobility

AUML- Sistemas Multiagente


(2005) 5/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Qué es AUML?
“Reutilizar UML sólo donde tenga sentido”.
AUML toma ideas de (no sólo UML):

{ UML 2.0 { Gaia


{ AOR { BRIC
{ PASSI { Styx
{ MESSAGE { Prometheus
{ Tropos { MADkit
{ ADELFE { OPM

AUML- Sistemas Multiagente


(2005) 6/38

3
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

UML y FIPA
{ FOUNDATION FOR INTELLIGENT PHYSICAL AGENTS
{ Se centra en la producción de estándares para
lograr la interoperabilidad entre sistemas basados
en agentes
{ Cubre
z Aplicaciones
z Arquitectura
z Comunicación
{ Protocolos de interacción
{ Actos comunicativos
{ Lenguajes de contenido
z Gestión de agentes
z Transporte de mensajes

AUML- Sistemas Multiagente


(2005) 7/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

AUML y FIPA
{ Estructura de FIPA

AUML- Sistemas Multiagente


(2005) 8/38

4
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

AUML y FIPA
Arquitecture Board
Responsable final de aprobar
los planes de trabajo de
los Working Groups y los
TCs.
Working Groups
Parte informal de las
especificaciones y la
identificación de campos
de aplicación y prueba
Technical Committees
(TCs)
Se encargan de la
producción de
especificaciones formales

AUML- Sistemas Multiagente


(2005) 9/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

AUML y FIPA
{ Technical Committees
z Interaction Protocols (sin trabajo)
z Ad-Hoc
z Methodology
z Modeling
z Ontologies (sin trabajo)
z Security
z Semantics
z Services

AUML- Sistemas Multiagente


(2005) 10/38

5
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

AUML y FIPA
{ “Modeling Technical Committee
(Modeling TC) se ha establecido para
desarrollar la semántica, meta-modelos, y
sintaxis para las metodologías de
agentes, independientemente de los
fabricantes”.
{ AUML depende directamente del
Modeling TC.

AUML- Sistemas Multiagente


(2005) 11/38

LA NOTACIÓN

AUML- Sistemas Multiagente


(2005) 12/38

6
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
{ Están menos implantados que los
diagramas de interacción (son más
recientes).
{ FIPA afirma que ya hay consenso
suficiente en cuanto a diagramas de
clases, aunque los documentos que
hoy se manejan no lo dejan tan
claro. (hay 2 propuestas casi
antagónicas)

AUML- Sistemas Multiagente


(2005) 13/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
PRIMERA PROPUESTA (21/01/2004)
{ Se parte de UML 2.0 Superstructure. [OMG, 2003]

AUML- Sistemas Multiagente


(2005) 14/38

7
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
{ Las clases de UML tienen “un nuevo
hermano” que son los AgentClassifier.

Define los
Define los
diferentes roles
clasificadores que
que pueden jugar
definen los
los agentes
requerimientos de
un agente

«agent classifier» «agent role»


JADE Agent Broker
AUML- Sistemas Multiagente
(2005) 15/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
{ Hay un nuevo tipo de instancias

AUML- Sistemas Multiagente


(2005) 16/38

8
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
Agent
Classifier
classifier 1..*
Agent Physical Agent Role
Classifier classified Classifier
instance *

Agent

Seller
Jade
Agent Zeus •••
Classifier Agent
Classifier Agent1 Buyer Trust
••• Manager
Cybele Agent2
Agent
Classifier ••• Broker
Agent3
physical agent classes agent roles
Agent4
classified agent instances

AUML- Sistemas Multiagente


(2005) 17/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
SEGUNDA PROPUESTA (10/03/2004)
{ Detecta y trata de corregir muchas deficiencias de la
propuesta anterior.
{ Propone un modelo totalmente alternativo.
z Más intuitivo.
z Notación: Aporta tanto estereotipos como iconos para
los diagramas.
z Aporta ejemplos.
{ Es el último documento público del Modeling TC acerca
de los diagramas de clase AUML.

AUML- Sistemas Multiagente


(2005) 18/38

9
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
A nivel de clases, propone
una extensión de las
clases de UML (no un
hermano)

AUML- Sistemas Multiagente


(2005) 19/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
A nivel de instancia,
también extiende
InstanceSpecification
(igual que la anterior)

AUML- Sistemas Multiagente


(2005) 20/38

10
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
A nivel asociación, asocia AgentClass (Agent o
Group) y un AgentRoleClass

AUML- Sistemas Multiagente


(2005) 21/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
Notación
AgentBaseClass AgentRoleClass GroupClass

RoleProperty
PlayAssociation

O bien

AUML- Sistemas Multiagente


(2005) 22/38

11
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de clase
Ejemplos (SEGUNDA ALTERNATIVA)

1 2

AUML- Sistemas Multiagente


(2005) 23/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de interacción o protocolo

{ Existen varios tipos de diagramas


que están en fase de desarrollo:
z Diagramas de secuencia
z Diagramas de descripción de
interacciones
z Diagramas de colaboración o diagrama
de comunicación
z Diagramas de estado

AUML- Sistemas Multiagente


(2005) 24/38

12
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de secuencia
{ DEFINICIÓN:

z ”Es un diagrama que muestra interacciones


entre objetos en una secuencia de tiempo. En
particular, muestra los objetos que participan
en las interacciones y la secuencia de
mensajes intercambiados. A diferencia de un
diagrama de colaboración, un diagrama de
secuencia incluye las secuencias de tiempo
pero no sus relaciones. ’’

AUML- Sistemas Multiagente


(2005) 25/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de secuencia
{ Un diagrama de secuencia muestra las
sucesiones de tiempo entre agentes
ordenados de forma secuencial

{ Los diagramas de secuencia tienen dos


dimensiones:
z la dimensión vertical representa el orden en el
tiempo
z la dimensión horizontal representa los
diferentes roles o los agentes que poseen roles
específicos.

AUML- Sistemas Multiagente


(2005) 26/38

13
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de secuencia - Notación

{ UML 1.5 { UML 2.0

{ AUML

AUML- Sistemas Multiagente


(2005) 27/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de secuencia - Notación

{ UML 2.0 { AUML

AUML- Sistemas Multiagente


(2005) 28/38

14
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de secuencia - Notación

{ AUML

AUML- Sistemas Multiagente


(2005) 29/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de secuencia - Notación

{ El uso de las líneas de vida de AUML está


en contradicción con UML 2.0
{ AUML permite representar varios agentes
en una misma línea de vida, ya que no
necesariamente representa a un agente
sino que representa el role que
desempeña uno o varios agentes.
{ DEFINICIÓN ROLE: “nombre de
comportamientos poseídos por una clase
o por parte de un participante en un
contexto determinado”.
AUML- Sistemas Multiagente
(2005) 30/38

15
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de secuencia - Notación


Describe:
{ A - el role de un agente

{ B – un agente con un
role y un identificador
{ C – el identificador, el
role y el grupo
{ D – el role y el grupo
del identificador
{ E, F y G- la cardinalidad
del agente

AUML- Sistemas Multiagente


(2005) 31/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de secuencia - Notación

{ Un agente puede:
z asumir múltiples roles
z cambiar los roles

{ Múltiples roles implican que los


agentes participan varias veces en
la misma interacción
AUML- Sistemas Multiagente
(2005) 32/38

16
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de descripción de
interacciones
sd OverviewDiagram
lifelines :User, :ACSystem

Son una variante de los


InteractionOccurrence

{
Diagramas de Actividades Duration Constraint
ref
EstablishAccess("Illegal PIN")

Están enfocados a la
{0..25}

{ (inline) Interaction sd

descripción del flujo de :User

CardOut
:ACSystem

control donde los nodos decision

son interacciones, sin interaction constraint

mostrar los mensajes [pin ok]

sd

:User :ACSystem

Msg("Please Enter")

ref
OpenDoor {1..14}

AUML- Sistemas Multiagente


(2005) 33/38

INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de colaboración

{ Enfocan las interacciones entre las líneas


de vida
{ El secuenciamiento de los mensajes se da
a través de un esquema secuencial
numerado sd M
Lifeline

1a:m1 Message
:r s[k]:B
with
Sequence
number

Messages 1b:m3 2:m2

1b.1:m3 1b.1.1:m3,
1b.1.1.1:m2

s[u]:B

AUML- Sistemas Multiagente


(2005) 34/38

17
INTRODUCCION LA NOTACION
Qué es FIPA y AUML Clases Interacción

Diagramas de estados

{ Los diagramas de estados muestran


cambios en los estados u otra condición de
un elemento estructural
{ El propósito es mostrar los cambios en los
estados durante el tiempo
Lifeline State or condition DurationConstraint time constraint

sd UserAcc_User
{d..3*d}

WaitAccess

WaitCard
CardOut

Idle
Code OK {t..t+3}

AUML- Sistemas Multiagente


0 1 2 t
(2005) 35/38
tick mark values timing ruler
event or stimulus

Referencias
{ FIPA. Fipa Modeling TC: Agent Class Superstructure
Metamodel. 21-01-2004.

{ FIPA.FIPA Modeling: Interaction Diagrams.02-07-2003

{ Rodovan Cervenka (FIPA). Comments on FIPA Modeling


TC: Agent Class Superstructure Metamodel. 10-03-2004.

{ Massimo Cossentino, Gabriel Hopmans, James Odell.


FIPA Standardization Activities in the Software
Engineering Area

{ UML 2.0 Superstructure Specification. October 8, 2004

AUML- Sistemas Multiagente


(2005) 36/38

18
Referencias
{ Pablo Ezequiel Bonesi. Mejoramiento de Metodologías de
Análisis & Diseño de Sistemas Multiagente

{ James Odell,H.Van Dyke Parunak, Bernhard Bauer.


Extending UML for Agents

{ Maxime Morge. Interaction dans les systèmes multi-


agents : Vers les systèmes multi-agents dialogiques

AUML- Sistemas Multiagente


(2005) 37/38

Gracias por vuestra atención

ESCUELA SUPERIOR DE
INGENIERÍA INFORMÁTICA
AUML- Sistemas Multiagente
(2005) 38

19