CBPSim: Herramienta de Simulación de Procesos de Negocio Colaborativos

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

Download "CBPSim: Herramienta de Simulación de Procesos de Negocio Colaborativos"

Transcripción

1 CBPSim: Herramienta de Simulación de Procesos de Negocio Colaborativos Leonel Morgans UTN Fac. Regional Santa Fe Abstract El lenguaje UML Profile for Collaborative Business Processes based on Interaction Protocols (UP- ColBPIP), definido como un perfil de UML2, fue desarrollado para dar soporte al diseño de procesos colaborativos. Estos procesos definen explicita y detalladamente un modelo de colaboración entre empresas para llevar a cabo una gestión conjunta de la cadena de suministro. En este paper se presenta una herramienta para la simulación de procesos colaborativos basados en el lenguaje de modelado UP- ColBPIP. Esta herramienta proporcionará un ambiente en el cual las empresas o socios participantes en una relación B2B, puedan analizar, entender y validar el comportamiento de una Colaboración B2B, mediante la simulación de diferentes escenarios o ejecuciones alternativas de procesos colaborativos. Palabras Clave Colaboraciones Business-to-Business, Procesos de negocio colaborativos, Simulación, Redes de Petri. 1. Introducción Las relaciones Business-to-Business (B2B) se refieren a las transacciones comerciales y las comunicaciones entre empresas realizadas en forma electrónica a través de Tecnologías de Información y Comunicación. Los beneficios que se obtienen al usar este tipo de tecnología son: disminución de los costos de transacciones, intercambio de información en forma más confiable y ágil, intercambio de información en tiempo real, reducción de errores y mejoramiento de la productividad. Las colaboraciones B2B entre empresas implican la integración de los socios de negocio en dos niveles: el nivel de negocio y el nivel tecnológico [1]. En el nivel de negocio los analistas de negocio y diseñadores de sistemas se enfocan en el diseño de procesos colaborativos para definir y acordar el comportamiento de la colaboración entre las empresas. Un proceso de negocio colaborativo define la vista global de las interacciones entre empresas para alcanzar objetivos de negocio en común [2]. A través de estos procesos, los socios de negocio acuerdan tomar decisiones en conjunto, coordinar acciones, e intercambiar información mediante sistemas B2B. En el nivel tecnológico, las empresas se enfocan en la implementación, integración, e interoperabilidad de sus sistemas de información B2B para ejecutar los procesos colaborativos. Esto implica la generación de especificaciones B2B, basados en un estándar B2B, requeridas por cada empresa para ejecutar el rol que lleva a cabo en el proceso colaborativo. El lenguaje UML Profile for Collaborative Business Processes based on Interaction Protocols (UP- ColBPIP) [1], fue desarrollado para dar soporte al diseño de procesos colaborativos. UP-ColBPIP fue definido como un perfil de UML2, siguiendo los lineamientos propuestos por la Arquitectura Dirigida por Modelos (MDA). En la siguiente sección se exponen los temas mencionados. Un modelo es una abstracción de la realidad, una simplicidad, creado para disminuir la complejidad de un sistema de la vida real, y así poder investigar y experimentar con un menor riesgo, tiempo y costo. Estos modelos pueden ser usados para investigar el comportamiento del sistema y evaluar su eficiencia. La simulación de estos modelos y su posterior análisis, es una cuestión central para el diseño y configuración de sistemas; su objetivo es la evaluación de sistemas existentes o en desarrollo, comparar diferentes implementaciones, y encontrar la configuración óptima de estos sistemas. Existen diferentes herramientas para simular procesos de negocio, incluidos potentes paquetes para la Gestión de Procesos de Negocio. Pero estos están volcados al diseño de Procesos de Negocio intraorganizacionales y no a Procesos de Negocio Colaborativos (o inter-organizacionales). En [3] se propone la simulación de procesos basados en coreografías de servicios Web usando el lenguaje formal Promela del chequeador de modelos SPIN. En otro trabajo [4], los autores proponen una herramienta para el modelado y simulación de procesos colaborativos basados en coreografías de servicios Web lenguaje. La herramienta implementa un lenguaje de modelado visual con notaciones particulares y soporta la simulación de procesos sólo con el propósito de soportar una simulación paso a paso. No obstante,

2 los analistas de negocio o los expertos de dominio, normalmente no tienen conocimientos matemáticos sofisticados para entender lenguajes formales, o demasiados conocimientos en el área de simulación. Estos problemas muestran la necesidad de una herramienta intuitiva que minimice los conocimientos matemáticos y estadísticos, aprovechando la facilidad de uso del lenguaje UP-ColBPIP. Con el objetivo de superar estos inconvenientes y dar soporte a la simulación de modelos de procesos colaborativos basados en el lenguaje UP-ColBPIP, en este trabajo se presentan los avances obtenidos en el desarrollo de la herramienta CBPSim (Collaborative Business Process Simulator). Esta herramienta permitirá a los analistas de negocio y diseñadores de sistemas la detección de errores y fallas en los modelos de procesos colaborativos en etapas tempranas del desarrollo. De esta manera, se posibilita el rediseño de procesos colaborativos mediante la evaluación y comparación de diferentes escenarios. Esto permite una mayor eficiencia y performance, disminuyendo a su vez los costos, en tiempo y dinero. A continuación se describen los trabajos relacionados. Luego se presenta la arquitectura de la herramienta. 2. Método basado en MDA para Procesos de Negocio colaborativos En trabajos previos, se propuso una metodología para el modelado, verificación, e implementación de procesos colaborativos [1] [2] [5]. Esta metodología está basada en la Arquitectura Dirigida por Modelos (MDA) para garantizar la alineación entre el nivel de negocio y el nivel tecnológico de una colaboración B2B. Esta metodología permite el diseño de modelos de procesos colaborativos independientes de la tecnología y la generación automática de especificaciones B2B a partir de modelos conceptuales de procesos colaborativos. En [1], se propuso el lenguaje UML Profile for Collaborative Business Processes based on Interaction Protocols (UP- ColBPIP), el cual está orientado a la generación automática de especificaciones B2B, basadas en un estándar B2B, a partir de modelos de procesos. El lenguaje UP-ColBPIP fue desarrollado para dar soporte a la etapa de diseño de ese método MDA. UP-ColBPIP fue definido como un perfil de UML2 siguiendo las recomendaciones propuestas por MDA para diseñar lenguajes independientes de las plataformas, y la base teórica del mismo está sustentada en el uso del formalismo de protocolos de interacción para representar procesos colaborativos, junto con la aplicación de los principios de la teoría de actos de comunicación [6]. Los principales beneficios de este método basado en MDA son: el incremento del nivel de abstracción de colaboraciones B2B, ya que está enfocado en el diseño de procesos colaborativos independientes de la tecnología; disminución del costo y tiempo de desarrollo, ya que la generación de la solución tecnológica es generada en forma automática a partir de los modelos conceptuales de procesos colaborativos y la garantía de un alineamiento entre los modelos conceptuales de procesos y las especificaciones de los mismos en un estándar B2B específico. De esta manera el método permite el diseño de modelos de procesos colaborativos independientes de las tecnologías, y la generación automática de especificaciones B2B, basadas en un estándar B2B, a partir de los modelos de procesos. UP-ColBPIP alienta el enfoque de desarrollo desde arriba hacia abajo (top-down) para el modelado de procesos colaborativos y para esto define cuatro vistas, en donde cada una de estas es un refinamiento de la vista previa. A continuación se describe brevemente cada una de ellas. Vista de la Colaboración B2B (B2B collaboration view). Esta vista define los participantes (socios de negocio y roles) y sus relaciones de comunicación, con el objetivo de proveer una visión general de la colaboración B2B. Para soportar esta vista UP- ColBPIP extiende la semántica de las colaboraciones definidas en el lenguaje UML. Vista de Procesos de Negocio Colaborativos (Collaborative process view). Permite la identificación de los procesos de negocio necesarios para dar soporte a los requerimientos definidos en la vista previa. En este caso UP-ColBPIP extiende la semántica de casos de uso definida en UML. Vista de Protocolos de Interacción (Interaction protocols view). Aquí el enfoque se basa en definir el comportamiento formal de los procesos de negocio colaborativos a través de protocolos de interacción. Para la visualización de estos protocolos, UP-ColbPIP utiliza diagramas de interacción de UML2. La Figura 1 muestra un ejemplo de esta vista. Vista de Interfaces de Negocio (Business interfaces view). Define una visión estática de la colaboración a través de las interfaces de negocio de los roles ejecutados por los socios. Estas interfaces contienen los servicios (operaciones) que soportan el intercambio de mensajes en los protocolos de interacción. UP-ColBPIP extiende la semántica de estructuras compuestas e interfaces de UML2. Una de las principales contribuciones del lenguaje UP-ColBPIP es el uso del formalismo de protocolos de interacción para representar el comportamiento de los

