Ingeniería de software orientado a agentes

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Ingeniería de software orientado a agentes"

Transcripción

1 Ingeniería de software orientado a agentes ECSDI LSI-FIB-UPC cbea Curso 2014/2015 ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

2 Índice 1 Ingeniería de software 2 Ingeniería de software orientada a agentes 3 Metodologías de software 4 Metodologías de software orientadas a agentes ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

3 Ingeniería de software 1 Ingeniería de software 2 Ingeniería de software orientada a agentes 3 Metodologías de software 4 Metodologías de software orientadas a agentes ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

4 Ingeniería de software Ingeniería de software Abstracciones El concepto de proceso de información ha ido cambiado con el tiempo: Años 70, programación estructurada y la idea de modularización basada en el encapsulamiento de la información Las dos últimas décadas se han interesado en métodos, herramientas y tecnologías para el desarrollo de software La programación orientada a objetos es el paradigma dominante actual en el desarrollo de software ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

5 Ingeniería de software Ingeniería de software Abstracciones La evolución en conceptos, modelos, metodologías, tecnologías y herramientas fuerza a las compañías a afrontar cambios radicales en el punto de vista conceptual y metodológico Los desarrolladores necesitan un mayor nivel de abstracción y herramientas capaces de abordar aplicaciones software cada vez más complejas El paradigma de orientación a objetos no puede ser considerado la última respuesta en esta tendencia, es solo un paso más ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

6 Ingeniería de software Ingeniería de software Abstracciones El software trata con entidades abstractas que tienen su contraparte en la realidad Números, fechas, nombres, personas, documentos,... En qué términos debemos modelarlos en el software? Datos, funciones, objetos, agentes,... Cuáles son las abstracciones que debemos usar en el software? Dependerá de las tecnologías que tengamos disponibles ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

7 Ingeniería de software Ingeniería de software Hacia la ingeniería de software basada en agentes Sistemas computacionales Pasado: Sistemas centralizados, modelos de programación monolítico Presente: Sistemas distribuidos, heterogéneos, escalables, abiertos, modelo de programación distribuido Desarrollo de software Pasado: Modelo de desarrollo en cascada Presente: Modelo incremental, ágil, procesos de desarrollo experimentales ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

8 Ingeniería de software Ingeniería de software Hacia la ingeniería de software basada en agentes El desarrollo de software basado en agentes se plantea como una nueva perspectiva para el análisis y síntesis de sistemas software La orientación a agentes subsume los conceptos soportados por los previos paradigmas de programación y en particular los de la programación orientada a objetos. Elevan el nivel de abstracción Son un aproximación prometedora al desarrollo de software complejo. ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

9 Ingeniería de software orientada a agentes 1 Ingeniería de software 2 Ingeniería de software orientada a agentes 3 Metodologías de software 4 Metodologías de software orientadas a agentes ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

10 Ingeniería de software orientada a agentes Software y Sistemas Complejos El software industrial es complejo por naturaleza Esto es debido a la complejidad de las tareas que resuelve La ingeniería de software es la encargada de proveer estructuras, abstracciones y técnicas que permitan atacar esa complejidad ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

11 Ingeniería de software orientada a agentes Software y Sistemas Complejos Esa complejidad tiene ciertas regularidades: Los sistemas complejos están formados por una jerarquía de subsistemas interrelacionados (se descomponen en sistemas más simples) La elección de los componentes primitivos es relativamente arbitraria (depende de los objetivos y necesidades) Los sistemas jerárquicos evolucionan más rápidamente que los no jerárquicos Podemos distinguir entre las interacciones intra-sistema (más frecuentes y predecibles) e inter-sistema (menos frecuentes) ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

12 Ingeniería de software orientada a agentes Software y Sistemas Complejos Estas características hacen que los sistemas complejos sean casi-separables Lo que no los hace totalmente separables son las inter-acciones ente sistemas Algunas de estas interacciones son predecibles en tiempo de diseño, pero otras no ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

13 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Sistemas Complejos: Características Los problemas complejos son de naturaleza descentralizada Tiene múltiples puntos de control de ejecución (subproblemas) Tienen múltiples perspectivas sobre el problema y múltiples objetivos (según los subsistemas) Los diferentes subsistemas deben interaccionar para obtener sus objetivos y resolver sus dependencias A través de mensajes (de alto a bajo nivel) Mediante interacciones sociales (coordinación, cooperación, negociación) ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

14 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Abstracciones/Desarrollo El desarrollo de software complejo orientado a agentes usa como abstracciones: Componentes autónomos que buscan unos objetivos definidos Componentes que interaccionan a alto nivel para cumplir esos objetivos Componentes que se organizan socialmente Componentes que pueden cambiar su relaciones dinámicamente Componentes que se pueden ver a diferentes niveles de granularidad El desarrollo se basa en la agregación de componentes de manera jerárquica con una filosofía de abajo a arriba ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

15 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Roles vs Tareas Asignamos tareas al software (p. ej.: Software para subasta de mercancías) El qué y el cómo se especifican por adelantado (casos de uso, escenarios) No son tolerables los cambios en los requerimientos Asignamos roles a los agentes (p. ej.: Agente subastador) El qué es especificado por adelantado, el cómo se determina dinámicamente (librería de métodos) Son tolerables cambios en los requerimientos ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

16 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Inter-acción vs intra-acción Los sistemas software complejos son sistemas casi-separables Aunque algunas interacciones pueden determinarse en tiempo de diseño, algunas no se pueden Las aproximaciones tradicionales a la ingeniería del software pueden tratar bien las intra-acciones La aproximación basada en agentes es necesaria para tratar las inter-acciones entre componentes software ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

17 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Inter-acción vs intra-acción La inter-acción se ve como organización social: De relaciones entre pares a relaciones jerárquicas De relaciones puntuales a relaciones a largo plazo Esto permite caracterizarla y describirla de manera abstracta facilitando el análisis Esto permite agrupar diferentes componentes y usarlos como una unidad facilitando la descomposición Esto permite usar en el análisis y desarrollo métodos/protocolos bien conocidos en organizaciones sociales ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

18 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Inter-acción vs intra-acción Casa de Subastas Admisión Productos Anuncio Productos Reputación Subastador Pagos Comprador Vendedor ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

19 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Comportamiento Emergente Es imposible determinar todas las posibles inter-acciones en tiempo de diseño Introducimos en los agentes la capacidad de decidir como reaccionar y resolver las interacciones en tiempo de ejecución (flexibilidad) Tomando decisiones sobre situaciones imprevistas Tomando decisiones sobre interacciones erróneas Pidiendo asistencia a otros agentes El comportamiento del agente no esta predeterminado completamente, es el resultado de la interacción dinámica entre los diferentes participantes ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

20 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Comportamiento Emergente - Ejemplo En un sistema de comercio electrónico Agentes compradores determinan que pueden obtener un mejor precio si se coaligan y hacen compras más grandes en lugar de compras individuales Coalición Mercado Comprador Comprador ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

