Construcción de Software Orientado a Agentes con UML

Anuncio
Construcción de Software Orientado a Agentes con
UML
Federico Bergenti and Agostino Poggi
Dipartimento di Ingegneria dell’Informazione, Università degli Studi di Parma
Resumen
Este capítulo introduce los conceptos básicos de ingeniería de software orientada a
agentes mostrando los artefactos básicos que se introdujeron para analizar, diseñar e
implementar Sistemas Multiagentes. En particular, se presenta un conjunto de
diagramas orientados a agentes que dan soporte al modelamiento de:

La arquitectura de un Sistema Multiagentes.

La ontología seguida por los agentes.

Los protocolos de interacción usados para coordinar agentes.
Estos artefactos son descritos utilizando una notación basada en UML que saca
provecho de los estereotipos para proveer semánticas orientadas a agentes a los
diagramas de clases y colaboración.
Introducción
El software orientado a agentes parece tener las características necesarias para dar
apoyo en el desarrollo de sistemas de software flexibles y abiertos, como lo son las
aplicaciones Web. La decisión de OMG de dar estatus de grupo de interés al Agent
Working Group, y en especial la creación de FIPA “Foundation for Intelligent Physical
Agents” son una muestra del interés de la industria por este tema. La comunidad de
tecnologías de agentes no ha llegado a un acuerdo acerca del significado de la palabra
agente.
En este artículo se restringe la abstracción de agente para expresar las características
que hacen ideales a los agentes para el desarrollo de sistemas abiertos y flexibles. Este
capítulo introduce los conceptos fundamentales de ingeniería de software orientada a
agentes tomando la aproximación de mostrar los artefactos que el arquitecto puede
explotar para modelar un sistema al nivel de abstracción de un agente. Se presentan los
agentes de software, los principales trabajos en ingeniería de software orientada a
agentes y como los diagramas de UML pueden ser utilizados como una base para la
ingeniería de software orientada a agentes. Por último se tienen algunas conclusiones.
Conclusiones
La ingeniería de software está fundada en la posibilidad de modelar un sistema desde
diferentes niveles de abstracción. La ingeniería de software orientada a agentes
introduce un nuevo nivel, llamado el nivel agente, para permitir a los arquitectos de
software describir un sistema en términos de las interacciones entre los agentes. En este
nivel, un agente es considerado como una entidad atómica que se comunica con otros
agentes para implementar la funcionalidad del sistema. Este trabajo introduce las bases
de ingeniería de software orientado a agentes sacando provecho del punto de vista de los
artefactos que se proveen a los arquitectos para modelar sistemas al nivel de agentes.
Estos artefactos pueden ser producidos utilizando una notación basada en UML
soportada por cualquier herramienta CASE que permita a los arquitectos utilizarla sin la
necesidad de herramientas CASE habilitadas para agentes.
Se introducen tres diagramas orientados a agentes para modelar los elementos básicos
que caracterizan el nivel de abstracción de agentes: las interacciones entre los agentes y
el ambiente, la arquitectura de un Sistema Multiagentes y la ontología seguida por los
agentes. Los diagramas de casos de uso orientados a agentes son simples extensiones de
los diagramas de casos de uso usuales que permiten introducir agentes y modelar sus
interacciones con el usuario, con el ambiente y con el resto del sistema. Los diagramas
de arquitectura permiten modelar la arquitectura del Sistema Multiagentes en términos
de un conjunto de clases conectadas a través de relaciones. Cada clase está caracterizada
por las acciones que se le pueden pedir que realice a un agente que pertenece allí. Las
relaciones entre las clases pueden ser usadas para expresar la red de conocimiento que
un agente puede construir en tiempo de ejecución. Los diagramas de ontología permiten
construir un modelo del ambiente compuesto de entidades y relaciones. Estas relaciones
pueden ser utilizadas para especificar los predicados que los agentes pueden utilizar
para comunicarse y de esta manera los diagramas de ontología pueden ser utilizados
para modelar el dominio del contenido de los mensajes.
Descargar