3 procesos de negocio colaborativos, junto con la aplicación de la teoría de Actos de Comunicación (Speech Acts). En el dominio de una colaboración B2B, un protocolo de interacción describe un patrón de comunicación de alto nivel a través de una coreografía de mensajes entre dos o más roles desempeñados por socios de negocio [1]. El objetivo principal del modelado de procesos colaborativos a través de protocolos de interacción es satisfacer los requerimientos de las colaboraciones B2B: autonomía, descentralización, interacción peer-to-peer, vista global de la colaboración y soporte para definir negociaciones complejos. Figura 1: Elementos de Protocolos de Interacción. A continuación se presentan los principales constructores del lenguaje UP-ColBPIP. Mensaje de Negocio (Business Message). Un mensaje de negocio expresa que el emisor ejecutó una acción que genera un acto de comunicación asociado al mensaje, indicando la intención del emisor de intercambiar un documento de negocio. El receptor debe actuar de acuerdo a la semántica del acto de comunicación. Segmento de Control de Flujo (Control Flow Segment). Representa una secuencia de mensajes compleja, es decir, permite representar varios caminos de interacción posibles dentro de la coreografía de un protocolo de interacción. Contiene un operador de control de flujo (And, Xor, Or, Loop, Exception, entre otros [5]) y está compuesto de uno o varios caminos de interacción. Camino de Interacción (Interaction Path). Representa un posible camino de ejecución dentro de un segmento de control. Opcionalmente, puede contener una condición que determina si el camino debe ejecutarse. Condiciones (Conditions). Representan expresiones lógicas que determinan la ejecución de un mensaje o camino dentro de un segmento de control. Restricciones de Tiempo (Time Constraints). Utilizadas para definir límites de tiempo en mensajes o protocolos. Observaciones de Tiempo (Time Observations). Es una acción que devuelve el valor del momento en el cual el protocolo se está ejecutando. Ocurrencia de Interacción (Interaction Ocurrence). Representa la invocación de otra instancia de protocolo de interacción. Terminación (Termination). Representa el final de un protocolo. Existen dos tipos de terminaciones: success o failure; para indicar el éxito o fracaso (respectivamente) de la ejecución. Como ejemplo vemos en la Figura 1 representado el proceso de solicitud de pronóstico de demanda colaborativo entre dos socios de negocio. En [7], se implementó un Entorno de Desarrollo Integrado que da soporte a este método MDA y permite el modelado y verificación de procesos colaborativos basados en UP-ColBPIP. Esta herramienta se integra en el ambiente de desarrollo Eclipse, reutilizando funcionalidades provistas por este de manera simple y modular. Para dar soporte al modelado de procesos colaborativos con UP-ColBPIP, Se pretende integrar la herramienta CBPSim con la herramienta descripta, logrando de esta manera un completo entorno funcional para dar soporte al modelado, verificación, y validación de procesos colaborativos.

4 3. Metamodelo de Simulación Se decidió crear un metamodelo de simulación para definir los elementos conceptuales claves para la simulación de un protocolo de interacción. Teniendo en cuenta que en [7] se ha definido e implementado un metamodelo de Up-ColBPIP utilizando las capacidades provistas por Eclipse Modeling Framework (EMF) [8], la idea básica es extender este metamodelo agregando nuevas características asociadas a la simulación de procesos colaborativos, más específicamente a los elementos definidos dentro del paquete InteractionsProtocols de UP-ColBPIP (para mayores detalles ver [1]). Para ello se creó un nuevo metamodelo utilizando EMF y se lo asoció con el metamodelo mencionado anteriormente. La Figura 2, muestra un diagrama con los elementos conceptuales del modelo de simulación. En este se observa un elemento raíz desde el cual se desprenden los datos correspondientes a los parámetros de simulación de los elementos del protocolo de interacción. Además se definieron los conceptos relacionados a distribuciones estadísticas y de probabilidades. A continuación se describe cada uno de ellos: SimulationRootElement: Se definió con el objetivo de agrupar los datos de simulación de los elementos de un protocolo de interacción. Como se puede observar se puede definir hasta 1 elemento StartSimulationData, y cero o más BusinessMessageSimulationData y InteractionPathSimulationData. StartSimulationData: agrupa parámetros de simulación vinculados al protocolo de interacción en sí. Se definen como atributos, el número de casos que serán simulados y la unidad de tiempo que se utilizara en la simulación. Por último, para poder simular un comportamiento estocástico del protocolo de interacción, se deben establecer el patrón de arribos de los diferentes casos, a partir de una determinada distribución estadística. BusinessMessageSimulationData: agrupa parámetros de simulación vinculados a los mensajes de negocios. Se define como atributo, la unidad de tiempo que se utilizara en la simulación relacionada con la generación del mensaje. Y además, el retraso en la generación del mensaje de negocio, vinculado a una determinada distribución estadística. Figura 2: Metamodelo de simulación.

5 BusinessMessageSimulationData: agrupa parámetros de simulación vinculados a los mensajes de negocios. Se define como atributo, la unidad de tiempo que se utilizara en la simulación relacionada con la generación del mensaje. Y además, el retraso en la generación del mensaje de negocio, vinculado a una determinada distribución estadística. InteractionPathElement: agrupa parámetros de simulación vinculados a los caminos de interacción. Estos, además, pertenecen a cierto Segmento de Control [1]. Sin embargo, no se define en el modelo, ya que todo camino de interacción tendrá un parámetro que establece cual es la probabilidad de que el flujo circule por ese camino de interacción. Por ejemplo, un Segmento de Control XOR tendrá más de un camino de interacción vinculado a él, por esto se deberá definir la probabilidad de ejecución de cada camino. La lógica de control estará en el código de la herramienta. AbstractRealDistribution: se establecen parámetros comunes a toda distribución, como nombre y unidad de tiempo. Figura 3: Metamodelo de simulación. Diseño en EMF.

6 ConstantDistribution, ExponentialDistribution, NormalDistribution, UniformDistribution: Las funciones de distribución de probabilidad soportadas por la aplicación son: Constante Exponencial Normal Uniforme Se definieron los parámetros característicos de cada distribución. DiscreteProbabilityDistribution, ParameterData: se representa una distribución de probabilidades discreta, con un conjunto de parámetros, que contiene la descripción de la variable y su correspondiente probabilidad. Además, se definieron dos enumeraciones (tipo de dato cuyos valores son literales enumerados), TimeUnit y DistributionCategory, las cuales representan los distintos valores que puede tomar una unidad de tiempo en el modelo y las diferentes categorías de distribuciones estadísticas. Como se dijo anteriormente, los elementos StartSimulationData, BusinessMessageSimulationData e InteractionPathSimulationData están vinculados a los elementos InteractionProtocol, BusinessMessage e InteractionPath del metamodelo UP-ColBPIP [1], respectivamente. También se dijo que aprovechando lo desarrollado en [7], se implementa un modelo de simulación con las herramientas del Framework EMF, con el objetivo de rehusar el metamodelo de UP- ColBPIP y así relacionar los diferentes conceptos. Esto se puede observar en la Figura 3, allí se muestra el modelo de simulación creado a partir del metamodelo provisto por EMF. Además de la implementación de todos los conceptos expuestos anteriormente, lo que se quiere mostrar son los atributos definidos con el objetivo de vincular los conceptos del modelo de simulación con los del modelo UP-ColBPIP. Estos atributos son interactionprotocol, businessmessage e interactionpath de las clases StartSimulationData, BusinessMessageSimulationData e InteractionPathSimulationData, respectivamente; y se puede ver que están asociados con clases definidas en el paquete InteractionProtocol del modelo EMF desarrollado en [7]. 4. Selección de un formalismo para la simulación de procesos colaborativos Como parte de la investigación se propuso como objetivo específico analizar formalismos de simulación que puedan ser aplicados a la simulación de procesos de negocios colaborativos. El resultado final fue la elección del formalismo de Redes de Petri. En esta sección se trata de introducir las redes de Petri y luego fundamentar la elección. Las Redes de Petri fueron concebidas [9] como un medio para entender, a través del modelado, cuestiones sobre concurrencia, principalmente en física. Estas redes presentan dos características importantes: la primera es que hacen posible modelar y observar sistemas que presentan fenómenos como concurrencia, paralelismo, sincronización y recursos compartidos; la segunda característica importante recae en su fundamento teórico concerniente a estas, el cual es abundante y sus propiedades son todavía objeto de un arduo estudio [10]. Con este tipo de redes es posible modelar y analizar sistemas dinámicos de eventos discretos, distribuidos y concurrentes. Las redes de petri tienen dos tipos de nodos: Lugares (Places): representado por un círculo (ver Figura 4). Son usados para representar un estado dentro del sistema. Transiciones (Transitions): representado por una barra (ver Figura 4). Son usados para representar un evento o acción capaz de modificar el estado dentro del sistema. Las transiciones y lugares están conectados mediante Arcos, y son representados mediante flechas (ver Figura 4). El arco es direccionado y conecta a una transición con un lugar, y viceversa. Para poder modelar el estado de una red de petri, o más precisamente el estado del sistema descripto por la red, se debe definir el marcado (marking) de la misma. Este es representado por la colocación de ciertos valores indistinguibles (por ejemplo, un entero, positivo o cero) en los lugares, llamados tokens. Como se puede observar en la Figura 4, existirán lugares en donde no contendrán ningún token, y otros que tendrán uno o más de ellos. Se debe tener en cuenta que la evolución del estado del sistema, corresponde a la evolución del marking de la red. Figura 4: Red de Petri marcada. La evolución del estado del sistema, corresponde a la evolución del marking de la red, que a su vez se debe al efecto de la acción de las transiciones. Mediante el disparo de las transiciones, se permite el