21 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Comunicación a nivel simbólico Comunicación: Software: Comunicación a nivel de señal Agentes: Comunicación a nivel simbólico Los agentes persiguen objetivos y necesitan que otros agentes persigan objetivos relacionados (delegación) Los agentes necesitan llegar a acuerdos Los agentes necesitan tomar decisiones organizacionales Los agentes necesitan comunicarse sus creencias/conocimiento ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

22 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Comunicación a nivel simbólico Para que un mensaje de un agente sea entendido por otro, los agentes deben asignar algún significado a las constantes usadas en el mensaje Requeriremos una Ontología para hacer la correspondencia entre una constante y un significado Paso de mensajes dinámico Los agentes deben primero descubrir si comparten un conocimiento mutuo de las constantes del dominio para poder continuar la comunicación (comparten la ontología) ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

23 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Conocimiento mutuo Los sistemas software necesitan poseer un conocimiento mutuo completo para poder interaccionar Los agentes software pueden tener conocimiento mutuo completo acerca de los objetivos de otros agentes, sus estrategias (acciones que pueden usar) y sus utilidades (beneficio de sus acciones) Interacciones basadas en el supuesto de completo conocimiento se clasifican como cooperación y coordinación En muchos casos la suposición de conocimiento completo puede no ser cierta: competición ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

24 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Indeterminismo: Toma de decisiones Los puntos de decisión de los sistemas software son deterministas Cuando el razonamiento se basa en un único flujo de control asumimos consecuencias a largo plazo (objetivos finales) Los agentes software (inteligentes) están dotados de mecanismos de razonamiento La Toma de decisiones involucra múltiples flujos de control: Pensamos también en consecuencias inmediatas Reaccionamos a estímulos Planteamos objetivos a corto plazo Replanteamos objetivos a largo plazo ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

25 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Abstracciones Agentes, entidades autónomas, elementos de control independientes, situación en un entorno, interacción entre ellas. Entorno, mundo de entidades y recursos que el agente percibe, controla, explota o consume. Roles e interacciones, funcionalidades, actividades, responsabilidades y patrones de interacción. Reglas de organización, restricciones a roles e interacciones, o relaciones entre roles y entre protocolos (sistemas abiertos/cerrados). Estructuras y patrones de organización, topología de interacción entre patrones, régimen de control de actividades (eficiencia, robustez, grado de abertura). ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

26 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Computación orientada a agentes Dos visiones diferenciadas sobre desarrollo de agentes: 1 El punto de vista de la inteligencia artificial (fuerte): Un sistema multiagente es una sociedad de individuos (agentes software inteligentes) que interaccionan intercambiando conocimiento y negociando entre ellos para lograr sus propios intereses o un objetivo global. 2 El punto de vista de la ingeniería de software (débil): Un sistema multiagente es un sistema software compuesto por múltiples elementos de control independientes y encapsulados (agentes) interaccionando entre ellos en el contexto de una aplicación específica. ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

27 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Visión de la ingeniería del software Se focaliza en las características de los agentes que tienen impacto en el desarrollo de software: Concurrencia, interacción, múltiples elementos de control La inteligencia puede verse como una forma particular de control independiente, las conversaciones como una forma particular de interacción. Es más general: Diferentes sistemas software, incluso si no se conciben como basados en agentes, pueden caracterizarse en términos de sistemas multiagente débiles ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

28 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Característica básicas de los agentes Autonomía y proactividad (delegación de responsabilidades) Encapsulamiento del control como dimensión de la modularidad Conceptualmente más simple de abarcar que un único (o múltiples e interdependientes) elemento de control Consciente del contexto Separación clara entre las partes computacionales del sistema (agentes) y los recursos del entorno ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

29 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Característica básicas de los agentes Interactividad No hay un único protocolo de interacción Comunicación, coordinación Interacción colaborativa o competitiva Protocolo de interacción como una dimensión adicional del desarrollo de software (computation as interaction) ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

30 Ingeniería de software orientada a agentes Ingeniería de software orientada a agentes Característica adicionales de los agentes Dimensión social (definición de protocolos, organizaciones) Entornos abiertos (necesidad de estándares, infraestructuras que soporten la interacción) Control de agentes egoístas, comportamientos maliciosos y agentes programados incorrectamente Aprendizaje y capacidades adaptativas (mejorar la efectividad de las acciones, adaptación al cambio en el entorno) ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

31 Metodologías de software 1 Ingeniería de software 2 Ingeniería de software orientada a agentes 3 Metodologías de software 4 Metodologías de software orientadas a agentes ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

32 Metodologías de software Metodologías de software Definen el marco conceptual de la metodología Definen las abstracciones a usar para modelar el software: Orientada a datos, flujos, objetos,... Introducen una disciplina el proceso de desarrollo Qué producir y cuando Qué artefactos producir ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

33 Metodologías de software Proceso del software: Actividades Actividades genéricas en todos los procesos de software Especificación, qué debería hacer el sistema y cuales son las restricciones de desarrollo Desarrollo, proceso de producción del sistema software Validación, comprobar que el software es lo que el cliente quiere Evolución, cambiar el software en respuesta a los cambios Cuál es el proceso del software ideal? No existe un proceso ideal ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

34 Metodologías de software Procesos del software Diferentes sistemas requieren diferentes procesos de desarrollo, por ejemplo: En sistemas de software en tiempo real se ha de especificar todo completamente desde el principio En dominios en los que los requerimientos pueden ir cambiando dinámicamente la especificación y el desarrollo suelen ir la vez Eso quiere decir que el conjunto genérico de actividades puede organizarse de diferentes maneras y ser descrito a diferentes niveles de detalle para diferentes tipos de software El uso de procesos inadecuados puede reducir la calidad y utilidad del producto desarrollado ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

35 Metodologías de software Modelos de procesos del software Un modelo de proceso de software es una representación simplificada de un proceso de software presentada desde una perspectiva específica Un modelo de proceso indica: 1 Alrededor de qué fases debe organizarse el proceso, en que orden deben ejecutarse 2 Cuando deben ocurrir las interacciones y coordinaciones entre el trabajo de las diferentes fases Básicamente define un esqueleto alrededor del cual organizar y detallar un proceso real ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

36 Metodologías de software Metodologías de software Procesos genéricos En cascada, Fases separadas de especificación y desarrollo Desarrollo iterativo, especificación, desarrollo y validación están entrelazados Ingeniería basada en componentes, el sistema se construye a partir de componentes existentes Analisis Especificacion Diseño Implementacion Prueba Mantenimiento ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

37 Metodologías de software Metodologías de software Definición Una metodología de software es el conjunto de guías que cubren el ciclo de vida completo del desarrollo del sistema técnica y organizativamente: Ciclo de vida completo del proceso Conjunto comprensible de conceptos y modelos Conjunto completo de técnicas (reglas, guías, heurísticas) Conjunto de entregables Lenguaje de modelado Conjunto de métricas Control de calidad Estándares de codificación (y otros) Guías para la organización del desarrollo ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

