Your SlideShare is downloading. ×
0
Desarrollo con el INGENIAS
          Development Kit

                     Agente Hola Mundo


                           ...
Desarrollo de agentes con el IDK
       El IDK proporciona soporte a la metodología
   
       INGENIAS
                M...
IDK: Generación de código


      modelo                                                                    código
       ...
Sobre el IDK

    Se basa en un lenguaje para el modelado de SMA

        El lenguaje está expresado como un meta-modelo
...
Sobre el IDK

    Está desarrollado en Java

        Compatible con versiones superiores a la 1.4
    

    Usa la herra...
Descargando el software

    Ir a http://ingenias.sourceforge.net


    Saltar a la sección downloads


    Descargar la...
Estructura general

    IDK

        editor. Contiene el editor visual de especificaciones.
    

        iaf. Contiene ...
Creando un proyecto

    Se abre una consola de comandos


    Se abre la carpeta donde se ha instalado el IDK


    Se ...
Abriendo la especificación

    Hay que ejecutar el editor con ant runide





    La especificación se crea con el edito...
Abriendo la especificación

    Se elige la opción File -> Load


    Vamos a la carpeta c:hlocalIDK2.7workspaceMiProyect...
Propiedades de la especificación

    Definen parámetros para los módulos de

    generación
    Ir a Project -> Properti...
Creando un agente

    Crear un diagrama de agentes





                     Ingeniería del Software Orientada a Agentes...
Definiendo la tarea

    Definir la tarea con un diagrama de

    tareas/objetivos




                      Ingeniería d...
Asociando código a la tarea

    Definir un diagrama de componentes





                    Ingeniería del Software Orie...
El código de la tarea




    Las tareas java contienen el código introducido

    dentro del componente



             ...
Generando código

    Seleccionar Modules -> Code Generator ->

    Ingenias Agent Framework generator -> Generate
    La...
Ejecutando




    Ir a la carpeta del proyecto

        Abrir dos consolas aquí
    

    En la primera consola

     ...
Ejecutando II

    Como alternativa, se puede abrir una única consola

    y escribir lo siguiente

    ant runProdStandA...
Definiendo un despliegue

    Crear un diagrama de despliegue





                     Ingeniería del Software Orientada...
Definiendo un despliegue




                 Ingeniería del Software Orientada a Agentes   20
Ejecutando

    Se regenera el código y se vuelve a ejecutar


    El número de opciones para ejecutar aumenta





    ...
Integrando con Eclipse

    La modificación de

    fuentes se puede hacer
    desde eclipse
        Creando un nuevo
   ...
Integrando con Eclipse

    Las carpetas que deben

    configurarse como
    código fuente son
    gensrc, permsrc, y sr...
Integrando con Eclipse

    Ahora se puede trabajar

    como si se tratara de
    JAVA
        La carpeta gensrc no
    ...
Modificando una tarea




    Las tareas se generan en

    gensrc/ingenias/jade/components
        Buscar el nombre de l...
Modificando una tarea

    Si queremos

    modificar como
    en el ejemplo,
    hay que
    actualizar el
    cambio en...
Advertencia

    Modificaciones diferentes de insertar código en la

    parte indicada de la tarea no pueden gestionarse...
Configurando Eclipse

    Para evitar el uso de

    imports, hay que
    modificar las
    preferencias de Eclipse
     ...
Sincronizando Código y especificación

    Consiste en asegurar que todo lo que hay en la

    carpeta gensrc del proyect...
Upcoming SlideShare
Loading in...5
×

Agente Hola Mundo