7 flujo de tokens a través de los lugares. Una transición solamente se dispara si existe al menos un token en cada uno de sus lugares de entrada, al ocurrir esto la transición pasa a estar habilitada (enabled). El disparo de una transición consiste en remover un token de cada lugar de entrada y colocar un token en cada lugar de salida. Las redes de Petri coloreadas (CP-nets o CPN) fueron concebidas como un método formal que se ajusta correctamente para el modelado y análisis de sistemas complejos y dinámicos (como por ejemplo, procesos de negocio y workflows, sistemas basados en agentes, entre otros). Las CP-nets combinan las capacidades de un lenguaje de modelado de eventos discretos y las redes de Petri. Las características principales que presentan este tipo de redes son: representación de información compleja en los valores de tokens (esta información recibe el nombre de color del token) y las inscripciones en arcos y transiciones, pueden construirse modelos jerárquicos (el análogo a los módulos en programación), como así también incluir información de tiempo en el modelo. Las CP-nets incluyen un concepto de tiempo el cual hace posible capturar información de demoras o tiempos utilizados por actividades dentro del sistema. Esto lleva a incluir un nuevo tipo de redes las cuales se conocen como modelos CPN con tiempo. La diferencia con las redes CPN sin tiempo es que, además de que el token lleva un color, se suma un nuevo atributo llamado timestamp. Agregando a todo lo dicho, se debe establecer que el modelo CPN debe tener un reloj global, el cual representa el tiempo del modelo. Este concepto de tiempo permite realizar análisis de performance sobre la red, obteniendo valores de interés estadístico, como: demoras, rendimiento, longitud de colas, entre otros. Existe una amplia gama de herramientas para la edición, ejecución y simulación de redes de Petri. Una lista exhaustiva de ellas se puede encontrar en [11]. Se revisaron varias de ellas, seleccionando las que soportaban la ejecución y simulación de CPN Nets con tiempo. Los requisitos que se buscaron en cada una de ellas fueron los siguientes: Soporte de ejecución y simulación de CP-Nets con tiempo. Representación de demoras en transiciones y/o arcos, mediante la generación de valores numéricos con funciones de distribución de probabilidad. Obtención de datos estadísticos y de performance de la simulación de la red. Interfaz para comunicación externa con la herramienta. Buena documentación. Disponibilidad de manuales, soporte y foros de comunicación. Finalmente, la herramienta elegida fue CPN Tools [12]. La principal ventaja al usar redes de Petri, es que nos permite un mecanismo directo tanto para analizar la corrección sintáctica del modelo como para ejecutar simulaciones del mismo, sin tener que cambiar el formalismo de aplicación para cada uno de los casos; es decir, utilizamos el mismo modelo tanto para verificar la exactitud en la funcionalidad y lógica de un sistema como para ejecutar análisis de su performance. Debido a que el lenguaje UP-ColBPIP es un lenguaje definido como un perfil UML2 (el cual no tiene una base formal), en [7] se han utilizado CP-nets jerárquicas para la formalización del lenguaje UP- ColBPIP y así poder realizar verificaciones de las propiedades de los modelos de procesos colaborativos (como la ausencia de bloqueos, ciclos infinitos o la comprobación de que ciertos estados son alcanzables). Por lo tanto, los esfuerzos realizados y la experiencia alcanzada en [7] con respecto a la transformación de modelos y la utilización de redes de Petri, permite tener una base y una fuente de consulta para el desarrollo de la plataforma de simulación de modelos UP-ColBPIP. 5. Arquitectura de la Herramienta CBPSim La herramienta CBPSim (Collaborative Business Process Simulator) consiste en un conjunto de componentes (llamados plug-ins) desarrollados sobre la plataforma Eclipse Rich Client Platform (RCP) [13]. En la Figura 5Figura 5 se pueden observar los principales componentes de la aplicación CBPSim y además los distintos subsistemas con los que interactúa. En el nivel inferior se encuentra la plataforma RCP, que básicamente nos permite usar la arquitectura de Eclipse para diseñar aplicaciones flexibles y extensibles reutilizando muchas de las funcionalidades y patrones de codificación inherentes a Eclipse Herramienta de modelado de procesos colaborativos La idea principal en el diseño de la arquitectura de CBPSim fue reutilizar varios de los componentes desarrollados en la Herramienta de Modelado y Verificacion de Modelos de Procesos de Negocios Colaborativos [7], ya que básicamente se intenta crear un ambiente de desarrollo compuesto tanto para la creación de nuevos modelos UP-ColBPIP como también la simulación y el posterior análisis de los resultados.

8 Más específicamente en [7] se desarrolló un editor de modelos UP-ColBPIP basado en EMF, para dar soporte al modelado de procesos colaborativos con el lenguaje UP-ColBPIP. Además, se desarrolló un editor gráfico que da soporte y ofrece las funcionalidades necesarias para el modelado visual de protocolos de interacción. Este editor gráfico se desarrolló utilizando el framework GMF de Eclipse, el cual soporta la construcción de editores gráficos para integrarlos en la plataforma de Eclipse. Por último, para dar soporte a la verificación de procesos colaborativos se utilizó el formalismo de redes de Petri coloreadas y jerárquicas; y para ello se desarrolló una máquina de transformaciones de modelos basada en la tecnología JET que ofrece Eclipse. Se definió un conjunto de templates que transforman cada uno de los elementos definidos en el paquete de protocolos de interacción del lenguaje UP-ColBPIP a un archivo XML que luego es cargado dentro de la herramienta de verificación y análisis de redes de petri (CPN Tools [12]). El formato de archivo para CPN Tools está basado en XML, y el DTD (Document Type Definition) que describe el formato está disponible en [14]. CBPSim parte de estos resultados obtenidos en el trabajo anterior y es extendido para proporcionar funcionalidades vinculadas a la simulación de procesos de negocios colaborativos. En la Sección 3 se expuso el diseño de un nuevo metamodelo para incluir conceptos de simulación al metamodelo UP-ColBPIP. Esto se encuentra representado en la Figura 5 por los componentes Simulation Model Plug-in, Simulation Model Edit Plug-in y Simulation Model Code Plug-in. Este metamodelo se incorporó al definido en la herramienta de modelado. Con respecto al motor de transformación, para el caso de CBPSim se deben generar nuevas transformaciones o modificar las ya existentes para incorporar toda la información relacionada a la simulación de protocolos de interacción. Figura 5: Arquitectura de la Herramienta Documentos manipulados Dentro de la aplicación CBPSim se manejan principalmente tres tipos de documentos: uno de ellos corresponde al modelo de simulación (representado por <<model document>> Simulation Model Instance), el cual es una ampliación al modelo UP-ColBPIP desarrollado en [7] (ver sección 4. Metamodelo de Simulación) y es utilizado posteriormente para la transformación al formalismo de redes de Petri; este último es representado por <<document>> CP-net CPN Tools XML; el último documento es Simulation Report, el cual es utilizado posteriormente para mostrar

9 los resultados obtenidos de la simulación por medio de reportes CPN Tools CBPSim utiliza un motor de simulación basado en redes de Petri coloreadas y con tiempo (más adelante se trata este tema), este motor es parte de una aplicación externa llamada CPN Tools (en la Figura 5 se observa la vinculación con este componente). El motor se ejecuta externamente y se interactúa con este desde la aplicación vía TCP/IP para ejecutar la simulación y obtener resultados de la ejecución. Esta misma herramienta se usa en [7] para manipular redes de Petri, esto no es una casualidad ya que recordemos que se intenta reutilizar el motor de transformaciones allí definido. CPN Tools [12] es un editor gráfico y simulador de Redes de Petri Coloreadas (Coloured Petri Nets - CPN). Soporta la posibilidad de ejecutar análisis de espacio de estados, lo cual es útil para realizar verificaciones del modelo, evaluando diferentes propiedades de las redes de Petri como: boundedness, home markings y dead markings. Otra de las características interesantes que ofrece la herramienta es el soporte de análisis de performance [15] [16]. En el transcurso de la simulación de una red, se puede generar una diversa cantidad de información relacionada a la performance del sistema, como por ejemplo: tiempo de espera, longitud de colas, utilización de recursos, tiempo de respuesta, etc. Los datos para calcular las medidas de performance se pueden obtener de los componentes de la CP-net con tiempo, más precisamente de los estados del modelo así como también de los eventos que ocurren durante la simulación. Uno de los factores que se tuvo en cuenta al seleccionar CPN Tools como herramienta para dar soporte a la simulación de redes de Petri (además de que cumple con los requisitos expuestos en la sección anterior) es que, como se dijo anteriormente, en [7] se implementó una solución basada en CPN Tools para la verificación de modelos utilizando CP-nets jerárquicas, entonces se intenta aprovechar los avances obtenidos (más específicamente con respecto a la máquina de transformación y los templates basados en JET) y la experiencia ganada en dicha herramienta. El principal limitante que se observa en la solución de [7] con CPN Tools es la falta de integración de esta con la plataforma Eclipse. Es por esto que se buscaron las opciones que ofrece CPN Tools para la interacción con otras herramientas o procesos externos. El principal problema que tiene CPN Tools es que no brinda una interfaz adecuada para ser controlado por aplicaciones externas. CPN Tools básicamente se compone de un editor gráfico y un simulador que se ejecuta como un proceso demonio (daemon) [17]. Con el editor gráfico podemos cargar y guardar redes de Petri (en formato XML), modificarlas o construir nuevas redes. El modelo creado en el editor es transmitido al simulador, en donde se ejecutan procesos de chequeo de sintáxis y se genera un código específico para simular el modelo. Se alcanza a observar que desarrollando nuestra aplicación, podemos remplazar el editor gráfico y así interactuar con el simulador. Un ejemplo de esto lo podemos ver en la aplicación BRITNeY [18], en la cual podemos visualizar la ejecución de redes de petri de una instancia de CPN Tools externa. Para ello tenemos tres opciones: utilizar un protocolo propietario, llamado APN ML; interactuar con librerías desarrolladas en SML incluidas dentro de CPN Tools y por último, se encuentra en desarrollo una aplicación que incluye una implementación del protocolo APN ML. Estas tres opciones se tratan con más detalles en las siguientes subsecciones APN ML Este protocolo es una implementación de un sistema de llamada a procedimientos remotos (RPC). El protocolo envía paquetes sobre TCP/IP usando el formato BIS (boolean, integer, string), el cual es un formato de paquete que simplemente se encarga de la serialización de tipos de datos simples. Mediante APN ML podemos establecer una comunicación con un servicio remoto de CPN Tools y enviar una serie de comandos, como por ejemplo: mensajes para controlar el simulador, chequeo de sintaxis de la red de Petri, ejecución de análisis de espacio de estados, etc. [19]. Sin embargo se debe tener en cuenta que este protocolo es de bajo nivel y de implementación compleja Comms/CPN y Java/CPN En CPN Tools es posible intercambiar datos con procesos externos mediante TCP/IP usando Comms/CPN [20]. Comms/CPN es una librería implementada en el lenguaje SML [26], en la cual básicamente se declaran funciones para el manejo de conexiones entre modelos CPN y procesos externos. También se incluye una capa con funciones para transferencia de datos y envío de mensajes. El propósito de Java/CPN es proveer un conjunto de clases de alto nivel para manejar la comunicación entre procesos Java y CPN Tools. Actualmente incorpora las funcionalidades equivalentes a la capa de envío de