38 Metodologías de software orientadas a agentes 1 Ingeniería de software 2 Ingeniería de software orientada a agentes 3 Metodologías de software 4 Metodologías de software orientadas a agentes ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

39 Metodologías de software orientadas a agentes Metodologías orientadas a agentes La computación basada en agentes cambia la forma en la que los sistemas complejos y distribuidos son conceptualizados e implementados introduciendo nuevas abstracciones Los lenguajes de modelado y metodologías previas no son suficientes para el modelado de los sistemas basado en agentes Son necesarias metodologías nuevas y específicas para el desarrollo de estos sistemas: Definiendo el conjunto de abstracciones necesarias Adaptando las metodologías existentes o creando nuevas Produciendo nuevas herramientas de desarrollo ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

40 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Estas deben estar centradas en las abstracciones específicas de la orientación a agentes Usar por ejemplo metodologías orientadas a objetos produciría falta de alineamiento entre las abstracciones (clases, objetos, cliente-servidor no tienen relación con agentes) Estas metodologías pueden incluir abstracciones más complejas: Sobre las que modelar el software y organizar el proceso de desarrollo (roles, organizaciones, responsabilidades, creencias, deseos, intenciones,...) Que no tienen porque trasladarse directamente a entidades concretas del sistema (p.ej. un rol es un aspecto de un agente, no un agente) ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

41 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Fase de análisis La fase de análisis consiste en entender: Cuáles son los actores principales que interaccionan en el sistema Cómo el sistema interacciona con esos actores Qué tiene que hacer el sistema (globalmente) En la fase de análisis vemos el sistema como una entidad cerrada para no anticipar decisiones de diseño ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

42 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Fase de análisis Asociamos agentes con las entidades de los escenarios que se analizan Dentro de esos escenarios asignamos: Roles, responsabilidades y capacidades Patrones de interacción entre agentes El objetivo es tener una visión neutra del problema Hay metodologías específicas que no usan la palabra agente para denotar las entidades en la fase de análisis ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

43 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Fase de análisis Analogía cinematográfica Agentes software = Actores representando papeles Casos de uso = Guión Ingeniero de software = Productor/director ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

44 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Fase de diseño La fase de diseño ha de incluir al menos: Cuáles son los principales componentes que interaccionan dentro del sistema Cuáles son las responsabilidades y capacidades de cada componentes del sistema Cómo los componentes interaccionan para implementar el sistema (su arquitectura) ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

45 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Fase de diseño En AOP se asocia agentes con los componentes que se usan para construir el sistema A partir de ahí se refinan: Roles, responsabilidades y capacidades Patrones de interacción entre agentes A diferencia del análisis, hay que escoger qué agentes usar y como interaccionan ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

46 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Metodologías relevantes GAIA: desarrollo como el diseño de una organización TROPOS: enfocada especialmente en el análisis de requerimientos ADELFE: desarrollo de agentes adaptativos PASSI: metodología paso a paso de requerimientos a código que integra modelos de diseño y conceptos de orientación a objetos e inteligencia artificial Prometheus: se focaliza en el diseño organizacional y en el de la arquitectura interna del agente (diseño de sistemas de agentes BDI) ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

47 Metodologías de software orientadas a agentes Extensiones de metodologías orientadas a objetos Parece apropiado construir métodos y herramientas para software orientado a agentes por encima de los de orientación a objetos Permite una transición más suave en la migración entre estas tecnologías Mejora la accesibilidad a las metodologías y herramientas de orientación a agentes a la comunidad actual de desarrolladores en orientación a objetos UML es un formalismo bastante extendido en la representación de software OO Ha habido diferentes intentos de extender UML para incluir conceptos de agentes ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

48 Metodologías de software orientadas a agentes AUML AUML (Agent Unified Modeling Language) se basa en UML (revisado por el grupo de modelado de FIPA) UML 2.0 extendido con: Clase especial agente Concepto de roles Diagramas de interacción de protocolos de agentes Protocolos en capas, imbricados, entrelazados Extendiendo los diagramas de comportamiento para adecuarlos al concepto de rol Siendo un avance aun quedan elementos que no se pueden representar satisfactoriamente ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

49 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Más allá de los agentes Estas metodologías no solo sirven para agentes Muchos de los sistemas software actuales tienen características similares a las de los agentes y los sistemas multiagente Pueden utilizarse por ejemplo en: Servicios web y aplicaciones en internet Cloud computing / GRID computing Sistemas P2P Redes de sensores (Internet of Things) Aplicaciones para la Future Internet Obviamente AOSE puede estar a un nivel de abstracción excesivo para sistemas simples ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

50 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Están para quedarse? Como un paso más en la evolución de la ingeniería del software AOSE es el paso siguiente natural en la evolución de un amplio conjunto de paradigmas de ingeniería de software como orientación a objetos, patrones de diseño y diseño basado en componentes Apropiado para sistemas abiertos, en red y sistemas distribuidos Sus características está alineadas con el desarrollo en este tipo de entornos (p. ej.: Internet) ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

51 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Próximo paso en la IS Reemplazará a la orientación a objetos? No, AOSE suplementa OO y se beneficia de ello Similaridades: Ambas aceptan el principio de encapsulamiento y ocultación de información y reconocen la importancia de las interacciones Diferencias: OO da mínimo soporte para especificar y manejar relaciones organizacionales (relaciones se definen solo como herencia jerárquica) Objetos encapsulan estado y comportamiento, no encapsulan toma de decisiones sobre las acciones Los objetos al ser pasivos son menos escalables ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

52 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Próximo paso en la IS Reemplazará a la orientación a objetos? No, AOSE suplementa OO y se beneficia de ello Similaridades: Ambas aceptan el principio de encapsulamiento y ocultación de información y reconocen la importancia de las interacciones Diferencias: OO da mínimo soporte para especificar y manejar relaciones organizacionales (relaciones se definen solo como herencia jerárquica) Objetos encapsulan estado y comportamiento, no encapsulan toma de decisiones sobre las acciones Los objetos al ser pasivos son menos escalables ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

53 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Próximo paso en la IS Reemplazará a la orientación a objetos? No, AOSE suplementa OO y se beneficia de ello Similaridades: Ambas aceptan el principio de encapsulamiento y ocultación de información y reconocen la importancia de las interacciones Diferencias: OO da mínimo soporte para especificar y manejar relaciones organizacionales (relaciones se definen solo como herencia jerárquica) Objetos encapsulan estado y comportamiento, no encapsulan toma de decisiones sobre las acciones Los objetos al ser pasivos son menos escalables ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

