Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

AUML

Metodologia
by

Miguel Prieto

on 26 June 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of AUML

AUML
Superestructura para diagramas de clases de agentes [FIPA, 2003]
Diagrama de Secuencia
Adaptacion para AUML
Marcos de Protocolo - Lineas de Vida
Mensajes
se escriben en el Lenguaje de Comunicación de Agentes (Agent Communication Language, ACL)
(inform
:sender(agent-identifier :name agent1)
:receiver (set (agent-identifier :name agent2)
:content “((price good 100))”
:language fipa-sl
:ontology auction
)
Se remplaza el concepto de Objeto por el de Agente
Diagrama de Secuencia: “Es un diagrama que muestra las interacciones entre los agentes, ordenadas según sus secuencias de ejecución. En particular, muestra la interacción de los agentes y las secuencias de mensajes intercambiados entre ellos. A diferencia de un Diagrama de Colaboración incluye las secuencias de tiempo, pero no incluye la relación entre los agentes.”
Tiene dos dimensiones
•Una dimensión vertical que representa el orden en el tiempo
•Una dimensión horizontal que representa los diferentes roles o agentes que juegan roles específicos
Contraste entre UML y AUML
Lineas de Vida en UML representa la interaccion entre participantes.
AUML se puede representar varios agentes en la misma línea de vida. Las líneas de vida no necesariamente representan un agente, sino el rol que uno o varios estos agentes pueden estar representando.
Mensajes Sincrónicos y Asíncronicos
una consideracion especial es que si el mensaje es enviado y recibido por el mismo rol y se trata de una comunicacion sincrónica siempre se deberá marcar con una barra " / " para evitar el abrazo mortal
Otro caso posible es la sobreposición de mensajes, donde un mensaje sea recibido antes que otro enviado con anterioridad.
Ejemplo
En el ejemplo se observa una agente con rol de cliente que solicita información a otro que juega un rol de servidor de información. Se inscrusta un segundo protocolo que representa restricciones de comunicación.
UML y AUML
UML:
Lenguaje gráfico para visualizar, especificar, construir y documentar un sistema. Ofrece un estándar para describir un "plano" del sistema (modelo).
AUML:
Herramienta para la construcción de modelos de sistemas multiagente en el contexto de la metodología UML 2.0.
Busca adaptar UML al modelado de sistemas multiagente.
Agentes
Objetos autónomos e interactivos, su comportamiento se basa en estados internos, sus actividades incluyen:

Metas
Condiciones
Diagrama de Clases
La clasificación permite definir conjunto de entidades que comparten una o más características comunes de los agentes.
Agente Fisico Clasificador (Agent Physical Classfier): describe el conjunto de características básicas que todos los agentes poseen

Agente Clasificador de Roles (Agent Role Classifier):Los agentes pueden estar asociados con más de un rol en el mismo instante de tiempo -clasificación múltiple- y pueden cambiar de rol a lo largo del tiempo -clasificación dinámica-.
Grupos
Conjunto de agentes que están relacionados por medio de sus roles, donde esas relaciones deben formar un grafo conectado dentro del grupo.
Cada grupo es una estructura compuesta.
Tipos de Grupos:
Grupos Agentificados: Interactúa con otros conjuntos de agentes
Grupos no Agentificados: Agentes agrupados con propositos de Organización Conceptual
Diagramas de interacción en AUML
Son un conjunto de diagramas que permiten modelar la interacción entre agentes.
Es un diagrama que muestra las interacciones entre los agentes, ordenadas según sus secuencias de ejecución.

Incluye las secuencias de tiempo, pero no incluye la relación entre los agentes.
Los marcos de UML permiten especificar todos los elementos que intervienen en un protocolo de interacción.

Eso significa que se pueden representar el flujo de mensajes, así como los roles involucrados en la interacción, las restricciones temporales y de interacción.
Marcos de Protocolo
Mensaje Sincrónico:
Mensaje Asíncronico:
el agente quedará esperando por una respuesta del receptor.
el agente puede continuar con
sin la espera de una respuesta.
Restricciones Temporales
Requerimientos del Sistema
Los procesos se inician a partir de las solicitudes de producción de telas (productos terminados).

Dada una lista de órdenes de producción que llega al proceso, se debe asignar cada una de las órdenes a una continua en cuanto se encuentre una disponible. Una vez asignada la orden, la continua producirá el hilo en el tiempo correspondiente a la cantidad solicitada y la capacidad de la máquina, e informará que ha terminado el trabajo.
Se identifican entonces dos funcionalidades básicas del sistema:
Recibir la lista de órdenes de producción y asignar los trabajos.
realizar la producción especificada en una orden.
Dos funcionalidades básicas del sistema:
Actores
El usuario Planificador de producción de hilo. Este tiene acceso a la lista de órdenes de producción, conoce el estado de las máquinas productoras (libre u ocupada), y puede asignarles una orden de producción.

La máquina Continua , máquina productora del hilado, puede recibir una orden de producción, informar el tiempo que ha de insumir completar el trabajo, realizar el trabajo e informar de la conclusión exitosa (o no) del mismo.
Modelo de interacción
Modelo de Agentes y Servicios AUML
Modelo de interacción
Dadas la evolución de los sistemas de software para adaptarse a las exigencias de un mundo cada vez mas interconectado, se han impuesto, como mencionábamos al principio, nuevos requerimientos a las técnicas y metodologías de ingeniería, en el área de los sistemas, necesarias para desarrollar los mismos. Los sistemas están cada vez mas distribuidos y se requieren de nuevas tecnologías para poder darles las características apropiadas tales como funcionalidad, robustez, seguridad, autonomía, entre otras; y esto establece una marcada tendencia para el futuro. Desde estas nuevas perspectivas y tendencias el concepto de Agentes resulta muy interesante debido a que proporciona una solución a esta demanda.
Para poder diseñar y desarrollar sistemas orientados a agentes, es necesario contar con modelos y tecnologías modernos y también con un conjunto de abstracciones de ingeniería de software, que sirvan como referencia para el análisis y diseño, y se establezcan como las bases para metodologías que permitan a los desarrolladores crear tales sistemas de una manera robusta, segura y repetible.
El uso de metodologías para el desarrollo de sistemas de software es vital para garantizar que el producto final tenga las características deseadas y también su calidad así como también la posibilidad de extender su vida útil mediante correcciones y actualizaciones. UML, como lenguaje de eficiencia probada, resulta mas que apto para este fin. Habiéndose superado su ineficiencia para trabajar con agentes, a través de su versión AUML, esta listo para seguir siendo usados por profesionales de desarrollo en el habiente tecnológico global actual y futuro.
Conclusión
Una metodología de desarrollo, sin importar cuan potente y versátil sea, siempre presenta deficiencias mas o menos importantes, sobre todo al enfrentarse a cambios de tecnologías o paradigmas. Tal es el caso de UML que, como expusimos al comenzar, esta consolidado como el lenguaje estándar en el análisis y diseño de sistemas de computo, no obstante no es del todo apta para ser usado en el desarrollo de sistemas basados en agentes.
A pesar de las deficiencias que pueda presentar una metodología de desarrollo de sistemas, si esta es potente, siempre resulta mas o menos reutilizable. Es decir es posible adaptarla, realizando innovaciones, para que supere dichas deficiencias. Esto lo observamos en el estudio de UML y AUML.
Los avances de la informática están empezando a poner a disposición de usuarios comunes productos basados en la investigación en Inteligencia Artificial y destinados a facilitarles operaciones frecuentes como la navegación por la red. Son los agentes. Por esto concluimos también en que la programación orientada a agentes es, tal vez el futuro de la programación, permitiendo el desarrollo de aplicaciones relativamente inteligentes, distribuidas y autónomas.
Muchas Gracias!!
Modelo de Roles
Escalabilidad
Full transcript