10 mensajes y establecimiento de conexiones Comms/CPN Access/CPN (ASAP) ASCoVeCo State space Analysis Analysis Platform (ASAP) [21] es una herramienta desarrollada bajo la plataforma RCP de Eclipse y cuya principal funcionalidad es la de ejecutar análisis de espacio de estados con redes de Petri coloreadas, utilizando diferentes técnicas de reducción de espacios. Access/CPN [22] se desarrolló como un subsistema de ASAP, con el principal objetivo de proveer una representación orientada a objeto de modelos CPN, un importador para la carga de modelos desde CPN Tools, y una implementación del protocolo usado para la comunicación con el simulador (APN ML) [17]. El modelo de objetos está basado en PNML y es extendido con elementos propios de CPN Tools. Se incluye un importador de modelos creados con CPN Tools, este importa la estructura de la red del modelo y también es capaz de cargar información gráfica; además luego de importar el modelo se puede ejecutar un cheque de sintaxis usando una de las clases de la librería. Con respecto a la implementación del protocolo, Access/CPN incluye una serie de clases de alto nivel que encapsulan toda la lógica de comunicación mediante simples llamadas a métodos de estas; lo cual hace posible integrar el simulador CPN Tools dentro de aplicaciones Java. de cada paso cual fue la transición que se disparó, ni cuáles son las activas. Por lo tanto para corregir esto, tenemos que implementar una solución en conjunto con las librerías proporcionadas por CPN Tools, estas son las relacionadas con la comunicación con procesos remotos (Comms/CPN [23]) y con el manejo de archivos (TextIO del lenguaje SML [24]). Con Comms/CPN logramos la interacción entre la red de Petri que se está simulando en CPN Tools y el proceso en Eclipse. Por ejemplo, si queremos saber el momento en que un mensaje llega a uno de los socios del protocolo de interacción, para mostrarlo en la animación del token dentro de CBPSim. Para ello debemos agregar una inscripción en cada transición con la cual querríamos tener una interacción con la aplicación, una muestra del código sería: fun send_to_process(m, trans) = ConnManagementLayer.send("Conn 1", m^"<->"^trans, Byte.stringToBytes); Esta función envía un mensaje al proceso que originó la conexión con CPNTools, en nuestro caso el proceso dentro de Eclipse. La variable m, corresponde al mensaje que se está enviando y trans, la transición. En la Figura 6 vemos un ejemplo de cómo se debería colocar el código en una transición Solución integrada La intención final es integrar en forma transparente el simulador CPN Tools como un proceso remoto, sin tener que abrir el editor gráfico o GUI de CPN Tools para ejecutar la simulación de redes de Petri generadas por la herramienta CBPSim. Como se trató de explicar brevemente en los puntos anteriores tenemos dos posibilidades concretas para comunicarnos con un proceso daemon de CPN Tools. La solución implementada por CBPSim implementa estas dos opciones en forma conjunta. Con Access/CPN, lo que hacemos básicamente es crear un proceso daemon de CPN Tools, cargar la red de Petri (con el formato XML de CPN Tools) al simulador, y a partir de allí ejecutar paso a paso la simulación (también existe la posibilidad de ejecutar n pasos). Uno de los problemas detectados con Access/CPN es la imposibilidad de utilizar monitores para la recolección de datos de la simulación. Otro de los inconvenientes encontrados es que no se puede obtener información del estado actual en que se encuentra la simulación, es decir, no podemos saber en Figura 6: Comunicación entre procesos Java y CPN Tools Mediante la librería TextIO del lenguaje CPN ML (basado en el lenguaje SML, y extendido con constructores para manejar redes de Petri coloreadas), podemos crear nuevos archivos y volcar los resultados de la ejecución de la simulación dentro de estos archivos. Por ejemplo, determinar cuántos mensajes pasaron por un camino XOR del protocolo de interacción. Para esto debemos agregar las siguientes declaraciones de funciones: globref fileid = (NONE : TextIO.outstream option); var count_xor_1: INT; fun getfid () = (* se lanza la excepcion Option si fileid = NONE *) Option.valOf(!fileid) fun initfile () = let val filename = OS.Path.concat (Output.getSimOutputDir(), "protocol_output.txt")

11 in Output.initSimOutputDir(); fileid := SOME (TextIO.openOut filename) end fun fileoutput(count_xor_1) = TextIO.output(getfid(),count_xor_1) handle Option => (initfile(); TextIO.output(getfid(), count_xor_1)); En la Figura 7 se muestra una imagen de la pantalla de CPN Tools en donde se ha agregado el código necesario para grabar el contador count_xor_1 en el archivo. Los resultados obtenidos son guardados en diferentes archivos, estos luego se procesan en la herramienta CBPSim y luego se utiliza esta información para generar los diferentes reportes. Esta solución (utilizando Access/CPN) permite trabajar directamente de forma transparente y de forma remota con el simulador CPN Tools, sin tener que abrir una instancia del GUI de CPN Tools para cargar la red y ejecutar la simulación. La desventaja que se observa en este enfoque, principalmente radica en la imposibilidad de usar monitores y por lo tanto no se puede sacar provecho de la solución implementada en CPN Tools para análisis de performance [25]. Por este motivo es que se tuvo que diseñar la solución expuesta anteriormente. Sin embargo, se sigue investigando sobre la mejor forma de procesar la mayor cantidad de información que nos ofrece la herramienta CPN Tools con respecto a reportes y análisis de performance de CP-nets con tiempo. Figura 7: Manejo de archivos en CPN Tools 6. Conclusión En este trabajo se presentaron los avances obtenidos en el desarrollo de la herramienta CBPSim (Collaborative Business Process Simulator). El objetivo principal es dar soporte a la simulación de modelos de procesos colaborativos basados en el lenguaje UP-ColBPIP. Con esta herramienta se pretende aportar un ambiente de simulación en donde los analistas de negocio y diseñadores de sistemas puedan detectar errores y fallas en los modelos de procesos colaborativos en etapas tempranas del desarrollo. De esta manera, se posibilita el rediseño de procesos colaborativos mediante la evaluación y comparación de diferentes escenarios. Esto permite una mayor eficiencia y performance, disminuyendo a su vez los costos, en tiempo y dinero. En el desarrollo de CBPSim se intentó reutilizar componentes creados previamente en la herramienta de modelado de procesos de negocio colaborativos, desarrollada en [7]. En la solución no solo se buscó la reutilización de componentes sino también la total integración con esta herramienta, ya que básicamente se intentó crear un ambiente de desarrollo compuesto tanto para la creación de nuevos modelos UP-ColBPIP como también la simulación y el posterior análisis de los resultados. De esta forma con CBPSim se extendió el metamodelo basado en EMF que se desarrolló en la herramienta de modelado. La finalidad de esto fue vincular elementos y conceptos de simulación al metamodelo de UP-ColBPIP, diseñando un nuevo metamodelo de simulación e integrándolo a este. Además CBPSim se integra con el editor gráfico de modelos UP-ColBPIP para definir las propiedades de simulación de cada elemento del protocolo de interacción que tenga asociada una propiedad en el metamodelo de simulación creado. Finalmente, en este paper se han presentado diferentes estrategias para integrar el software de simulación de redes de Petri (CPN Tools) con la herramienta CBPSim. Vimos que con una solución mixta se puede crear un proceso daemon de CPN Tools desde Eclipse, cargar diferentes redes de Petri en el simulador, y ejecutar la simulación de la red otorgando un número dado de pasos. Se tiene pensado extender los templates basados en JET que se desarrollaron en la herramienta de modelado, para añadir a las redes de petri generadas toda la información vinculada a la simulación y análisis estadístico. Teniendo en cuenta además lo propuesto para la integración con CPN Tools. Actualmente se encuentran en una fase avanzada de implementación los componentes relacionados al modelo de simulación (desarrollado con EMF) y la integración con el modelo UP-ColBPIP. Las interfaces para el seteo de parámetros se encuentran en desarrollo, como así también la transformación del modelo de simulación al formato de redes de petri de CPN Tools. Está planificado desarrollar en las siguientes etapas la creación de reportes de simulación, tanto desde CPN Tools, como la lectura de estos archivos y su posterior procesamiento. Se crearán nuevos plug-ins, utilizando Eclipse BIRT para la visualización de estos datos se mediante gráficos integrados en la plataforma.