54 Metodologías de software orientadas a agentes Metodologías orientadas a agentes Problemas Los agentes han de perseguir unos objetivos globales y reaccionar a las interacciones con el entorno Hay que encontrar un equilibrio entre estas dos actividades Como consecuencia es, hasta cierto punto, impredecible qué objetivos se alcanzarán y cuando Los agentes deciden en tiempo de ejecución sus interacciones Incertidumbre sobre qué interacciones sucederán, con quién o cuándo Incertidumbre sobre el resultado de una interacción La composición de agentes que interaccionan puede resultar en comportamientos que no se pueden predecir a priori (comportamiento emergente) ECSDI (LSI-FIB-UPC cbea) Ingeniería de software orientado a agentes Curso 2014/ / 52

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON)

3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1 INGENIERIA DE SOFTWARE ORIENTADO A OBJETOS OOSE (IVAR JACOBSON) 3.1.1 Introducción Este método proporciona un soporte para el diseño creativo de productos de software, inclusive a escala industrial.

Más detalles

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio). 1 GLOSARIO A continuación se definen, en orden alfabético, los conceptos básicos que se han abordado a lo largo del desarrollo de la metodología para la gestión de requisitos bajo la Arquitectura Orientada

Más detalles

Metodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales

Metodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales Metodología Orientada a Objetos Clave 43100007 Maestría en Sistemas Computacionales Modulo 03 UML: Vista de Casos de Uso Artefacto: Actores Catedrático MSC. Jose Juan Aviña Grimaldo e-mail josejuan_avina@gmail.com

Más detalles

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes: 1. Proporcionar una guía de actividades para el trabajo en equipo. (Guía detallada para el desarrollo

Más detalles

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos 2.1. Principios básicos del Modelado de Objetos UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos Hoy en día muchos de los procesos que intervienen en un negocio o empresa y que resuelven

Más detalles

Ingeniería de Software en SOA

Ingeniería de Software en SOA Ingeniería de Software en SOA ECSDI LSI-FIB-UPC cbea Curso 2014/2015 ECSDI (LSI-FIB-UPC cbea) Ingeniería de Software en SOA Curso 2014/2015 1 / 51 Índice 1 Directrices para la IS en SOA 2 Modelo de referencia

Más detalles

Componentes de los SBC

Componentes de los SBC Componentes de los SBC Componentes de los SBC Queremos construir sistemas con ciertas características: Resolución de problemas a partir de información simbólica Resolución mediante razonamiento y métodos

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer

Más detalles

M.T.I. Arturo López Saldiña

M.T.I. Arturo López Saldiña M.T.I. Arturo López Saldiña Hoy en día, existen diversas aproximaciones al tema de cómo hacer que las personas trabajen dentro de una organización de manera colaborativa. El problema se vuelve más difícil

Más detalles

Elementos requeridos para crearlos (ejemplo: el compilador)

Elementos requeridos para crearlos (ejemplo: el compilador) Generalidades A lo largo del ciclo de vida del proceso de software, los productos de software evolucionan. Desde la concepción del producto y la captura de requisitos inicial hasta la puesta en producción

Más detalles

IWG-101: Introducción a la Ingeniería. Departamento de Informática, UTFSM 1

IWG-101: Introducción a la Ingeniería. Departamento de Informática, UTFSM 1 IWG-101: Introducción a la Ingeniería Departamento de Informática, UTFSM 1 Introducción a UML Historia Potencialidades Diagramas soportados UML en el proceso de desarrollo de SW. Introducción a UML Necesidad

Más detalles

Ingeniería del Software. Diseño. Diseño en el PUD. Diseño de software. Patrones arquitectónicos. Diseño Orientado a Objetos en UML

Ingeniería del Software. Diseño. Diseño en el PUD. Diseño de software. Patrones arquitectónicos. Diseño Orientado a Objetos en UML Diseño Diseño en el PUD Diseño de software Patrones arquitectónicos Diseño Orientado a Objetos en UML 1 Iteración en PUD Planificación de la Iteración Captura de requisitos: Modelo de casos de uso, Modelo

Más detalles

Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre

Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre Modelo para el Aseguramiento de Calidad en el Desarrollo de Software Libre Cenditel, Mayo 2011 Licencia de Uso Copyright (c) 2010, Alvarez J., Solé S., Briceño R., Fundación CENDITEL. La Fundación CENDITEL

Más detalles

El Proceso Unificado de Desarrollo de Software

El Proceso Unificado de Desarrollo de Software El Proceso de Desarrollo de Software Ciclos de vida Métodos de desarrollo de software El Proceso Unificado de Desarrollo de Software 1 Fases principales del desarrollo de software Captura de requisitos:

Más detalles

Administración del conocimiento y aprendizaje organizacional.

Administración del conocimiento y aprendizaje organizacional. Capítulo 2 Administración del conocimiento y aprendizaje organizacional. 2.1 La Importancia Del Aprendizaje En Las Organizaciones El aprendizaje ha sido una de las grandes necesidades básicas del ser humano,

Más detalles

ADMINISTRACIÓN DE PROYECTOS

ADMINISTRACIÓN DE PROYECTOS QUITO INGENIERIA MECANICA ADMINISTRACIÓN DE PROYECTOS JUAN MARCELO IBUJES VILLACÍS ADMINISTRACIÓN DE PROYECTOS Contenido tomado de referencia de la Guía de los Fundamentos para la Dirección de Proyectos

Más detalles

Figure 7-1: Phase A: Architecture Vision

Figure 7-1: Phase A: Architecture Vision Fase A Figure 7-1: Phase A: Architecture Vision Objetivos: Los objetivos de la fase A son: Enfoque: Desarrollar una visión de alto nivel de las capacidades y el valor del negocio para ser entregado como

Más detalles

CMMI (Capability Maturity Model Integrated)

CMMI (Capability Maturity Model Integrated) CMMI (Capability Maturity Model Integrated) El SEI (software engineering institute) a mediados de los 80 desarrolló el CMM (modelo de madurez de la capacidad de software). CMMI: CMM integrado, una mezcla

Más detalles

Interacción Persona - Ordenador

Interacción Persona - Ordenador Interacción Persona - Ordenador Diseño de la interfaz en la Ingeniería del Software Dr. Pedro Latorre Dra. Sandra Baldassarri Dra. Eva Cerezo Ingeniería del Software Ingeniería del Software: Definición

Más detalles

Planeación del Proyecto de Software:

Planeación del Proyecto de Software: Apéndice A. Cuestionarios del Sistema Evaluador Nivel2. Requerimientos de Administración: Goal 1: Los requerimientos del sistema asociados a software están bien controlados y existe un estándar para los

Más detalles

http://www.cem.itesm.mx/extension/ms

http://www.cem.itesm.mx/extension/ms Diplomado Programación orientada a objetos con Java y UML Las empresas necesitan contar con sistemas de información modernos, ágiles y de calidad para alcanzar sus objetivos y ser cada vez más competitivos

Más detalles

2 EL DOCUMENTO DE ESPECIFICACIONES

2 EL DOCUMENTO DE ESPECIFICACIONES Ingeniería Informática Tecnología de la Programación TEMA 1 Documentación de programas. 1 LA DOCUMENTACIÓN DE PROGRAMAS En la ejecución de un proyecto informático o un programa software se deben de seguir

Más detalles

Patrones de software y refactorización de código

Patrones de software y refactorización de código Patrones de software y refactorización de código Introducción y antecedentes de los patrones de software Los patrones permiten construir sobre la experiencia colectiva de ingenieros de software habilidosos.

Más detalles

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas: SISTEMAS DISTRIBUIDOS DE REDES 1. SISTEMAS DISTRIBUIDOS Introducción y generalidades La computación desde sus inicios ha sufrido muchos cambios, desde los grandes equipos que permitían realizar tareas

Más detalles

Ingeniería de Software

Ingeniería de Software Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: http://www.dsic.upv.es/~uml http://inst.eecs.berkeley.edu/~cs169/ entre otras fuentes. Definiciones

Más detalles

VICERRECTORÍA DE ADMINISTRACIÓN Y ASUNTOS ECONÓMICOS DIRECCIÓN DE DESARROLLO DE PERSONAS. Estructura de Cargos y Competencias Institucionales

VICERRECTORÍA DE ADMINISTRACIÓN Y ASUNTOS ECONÓMICOS DIRECCIÓN DE DESARROLLO DE PERSONAS. Estructura de Cargos y Competencias Institucionales VICERRECTORÍA DE ADMINISTRACIÓN Y ASUNTOS ECONÓMICOS DIRECCIÓN DE DESARROLLO DE PERSONAS Estructura de Cargos y Competencias Institucionales Campus San Juan Pablo II Presentación La Universidad Católica

Más detalles

ARQUITECTURAS DE PROCESOS DE NEGOCIOS INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN

ARQUITECTURAS DE PROCESOS DE NEGOCIOS INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN ARQUITECTURAS DE PROCESOS DE NEGOCIOS INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN ARQUITECTURA SOA Services Oriented Arquitecture SOA como arquitectura para BPM Las organizaciones deben

Más detalles

Ingeniería de Software

Ingeniería de Software Ingeniería de Software MSDN Ingeniería de Software...1 Ingeniería del Software_/_ Ingeniería y Programación...1 Análisis de Requerimientos...2 Especificación...3 Diseño...4 Desarrollo en Equipo...5 Mantenimiento...6

Más detalles

Service Oriented Architecture: Con Biztalk?

Service Oriented Architecture: Con Biztalk? Service Oriented Architecture: Con Biztalk? Pablo Abbate Servicios Profesionales Danysoft SOA supone una nueva forma de pensar acerca de la arquitectura IT para las empresas. De hecho, es una asociación

Más detalles

Centro de Investigación y Desarrollo en Ingeniería en Sistemas de Información (CIDISI)

Centro de Investigación y Desarrollo en Ingeniería en Sistemas de Información (CIDISI) Centro de Investigación y Desarrollo en Ingeniería en Sistemas de Información (CIDISI) OFERTAS TECNOLÓGICAS 1) GESTIÓN ORGANIZACIONAL Y LOGÍSTICA INTEGRADA: TÉCNICAS Y SISTEMAS DE INFORMACIÓN 2) GESTIÓN

