Desarrollo de Agentes de Software sobre una Arquitectura Basada en Componentes

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Rocket clouds
Desarrollo de Agentes de Software sobre una Arquitectura Basada en Componentes por Mind Map: Desarrollo de Agentes de Software sobre una Arquitectura Basada en Componentes

1. Qué es

1.1. El creciente uso de Internet para realizar tareas de la vida diaria hace necesario el desarrollo de software capaz de hacer frente a entornos distribuidos abiertos y dinámicos. Frente a otras tecnologías usadas para desarrollar aplicaciones distribuidas en la Web, los agentes software parecen presentar las características necesarias para soportar el desarrollo de sistemas abiertos y flexibles en este tipo de entornos

2. Plataformas de desarrollo

2.1. ZEUS

2.1.1. 1-. Almacenamiento de Datos de otros componentes 2-.Se compone de un conjunto de Sub-sistemas. 3-. Planificación de ejecución de tareas 4-. Permite el intercambio de mensajes

2.2. FIPA-OS

2.2.1. JADE y FIPA-OS consiguen, a través del uso y definición de interfaces, desacoplar los componentes que constituyen al agente.

2.3. JADE

2.3.1. Son flexibles pero éstas tampoco facilitan la re utilización de tareas y el desarrollador se ve obligado a programar totalmente la funcionalidad del agente para cada aplicación.

3. Componentes

3.1. ISOA

3.2. UML

3.3. XML

4. Marcos de trabajo

4.1. Definición

4.1.1. Los marcos de trabajo o frameworks son los esqueletos o moldes que nos permiten el desarrollo de una aplicación separando de la misma la gestión de los datos, las operaciones y la presentación.

4.1.2. Concepto 2

4.1.2.1. Es el esquema o estructura que se establece y que se aprovecha para desarrollar y organizar un software determinado.

4.2. Ventajas

4.2.1. El programador no necesita plantearse una estructura global de la aplicación, sino que el framework le proporciona un esqueleto que hay que “rellenar”

4.2.2. Facilita la colaboración.

4.2.3. Evita escribir código repetitivo

4.2.4. Utiliza buenas prácticas

4.2.5. Permitir hacer cosas avanzadas que quizá el programador no pueda hacer de forma segura

4.2.6. Desarrolla más rápido

4.2.7. Es más fácil encontrar herramientas (utilidades, librerías) adaptadas al framework concreto para facilitar el desarrollo.

4.3. Elección

4.3.1. La elección del framework concreto a utilizar vendrá marcada por: 1. El tipo de aplicación a desarrollar 2. El lenguaje de programación y otras tecnologías concretas: base de datos, sistema operativo, etc.

4.3.2. Existen multitud de frameworks orientados a diferentes lenguajes, funcionalidades, etc. Aunque la elección de uno de ellos puede ser una tarea complicada, lo más probable que a largo plazo sólo los mejor definidos (o más utilizados, que no siempre coinciden con los primeros) permanezcan. Y si ninguno de ellos se adapta a las necesidades de desarrollo, siempre es mejor definir uno propio que desarrollar “al por mayor”.

4.4. Fases

4.4.1. Comunicación

4.4.1.1. Colaboración y comunicación de los clientes

4.4.2. Planeación

4.4.2.1. Plan de trabajo de Ingeniería de Software

4.4.3. Modelos

4.4.3.1. Creación de modelos para entender mejor los requisitos de software

4.4.4. Construcción

4.4.4.1. Combinación de la generación de códigos y pruebas para descubrir errores

4.4.5. Final

4.4.5.1. Entrega del software al cliente para su evaluación

5. Importancia

5.1. Debido a que cada día la gente demanda más calidad en los servicios informáticos, de tal manera que siempre se necesita estar actualizado en el software, para esto es indispensable estar en un continuo desarrollo de software.

6. Función

6.1. Permite una mejor organización y control de todo el código elaborado, así como una posible reutilización en el futuro. Debido a esto, garantiza una mayor productividad que los métodos más convencionales y una minimización del coste al agilizar las horas de trabajo y brinda una ayuda general y más que considerable al programador y desarrollador, haciendo que sus labores sean mucho más sencillas.

7. La composición de marcos de trabajo son:

7.1. 1.-Gestión de control de la aplicación. 2.-Adaptación de los servicios ofrecidos por cada uno de los marcos de trabajo. 3.-Falta de funcionalidad y servicios. 4.-Solapamiento de representaciones. 5.-Solapamiento de funcionalidad.

8. -Por ejemplo: para evitar el tener que repetir código para realizar funciones habituales en un rango de herramientas, como puede ser el acceder a bases de datos o realizar llamadas a Internet. Es mucho mas fácil si se trabaja dentro de una framework.

9. Características:

9.1. -La Autenticación mediante login y password que permite restringir el acceso y el tipo de permiso. -El Acceso a los datos en archivos txt, xml por ejemplo mediante interfaces que integran la base de datos. -Abstracción de URLs y Sesiones ya que el framework se encarga de manejarlas. -Internacionalización que permite la inclusión de varios idiomas en el desarrollo. -Controladores fácilmente adaptables a las necesidades del proyecto que gestionan las peticiones y/o eventos.