12 7. Referencias [1]. Villarreal, P. Método para el Modelado y Especificación de Procesos de Negocio Colaborativos. Santa Fe, Argentina : Tesis Doctoral. Universidad Tecnológica Nacional, [2]. Villarreal, P., Salomone, H.E. y Chiotti, O. A MDA-based Development Process for Collaborative Business Processes. In: European Workshop on Milestone, Models and Mappings for Model-Driven Architecture (3M4MDA), Bilbao, España (2006). [3]. Xiangpeng, Zhao, Hongl, Yang y Zongyan, Qiu. Towards the Formal Model and Verification of Web Service Choreography Description Language. Proc. of WS-FM 2006, LNCS 4184, Vienna, Austria. [4]. Decker, G.; Kirov, M.; Zaha, J. M.; Dumas, M. Maestro for Let s Dance: An Environment for Modeling Service Interactions. BPM Demo Session at the 4th International Conference on Business Process Management (BPM 2006). Vienna, Austria, [5]. Villarreal, P., Salomone, H.E. y Chiotti, O. Modeling and Specifications of Collaborative Business Processes using a MDA Approach and a UML Profile. In: Rittgen, P. (eds): Enterprise Modeling and Computing with UML. Idea Group Inc (2007). [6]. Searle, J.R. A taxonomy of illocutionary acts. University of Minnesota, USA : Language, Mind and Knowledge. K. Gunderson (Eds.), [7]. Roa, J. y V., Castañeda. Ambiente de Desarrollo Integrado para el Modelado y Verificacion de Modelos de Procesos de Negocios Colaborativos. Proyecto de Grado. Universidad Tecnológica Nacional, Santa Fe, Argentina, [8]. Eclipse Modeling Framework Project. [En línea] [9]. Petri, C.A. Kommunikation mit Automaten. Bonn: Institut fur Instrumentelle Mathematik, Schriften des IIM Nr. 2, [10]. David, R. y Alla, H. Discrete, Continuous, and Hybrid Petri Nets. Springer, [11]. Petri Nets Tool Database. [En línea] [12]. CPN Tools. [En línea] [13]. Eclipse Rich Client Platform. [En línea] [14]. DTD CPN Tools. [En línea] [15]. Wells, Lisa. Performance Analysis using CPN Tools. Aabogade 34, 8200 Aarhus N, Denmark : Department of Computer Science, University of Aarhus. [16]. Performance Analysis. CPN Tools help. [En línea] formance+analysis. [17]. Westergaard, Michael y Kristensen, Lars Michael. Two Interfaces to the CPN Tools Simulator. s.l. : Department of Computer Science, Ninth Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools, s , [18]. Westergaard, M. y Lassen, K.B. The BRITNeY Suite Animation Tool. In Proc. of ATPN 06, volume 4024 of LNCS, pages Springer-Verlag, [19]. APN ML. [En línea] ual.wiki?cmd=get&anchor=apn+ml+protocol+manu al. [20]. Gallasch, Guy y Kristensen, Lars Michael. Comms/CPN: A Communication Infrastructure for External Communication with Design/CPN. In K. Jensen, editor, Third Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools, DAIMI PB-554, pages Department of Computer Science, University of Aarhus, Denmark, [21]. ASCoVeCo Project Homepage. [En línea] [22]. Access/CPN. [En línea] [23]. Comms/CPN Library. [En línea] or=external+communication+with+comms/cpn. [24]. SML TextIO Library. [En línea] [25]. CPN Tools Performance analysis. [En línea] formance+analysis. [26]. Standard ML of New Jersey. [En línea] 8. Agradecimientos El autor desea agradecer al Ing. Jorge Roa por contribuir en el aporte de conocimientos y la revisión de este trabajo y al Dr. Pablo Villarreal por la guía y el apoyo durante todo el proyecto.

Desarrollo Dirigido por Modelos de Procesos de egocio Colaborativos: Análisis de herramientas para la transformación de modelos

Desarrollo Dirigido por Modelos de Procesos de egocio Colaborativos: Análisis de herramientas para la transformación de modelos Desarrollo Dirigido por Modelos de Procesos de egocio Colaborativos: Análisis de herramientas para la transformación de modelos Maximiliano Vanzetti CIDISI, Universidad Tecnológica acional-frsf, Lavaisse

Más detalles

Métodos para el Modelado de Procesos de Negocio de Interfaz/Integración y Arquitecturas Orientadas a Servicios para Colaboraciones B2B

Métodos para el Modelado de Procesos de Negocio de Interfaz/Integración y Arquitecturas Orientadas a Servicios para Colaboraciones B2B Métodos para el Modelado de Procesos de Negocio de Interfaz/Integración y Arquitecturas Orientadas a Servicios para Colaboraciones B2B Ivanna Lazarte ilazarte@frsf.utn.edu.ar Director: Dr. Omar Chiotti

Más detalles

Programación orientada a

Programación orientada a Programación orientada a objetos con Java Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria corcuerp@unican.es Objetivos Presentar los conceptos de la programación

Más detalles

Administración de Variabilidad en una línea de producto basada en modelos

Administración de Variabilidad en una línea de producto basada en modelos Administración de Variabilidad en una línea de producto basada en modelos Kelly Garcés Carlos Parra Hugo Arboleda Andres Yie Rubby Casallas Universidad de los Andes, Bogotá k-garces @uniandes.edu.co Universidad

Más detalles

Gerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta

Gerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta Gerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta (Business Process Management, BPM). La Gerencia de los Procesos del Negocio: Se define como: "integración

Más detalles

Arquitectura de Aplicaciones

Arquitectura de Aplicaciones 1 Capítulo 13: Arquitectura de aplicaciones. - Sommerville Contenidos del capítulo 13.1 Sistemas de procesamiento de datos 13.2 Sistemas de procesamiento de transacciones 13.3 Sistemas de procesamiento

Más detalles

Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado

Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado Ingeniería de Software con UML Unified Modeling Language Lenguaje Unificado de Modelado 1. Introducción Unified Modeling Languaje Fuente: Booch- Jacobson-Rumbauch y diversos sitios Internet, entre otros:

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

Bienvenidos a la presentación: Introducción a conceptos básicos de programación.

Bienvenidos a la presentación: Introducción a conceptos básicos de programación. Bienvenidos a la presentación: Introducción a conceptos básicos de programación. 1 Los programas de computadora son una serie de instrucciones que le dicen a una computadora qué hacer exactamente. Los

Más detalles

Herramientas de Software que posibilitan el BPM

Herramientas de Software que posibilitan el BPM Qué es BPM? BPM (Business Process Management) no es solamente una tecnología, sino en términos generales, una disciplina gerencial que trata a los procesos como bienes tangibles que contribuyen al desempeño

Más detalles

PROCESOS SOFTWARE. Según esta estrategia, todo proceso debe planificarse, implantarse y evaluarse, para luego actuar sobre él.

PROCESOS SOFTWARE. Según esta estrategia, todo proceso debe planificarse, implantarse y evaluarse, para luego actuar sobre él. PROCESOS SOFTWARE MOTIVACIÓN? Con independencia de la metodología o modelo implementado, es común la estrategia para la mejora continua de la calidad, basada en el Círculo de Deming o Plan, Do, Check,

Más detalles

WebRatio. Otro camino para el BPM. Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8

WebRatio. Otro camino para el BPM. Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8 WebRatio Otro camino para el BPM Web Models s.r.l. www.webratio.com contact@webratio.com 1 / 8 El BPM El BPM (Business Process Management) no es solo una tecnología, además a grandes rasgos es una disciplina

Más detalles

INGENIAS: Desarrollo dirigido por modelos de SMA

INGENIAS: Desarrollo dirigido por modelos de SMA INGENIAS: Desarrollo dirigido por modelos de SMA Juan Pavón Mestras jpavon@pdi.ucm.es Dep. de Ingeniería del Software e Inteligencia Artificial Universidad Complutense Madrid http://grasia.fdi.ucm.es Objetivo

Más detalles

BPMN BPMN BPMN. BPD Objetos de flujo - Actividades. BPD (Business Process Diagram) Notación de modelado de procesos de negocio BPD

BPMN BPMN BPMN. BPD Objetos de flujo - Actividades. BPD (Business Process Diagram) Notación de modelado de procesos de negocio BPD BPMN Notación de modelado de procesos de negocio BPMN Fue desarrollado por la BPMI (Business Process Management Initiative) Objetivos: Proveer una notación entendible para cualquiera desde el analista

Más detalles

Informe de avance Implementación herramientas de back-end (3-III).

Informe de avance Implementación herramientas de back-end (3-III). Proyecto RG-T1684 Desarrollo e implementación de las soluciones Prueba piloto del Componente III Informe Número 1. Informe de avance Implementación herramientas de back-end (3-III). Lautaro Matas 11/04/2013

Más detalles

Gestión de Procesos de Negocios BPM

Gestión de Procesos de Negocios BPM GNU/LinuX Universidad Inca Garcilaso de la Vega XLIX CURSO DE ACTUALIZACIÓN PROFESIONAL DE INGENIERÍA DE SISTEMAS Y CÓMPUTO. Área: Gestión Gestión de Procesos de Negocios BPM Parte III: BPM Aspectos Técnicos

Más detalles

La Necesidad de Modelar. Diseño de Software Avanzado Departamento de Informática