Más detalles

Actividades para mejoras. Actividades donde se evalúa constantemente todo el proceso del proyecto para evitar errores y eficientar los procesos.

Actividades para mejoras. Actividades donde se evalúa constantemente todo el proceso del proyecto para evitar errores y eficientar los procesos. Apéndice C. Glosario A Actividades de coordinación entre grupos. Son dinámicas y canales de comunicación cuyo objetivo es facilitar el trabajo entre los distintos equipos del proyecto. Actividades integradas

Más detalles

http://www.informatizate.net

http://www.informatizate.net http://www.informatizate.net Metodologías De Desarrollo De Software María A. Mendoza Sanchez Ing. Informático - UNT Microsoft Certified Professional - MCP Analísta y Desarrolladora - TeamSoft Perú S.A.C.

Más detalles

LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS

LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS LA LOGÍSTICA COMO FUENTE DE VENTAJAS COMPETITIVAS Los clientes compran un servicio basandose en el valor que reciben en comparacion con el coste en el que incurren. Por, lo tanto, el objetivo a largo plazo

Más detalles

MARCO DE REFERENCIA SISTEMAS DE INFORMACIÓN PARA LA GESTIÓN DE TI EN EL ESTADO COLOMBIANO

MARCO DE REFERENCIA SISTEMAS DE INFORMACIÓN PARA LA GESTIÓN DE TI EN EL ESTADO COLOMBIANO MARCO DE REFERENCIA PARA LA GESTIÓN DE TI EN EL ESTADO COLOMBIANO SISTEMAS DE INFORMACIÓN PLANEACIÓN Y GESTIÓN DE SIS-INF 80. Definición Estratégica de los SIS-INF Las entidades deben, en la Arquitectura

Más detalles

Gestión de Configuración del Software

Gestión de Configuración del Software Gestión de Configuración del Software Facultad de Informática, ciencias de la Comunicación y Técnicas Especiales Herramientas y Procesos de Software Gestión de Configuración de SW Cuando se construye software

Más detalles

6 Anexos: 6.1 Definición de Rup:

6 Anexos: 6.1 Definición de Rup: 6 Anexos: 6.1 Definición de Rup: Es un producto del proceso de ingeniería de software que proporciona un enfoque disciplinado para asignar tareas y responsabilidades dentro de una organización del desarrollo.

Más detalles

Metodología básica de gestión de proyectos. Octubre de 2003

Metodología básica de gestión de proyectos. Octubre de 2003 Metodología básica de gestión de proyectos Octubre de 2003 Dentro de la metodología utilizada en la gestión de proyectos el desarrollo de éstos se estructura en tres fases diferenciadas: Fase de Éjecución

Más detalles

Unidad 1. Fundamentos en Gestión de Riesgos

Unidad 1. Fundamentos en Gestión de Riesgos 1.1 Gestión de Proyectos Unidad 1. Fundamentos en Gestión de Riesgos La gestión de proyectos es una disciplina con la cual se integran los procesos propios de la gerencia o administración de proyectos.

Más detalles

Introducción. Metadatos

Introducción. Metadatos Introducción La red crece por momentos las necesidades que parecían cubiertas hace relativamente poco tiempo empiezan a quedarse obsoletas. Deben buscarse nuevas soluciones que dinamicen los sistemas de

Más detalles

GUIA SOBRE LOS REQUISITOS DE LA DOCUMENTACION DE ISO 9000:2000

GUIA SOBRE LOS REQUISITOS DE LA DOCUMENTACION DE ISO 9000:2000 1 INTRODUCCIÓN Dos de los objetivos más importantes en la revisión de la serie de normas ISO 9000 han sido: desarrollar un grupo simple de normas que sean igualmente aplicables a las pequeñas, a las medianas