2,894

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,894
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
87
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Agente Hola Mundo"

  1. 1. Desarrollo con el INGENIAS Development Kit Agente Hola Mundo Jorge J. Gómez Sanz Dep. de Sistemas Informáticos y Programación http://grasia.fdi.ucm.es
  2. 2. Desarrollo de agentes con el IDK El IDK proporciona soporte a la metodología  INGENIAS Metodología: notación + herramientas + proceso +  paradigma UCM, 2003 Agentes Software 2
  3. 3. IDK: Generación de código modelo código modelo código SMA de agente código Generador modelo SMA de agente de agente SMA (XML) Completar/Revisar por el programador plantilla de código plantilla de código plantilla de código con XML marcado marcado con XML marcado con XML Específicos de una plataforma Plataforma de agentes (deben reunir los elementos de los metamodelos) Ingeniería del Software Orientada a Agentes 3
  4. 4. Sobre el IDK Se basa en un lenguaje para el modelado de SMA  El lenguaje está expresado como un meta-modelo  El lenguaje es un superconjunto de lo que reconoce  el generador de código No todos los elementos son reconocidos para generar el  SMA Se pueden construir múltiples generadores de  código Ingeniería del Software Orientada a Agentes 4
  5. 5. Sobre el IDK Está desarrollado en Java  Compatible con versiones superiores a la 1.4  Usa la herramienta ant  http://ant.apache.org  Está desarrollado con código GPL en su mayoría  Librerías para gestión de gráficos  Librerías para persistencia en XML  Plataforma JADE  Los SMA que se generan con IAF están completos al  70% Falta introducir el código correspondiente a las tareas  La coordinación y flujo de control está prácticamente  implementado Ingeniería del Software Orientada a Agentes 5
  6. 6. Descargando el software Ir a http://ingenias.sourceforge.net  Saltar a la sección downloads  Descargar la versión IDK 2.7  Descomprimir en la carpeta c:hlocal  Lanzar la consola de ant  Ingeniería del Software Orientada a Agentes 6
  7. 7. Estructura general IDK  editor. Contiene el editor visual de especificaciones.  iaf. Contiene el generador de código  workspace. Contiene los diferentes proyectos  Se recomienda crear los proyectos dentro de  workspace, pero se pueden mantener fuera igualmente Dentro de un proyecto hay, entre otras, las  siguientes carpetas src. Contiene fuentes generados manualmente  gensrc. Son los fuentes generados automáticamente  permsrc. Fuentes generados automáticamente y no  regenerados spec. La especificación del problema  Ingeniería del Software Orientada a Agentes 7
  8. 8. Creando un proyecto Se abre una consola de comandos  Se abre la carpeta donde se ha instalado el IDK  Se invoca la creación del proyecto con:  Esto creará un proyecto en  c:hlocalIDK2.7workspaceMiProyecto Dentro de este proyecto se crea automáticamente  una especificación ya preconfigurada en la carpeta spec Ingeniería del Software Orientada a Agentes 8
  9. 9. Abriendo la especificación Hay que ejecutar el editor con ant runide  La especificación se crea con el editor visual  La creación del proyecto incluye la creación de una  especificación donde están configurados los parámetros de generación de código Ingeniería del Software Orientada a Agentes 9
  10. 10. Abriendo la especificación Se elige la opción File -> Load  Vamos a la carpeta c:hlocalIDK2.7workspaceMiProyectospec  Se abre el fichero specification.xml  Ingeniería del Software Orientada a Agentes 10
  11. 11. Propiedades de la especificación Definen parámetros para los módulos de  generación Ir a Project -> Properties  Ingeniería del Software Orientada a Agentes 11
  12. 12. Creando un agente Crear un diagrama de agentes  Ingeniería del Software Orientada a Agentes 12
  13. 13. Definiendo la tarea Definir la tarea con un diagrama de  tareas/objetivos Ingeniería del Software Orientada a Agentes 13
  14. 14. Asociando código a la tarea Definir un diagrama de componentes  Ingeniería del Software Orientada a Agentes 14
  15. 15. El código de la tarea Las tareas java contienen el código introducido  dentro del componente Ingeniería del Software Orientada a Agentes 15
  16. 16. Generando código Seleccionar Modules -> Code Generator ->  Ingenias Agent Framework generator -> Generate La pestaña Logs mostrará el resultado de la  generación Ingeniería del Software Orientada a Agentes 16
  17. 17. Ejecutando Ir a la carpeta del proyecto  Abrir dos consolas aquí  En la primera consola  ant runjade  Se ejecuta sólo una vez  En la segunda consola  ant run  El mensaje aparecerá al final  Se verán dos GUIS  El del adminstrador de JADE  El del depurador del IAF del Software Orientada a Agentes  Ingeniería 17
  18. 18. Ejecutando II Como alternativa, se puede abrir una única consola  y escribir lo siguiente ant runProdStandAlone Con eso se lanza de forma conjunta un contenedor  JADE y los agentes definidos No se lanza ningún GUI adicional  Útil para despliegues en entornos de producción  Ingeniería del Software Orientada a Agentes 18
  19. 19. Definiendo un despliegue Crear un diagrama de despliegue  Ingeniería del Software Orientada a Agentes 19
  20. 20. Definiendo un despliegue Ingeniería del Software Orientada a Agentes 20
  21. 21. Ejecutando Se regenera el código y se vuelve a ejecutar  El número de opciones para ejecutar aumenta  Hay opciones para  ejecutar el despliegue que acabamos de definir: ant runDespliegueTresAgentes Ingeniería del Software Orientada a Agentes 21
  22. 22. Integrando con Eclipse La modificación de  fuentes se puede hacer desde eclipse Creando un nuevo  proyecto JAVA desde los fuentes existentes Ingeniería del Software Orientada a Agentes 22
  23. 23. Integrando con Eclipse Las carpetas que deben  configurarse como código fuente son gensrc, permsrc, y src Pulsar con el botón  derecho en una carpeta para ver la opción de agregar al build path Definir la carpeta bin  para los binarios que se generen Ingeniería del Software Orientada a Agentes 23
  24. 24. Integrando con Eclipse Ahora se puede trabajar  como si se tratara de JAVA La carpeta gensrc no  debe modificarse, a menos que se alteren tareas La carpeta permsrc  puede modificarse. No se sobreescribirán lo modificado La carpeta src está  gestionada por completo por el usuario Ingeniería del Software Orientada a Agentes 24
  25. 25. Modificando una tarea Las tareas se generan en  gensrc/ingenias/jade/components Buscar el nombre de la tarea en cuestión  Las modificaciones hay que copiarlas a mano en el  editor Ingeniería del Software Orientada a Agentes 25
  26. 26. Modificando una tarea Si queremos  modificar como en el ejemplo, hay que actualizar el cambio en el módulo Ingeniería del Software Orientada a Agentes 26
  27. 27. Advertencia Modificaciones diferentes de insertar código en la  parte indicada de la tarea no pueden gestionarse en la versión actual del generador de código Por ejemplo, si se necesita meter un nuevo método en la  tarea • Si se necesita algo como esto, se recomienda crear estos métodos en clases externas a la tarea Si se usa eclipse, es frecuente que se incluyan  automáticamente imports de clases que se vayan utilizando Los imports no se guardarán en el modelo  Ingeniería del Software Orientada a Agentes 27
  28. 28. Configurando Eclipse Para evitar el uso de  imports, hay que modificar las preferencias de Eclipse Menú Window-  >Preferences Para actualizar los  ficheros automáticamente con cada generación de código, hay que activar el refresco automático Ingeniería del Software Orientada a Agentes 28
  29. 29. Sincronizando Código y especificación Consiste en asegurar que todo lo que hay en la  carpeta gensrc del proyecto es regenerable desde la especificación Toda modificación realizada al código de las tareas debe  poder subirse al editor Hay una forma más sencilla, pero requiere bajarse  la última versión del IDK. Para ello hay que tener el Subversion instalado. Mirar las transparencias del CodeUpdater  Ingeniería del Software Orientada a Agentes 29
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×