La Necesidad de Modelar. Diseño de Software Avanzado Departamento de Informática La Necesidad de Modelar Analogía Arquitectónica Tiene sentido poner ladrillos sin hacer antes los planos? El modelo, los planos, ayuda a afrontar la complejidad del proyecto. Cuál es el lenguaje adecuado

Más detalles

Vicente Pelechano. Departamento de Sistemas Informáticos y Computación Universidad Politécnica de Valencia

Vicente Pelechano. Departamento de Sistemas Informáticos y Computación Universidad Politécnica de Valencia Vicente Pelechano Departamento de Sistemas Informáticos y Computación Universidad Politécnica de Valencia Contenido Qué es el Metamodelado?. Sintaxis Abstracta Metaniveles vs. Niveles de Abstracción MOF

Más detalles

Tema 5: El Lenguaje Unificado de Modelado. Departamento de Lenguajes y Sistemas Informáticos II www.kybele.urjc.es

Tema 5: El Lenguaje Unificado de Modelado. Departamento de Lenguajes y Sistemas Informáticos II www.kybele.urjc.es Tema 5: El Lenguaje Unificado de Modelado Departamento de Lenguajes y Sistemas Informáticos II Contenidos Introducción Diagramas de UML Modelado de la parte estática Modelado de la parte dinámica Las 4+1

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

BPMN vs UML. Los Requerimientos y el Modelo del Negocio. Autor: Norberto Figuerola

BPMN vs UML. Los Requerimientos y el Modelo del Negocio. Autor: Norberto Figuerola BPMN vs UML Autor: Norberto Figuerola Los Requerimientos y el Modelo del Negocio Normalmente, siempre que iniciamos un esfuerzo de desarrollo de software éste tiene como objetivo automatizar procesos del

Más detalles

Diseño del Sistema de Información

Diseño del Sistema de Información Diseño del Sistema de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 2 ACTIVIDAD DSI 1: DEFINICIÓN DE LA ARQUITECTURA DEL SISTEMA... 7 Tarea DSI 1.1: Definición de Niveles de Arquitectura... 9 Tarea DSI

Más detalles

Sistemas de Información II. Introducción al Proceso Unificado de Desarrollo de Software. Autor: Ing. Silverio Bonilla 1

Sistemas de Información II. Introducción al Proceso Unificado de Desarrollo de Software. Autor: Ing. Silverio Bonilla 1 Introducción al Proceso Unificado de Desarrollo de Software Autor: Ing. Silverio Bonilla 1 James Rumbaugh et al. Concepto de Método Una metodología de ingeniería del software es un proceso para producir

Más detalles

ENTORNO PARA LA PLANIFICACION DE LA PRODUCCION DE SISTEMAS DE FABRICACION FLEXIBLES

ENTORNO PARA LA PLANIFICACION DE LA PRODUCCION DE SISTEMAS DE FABRICACION FLEXIBLES ENTORNO PARA LA PLANIFICACION DE LA PRODUCCION DE SISTEMAS DE FABRICACION FLEXIBLES Mercedes E. Narciso Farias, Miquel Angel Piera i Eroles Unidad de Ingeniería de Sistemas y Automática. Universidad Autónoma

Más detalles

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms Patrones Patrones Es una solución reusable de problemas comunes. Los patrones solucionan problemas que existen en muchos niveles de abstracción. desde el análisis hasta el diseño y desde la arquitectura

Más detalles

Diseño del Sistema de Información

Diseño del Sistema de Información Diseño del Sistema de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS...2 ACTIVIDAD DSI 1: DEFINICIÓN DE LA ARQUITECTURA DEL SISTEMA...7 Tarea DSI 1.1: Definición de Niveles de Arquitectura...9 Tarea DSI 1.2:

Más detalles

Análisis del Sistema de Información

Análisis del Sistema de Información Análisis del Sistema de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 2 ACTIVIDAD ASI 1: DEFINICIÓN DEL SISTEMA... 6 Tarea ASI 1.1: Determinación del Alcance del Sistema... 6 Tarea ASI 1.2: Identificación

Más detalles

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR

CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR CAPÍTULO 4 ANÁLISIS Y DISEÑO: e-commerce CONSTRUCTOR En este capítulo se describe el análisis y diseño de un sistema, denominado e-commerce Constructor, el cual cumple con los siguientes objetivos: Fungir

Más detalles

Cómo usar MDE para obtener Modelos de Simulación a partir de Modelos de Negocio

Cómo usar MDE para obtener Modelos de Simulación a partir de Modelos de Negocio Cómo usar MDE para obtener Modelos de Simulación a partir de Modelos de Negocio M. Teresa García 1, Mercedes Ruiz 1 y Cristina Vicente-Chicote 2 1 Departamento de Lenguajes y Sistemas Informáticos Universidad

Más detalles

Enterprise Analyst: Taller de Bautizo

Enterprise Analyst: Taller de Bautizo Enterprise Analyst: Taller de Bautizo Metas Entender la Necesidad de Ejecutar los Modelos Desarrollar un caso usando UML tradicional Identificar los problemas de UML Conocer la Herramienta Enterprise Analyst

Más detalles

Management(BPM) Gestión de Proceso de negocio con BPM. Universidad Inca Garcilaso de la Vega

Management(BPM) Gestión de Proceso de negocio con BPM. Universidad Inca Garcilaso de la Vega Universidad Inca Garcilaso de la Vega CURSO DE ACTUALIZACIÓN PROFESIONAL DE INGENIERÍA DE SISTEMAS Y CÓMPUTO Business Process Business Process Management(BPM) Management(BPM) MSc. Daniel Alejandro Yucra

Más detalles

OMG UML 2.0 Marcando un hito en el desarrollo de software Resumen Keywords Historia del Surgimiento

OMG UML 2.0 Marcando un hito en el desarrollo de software Resumen Keywords Historia del Surgimiento OMG UML 2.0 Marcando un hito en el desarrollo de software Resumen A través de este artículo se ofrece un panorama amplio y de alto nivel sobre la especificación y los diferentes diagramas del Lenguaje

Más detalles

SIGPRE Sistema de Gestión Presupuestaria

SIGPRE Sistema de Gestión Presupuestaria SIGPRE Sistema de Gestión Presupuestaria Documento de Arquitectura UTN Histórico de Revisiones Fecha Versión Descripción Autor 11/17/2009 1.0 Borrador de la arquitectura Roberto López Hinojosa 12/14/2009

Más detalles

GLOSARIO. Análisis Bottom-Up: Técnica utilizada en tareas de ingeniería inversa la cual parte de

GLOSARIO. Análisis Bottom-Up: Técnica utilizada en tareas de ingeniería inversa la cual parte de GLOSARIO Análisis Bottom-Up: Técnica utilizada en tareas de ingeniería inversa la cual parte de una descripción de bajo nivel (código fuente) para generar descripciones con un mayor grado de abstracción.

Más detalles

Trainning in.net technology. Formacion.Net Advanced Fernando Lencinas

Trainning in.net technology. Formacion.Net Advanced Fernando Lencinas Trainning in.net technology Formacion.Net Advanced Fernando Lencinas Página Page 1 1 Introduccion a la plataforma.net 1.1 Arquitectura de la plataforma.net 1.2 Common Language Runtime CLR, Microsoft Intermediate

Más detalles

Inicio de MO Inicio de MD Inicio de MF. Documento de Análisis. Base de datos de las especificaciones OMT. MO, MD, MF Detallados. Librería de Clases