Más detalles

Master en Gestion de la Calidad

Master en Gestion de la Calidad Master en Gestion de la Calidad 3. La Calidad en la Actualidad La calidad en la actualidad 1 / 9 OBJETIVOS Al finalizar esta unidad didáctica será capaz: Conocer la calidad en la actualidad. La familia

Más detalles

El Software. Es lo que se conoce como el ciclo de vida del software.

El Software. Es lo que se conoce como el ciclo de vida del software. El Software Hace referencia a los programas y toda la información asociada y materiales necesarios para soportar su instalación, operación, reparación, y mejora. Para construir un nuevo elemento software

Más detalles

Desarrollo de Sistemas Multi-Agente con INGENIAS

Desarrollo de Sistemas Multi-Agente con INGENIAS Desarrollo de Sistemas Multi-Agente con INGENIAS Juan Pablo Soto Alarcos Research Group Escuela Superior de Informática Universidad de Castilla - La Mancha INDICE Introducción INGENIAS Objetivo Principios

Más detalles

DISEÑO DE COMPONENTES DE SOFTWARE *

DISEÑO DE COMPONENTES DE SOFTWARE * DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP * Resumen del capítulo 10 de libro de [Pressman 2010] V:18-11-2008 (c) P. Gomez-Gil, INAOE.

Más detalles

PROPUESTA METODOLOGICA PARA LA EDUCCIÓN DE REQUISITOS EN PROYECTOS DE EXPLOTACIÓN DE INFORMACIÓN

PROPUESTA METODOLOGICA PARA LA EDUCCIÓN DE REQUISITOS EN PROYECTOS DE EXPLOTACIÓN DE INFORMACIÓN PROPUESTA METODOLOGICA PARA LA EDUCCIÓN DE REQUISITOS EN PROYECTOS DE EXPLOTACIÓN DE INFORMACIÓN Paola Britos 1,2, Enrique Fernandez 1,2, Ramón García-Martinez 1,2 Centro de Ingeniería del Software e Ingeniería

Más detalles

Estándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008

Estándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008 Estándares para planes de calidad de software Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008 DIFERENCIA ENTRE PRODUCIR UNA FUNCION Y PRODUCIR UNA FUNCION

Más detalles

implantación Fig. 1. Ciclo de vida tradicional

implantación Fig. 1. Ciclo de vida tradicional 1. Ciclo de vida tradicional de los sistemas de software En ingeniería de software, la descripción tradicional del ciclo de vida del software está basada en un modelo conocido como el modelo de cascada

Más detalles

INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones

INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones INGENIERÍA DEL SOFTWARE I Práctica 4 Interacciones Univ. Cantabria Fac. de Ciencias Patricia López Modelo de Casos de Uso vs Modelo de Análisis Modelo de Casos de Uso Modelo de Análisis Descrito con el

Más detalles

Ingeniería de Software

Ingeniería de Software Ingeniería de Software Tabla de Contenidos PARTE I INTRODUCCIÓN Capítulo 1: Evolución Los hitos en la evolución histórica del Desarrollo de Software Problemas y soluciones... Fallas, malas estimaciones

Más detalles

Fundamentos del diseño 3ª edición (2002)

Fundamentos del diseño 3ª edición (2002) Unidades temáticas de Ingeniería del Software Fundamentos del diseño 3ª edición (2002) Facultad de Informática necesidad del diseño Las actividades de diseño afectan al éxito de la realización del software

Más detalles

RBAC4WFSYS: Modelo de Acceso para Sistemas Workflow basado en RBAC

RBAC4WFSYS: Modelo de Acceso para Sistemas Workflow basado en RBAC RBAC4WFSYS: Modelo de Acceso para Sistemas Workflow basado en RBAC Proyecto Integrador de Tecnologías Computacionales Autor: Roberto García :: A00888485 Director: Jorge A. Torres Jiménez Contenido Introducción

Más detalles

Unidad III. Software para la administración de proyectos.

Unidad III. Software para la administración de proyectos. Unidad III Software para la administración de proyectos. 3.1 Herramientas de software para administrar proyectos. El software de administración de proyectos es un concepto que describe varios tipos de

Más detalles

Principales Cambios de la ISO 9001:2015

Principales Cambios de la ISO 9001:2015 INTRODUCCIÓN La nueva versión disponible de ISO 9001:2015, actualmente en su versión DIS, muestra una gran cantidad de cambios respecto de su predecesora. Muchos de estos cambios están en línea con otros

Más detalles

La toma de decisiones está presente dentro de la vida de la mayoría de las personas. Los

La toma de decisiones está presente dentro de la vida de la mayoría de las personas. Los ANEXO II. Sistema de Soporte a las Decisiones-SSD La toma de decisiones está presente dentro de la vida de la mayoría de las personas. Los gerentes día a día deben tomar decisiones también, la diferencia

Más detalles

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO

SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO SERVICE ORIENTED ARCHITECTURE (SOA) CONTENIDO Introducción:...1 Service Oriented Architecture...2 Elementos de una Service Oriented Architecture...2 Application frontends...2 Servicios...2 Contrato:...3

Más detalles

Diseño orientado a los objetos

Diseño orientado a los objetos Diseño orientado a los objetos El Diseño Orientado a los Objetos (DOO) crea una representación del problema del mundo real y la hace corresponder con el ámbito de la solución, que es el software. A diferencia

Más detalles

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas.

Estas visiones de la información, denominadas vistas, se pueden identificar de varias formas. El primer paso en el diseño de una base de datos es la producción del esquema conceptual. Normalmente, se construyen varios esquemas conceptuales, cada uno para representar las distintas visiones que los

Más detalles

Ingeniería de Software. Procesos. Proyecto de Ingeniería. Metodologías. Metodologías. Metodologías. Metodologías de desarrollo

Ingeniería de Software. Procesos. Proyecto de Ingeniería. Metodologías. Metodologías. Metodologías. Metodologías de desarrollo Ingeniería de Software Procesos Laboratorio de Ingeniería de Software 2004 La ingeniería de software trata sobre la aplicación de practicas y métodos para construir productos de software que cumplan las

Más detalles

BPM: Articulando Estrategia, Procesos y Tecnología

BPM: Articulando Estrategia, Procesos y Tecnología BPM: Articulando Estrategia, Procesos y Tecnología Resumen: La competitividad es el imaginario que dirige las acciones empresariales en la actualidad. Lograr condiciones que permitan competir con mayores

Más detalles

Entidad Formadora: Plan Local De Formación Convocatoria 2010

Entidad Formadora: Plan Local De Formación Convocatoria 2010 Entidad Formadora: Enterprise Architect Comenzando Puede iniciar Enterprise Architect desde el ícono que se creó en su escritorio de Windows durante la instalación, o alternativamente: 1. Abrir el menú

Más detalles

Ciclo de vida del Software

