3 ARQUITECTURA DEL ENTORNO Y TÉCNICAS DE INTEGRACIÓN
|
|
- Esther Ortega Núñez
- hace 8 años
- Vistas:
Transcripción
1 3 ARQUITECTURA T DEL ENTORNO Y TÉCNICAS DE INTEGRACIÓN En este capítulo se inicia la toma de decisiones respecto al entorno multidisciplinar. En primer lugar, se seleccionan los estándares de modelado y expresión formal y la forma de usarlos en el entorno. Así mismo, se define una primera aproximación a la arquitectura del entorno en un intento por sintetizar, en forma de bloques funcionales relacionados, cada una de los requisitos identificados a lo largo del capítulo anterior. Posteriormente, se definirá lo que se entiende por integración y se describirán diferentes niveles de integración. Lo que dará paso a un estudio de diferentes técnicas de integración para resolver la colaboración de gramáticas, modelos, técnicas de desarrollo de SW, conocimiento y aplicaciones. Se valorarán técnicas muy dispares entre sí pero con el común denominador de servir para integrar información, aunque con diferentes grados de abstracción. Las conclusiones del capítulo servirán para seleccionar las técnicas más adecuadas para cada uno de los niveles de integración, y completar así la arquitectura del entorno esbozada al inicio con más detalles relativos a las técnicas a utilizar.
2 3.1 Arquitectura General del Entorno Modelado y Expresión Formal en el Entorno Requisitos y Componentes Básicos del Entorno Estructura General 3.2 Niveles de Integración 3.3 Integración de Gramáticas GSRC Semantics Project 3.4 Integración de Modelos 3.5 Integración de Técnicas para Desarrollo de SW Métodos Formales Separación Multidimensional de Propósitos Desarrollo de SW Dirigido a Dominio Generación de Programas con XSLT 3.6 Integración de Conocimiento 3.7 Integración de Aplicaciones Conceptos básicos sobre Servicios Web Estilo de Arquitectura REST Definiciones sobre Servicios Web Escenarios de Uso de Servicios Web Escenario 0: Interacción web clásica (sin servicios web) Escenario 1: Partes conocidas, WSD estático Escenario 2: Partes conocidas obtienen WSD dinámicamente Escenario 3: Múltiples proveedores, descubrimiento manual Escenario 4: Múltiples proveedores, acceso a WSD del proveedor Escenario 5: Múltiples proveedores, selección automática Escenario T: Diagrama en triángulo Tecnologías para Servicios Web 3.8 Conclusiones Integración de Gramáticas (Gramáticas XML de Dominios) Integración de Modelos (Modelos de Dominio) Integración de Técnicas para Desarrollo de SW (DIRECTOR) Integración de Conocimiento (Repositorio) Integración de Aplicaciones (Interfaz de Herramientas)
3 3..1 ARQUIITECTURA GENERAL DEL ENTORNO Sobre las conclusiones del recorrido del Estado del Arte del capítulo anterior, conclusiones en forma de selección de estándares para el modelado y la expresión formal, requisitos identificados y arquitectura de bloques en la que se fundamentará el entorno MODELADO Y EXPRESIÓN FORMAL EN EL ENTORNO Aplicando al entorno multidisciplinar las ideas sobre niveles de abstracción expuestas en el capítulo anterior, se identifica la necesidad de construir cuatro jerarquías de abstracción (en principio independientes) para representar la visión del SCDTR desde cada uno de los dominios involucrados (IC, SD, STR e IS). Dado un sistema concreto en desarrollo, cada dominio selecciona (a partir del conjunto total de información existente) el subconjunto de datos relevantes para su campo (objetos de dominio). Estos datos y sus relaciones se describen dando forma al modelo particular de dominio del sistema. Por tanto, en este trabajo se entiende por modelo la abstracción o descripción parcial y particular de las características (comportamiento, estructura, funcionalidad,...) del sistema bajo desarrollo. Para añadir formalidad a estas descripciones y tener la posibilidad de validar la corrección de diferentes modelos de acuerdo a los parámetros propios del dominio es necesaria la existencia de un nivel superior o metamodelo del domino. El metamodelo define el lenguaje a emplear para construir nuevos modelos, o descripciones de sistemas de acuerdo a las convenciones establecidas por un dominio, y con ello introduce formalidad o mecanismos de validación de las descripciones. En resumen, se plantea la necesidad de definir cuatro metamodelos porque cada dominio usará diferentes objetos de dominio, es decir, tendrá un subconjunto de información diferente en el nivel de dato. Se considera interesante la arquitectura de 4+1 vistas en tanto que esta arquitectura coincide con la visión adelantada en el capítulo inicial de esta memoria. En ambos casos se separan los modelos en función del profesional que los vaya a usar y también se considera necesario el empleo de una notación o lenguaje especializado para la descripción del sistema desde cada uno de los dominios. Hay que destacar el interés de construir estos lenguajes especializados utilizando en todos los casos un núcleo común formado por componentes y conectores. La existencia de ese núcleo expresivo común facilitará dar forma a las relaciones entre Pág. 3-1
4 modelos. Únicamente, y por razones ya comentadas, se extenderá en la arquitectura de 4+1 vistas la capacidad de expresión jerárquica de los sistemas. UML 1.4 desarrolla estos conceptos y define una rica colección de vistas en forma de diagramas orientados a objetos, permitiendo múltiples enfoques para un mismo problema. La potencia de este lenguaje radica en su flexibilidad expresiva y capacidad de adaptación. Pero esta virtud le hace carecer de rigurosidad y formalidad cuando se trata de asegurar la coherencia global del modelo y sus instancias. Como uno de los requisitos del entorno multidisciplinar es la capacidad de validar la corrección de las instancias respecto al metamodelo, UML 1.4 parece incompleto como soporte de los metamodelos de dominio y sus instancias. Además, sigue careciendo de la jerarquía formal deseable. Como ambas carencias prometen ser paliadas en la próxima versión del lenguaje (UML 2.0), es una posibilidad de futuro la expresión de los metamodelos de dominio y sus instancias en este estándar. En la filosofía MDA (Model Driven Architecture) de OMG la definición y relación entre PIM y PSM, la formalidad introducida por MOF y la serialización de modelos e instancias con XMI tienen a UML como punto común de referencia. A pesar de ello, el que UML no sea el lenguaje inicialmente elegido para el modelado de dominio en el entorno no implica dar la espalda a todos los demás estándares. De hecho, se propone desarrollar el entorno en sintonía con esta filosofía y dejar preparado el camino para que en un futuro UML pueda ser el lenguaje de modelado inicial y XMI pueda tender directamente los puentes hacia la expresión en XML de esos modelos e instancias. XML sí parece colmar conjuntamente las necesidades de expresión flexible y adaptable a diferentes campos junto con la validación formal de las instancias. Su papel de metalenguaje, permitiendo la creación de lenguajes formales a través de schemas, y el complemento de XSL (transformaciones entre lenguajes) le hacen convertirse en un candidato ideal. Incluso si UML 2.0 (y estándares asociados) cumplen todas las expectativas, XML seguirá siendo necesario para el intercambio de información entre diferentes plataformas, entre diferentes herramientas MOF o entre herramientas MOF y otras no MOF (necesidad de validación previa). En resumen, en lo concerniente al modelado y expresión formal de la información en el entorno multidisciplinar se toman las siguientes decisiones: Definir los metamodelos de los cuatro dominios implicados. Los modelos o instancias de los mismos serán las descripciones del sistema desde los enfoques particulares. Usar schemas XML para definir los metamodelos de dominio. Éstos fijarán todos los requisitos a cumplir por las instancias (descripciones de sistemas particulares hechas de acuerdo al metamodelo de dominio). Estos schemas Pág. 3-2
5 XML servirán de gramáticas formales del lenguaje a emplear desde cada dominio. Construir los lenguajes extendiendo y especializando un núcleo expresivo común que soporte la descripción jerárquica del sistema en base a componentes y conectores. Seguir en la medida de lo posible los preceptos del MDA. Por una parte, distinguir el nivel de abstracción de la aplicación independiente de detalles (PIM), otro con detalles propios de la plataforma de desarrollo (PSM) y, por último, la implementación final. Por otra parte, establecer mecanismos para automatizar y formalizar el paso entre dichos niveles de abstracción. De este modo serán evidentes las ventajas obtenidas en cuanto a reutilización de modelos y formalización del proceso. Preparar la adopción futura de UML 2.0 como lenguaje soporte de los metamodelos de dominio. Esto permitiría : generación automática desde UML de gramáticas XML (schemas) e instancias (documentos) gracias a XMI o al empleo de perfiles que modulen la creación de XML a voluntad del diseñador generación automática desde UML del código que implemente los interfaces entre herramientas y modelos de dominio para diferentes plataformas (Java, C++, CORBA, ) adopción del perfil de tiempo real como metamodelo de dominio para STR (Sistemas de Tiempo Real) Cabe destacar que aunque se descarta el empleo de UML para el modelado formal de los dominios esto no implica que no pueda existir una herramienta UML integrada en el entorno. Una herramienta UML podría usarse, por ejemplo, para especificar la arquitectura SW del sistema, pero el resultado de su uso habría que expresarlo en XML y validarlo contra su metamodelo correspondiente (schema XML). Pág. 3-3
6 3.1.2 REQUISITOS Y COMPONENTES BÁSICOS DEL ENTORNO El análisis realizado en el Estado del Arte sobre las herramientas específicas de dominio habituales en cada uno de los campos de estudio, ha permitido identificar varios requisitos que deben guiar la construcción del entorno multidisciplinar de herramientas: La trazabilidad ha demostrado ser una propiedad fundamental cuando se trata de coordinar diferentes fases de desarrollo y aún más cuando se emplean diferentes herramientas. Esta propiedad deberá ser intrínseca al propio entorno y, por tanto, no basada en ninguna herramienta particular. El Núcleo del Entorno debe ser independiente de cualquiera de las herramientas integradas. Frente a la opción de tomar una herramienta suficientemente genérica como centro del entorno e ir ampliándola con módulos paralelos que complementen su funcionalidad, se opta por diseñar una arquitectura horizontal adecuada, con funcionamiento y formato de almacenamiento propios, e ir acomodando las herramientas específicas verticales a esta arquitectura y forma de trabajo. Para cada uno de los dominios específicos se han detectado conceptos clave que se constituyen en criterios de clasificación de grupos de herramientas y, por tanto, en parámetros de configuración para el Núcleo del Entorno: Sistemas Distribuidos. El Protocolo de Comunicación elegido para el sistema en desarrollo determina el grupo de herramientas de ayuda que pueden necesitarse. Sistemas de Tiempo Real. El Estilo de Arquitectura demuestra ser clave y tener implicaciones directas en herramientas de análisis, pero también en el diseño. Son limitados los estilos de arquitectura empleados en Sistemas de Tiempo Real (secuencial, dirigida a eventos, pipeline, cliente-servidor) pero no se va a diseñar un entorno que soporte uno solo de ellos, sino que se permitirá seleccionar el más adecuado en cada proyecto. El estilo elegido para el sistema en desarrollo determinará qué subconjunto de herramientas pueden usarse y qué sinergias existirán entre ellas. La Metodología es un concepto aún más amplio que engloba el estilo de arquitectura y restringirá aún más el número y forma de utilizar las herramientas. Ingeniería del SW. Es necesario el uso de un Proceso de SW adaptado a las necesidades de los SCDTR, pero configurable y modificable por el usuario en sus detalles para que se adapte a las necesidades propias del campo de aplicación y al Nivel de Madurez CMM de la organización. La visibilidad o expresión explícita del Proceso y su gestión desde una entidad Pág. 3-4
7 independiente de cualquier herramienta ofrecerá esta flexibilidad de cara al usuario. El Núcleo del Entorno debe ser flexible, para adaptarse con facilidad a necesidades futuras, y abierto para integrar en cada momento a la herramienta específica más adecuada. Esto se conseguirá a través del uso de estándares para la implementación de los componentes anteriores El Núcleo del Entorno se asemeja a los entornos I-CASE descritos en el capítulo anterior en que también debe ofrecer una arquitectura común en la que integrar herramientas de diferente naturaleza. Por ello, se identifican los siguientes Componentes Básicos, análogos a los de dichos entornos: Repositorio de información común a todas las herramientas. Componente de integración de modelos. Contiene la definición explícita de los cuatro metamodelos de dominio, sus relaciones y la relación de los metamodelos con las herramientas particulares en base a ciertos metadatos. Componente DIRECTOR, desde donde se controlan todos los mecanismos de activación, se comprueban y gestionan de forma global los errores, la integridad y la consistencia. Interfaces de herramientas. Debe estandarizarse el formato y protocolos de intercambio de datos entre las herramientas y el entorno. Interfaz de usuario común para la configuración del entorno. El estudio hecho en el Estado del Arte sobre algunos intentos de integración de dominios en forma de entornos de herramientas arroja las siguientes coincidencias entre varias soluciones propuestas: Uso de XML como formato preferido para la integración de información. Uso de Java como lenguaje de programación preferido para el SW de integración Uso de documentos (normalmente en XML) anexos a los módulos para describir la información necesaria para su integración con otros. Uso generalizado de la abstracción como concepto fundamental en el que basar la integración. Uso de gramáticas abstractas con los elementos sintácticos a emplear en todo el entorno, aunque luego se le añada la semántica particular de cada dominio. Uso de entidad director o similar para coordinar las diferencias semánticas entre dominios valiéndose de la estructura común de los lenguajes. Pág. 3-5
8 Concepto de METAframework o infraestructura necesaria para la composición de frameworks. Hasta ahora el diseño se ha centrado en la consideración de cuatro dominios y de las relaciones entre ellos, pero por qué sólo cuatro?, cómo se integraría uno más? Si se es capaz de expresar el metamodelo del que emergen los cuatro dominios, la definición de un nuevo modelo bajo esos mismos principios aseguraría su colaboración con los demás en el entorno. Esta idea del metamodelado se desarrollará para formalizar los mecanismos de ampliación de los dominios considerados en el entorno. El siguiente apartado definirá la estructura general del entorno, que estará compuesta por el conjunto de componentes aquí enumerados y permitirá satisfacer los requisitos identificados. La cohesión y coherencia del entorno se fundamentará en el uso de diferentes técnicas de integración a varios niveles. Pág. 3-6
9 3.1.3 ESTRUCTURA GENERAL Las pautas enumeradas conducen a un diseño del entorno como el mostrado en la Figura 3-1. Las herramientas particulares son empleadas por los especialistas en la manera habitual, pero se conectan como clientes al Motor de Colaboración de Herramientas (MCH), que hace las funciones de servidor. El tipo de servicio que ofrece el MCH es de almacenamiento, validación y coordinación de la información del SCDTR bajo desarrollo. El MCH ofrece estos servicios apoyándose en el Motor de Colaboración de Modelos (MCM). La capa más externa del MCH gestiona un flujo de información vertical y en ambos sentidos entre cada herramienta y el propio MCH, mientras que el MCM gestiona otro flujo de información transversal que permite coordinar y actualizar los datos que importan las herramientas. Existirá un amplio conjunto de herramientas particulares (siempre ampliable) registradas en el entorno, es decir, conocidas en cuanto a su comunicación con el MCH, la función que desempeñan, las informaciones que requieren intercambiar, etc. Pero cada proyecto requerirá para su desarrollo un subconjunto de herramientas de entre las registradas y el responsable del proyecto las seleccionará y configurará el entorno para su interacción a lo largo del proceso particular de dicho proyecto.... Especialistas... Herramientas... Interfaces MOTOR DE COLABORACIÓN DE HERRAMIENTAS (MCH) MOTOR DE COLABORACIÓN DE MODELOS (MCM) Figura 3-1. Estructura del entorno multidisciplinar La capa más externa del MCH debe resolver los interfaces a las herramientas particulares, así como al coordinador (que configura el funcionamiento del entorno para la gestión de cada proyecto). Pág. 3-7
10 Los componentes del Motor de Colaboración de Herramientas incluyen los que ya han sido mencionados, más la novedad de la entidad DIRECTOR, núcleo del MCM. En este componente se centralizan todas las actividades de integración: Control del proceso de desarrollo. En función de la información aportada por el coordinador se configurará el proceso y el DIRECTOR obligará a seguir las fases marcadas. Gestión de activaciones para invocar las acciones necesarias en cada momento. Control de la trazabilidad, íntimamente ligado al proceso SW seguido. Comprobación global de errores, coherencias e integridad de la información. Especialistas Coordinador Interfaz Config Metadatos DIRECTOR Modelos de Integración Interfaz herramientas Repositorios MOTOR DE COLABORACIÓN DE MODELOS (MCM) MOTOR DE COLABORACIÓN DE HERRAMIENTAS (MCH) Figura 3-2. Componentes del MCH. En la Figura 3-2 se puede apreciar cómo quedan los componentes del entorno con la inclusión del DIRECTOR y la expresión explícita de los modelos de interacción para su manipulación. Además, se identifican dos roles de usuarios del entorno: Coordinador de proyecto. Es quien impone al DIRECTOR, a través de un interfaz de configuración, las pautas a seguir en el uso de las herramientas externas. Tiene que conocer el funcionamiento del MCH para configurarlo. Define el conjunto concreto de herramientas a usar, un estilo de arquitectura o metodología de tiempo real determinada, protocolos de comunicación para la distribución del control, un determinado proceso de SW, etc. Estas decisiones, que determinarán las sinergias e incompatibilidades que entran en juego, sirven para configurar el módulo Pág. 3-8
11 DIRECTOR. Toda esta información se empleará para coordinar todo el entorno a lo largo de la vida del proyecto. Especialista. Usuario final de cada una de las herramientas integradas. Hace uso de una herramienta bien conocida a partir de la información que le facilita el entorno y de las pautas indicadas por el coordinador. El diagrama de componentes básicos mostrado en la Figura 3-2 se irá completando en más detalle a lo largo del presente capítulo y se desarrollará el diseño final de cada bloque en el capítulo siguiente. Pág. 3-9
12 Pág. 3-10
13 3..2 NIIVELES DE INTEGRACIIÓN Sobre lo que se entiende por integración y las técnicas disponibles para lograrla a diferentes niveles. Una vez establecido que las diferentes herramientas del entorno se integrarán gracias a un Motor de Colaboración de Herramientas (MCH) externo que guíe el proceso, cabe preguntarse qué técnicas son las más apropiadas para que el MCH logre ese propósito de integración. Dado un conjunto de aplicaciones autónomas, cada una ejecutándose en su propio contexto, la interacción entre ellas se consigue si: 1. Existe una conexión física y un protocolo de comunicación para que los datos fluyan entre los contextos de ejecución de las aplicaciones. Actualmente, la omnipresencia de internet con sus protocolos TCP/IP hace que sea la opción más estándar para el intercambio de información entre dos aplicaciones cualesquiera independientemente de su ubicación. 2. Existe un acuerdo en el formato de los datos para su intercambio (texto ASCII, XML, representación en memoria, chorro de bits ). Por las razones aducidas en el capítulo anterior, XML se perfila como el formato más estándar, universal y de amplia aceptación. 3. Existe un acuerdo en el léxico y sintaxis empleados para la expresión de la información. 4. Existe un acuerdo respecto a los tipos de datos (rangos válidos, herencia, polimorfismo, estructuras, ). 5. Existe un acuerdo en el significado que se da a los datos, lo que se espera de ellos, las relaciones que se establecen, el procesado que se les dará. 6. Existe un acuerdo en la relación o manera de mantener la coherencia entre cualesquiera dos datos de dos herramientas diferentes pero con una relación semántica conocida. 7. Existe un acuerdo en los interfaces que cada aplicación ofrece para la entrada y salida de datos Los puntos 3, 4 y 5 hacen referencia a un acuerdo en cuanto a la gramática empleada, que como se verá, tiene que reflejar las peculiaridades de cada campo de aplicación pero manteniendo un núcleo común a todas las demás. Para lograr una solución abierta y flexible, los puntos 6 y 7 conviene resolverlos de forma Pág. 3-11
14 acorde a tecnologías estándares y ampliamente aceptadas, que se discutirán a lo largo de este apartado. En definitiva, se trata de llegar a acuerdos entre las partes implicadas, pero estos acuerdos pueden ser de muy diversa naturaleza: Acuerdos tácitos o explícitos. En ocasiones, se siguen acuerdos no escritos para hacer que se entiendan dos aplicaciones. En este trabajo se intenta hacer explícito cualquier acuerdo porque esto es necesario para poder modificar los términos del acuerdo o para generalizarlo y lograr la interacción con otras aplicaciones cualesquiera. Acuerdos punto a punto o genéricos. Para comunicar dos aplicaciones basta con ponerse de acuerdo entre ellas, pero para lograr comunicar un número indeterminado de aplicaciones no definidas de antemano, es necesario imponer unas normas genéricas que permitan interactuar a toda aplicación que las cumpla. La propia interacción entre las aplicaciones puede ser manual o guiada. Es decir, dirigida a su libre albedrío por el usuario (que indica en qué momento invocar una aplicación y con qué datos trabajar) o conducida por una entidad directora que siga unas reglas prefijadas y regule los pasos a seguir, los datos a emplear y la coherencia de todo el proceso. Como ya se ha descrito, los procesos y metodologías para el desarrollo de SW requieren de una regulación de las fases de su ciclo de vida que aconseja una interacción guiada. Por ello se propone que sea llevada a cabo por la entidad DIRECTOR. Una vez que las aplicaciones son capaces de interactuar (porque se han resuelto de alguna manera los 7 puntos anteriores) se pueden definir diferentes niveles de integración: Aplicaciones integrables. Por cumplir todos los requisitos para interactuar se puede escribir un SW que las integre. Aplicaciones integradas entre tiempos de ejecución. Cada aplicación funciona según sus propios tiempos pero los resultados que se obtienen al terminar su uso se sincronizan con la información que ya existía. Por cada uso de una aplicación se comprobará la coherencia de los resultados con todo lo anterior. Aplicaciones integradas en tiempo de ejecución. En el propio tiempo de ejecución, una aplicación es capaz de comunicase e interactuar con otras. En definitiva, se pueden completar un poco más las características del MCH añadiendo las siguientes: El MCH usará conexiones sobre TCP/IP para comunicarse con las herramientas. Pág. 3-12
15 La información a intercambiar entre herramientas y MCH se expresará en formato XML. Siendo así, lo más lógico es que los repositorios también almacenen la información en este formato. Se definirán gramáticas XML ajustadas a las necesidades de cada uno de los dominios: Ingeniería de Control (IC), Sistemas Distribuidos (SD), Sistemas de Tiempo Real (STR) e Ingeniería del SW (IS). De este modo, la información intercambiada entre una determinada herramienta y el MCH se expresará siempre en la gramática propia de su dominio. El DIRECTOR llevará a cabo una integración entre tiempos de ejecución, es decir, se encargará de sincronizar la información global cada vez que se reporten resultados desde alguna de las herramientas. Los acuerdos necesarios para la integración de herramientas se hacen genéricos ya que hacen referencia a las interacciones entre los diferentes dominios específicos y no a la existente entre herramientas concretas. Estos acuerdos se engloban en un conjunto de Modelos de Dominios que estarán íntimamente ligados a las Gramáticas de Dominio. Los acuerdos se hacen explícitos porque se expresan en forma de modelos y gramáticas modificables, y por tanto extensibles. La Figura 3-16 muestra como queda el MCH con estas aportaciones. El DIRECTOR lleva la iniciativa y usa los servicios que le ofrecen las aplicaciones de forma coordinada y coherente, basándose en los modelos y gramáticas de dominio. Pág. 3-13
16 Gramática de dominio común para diferentes herramientas IC IC SD STR IS Información en la gramática XML de cada dominio Información XML sobre conexiones TCP/IP Interfaz Config Interfaz Herramientas DIRECTOR Sincronización en instantes de entrada / salida de información desde una herramienta Modelos Gramáticas Dominios XML Dominios Metadatos Repositorios XML Figura 3-3. Estructura del MCH. En los siguientes apartados se presentarán algunas técnicas adecuadas para la implementación de cada una de las partes de este esquema. Concretamente, y por orden de aparición de los apartados, se describirán soluciones para los bloques de Gramáticas (3.3 Integración de Gramáticas), Modelos de Dominio (3.4 Integración de Modelos), DIRECTOR (3.5 Integración de Técnicas para Desarrollo de SW), Repositorio (3.6 Integración de Conocimiento) e Interfaz de Herramientas (3.7 Integración de Aplicaciones). Pág. 3-14
17 3..3 INTEGRACIIÓN DE GRAMÁTIICAS Sobre los niveles de servicio que puede implementar una gramática y el grado de compatibilidad entre gramáticas distintas. Para que varias personas se puedan comunicar y se entiendan entre sí, es necesario que empleen el mismo lenguaje. Del mismo modo, para que puedan comunicarse entre sí un conjunto de herramientas deben expresar, hasta cierto punto, de la misma forma aquellas informaciones que pretendan intercambiar. La solución podría ser la creación de un lenguaje común, lo suficientemente rico y extenso como para cumplir dos requisitos: El lenguaje debe poder describir la información que manejen todas las herramientas a integrar. El lenguaje debe poder representar todas las relaciones cruzadas entre informaciones de diferentes herramientas. Esta solución permitiría importar y exportar toda información entre herramientas, siempre que estuviera expresada en ese lenguaje. El problema surgiría cada vez que se pretenda integrar una nueva herramienta no considerada en un principio. Si el lenguaje común no fuera capaz de expresar algún tipo de información manejada por la nueva herramienta, sería necesaria su modificación y ampliación. Para ganar flexibilidad y generalidad en la solución, conviene usar un lenguaje más abstracto en el que se asuman sólo unos pocos elementos comunes a la información de todas las herramientas que pretendan ser integradas. Se va a profundizar a continuación en un proyecto que trabaja en esta línea de investigación, el GSRC Semantics Project. Pág. 3-15
18 3.3.1 GSRC SEMANTICS PROJECT Gigascale Silicon Research Center ( es una entidad que aúna los esfuerzos de multitud de grupos de investigación para el diseño y test de sistemas empotrados. Uno de sus proyectos es el GSRC Semantics Project ( Este proyecto persigue la interoperatividad de herramientas para el diseño de sistemas. Identifican el mismo problema que se ha descrito en el primer capítulo de esta memoria, es decir, la necesidad de enfocar un mismo sistema de diferentes formas para tratar diferentes problemas y la dificultad de conseguir que los cambios producidos en uno de estos enfoques sigan siendo coherentes en los demás. Tal y como muestra la Figura 3-4, se pueden obtener múltiples facetas de un sistema al proyectarlo respecto a diferentes ejes o puntos de vista pero si se modifica una de esas facetas hay que conseguir que siga siendo coherente con las demás. Por otra parte, también es deseable poder manejar diferentes niveles de abstracción para cada una de las facetas (Figura 3-5). Figura 3-4. Proyección de las facetas de un sistema y su consistencia. Estas facetas se pueden identificar con las representaciones del sistema de acuerdo a diferentes herramientas y lograr la coherencia entre las mismas sería lo mismo que conseguir interoperatividad entre las herramientas. Para lograr esta interoperatividad, no buscan la creación de un lenguaje estándar de diseño común para todas, si no que intentan identificar el uso de ciertos elementos comunes y formalizarlos para establecer la base común a todas las herramientas. De este modo, definen modelos sintácticos y semánticos para el diseño de sistemas basándose en el uso de componentes, su interacción y su composición (Lee 2000). Pág. 3-16
19 Figura 3-5. Niveles de abstracción de cada faceta. En la especificación de un lenguaje se aúnan las descripciones de varias propiedades ortogonales. El tratamiento por separado de las mismas permite varios niveles de compatibilidad. La definición de un lenguaje puede dividirse en cinco partes (servicios) agrupadas en dos bloques: Estructura lógica: Sintaxis abstracta. Define cómo un diseño puede dividirse en componentes interconectados. El conjunto de componentes y relaciones que pueden aparecer en un diseño conforman una sintaxis abstracta. Sintaxis concreta, notación. Define cómo un diseño puede ser representado y manipulado en un formato persistente y usable por el ordenador (XML, APIs, fichero ASCII, gráfico, ). Pueden existir múltiples sintaxis concretas derivadas de una única sintaxis abstracta. Transformaciones sintácticas. Un conjunto de operaciones (tanto estáticas como dinámicas) permiten transformar un diseño en otro. Significado: Sistema de tipos. Regulan los datos compartidos por los componentes y aseguran que se cumplen los requisitos que los componentes imponen a esos datos. El polimorfismo es una cualidad conveniente para dar generalidad a los diseños. Semánticas (de componentes y de interacción). Da significado a las características de cada componente y a sus conexiones con otros. Un determinado diseño se representa con un lenguaje concreto que incluye los cinco servicios mencionados. Sin embargo, las herramientas que se utilizan para manejar ese modelo no tienen porque ser conscientes de todas las partes del lenguaje. Habrá herramientas que soporten sólo alguna de las partes del lenguaje. Pág. 3-17
20 Por ejemplo, un visualizador gráfico que muestre las relaciones entre componentes no necesita conocer la semántica ni los tipos (le basta con conocer la sintaxis abstracta), mientras que un motor de inferencia de tipos necesita conocer el sistema de tipos además de la sintaxis abstracta. En base a estos conceptos se puede clasificar la interoperatividad entre herramientas a diferentes niveles: 1. Sintaxis abstracta compatible. Es posible escribir SW ad hoc que convierta datos de una herramienta en datos utilizables en otra. 2. Sintaxis concreta compatible. Una herramienta puede leer datos en el formato persistente de otra (ficheros externos) sin necesidad de escribir SW especial. 3. Transformaciones sintácticas compatibles. Es posible generar automáticamente datos de entrada para una herramienta a partir de los resultados de otra. 4. Sistema de tipos compatible. Intercambio automático de modelos de datos completos entre herramientas. 5. Semánticas compatibles. Las herramientas pueden intercambiar datos dinámicamente, en tiempo de ejecución. Cuando se busca la interoperatividad entre un conjunto lo suficientemente amplio y diverso de herramientas de diseño, enseguida es evidente que no basta con un único formato estándar para representar adecuadamente una sintaxis y semántica común para todas. Existe una variedad de modelos semánticos para sistemas basados en componentes y cada uno tiene sus ventajas y su campo de aplicación. Por ello, se busca un acuerdo en lo más básico, la sintaxis abstracta. Una sintaxis abstracta común para herramientas de diseño de sistemas debe ser capaz de describir listas de conectividad, diagramas de transición de estados, diagramas de bloques, modelos de objetos y estructuras gráficas, además de permitir el uso extensivo de la jerarquía para lograr escalabilidad. Éstas son las características que reúne la sintaxis abstracta GSRC. Resumen de las características del proyecto GSRC: Definición por separado de cada una de los cinco servicios constitutivos de un lenguaje: Sintaxis abstracta. Definición de componentes y posibles relaciones entre ellos, capacidades de jerarquía, conectividad e instanciación de clases. Sintaxis concreta. MoML es una sintaxis concreta XML para la sintaxis abstracta de GSRC. MoML no añade significado al modelo, en su lugar, permite añadir un director al modelo. El director definirá la semántica de las conexiones pero para MoML no es más que la referencia a una instancia que cargará el cargador de clases. Pág. 3-18
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 detallesPROGRAMACIÓ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 detallesElementos 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 detallesCapí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 detallesIntroducció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 detallesProcesos 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 detallesGestió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 detalles3.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 detallesApp para realizar consultas al Sistema de Información Estadística de Castilla y León
App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda
Más detallesCurso: Arquitectura Empresarial basado en TOGAF
Metodología para desarrollo de Arquitecturas (ADM) El ADM TOGAF es el resultado de las contribuciones continuas de un gran número de practicantes de arquitectura. Este describe un método para el desarrollo
Más detallesFigure 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 detallesCorrespondencias entre taxonomías XBRL y ontologías en OWL Unai Aguilera, Joseba Abaitua Universidad de Deusto, EmergiaTech
Correspondencias entre taxonomías XBRL y ontologías en OWL Unai Aguilera, Joseba Abaitua Universidad de Deusto, EmergiaTech Resumen Todo documento XBRL contiene cierta información semántica que se representa
Más detallesSERVICE 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 detallesEnterprise 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 detallesProceso 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 detallesPatrones 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 detallesDISEÑ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 detallesArquitectura 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 detallesService 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 detalles3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE
3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE Software Configuration Management (SCM) es una disciplina de la Ingeniería de Software que se preocupa de [Ber92] [Ber84] [Bou98] [Mik97]: Identificar y documentar
Más detallesIntroducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual
Introducción Algunas de las personas que trabajan con SGBD relacionales parecen preguntarse porqué deberían preocuparse del diseño de las bases de datos que utilizan. Después de todo, la mayoría de los
Más detallesMetodologí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 detallesLA 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 detallesDiseñ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 detallesPRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE
PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,
Más detallesMetodologí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 detallesCMMI (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 detalles1 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 detallesSISTEMAS DE INFORMACIÓN II TEORÍA
CONTENIDO: EL PROCESO DE DISEÑO DE SISTEMAS DISTRIBUIDOS MANEJANDO LOS DATOS EN LOS SISTEMAS DISTRIBUIDOS DISEÑANDO SISTEMAS PARA REDES DE ÁREA LOCAL DISEÑANDO SISTEMAS PARA ARQUITECTURAS CLIENTE/SERVIDOR
Más detallesPropuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA
Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)
Más detallesEl 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 detallesEstá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 detallesUNIVERSIDAD DE SALAMANCA
UNIVERSIDAD DE SALAMANCA FACULTAD DE CIENCIAS INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Resumen del trabajo práctico realizado para la superación de la asignatura Proyecto Fin de Carrera. TÍTULO SISTEMA
Más detallesMetodología y Framework para el Desarrollo de Aplicaciones Científicas con Computación de Alto Rendimiento a través de Servicios Web
Metodología y Framework para el Desarrollo de Aplicaciones Científicas con Computación de Alto Rendimiento a través de Servicios Web J.Corral-García, D.Cortés-Polo, C.Gómez-Martín, J.L.González-Sánchez
Más detallesDiseñ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 detallesPROCESOS 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 detallesEnginyeria del Software III
Enginyeria del Software III Sessió 3. L estàndard ISO/IEC 15504 Antònia Mas Pichaco 1 Introducción El proyecto SPICE representa el mayor marco de colaboración internacional establecido con la finalidad
Más detallesMaster 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 detallesMetodologías de diseño de hardware
Capítulo 2 Metodologías de diseño de hardware Las metodologías de diseño de hardware denominadas Top-Down, basadas en la utilización de lenguajes de descripción de hardware, han posibilitado la reducción
Más detallesIngeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007
Enunciado Se desea efectuar el testing funcional de un programa que ejecuta transferencias entre cuentas bancarias. El programa recibe como parámetros la cuenta de origen, la de cuenta de destino y el
Más detallesCICLO DE VIDA DEL SOFTWARE
CICLO DE VIDA DEL SOFTWARE 1. Concepto de Ciclo de Vida 2. Procesos del Ciclo de Vida del Software 3. Modelo en cascada 4. Modelo incremental 5. Modelo en espiral 6. Prototipado 7. La reutilización en
Más detallesNormas chilenas de la serie ISO 9000
Normas chilenas de la serie ISO 9000 Hernán Pavez G. Director Ejecutivo del Instituto Nacional de Normalización, INN, Matías Cousiño N 64, 6 Piso, Santiago, Chile. RESUMEN: en nuestro país las empresas
Más detallesPlanificación de Sistemas de Información
Planificación de Sistemas de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ACTIVIDAD 1: INICIO DEL PLAN DE SISTEMAS DE INFORMACIÓN... 4 Tarea 1.1: Análisis de la Necesidad del... 4 Tarea 1.2: Identificación
Más detallesCapítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente
Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.
Más detallesEstas 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 detallesPlanificación de Sistemas de Información
Planificación de Sistemas de Información ÍNDICE DESCRIPCIÓN Y OBJETIVOS...1 ACTIVIDAD 1: INICIO DEL PLAN DE SISTEMAS DE INFORMACIÓN...4 Tarea 1.1: Análisis de la Necesidad del...4 Tarea 1.2: Identificación
Más detallesUnidad 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 detallesPROGRAMACIÓ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 detallesGestió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 detallesPROCEDIMIENTO DE AUDITORÍAS INTERNAS DEL SISTEMA DE GESTIÓN DE CALIDAD
Página : 1 de 12 PROCEDIMIENTO DE DEL SISTEMA DE GESTIÓN DE CALIDAD Esta es una copia no controlada si carece de sello en el reverso de sus hojas, en cuyo caso se advierte al lector que su contenido puede
Más detallesM.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 detallesEntidad 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 detallesLa 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 detallesUna puerta abierta al futuro
Una puerta abierta al futuro SOA E ITIL EN LA LEY DE ACCESO ELECTRÓNICO DE LOS CIUDADANOS A LOS SERVICIOS PÚBLICOS (LAECSP) por francisco javier antón Vique La publicación de la Ley de Acceso electrónico
Más detallesActividades 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 detallesGUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES
GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES Tema: Cartas de Servicios Primera versión: 2008 Datos de contacto: Evaluación y Calidad. Gobierno de Navarra. evaluacionycalidad@navarra.es
Más detalles<Generador de exámenes> Visión preliminar
1. Introducción Proyecto Final del curso Técnicas de Producción de Sistemas Visión preliminar Para la evaluación de algunos temas de las materias que se imparten en diferentes niveles,
Más detallesCAPÍTULO 3 Servidor de Modelo de Usuario
CAPÍTULO 3 Servidor de Modelo de Usuario Para el desarrollo del modelado del estudiante se utilizó el servidor de modelo de usuario desarrollado en la Universidad de las Américas Puebla por Rosa G. Paredes
Más detallesFundamentos 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 detallesSOLUCIÓN HOSPEDADA. Introducción a los modelos de asociación de partners de Microsoft Dynamics CRM
SOLUCIÓN HOSPEDADA Introducción a los modelos de asociación de partners de Microsoft Dynamics CRM Aprovechar el ecosistema de Microsoft para el éxito de CRM hospedado Microsoft Dynamics CRM ofrece a clientes
Más detallesBusiness Process Management(BPM)
Universidad Inca Garcilaso de la Vega CURSO DE ACTUALIZACIÓN PROFESIONAL DE INGENIERÍA DE SISTEMAS Y CÓMPUTO Business Process Management(BPM) MSc. Daniel Alejandro Yucra Sotomayor E-mail: daniel@agenciati.com
Más detallesTó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 detallesDecisión: Indican puntos en que se toman decisiones: sí o no, o se verifica una actividad del flujo grama.
Diagrama de Flujo La presentación gráfica de un sistema es una forma ampliamente utilizada como herramienta de análisis, ya que permite identificar aspectos relevantes de una manera rápida y simple. El
Más detallesSERVIDOR WEB PARA ACCESO EN TIEMPO REAL A INFORMACIÓN METEOROLÓGICA DISTRIBUIDA
SERVIDOR WEB PARA ACCESO EN TIEMPO REAL A INFORMACIÓN METEOROLÓGICA DISTRIBUIDA E. SÁEZ, M. ORTIZ, F. QUILES, C. MORENO, L. GÓMEZ Área de Arquitectura y Tecnología de Computadores. Departamento de Arquitectura
Más detallesIngenierí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 detallesSISTEMAS Y MANUALES DE LA CALIDAD
SISTEMAS Y MANUALES DE LA CALIDAD NORMATIVAS SOBRE SISTEMAS DE CALIDAD Introducción La experiencia de algunos sectores industriales que por las características particulares de sus productos tenían necesidad
Más detallesCapitulo 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 detallesFigure 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 detallesGeneración de código para Hibernate desde modelos UML
Generación de código para Hibernate desde modelos UML Alejandro Nogueiro Mariscal Ingeniería Técnica en Informática de Sistemas, Universidad de Cádiz 24 de Septiembre 2012 1 / 35 Índice 1 Motivación y
Más detallescomunidades 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 detallesOperación 8 Claves para la ISO 9001-2015
Operación 8Claves para la ISO 9001-2015 BLOQUE 8: Operación A grandes rasgos, se puede decir que este bloque se corresponde con el capítulo 7 de la antigua norma ISO 9001:2008 de Realización del Producto,
Más detallesAproximación local. Plano tangente. Derivadas parciales.
Univ. de Alcalá de Henares Ingeniería de Telecomunicación Cálculo. Segundo parcial. Curso 004-005 Aproximación local. Plano tangente. Derivadas parciales. 1. Plano tangente 1.1. El problema de la aproximación
Más detallesIntroducción a la Programación Orientada a Objetos (POO) Introducción a la Programación Orientada a Objetos (POO)
Diseño Orientado a Objetos. Metodología enfocada a la solución de problemas complejos. Complejidad del software. Problemas difíciles de precisar. Definición de requerimientos vago y cambio en el desarrollo
Más detallesforma de entrenar a la nuerona en su aprendizaje.
Sistemas expertos e Inteligencia Artificial,Guía5 1 Facultad : Ingeniería Escuela : Computación Asignatura: Sistemas expertos e Inteligencia Artificial Tema: SISTEMAS BASADOS EN CONOCIMIENTO. Objetivo
Más detallesCAPÍTUL07 SISTEMAS DE FILOSOFÍA HÍBRIDA EN BIOMEDICINA. Alejandro Pazos, Nieves Pedreira, Ana B. Porto, María D. López-Seijo
CAPÍTUL07 SISTEMAS DE FILOSOFÍA HÍBRIDA EN BIOMEDICINA Alejandro Pazos, Nieves Pedreira, Ana B. Porto, María D. López-Seijo Laboratorio de Redes de Neuronas Artificiales y Sistemas Adaptativos Universidade
Más detallesCiclo 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 detallesEmpresa Financiera Herramientas de SW Servicios
Empresa Financiera Herramientas de SW Servicios Resulta importante mencionar que ésta es una empresa cuya actividad principal está enfocada a satisfacer las necesidades financieras de los clientes, a través
Más detallesLos 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 detalles2 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 detallesServidores Donantonio
Especificación de requisitos software Tabla de contenidos Juan José Amor David Escorial Ismael Olea 1. Introducción...3 1.1. Propósito...3 1.2. Ámbito del sistema...3 1.3. Definiciones, acrónimos y abreviaturas...3
Más detalles1.1 EL ESTUDIO TÉCNICO
1.1 EL ESTUDIO TÉCNICO 1.1.1 Definición Un estudio técnico permite proponer y analizar las diferentes opciones tecnológicas para producir los bienes o servicios que se requieren, lo que además admite verificar
Más detallesBPMN Business Process Modeling Notation
BPMN (BPMN) es una notación gráfica que describe la lógica de los pasos de un proceso de Negocio. Esta notación ha sido especialmente diseñada para coordinar la secuencia de los procesos y los mensajes
Más detallesEl modelo de ciclo de vida cascada, captura algunos principios básicos:
Ciclo de Vida del Software Un modelo de ciclo de vida define el estado de las fases a través de las cuales se mueve un proyecto de desarrollo de software. El primer ciclo de vida del software, "Cascada",
Más detallesREGISTRO DE PEDIDOS DE CLIENTES MÓDULO DE TOMA DE PEDIDOS E INTEGRACIÓN CON ERP
REGISTRO DE PEDIDOS DE CLIENTES MÓDULO DE TOMA DE PEDIDOS E INTEGRACIÓN CON ERP Visual Sale posee módulos especializados para el método de ventas transaccional, donde el pedido de parte de un nuevo cliente
Más detallesCAPÍTULO 1 Instrumentación Virtual
CAPÍTULO 1 Instrumentación Virtual 1.1 Qué es Instrumentación Virtual? En las últimas décadas se han incrementado de manera considerable las aplicaciones que corren a través de redes debido al surgimiento
Más detallesQué se entiende por diseño arquitectónico? Comprende el establecimiento de un marco de trabajo estructural básico para un sistema. Alude a la estructura general del software y el modo en que la estructura
Más detallesSeminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets
Seminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets 1 de 12 Seminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets 3 Bienvenida. 4 Objetivos. 5 Interacciones de Negocios
Más detallesDEPARTAMENTO: Informática. MATERIA: Programación. NIVEL: 1º Desarrollo de Aplicaciones Multiplataforma
DEPARTAMENTO: Informática MATERIA: Programación NIVEL: 1º Desarrollo de Aplicaciones Multiplataforma 1. Objetivos. Competencias Profesionales, Personales y Sociales 1.1 Objetivos del ciclo formativo La
Más detallesGestión de la Configuración
Gestión de la ÍNDICE DESCRIPCIÓN Y OBJETIVOS... 1 ESTUDIO DE VIABILIDAD DEL SISTEMA... 2 ACTIVIDAD EVS-GC 1: DEFINICIÓN DE LOS REQUISITOS DE GESTIÓN DE CONFIGURACIÓN... 2 Tarea EVS-GC 1.1: Definición de
Más detallesANÁ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 detallesPERFIL DEL PUESTO POR COMPETENCIAS Sepa cómo construirlo y evitar bajos desempeños posteriores
PERFIL DEL PUESTO POR COMPETENCIAS Sepa cómo construirlo y evitar bajos desempeños posteriores Martha Alicia Alles Es contadora pública nacional, doctora por la Universidad de Buenos Aires en la especialidad
Más detallesObjetos educativos y estandarización en e-learning: Experiencias en el sistema <e-aula>
Objetos educativos y estandarización en e-learning: Experiencias en el sistema Fernández-Manjón, B.1, López Moratalla, J.2 Martínez Ortiz, I. 2, Moreno Ger, P. 2 Universidad Complutense de Madrid,
Más detallesSistema de Mensajería Empresarial para generación Masiva de DTE
Sistema de Mensajería Empresarial para generación Masiva de DTE TIPO DE DOCUMENTO: OFERTA TÉCNICA Y COMERCIAL VERSIÓN 1.0, 7 de Mayo de 2008 CONTENIDO 1 INTRODUCCIÓN 4 2 DESCRIPCIÓN DE ARQUITECTURA DE
Más detallesPLAN DE MEJORAS. Herramienta de trabajo. Agencia Nacional de Evaluación de la Calidad y Acreditación
PLAN DE MEJORAS Herramienta de trabajo Agencia Nacional de Evaluación de la Calidad y Acreditación Índice 1 Introducción...3 2 Pasos a seguir para la elaboración del plan de mejoras...5 2.1 Identificar
Más detalles2.11.1 CONTRATAS Y SUBCONTRATAS NOTAS
NOTAS 1 Cuando en un mismo centro de trabajo desarrollen actividades trabajadores de dos o más empresas, éstas deberán cooperar en la aplicación de la normativa sobre prevención de riesgos laborales. A
Más detallesUNIDADES FUNCIONALES DEL ORDENADOR TEMA 3
UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 INTRODUCCIÓN El elemento hardware de un sistema básico de proceso de datos se puede estructurar en tres partes claramente diferenciadas en cuanto a sus funciones:
Más detallesCAPÍTULO 3 VISUAL BASIC
CAPÍTULO 3 VISUAL BASIC 3.1 Visual Basic Microsoft Visual Basic es la actual y mejor representación del viejo lenguaje BASIC, le proporciona un sistema completo para el desarrollo de aplicaciones para
Más detallesUn primer acercamiento a la CMDB.
Un Versión primer 1.2 acercamiento a la CMDB. 20/07/2005 Un primer acercamiento a la CMDB. Versión 1.1 1.2 18/02/05 20/02/05 Fecha Jose Autores Carlos Manuel García Viejo García Lobato http://ars.viejolobato.com
Más detalles1.1. Introducción y conceptos básicos
Tema 1 Variables estadísticas Contenido 1.1. Introducción y conceptos básicos.................. 1 1.2. Tipos de variables estadísticas................... 2 1.3. Distribuciones de frecuencias....................
Más detallesDE VIDA PARA EL DESARROLLO DE SISTEMAS
MÉTODO DEL CICLO DE VIDA PARA EL DESARROLLO DE SISTEMAS 1. METODO DEL CICLO DE VIDA PARA EL DESARROLLO DE SISTEMAS CICLO DE VIDA CLÁSICO DEL DESARROLLO DE SISTEMAS. El desarrollo de Sistemas, un proceso
Más detalles