Inicio de MO Inicio de MD Inicio de MF. Documento de Análisis. Base de datos de las especificaciones OMT. MO, MD, MF Detallados. Librería de Clases 3.2 TÉCNICA DE MODELADO DE OBJETOS (OMT) (JAMES RUMBAUGH). 3.2.1 Introducción. En este documento se trata tanto el OMT-1 como el OMT-2, el primero contenido en el Libro Modelado y Diseño Orientado (Metodología

Más detalles

SOLUCIÓN SITUACIÓN ACTUAL

SOLUCIÓN SITUACIÓN ACTUAL SITUACIÓN ACTUAL La necesidad de las organizaciones de ser más competitivas en un mercado dinámico ha generado estructuras organizacionales complejas y exigentes en términos de calidad y eficiencia. Sobre

Más detalles

Módulo Profesional 01: Bases de datos (código: 0484).

Módulo Profesional 01: Bases de datos (código: 0484). Módulo Profesional 01: Bases de datos (código: 0484). Actividades de enseñanza-aprendizaje que permiten alcanzar los objetivos del módulo. Interpretar diseños lógicos de bases de datos. Realizar el diseño

Más detalles

DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB PROFESIONAL

DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB PROFESIONAL Página 1 de 21 CUALIFICACIÓN DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC154_3 Versión 5 Situación RD 1087/2005 Actualización

Más detalles

Trabajo de Grado Análisis comparativo de Lenguajes Notacionales para Modelado de Procesos

Trabajo de Grado Análisis comparativo de Lenguajes Notacionales para Modelado de Procesos Trabajo de Grado Análisis comparativo de Lenguajes Notacionales para Modelado de Procesos Autora: Vasquez Pilar María Directora: Dra. Giandini Roxana Codirectora: Mg. Bazán Patricia Agenda Introducción.

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

Conceptos de Orquestador O2 EMPRESAS TUXPAN www.tuxpan.com

Conceptos de Orquestador O2 EMPRESAS TUXPAN www.tuxpan.com EMPRESAS TUXPAN www.tuxpan.com AÑO 2007 INDICE DE CONTENIDO 1 Software de Servicios y Orquestación de Procesos 2 1.1.1 Introducción 2 1.1.2 Software de Orquestación como Integrador 3 1.1.3 Automatización

Más detalles

JAVA EE 5. Arquitectura, conceptos y ejemplos.

JAVA EE 5. Arquitectura, conceptos y ejemplos. JAVA EE 5. Arquitectura, conceptos y ejemplos. INTRODUCCIÓN. MODELO DE LA APLICACIÓN JEE5. El modelo de aplicación Java EE define una arquitectura para implementar servicios como lo hacen las aplicaciones

Más detalles

AUTOMATIZACION DE PROCESOS DE DESARROLLO DE SOFTWARE DEFINIDOS CON SPEM

AUTOMATIZACION DE PROCESOS DE DESARROLLO DE SOFTWARE DEFINIDOS CON SPEM AUTOMATIZACION DE PROCESOS DE DESARROLLO DE SOFTWARE DEFINIDOS CON SPEM Fabio A. Zorzan y Daniel Riesco Resumen Esta línea de investigación propone una alternativa para lograr la automatización de la gestión

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

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

PROGRAMA ANALÍTICO. Curso: Gestión de Procesos de Negocio. Docentes: Dr. Pablo David Villarreal (Responsable), Dr. Jorge Roa. Duración: 60 horas.

PROGRAMA ANALÍTICO. Curso: Gestión de Procesos de Negocio. Docentes: Dr. Pablo David Villarreal (Responsable), Dr. Jorge Roa. Duración: 60 horas. PROGRAMA ANALÍTICO Curso: Gestión de Procesos de Negocio Docentes: Dr. Pablo David Villarreal (Responsable), Dr. Jorge Roa. Duración: 60 horas. 1. Fundamentos En las últimas décadas, nuevos enfoques de

Más detalles

DESARROLLO WEB EN ENTORNO SERVIDOR

DESARROLLO WEB EN ENTORNO SERVIDOR DESARROLLO WEB EN ENTORNO SERVIDOR CAPÍTULO 7: Programación de servicios Web Marcos López Sanz Juan Manuel Vara Mesa Jenifer Verde Marín Diana Marcela Sánchez Fúquene Jesús Javier Jiménez Hernández Valeria

Más detalles

Una propuesta arquitectónica para integrar una herramienta BPMS y un sistema de gestión de reglas de negocio. Contexto

Una propuesta arquitectónica para integrar una herramienta BPMS y un sistema de gestión de reglas de negocio. Contexto Una propuesta arquitectónica para integrar una herramienta BPMS y un sistema de gestión de reglas de negocio Parra Julián Matias 1, Mg. Patricia Bazán 2, Lic. José Martinez Garro 3 1 3 Facultad de Informática

Más detalles

ANÁLISIS Y DISEÑO DE UN PORTAL DE VENTA DE LIBROS EDUCATIVOS

ANÁLISIS Y DISEÑO DE UN PORTAL DE VENTA DE LIBROS EDUCATIVOS INGENIERIA DE SOFTWARE Trabajo Final de Carrera ANÁLISIS Y DISEÑO DE UN PORTAL DE VENTA DE LIBROS EDUCATIVOS Jordi Cid Rodríguez - ETIG - Consultor: José Antonio Raya Martos Septiembre 2011 Objetivo El

Más detalles

HOJA TÉCNICA. SemTalk 2

HOJA TÉCNICA. SemTalk 2 HOJA TÉCNICA SemTalk 2 SemTalk 2 - Información Técnica SemTalk 2 es una herramienta para modelamiento de procesos de negocios y conocimientos orientado a objetos 100% compatible con MS Office. REQUERIMIENTOS

Más detalles

UML El Lenguaje de Modelado Unificado. Maestría en Ingeniería de Software

UML El Lenguaje de Modelado Unificado. Maestría en Ingeniería de Software UML El Lenguaje de Modelado Unificado Maestría en Ingeniería de Software Agenda Model Driven Architecture (MDA) Unified Model Language (UML) Object Constraint Language (OCL) Patrones Conclusiones Contenido

Más detalles

Introducción. http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art143.asp - Gráfica tomada del Artículo de José David Parra

Introducción. http://www.microsoft.com/spanish/msdn/comunidad/mtj.net/voices/art143.asp - Gráfica tomada del Artículo de José David Parra Si en otros tiempos el factor decisivo de la producción era la tierra y luego lo fue el capital... hoy día el factor decisivo es cada vez más el hombre mismo, es decir, su conocimiento... Juan Pablo II

Más detalles

Metodología de Ingeniería del Software para el desarrollo y mantenimiento de sistemas de información del Gobierno de Extremadura

Metodología de Ingeniería del Software para el desarrollo y mantenimiento de sistemas de información del Gobierno de Extremadura Metodología de Ingeniería del Software para el desarrollo y mantenimiento de sistemas de información del Gobierno de Extremadura Página 1 de 23 Índice del Documento 1.- Introducción... Página 4 2.- Propuesta

Más detalles

BPMN 2.0. Bizagi Suite. Copyright 2014 Bizagi

BPMN 2.0. Bizagi Suite. Copyright 2014 Bizagi BPMN 2.0 Bizagi Suite BPMN 2.0 1 Tabla de Contenido Scope... 2 BPMN 2.0... 2 Qué es BPMN?... 2 Por qué es importante modelar con BPMN?... 3 Conceptos clave... 3 Proceso De Solicitud De Crédito... 3 Proceso

Más detalles

CELAYA ACADEMIAJOURNALS COM

CELAYA ACADEMIAJOURNALS COM Congreso Internacional de Investigación ACADEMIAJOURNALS ALS Celaya 2013 2014 CELAYA ACADEMIAJOURNALS COM 6, 5, 6, 7 y 87 de noviembre de 2013 2014 ISSN Vol. 5, 6, No. 35 MEMORIAS MEMORIAS Por orden alfabético

Más detalles

Procesos de Negocios

Procesos de Negocios Procesos de Negocios Procesos de negocios Como dijimos en el Tema 1: los sistemas de información y las organizaciones se influyen entre sí: Los SI deben proveer la información que la organización necesita.

Más detalles

SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA. 3.1. Características

SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA. 3.1. Características SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA 3.1. Características La tendencia hacia el futuro es el de lograr la integración total de componentes realizados por terceras partes, para lo cual es necesario

Más detalles

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

MODELADO DE OBJETOS DE DATOS

MODELADO DE OBJETOS DE DATOS Manual Página Web MODELADO DE OBJETOS DE DATOS MANUALES ESPECIALES Documento: Manual Páginas Web (SemanticWebBuilder). Fecha de Elaboración: Marzo de 2009. INFOTEC CONACYT FIDEICOMISO. Página i Glosario

Más detalles

Transformación de Procesos BPMN a su Implementación en BPEL utilizando QVT

Transformación de Procesos BPMN a su Implementación en BPEL utilizando QVT Transformación de Procesos BPMN a su Implementación en BPEL utilizando QVT Fabio A. Zorzan 1, Daniel Riesco 2 CONTEXTO La línea de investigación presentada en este trabajo se desarrolla en el marco del

Más detalles

Diseño lógico de sistemas aplicando el lenguaje de modelado unificado

Diseño lógico de sistemas aplicando el lenguaje de modelado unificado Diseño lógico de sistemas aplicando el lenguaje de modelado unificado No. De Registro CGPI: 20061221. Director del proyecto: Roberto De Luna Caballero. Profesores participantes: M. en C Fabiola Ocampo

Más detalles

CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIPLATAFORMA

CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIPLATAFORMA CICLO SUPERIOR DESARROLLO DE APLICACIONES MULTIPLATAFORMA PROGRAMACIÓN DIDACTICA ANUAL Parte específica del módulo: 0485. Programación Departamento de Familia Profesional de Informática Curso: 2014-15

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

Herramienta para el modelado de flujos de tareas y traducción al álgebra de tareas

Herramienta para el modelado de flujos de tareas y traducción al álgebra de tareas Herramienta para el modelado de flujos de tareas y traducción al álgebra de tareas José Angel Quintanar Morales Laboratorio de Investigación y Desarrollo de Ingeniería de Software Universidad Tecnológica

Más detalles

Workflow, BPM y Java Resumen de la presentación de Tom Baeyens

Workflow, BPM y Java Resumen de la presentación de Tom Baeyens Workflow, BPM y Java Resumen de la presentación de Tom Baeyens Workflow, BPM y Java Página 1 de 11 1. Introducción Tom Baeyens es el fundador y arquitecto del proyecto de JBoss jbpm, la máquina de workflow

Más detalles

"Módulo OOWS para StarUML" INTRODUCCIÓN

Módulo OOWS para StarUML INTRODUCCIÓN UNA HERRAMIENTA PARA DIAGRAMAS OOWS: "Módulo OOWS para StarUML" Richard Medina Z. Universidad de Concepción, Chile INTRODUCCIÓN Una herramienta CASE (Computer Aided Software Engineering,

Más detalles

SERVICIOS: EXPLORACIONES EN SOA y WEB.

SERVICIOS: EXPLORACIONES EN SOA y WEB. SERVICIOS: EXPLORACIONES EN SOA y WEB. López, G. 1 ; Jeder, I 1.; Echeverría, A 1.; Grossi, M.D. 2 ; Servetto, A 2.; Fierro, P. (PhD.) 3 1. Laboratorio de Informática de Gestión - Facultad de Ingeniería.

Más detalles

Transformación de modelos en el proceso de obtención de Modelos Conceptuales partiendo de BPMN

Transformación de modelos en el proceso de obtención de Modelos Conceptuales partiendo de BPMN Transformación de modelos en el proceso de obtención de Modelos Conceptuales partiendo de BPMN Fernández Taurant, Juan Pablo Marciszack, Marcelo Martín Universidad Tecnológica Nacional, Facultad Regional

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

ISO 19103. Lenguaje de Esquema Conceptual

ISO 19103. Lenguaje de Esquema Conceptual ISO 19103 Lenguaje de Esquema Conceptual La ISO 19103 establece normas y guías para la adopción y uso de un Lenguaje de Esquema Conceptual (CSL) para desarrollar modelos o esquemas de información geográfica,

Más detalles

BASES DE DATOS. Ivon Tarazona Oriana Gomez

BASES DE DATOS. Ivon Tarazona Oriana Gomez BASES DE DATOS Ivon Tarazona Oriana Gomez Introducción Introducción Ventajas e (Unified Modeling Language) Es un lenguaje usado para especificar, visualizar y documentar los diferentes aspectos relativos

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

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo. GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.

Más detalles

Anexo 4 Documento de Arquitectura

Anexo 4 Documento de Arquitectura Anexo 4 Documento de Arquitectura 1. Introducción El anexo se describe el propósito y alcance referentes al proyecto correspondiente al documento de arquitectura. 2. Propósito El propósito del anexo de

Más detalles

Proyecto Help Desk en plataforma SOA Glosario Versión 1.3. Historia de revisiones

Proyecto Help Desk en plataforma SOA Glosario Versión 1.3. Historia de revisiones Proyecto Help Desk en plataforma SOA Glosario Versión 1.3 Historia de revisiones Fecha Versión Descripción Autor 18/08/2005 1.0 Terminología a utilizar en este proyecto. 22/08/2005 1.1 Se agregaron los

Más detalles

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización Página 1 de 17 CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC303_3 Versión 5 Situación RD 1201/2007 Actualización Competencia

Más detalles

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN AREA SISTEMAS INFORMATICOS

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN AREA SISTEMAS INFORMATICOS TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN AREA SISTEMAS INFORMATICOS HOJA DE ASIGNATURA CON DESGLOSE DE UNIDADES TEMÁTICAS 1. Nombre de la asignatura Desarrollo de

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

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN AREA SISTEMAS INFORMATICOS

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN AREA SISTEMAS INFORMATICOS TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN AREA SISTEMAS INFORMATICOS HOJA DE ASIGNATURA CON DESGLOSE DE UNIDADES TEMÁTICAS Pág. 1 de 25 1. Nombre de la asignatura Desarrollo

Más detalles

CURSO DE ADO EXPRESS/DATASNAP

CURSO DE ADO EXPRESS/DATASNAP CURSO DE ADO EXPRESS/DATASNAP EN DELPHI 7 RESUMEN DE EJERCICIOS Serie A 0 Creación de la base de datos 1 El API de ADO 2 Cadenas de conexión y propiedades 3 Tipos de cursores 4 Recuperación asíncrona 5

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

Modelado Avanzado con Casos de Uso. Diseño de Software Avanzado Departamento de Informática

Modelado Avanzado con Casos de Uso. Diseño de Software Avanzado Departamento de Informática Modelado Avanzado con Casos de Uso Especificación Gráfica de Casos de Uso Una simple secuencia de acciones no puede describir adecuadamente la riqueza de situaciones que se pueden presentar en un caso

Más detalles

CAPÍTULO 5. Hemos utilizado la técnica de programación orientado a objetos por su

CAPÍTULO 5. Hemos utilizado la técnica de programación orientado a objetos por su 88 CAPÍTULO 5 5. IMPLEMENTACIÓN 5.1 Modelo Utilizado en Programación. Hemos utilizado la técnica de programación orientado a objetos por su eficiencia y eficacia en el modelo mvc, ya que permite la reutilización

Más detalles

Mejora en la Administración de Procesos de Desarrollo de Software Tipo SPEM Automatizados Bajo Workflow

Mejora en la Administración de Procesos de Desarrollo de Software Tipo SPEM Automatizados Bajo Workflow Mejora en la Administración de Procesos de Desarrollo de Software Tipo SPEM Automatizados Bajo Workflow Fabio A. Zorzan 1 y Daniel Riesco 2 Resumen Esta línea de investigación pretende aportar a la mejora

Más detalles

Historia de revisiones

Historia de revisiones Herbert Game Descripción de la Arquitectura Versión 1.8 Historia de revisiones Fecha Versión Descripción Autor 29/08/2011 1.0 Creación del documento Juan Pablo Balarini Máximo Mussini 30/08/2011 1.1 Actualización

Más detalles

SISTEMAS DE INFORMACIÓN III TEORÍA

SISTEMAS DE INFORMACIÓN III TEORÍA CONTENIDO: Introducción a los Web services Las bases de los Web services La nueva generación de la Web Interactuando con los Web services La tecnología de Web services XML: Lo fundamental WSDL: Describiendo

Más detalles

Introducción a notación BPMN (Business Process Modeling Notation) c/versión 1.1

Introducción a notación BPMN (Business Process Modeling Notation) c/versión 1.1 Introducción a notación (Business Process Modeling Notation) c/versión 1.1 Marcelo Pardo Socio Consultor marcelo.pardo@mapsconsultores.cl 1 Ámbito Un objetivo, en una planificación estratégica, se hace

Más detalles

Capítulo 5. Implementación y Tecnologías Utilizadas

Capítulo 5. Implementación y Tecnologías Utilizadas Capítulo 5. Implementación y Tecnologías Utilizadas Cada vez más, se está utilizando Flash para desarrollar aplicaciones basadas en Web, pues permite la construcción de ambientes con mayor interacción.

Más detalles

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 6. Actualización

CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL. Nivel 3. Versión 6. Actualización Página 1 de 19 CUALIFICACIÓN PROGRAMACIÓN DE SISTEMAS INFORMÁTICOS PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC303_3 Versión 6 Situación Contraste externo Actualización

Más detalles

Boletín de Asesoría Gerencial SOA: enfoque técnico orientado a procesos

Boletín de Asesoría Gerencial SOA: enfoque técnico orientado a procesos Espiñeira, Sheldon y Asociados No. 4-2010 Contenido Haga click en los enlaces para navegar a través del documento Haga click en los enlaces para llegar directamente a cada sección 4 Introducción 4 Qué

Más detalles

Notas. Introducción. Breve Introducción a los Sistemas Colaborativos: Groupware & Workflow. Palabras claves: Groupware, Workflow, BPCM, WfMC.

Notas. Introducción. Breve Introducción a los Sistemas Colaborativos: Groupware & Workflow. Palabras claves: Groupware, Workflow, BPCM, WfMC. Breve Introducción a los Sistemas Colaborativos: Groupware & Workflow Palabras claves: Groupware, Workflow, BPCM, WfMC. Introducción A partir de la llegada de las computadoras personales al ambiente empresarial

Más detalles

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes

INDICE Parte I. Conceptos 1. El estudio de los lenguajes de programación 2. Cuestiones de diseño de lenguajes INDICE Parte I. Conceptos 1 1. El estudio de los lenguajes de programación 1.1. Por qué estudiar lenguajes de programación? 2 1.2. Breve historia de los lenguajes de programación 1.2.1. Desarrollo de los

Más detalles

Diagrama de Clases. Diagrama de Clases

Diagrama de Clases. Diagrama de Clases Diagrama de Clases 1 Diagrama de Clases El propósito de este diagrama es el de representar los objetos fundamentales del sistema, es decir los que percibe el usuario y con los que espera tratar para completar

Más detalles

1 Índice... 1. 2 Introducción... 2. 2.1 Propósito... 2. 2.2 Alcance... 2. 3 Modelo Arquitectónico Inicial... 3

1 Índice... 1. 2 Introducción... 2. 2.1 Propósito... 2. 2.2 Alcance... 2. 3 Modelo Arquitectónico Inicial... 3 1 Índice 1 Índice... 1 2 Introducción... 2 2.1 Propósito... 2 2.2 Alcance... 2 3 Modelo Arquitectónico Inicial... 3 3.1 Diagrama de alto nivel de la arquitectura... 3 3.2 Vista de Casos de Uso... 5 3.2.1

Más detalles

2.1 Ingeniería de Software

2.1 Ingeniería de Software Capítulo 2 Marco Teórico Se pretende desarrollar un software que pueda ser aplicado como una herramienta útil para la administración de una empresa. Es necesario tener en cuenta que, en todo desarrollo

Más detalles

WebServices bajo SOA. SOAagenda team Chile

WebServices bajo SOA. SOAagenda team Chile WebServices bajo SOA SOAagenda team Chile 1 Conceptos Servicio SOA Una tarea de negocio repetitiva validar Crédito Cliente, que cumple estándares SOA WebService Funcionalidades disponibles vía Web, implementadas

Más detalles

Documentando la arquitectura de software Principios básicos por Omar Gómez

Documentando la arquitectura de software Principios básicos por Omar Gómez Documentando la arquitectura de software Principios básicos por Omar Gómez En la actualidad, uno de los temas candentes que se habla dentro de la comunidad de desarrollo de software es el referente a las

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

Tema 4. Diseño arquitectónico.

Tema 4. Diseño arquitectónico. Tema 4. Diseño arquitectónico. Introducción, Objetivos del Diseño. Ingeniería del Software II 2011 Para la transformación del modelo de análisis en un modelo de diseño del sistema, se definen los objetivos

Más detalles