Ciclo de vida del Software Tema 2: Ciclo de vida del Software Marcos López Sanz Índice Qué es el ciclo de vida del Software? La norma 12207-2008 Modelos de desarrollo Qué es el Ciclo de Vida del SW? Es una sucesión de etapas por

Más detalles

Términos definiciones

Términos definiciones Términos y definiciones 3Claves para la ISO 9001-2015 Términos y definiciones: ISO9001 utiliza una serie de definiciones ligadas a la gestión de la calidad, que también deben ser comprendidas por la organización

Más detalles

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología La metodología para el desarrollo de software es un modo sistemático de realizar, gestionar y administrar un proyecto

Más detalles

Objetivo Las personas que realicen el curso aprenderán a:

Objetivo Las personas que realicen el curso aprenderán a: Objetivo Las personas que realicen el curso aprenderán a: Describir el proceso de desarrollo de software orientado a objetos, lo que incluye las metodologías y los flujos de trabajo de la programación

Más detalles

Mesa de Ayuda Interna

Mesa de Ayuda Interna Mesa de Ayuda Interna Documento de Construcción Mesa de Ayuda Interna 1 Tabla de Contenido Proceso De Mesa De Ayuda Interna... 2 Diagrama Del Proceso... 3 Modelo De Datos... 4 Entidades Del Sistema...

Más detalles

Una estructura conceptual para medir la efectividad de la administración

Una estructura conceptual para medir la efectividad de la administración Una estructura conceptual para medir la efectividad de la administración Tópico especial para gestión del mantenimiento La necesidad de un sistema de medición de la efectividad Mediante el uso de una o

Más detalles

DISEÑO DE FUNCIONES (TRATAMIENTOS)

DISEÑO DE FUNCIONES (TRATAMIENTOS) DISEÑO DE FUNCIONES (TRATAMIENTOS) Diseño Estructurado. Estrategias para Derivar el Diagrama de Estructura. Diseño de Módulos Programables. 1. DISEÑO ESTRUCTURADO El Diseño es el proceso por el cual se

Más detalles

comunidades de práctica

comunidades de práctica 1. Introducción CoSpace es una plataforma web diseñada para proporcionar un espacio virtual de interacción y colaboración entre formadores en comunidades virtuales. Se originó como resultado de las necesidades

Más detalles

Contenidos. Parte I - Introducción Capítulo 1 - Evolución. Capítulo 2 Condiciones de trabajo en el Desarrollo de Software

Contenidos. Parte I - Introducción Capítulo 1 - Evolución. Capítulo 2 Condiciones de trabajo en el Desarrollo de Software IX Contenidos Prólogo... XIX Prefacio... XXI Guía de lectura...xxiii Parte I - Introducción Capítulo 1 - Evolución 1.1 Introducción... 2 1.2 Los hitos en la evolución histórica del desarrollo de software...

Más detalles

INGENIERÍA DEL SOFTWARE

INGENIERÍA DEL SOFTWARE INGENIERÍA DEL SOFTWARE Sesión No. 2 Nombre: Procesos de ingeniería del software INGENIERÍA DEL SOFTWARE 1 Contextualización La ingeniería de software actualmente es muy importante, pues con los avances

Más detalles

CONSTRUCCIÓN DEL PROCESO MESA DE AYUDA INTERNA. BizAgi Process Modeler

CONSTRUCCIÓN DEL PROCESO MESA DE AYUDA INTERNA. BizAgi Process Modeler CONSTRUCCIÓN DEL PROCESO MESA DE AYUDA INTERNA BizAgi Process Modeler TABLA DE CONTENIDO PROCESO DE MESA DE AYUDA INTERNA... 3 1. DIAGRAMA DEL PROCESO... 4 2. MODELO DE DATOS... 5 ENTIDADES DEL SISTEMA...

Más detalles

ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN

ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN ANÁLISIS Y DISEÑO DE SISTEMAS DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN Clase 6: Ingeniería de Requerimientos Metododología y Ejemplo Primer Cuatrimestre 2015 Mg. María Mercedes Vitturini

Más detalles

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción

PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.1 UML: Introducción PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Técnica de modelado de objetos (I) El modelado orientado a objetos es una técnica de especificación semiformal para

Más detalles

Capítulo 5. Cliente-Servidor.

Capítulo 5. Cliente-Servidor. Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor

Más detalles

Sesión No. 12. Contextualización: Nombre de la sesión: SAP segunda parte PAQUETERÍA CONTABLE

Sesión No. 12. Contextualización: Nombre de la sesión: SAP segunda parte PAQUETERÍA CONTABLE Paquetería contable PAQUETERÍA CONTABLE Sesión No. 12 Nombre de la sesión: SAP segunda parte Contextualización: Los sistemas ERP son actualmente las herramientas que se han impuesto y son la base operativa

Más detalles

Calidad Escuela de Ingeniería de Sistemas y Computación Desarrol o de Software II Agosto Diciembre 2007

Calidad Escuela de Ingeniería de Sistemas y Computación Desarrol o de Software II Agosto Diciembre 2007 Calidad Calidad Definición de diccionario: Conjunto de Cualidades que constituyen la manera de ser de una persona o cosa. En términos generales podemos definir la calidad como conjunto de características

Más detalles

Ventajas del software del SIGOB para las instituciones

Ventajas del software del SIGOB para las instituciones Ventajas del software del SIGOB para las instituciones Podemos afirmar que además de la metodología y los enfoques de trabajo que provee el proyecto, el software, eenn ssi i mi issmoo, resulta un gran

Más detalles

Como mejorar la eficacia en la elaboración y gestión de proyectos en las fundaciones

Como mejorar la eficacia en la elaboración y gestión de proyectos en las fundaciones Como mejorar la eficacia en la elaboración y gestión de proyectos en las fundaciones Pau Vidal Madrid, junio 2006 Contenidos Características comunes de los proyectos Proyectos y procesos Los elementos

Más detalles

Anteproyecto Fin de Carrera

Anteproyecto Fin de Carrera Universidad de Castilla-La Mancha Escuela Superior de Informática Anteproyecto Fin de Carrera DIMITRI (Desarrollo e Implantación de Metodologías y Tecnologías de Testing) Dirige: Macario Polo Usaola Presenta:

Más detalles

Qué es el Modelo CMMI?

Qué es el Modelo CMMI? El principal problema que tienen las empresas en sus áreas de tecnología, así como las empresas desarrolladoras de software al iniciar un proyecto, radica en que el tiempo de vida del proyecto y el presupuesto

Más detalles

Gestión y Desarrollo de Requisitos en Proyectos Software

Gestión y Desarrollo de Requisitos en Proyectos Software Gestión y Desarrollo de Requisitos en Proyectos Software Ponente: María Jesús Anciano Martín Objetivo Objetivo Definir un conjunto articulado y bien balanceado de métodos para el flujo de trabajo de Ingeniería

Más detalles

Capitulo III. Diseño del Sistema.

Capitulo III. Diseño del Sistema. Capitulo III. Diseño del Sistema. Para el desarrollo del sistema en la presente tesis se utilizo el paradigma orientado a objetos utilizando el lenguaje Java en su versión 1.2. Por medio de este lenguaje

Más detalles

Orientación acerca de los requisitos de documentación de la Norma ISO 9001:2000

Orientación acerca de los requisitos de documentación de la Norma ISO 9001:2000 Orientación acerca de los requisitos de documentación de la Norma ISO 9001:2000 Documento: ISO/TC 176/SC 2/N 525R Marzo 2001 ISO Traducción aprobada el 2001-05-31 Prólogo de la versión en español Este

Más detalles

Figure 9-1: Phase C: Information Systems Architectures

Figure 9-1: Phase C: Information Systems Architectures FASE C Figure 9-1: Phase C: Information Systems Architectures Objetivos Los objetivos de la Fase C son: Desarrollar la arquitectura de sistemas de información objetivo (datos y aplicaciones), que describe

Más detalles

Diseño orientado al flujo de datos

Diseño orientado al flujo de datos Diseño orientado al flujo de datos Recordemos que el diseño es una actividad que consta de una serie de pasos, en los que partiendo de la especificación del sistema (de los propios requerimientos), obtenemos

Más detalles

CAPITULO I. Introducción. En la actualidad, las empresas están tomando un papel activo en cuanto al uso de sistemas y

CAPITULO I. Introducción. En la actualidad, las empresas están tomando un papel activo en cuanto al uso de sistemas y CAPITULO I Introducción 1.1 Introducción En la actualidad, las empresas están tomando un papel activo en cuanto al uso de sistemas y redes computacionales. La tecnología ha ido evolucionando constantemente

Más detalles

Trabajo lean (1): A que podemos llamar trabajo lean?

Trabajo lean (1): A que podemos llamar trabajo lean? Trabajo lean (1): A que podemos llamar trabajo lean? Jordi Olivella Nadal Director de Comunicación del Instituto Lean Management Este escrito inicia una serie de artículos sobre la organización en trabajo

Más detalles

Glosario. actividad. 1. (tarea) 2. es un subproceso que no requiere mas descomposición.

Glosario. actividad. 1. (tarea) 2. es un subproceso que no requiere mas descomposición. Glosario Aclaraciones Los conceptos del glosario están ordenados alfabéticamente. Un concepto puede ser un único término como meta o una frase como ambiente de ingeniería de software centrado en procesos.

Más detalles

F A B R I C I O M U Ñ O Z S. T E N I E N T E T É C N I C O D E A V I A C I Ó N

F A B R I C I O M U Ñ O Z S. T E N I E N T E T É C N I C O D E A V I A C I Ó N PROPUESTA DE IMPLEMENTACIÓN DE UNA METODOLOGÍA PARA EL DESARROLLO DE SISTEMAS ORIENTADOS A SERVICIOS EN EL DEPARTAMENTO DE DESARROLLO DE SISTEMAS DE LA DIRECCIÓN DE SISTEMAS DE INFORMACIÓN Y COMUNICACIONES

Más detalles

Tema 3 Metodologías de Desarrollo de Software

Tema 3 Metodologías de Desarrollo de Software Ingeniería del Software Ingeniería del Software de Gestión Tema 3 Metodologías de Desarrollo de Software Félix Óscar García Rubio Crescencio Bravo Santos Índice 1. Definiciones 2. Objetivos 3. Conceptos

Más detalles

Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN

Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN Proceso de Negocio (Business Process) Conjunto estructurado, medible de actividades para producir un producto.

Más detalles

RESUMEN CUADRO DE MANDO

RESUMEN CUADRO DE MANDO 1. Objetivo Los objetivos que pueden alcanzarse, son: RESUMEN CUADRO DE MANDO Disponer eficientemente de la información indispensable y significativa, de modo sintético, conectada con los objetivos. Facilitar

Más detalles

CÓMO MEJORAR LA GESTIÓN DE SERVICIOS TI USANDO MEJORES PRÁCTICAS?

CÓMO MEJORAR LA GESTIÓN DE SERVICIOS TI USANDO MEJORES PRÁCTICAS? CÓMO MEJORAR LA GESTIÓN DE SERVICIOS TI USANDO MEJORES PRÁCTICAS? Soluciones a partir de la experiencia colectiva Quinto Desayuno Club CIO 30 julio 2015 Contenido Prólogo...2 Personas...2 Procesos...2

Más detalles

CAPÍTULO I. Sistemas de Control Distribuido (SCD).

CAPÍTULO I. Sistemas de Control Distribuido (SCD). 1.1 Sistemas de Control. Un sistema es un ente cuya función es la de recibir acciones externas llamadas variables de entrada que a su vez provocan una o varias reacciones como respuesta llamadas variables

Más detalles

Resumen obtenido de: Roger S. Pressman, Ingeniería de Software. Un enfoque práctico, quinta edición, 2002. Introducción al Diseño de Software

Resumen obtenido de: Roger S. Pressman, Ingeniería de Software. Un enfoque práctico, quinta edición, 2002. Introducción al Diseño de Software Principio de Diseño Resumen obtenido de: Roger S. Pressman, Ingeniería de Software. Un enfoque práctico, quinta edición, 2002 Introducción al Diseño de Software Qué es el diseño? Representación ingenieril

Más detalles

Procesos Críticos en el Desarrollo de Software

Procesos Críticos en el Desarrollo de Software Metodología Procesos Críticos en el Desarrollo de Software Pablo Straub AgileShift Imagine una organización de desarrollo de software que consistentemente cumple los compromisos con sus clientes. Imagine

Más detalles

Convergencia, Interoperabilidad y. Fernando González-Llana Gerente de Cuenta AGE T-Systems

Convergencia, Interoperabilidad y. Fernando González-Llana Gerente de Cuenta AGE T-Systems Convergencia, Interoperabilidad y Arquitecturas de Servicios Gerente de Cuenta AGE T-Systems Palabras clave Convergencia digital, Interoperabilidad, Semántica, IDABC, SOA, Módulos Comunes, Protección de

Más detalles

Universidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática

Universidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática Universidad acional Experimental Del Táchira Decanato de Docencia Departamento de Ingeniería en Informática Metodología Evolutiva Incremental Mediante Prototipo y Técnicas Orientada a Objeto (MEI/P-OO)

Más detalles

En un proyecto de desarrollo de software la metodología define Quién debe hacer Qué, Cuando y Como hacerlo. 6

En un proyecto de desarrollo de software la metodología define Quién debe hacer Qué, Cuando y Como hacerlo. 6 2. MÉTODO, METODOLOGÍA Y MÉTRICA 2.1 MÉTODO Un método de ingeniería del software es un enfoque estructurado para el desarrollo de software cuyo propósito es facilitar la producción de software de alta

Más detalles