BOA, un framework MDA de alta productividad

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "BOA, un framework MDA de alta productividad"

Transcripción

1 BOA, un framework MDA de alta productividad Padrón Lorenzo, J. 1, Estévez García A. 1, Roda García J.L. 2, García López F. 2 1 Open Canarias SL, Santa Cruz Tenerife, España 2 Escuela Técnica Superior de Ingeniería Informática Universidad de La Laguna, La Laguna, España Resumen. Este trabajo presenta una plataforma para la automatización de los procesos de desarrollo de software, que partiendo de modelos descritos en Unified Modeling Language (UML) genera código automático en diferentes tecnologías. A lo largo de su desarrollo ha ido evolucionando hasta alinearse con algunos aspectos de la Model Driven Architecture (MDA), pero en lugar de utilizar la idea de las transformaciones en nuevos metamodelos, nos apoyamos en la idea de los Perfiles UML de introducir más información en el modelo, de forma que pasamos directamente a código sin transformaciones adicionales. 1 Introducción El desarrollo de software desde el punto de vista clásico nunca ha sido una tarea fácil, ni siquiera siendo muy cuidadosos en el uso de las metodologías ni de las tecnologías más avanzadas. En este proceso las compañías de software han tenido siempre problemas para terminar el desarrollo de sus aplicaciones. En la actualidad existen novedosas metodologías, técnicas, y herramientas para el desarrollo de software. Ninguna ha despertado tanto interés como las que se basan en la descripción de un modelo de negocio completo y preciso para luego, y a través de procesos automáticos o semiautomáticos, generar el código de forma óptima y como no, de alta calidad. El objetivo fundamental se basa en aumentar la productividad, evitar tareas repetitivas, centrarse en el modelo de negocio a través de una buena captura de los requisitos del cliente, y por tanto, en ser más competitivos. MDA [5] es un framework basado fundamentalmente en UML y otros estándares de la industria software para visualizar, almacenar, e intercambiar los modelos especificados desde los sistemas. Se centra en los requisitos funcionales de un sistema y no en la tecnología empleada para su implementación. Bajo la estrategia MDA, un sistema debe ser especificado en un modelo, no en el código ya que esta tarea deberá automatizarse a través de herramientas de generación de código. Estas herramientas permitirán, entre otras actividades, la generación automática de código de alta

2 calidad, la comprobación de la consistencia de los modelos del sistema y las diferentes optimizaciones. Según MDA, el primer paso en el desarrollo de una aplicación es crear el modelo del sistema a estudio en UML, que es un modelo independiente de la plataforma. Dentro de la terminología MDA es lo que se denomina PIM. A partir de aquí, se deben incorporar las características específicas de la plataforma como las especificidades del sistema operativo, o del middleware que usará. A este modelo se le denomina Modelo Específico de la Plataforma, PSM. Una vez que el modelo se orienta hacia una plataforma específica, entonces podemos generar código y tener una implementación específica para la plataforma. 2 Algunas herramientas MDA En los últimos tiempos han ido apareciendo una serie de herramientas que de una forma u otra se ajustan a los principios de MDA, entre las que podemos encontrar tanto opciones comerciales como de libre distribución. De las herramientas comerciales podemos destacar como una de las más completas a ArcStyler [2], que incorpora su propio entorno IDE para refinar los modelos con un alto grado de parametrización, facilitando la generación tanto para la plataforma J2EE como.net, además de infraestructuras personalizadas e integración con sistemas heredados; por otra parte, en su defecto podemos resaltar el exceso de complejidad en el citado refinamiento de los modelos. También tiene una importante presencia como herramienta comercial OptimalJ [8], de Compuware, que se presenta también a través de un IDE pero con un más claro compromiso con los planteamientos MDA de transformación de un PIM a PSM, para al final generar el código de la aplicación; en su detrimento se puede destacar que la generación es exclusiva para la plataforma J2EE. Entre las herramientas de libre distribución, en primer lugar podemos citar AndroMDA [1], que posee como principal virtud un esquema de transformación basado en cartuchos, donde se definen las plantillas para la generación de código, desarrolladas con el framework Velocity [10], y XDoclets [11]; pero asimismo, los cartuchos disponibles obligan a estereotipar los modelos de forma demasiado dependiente de los componentes a generar, con lo que limita la reutilización de dichos modelos. Por último, otra herramienta de libre distribución es JaMDA [4], de la que sus desarrolladores destacan la ventaja de prescindir de plantillas para la generación del código a partir del modelo, utilizando un lenguaje de programación como Java para codificar los transformadores de modelo a código; por otra parte, se puede discutir dicha aproximación, sobre todo si partimos de la base que contando con un modelo completo (que contenga toda la información necesaria para generar el código), el uso de plantillas simplifica, según nuestra experiencia, la generación de código y plantean una forma más simple de modificación y reutilización.

3 3 Antecedentes y evolución de BOA BOA es el resultado de una serie de esfuerzos para mejorar la productividad y la calidad de los desarrollos de software, en el ámbito de la colaboración existente entre el Grupo Taro de Ingeniería del Software y Bases de Datos de la Universidad de La Laguna y la empresa Open Canarias. El estado actual es la consecuencia de una evolución continua, que entronca con una serie de proyectos de desarrollo llevados a cabo en los últimos cuatro años por la citada empresa. Desde los primeros proyectos de desarrollo acometidos por Open Canarias, bajo la plataforma J2EE, se identificó la ventaja que suponía automatizar la generación de código ante determinados aspectos repetibles de dicha plataforma. Por ejemplo, el desarrollo de cada Enterprise Java Bean (EJB), implicaba una serie de clases Java que incidían directamente en los esfuerzos, además de aumentar el potencial de errores. En el contexto de las interfaces también se evidenciaba la existencia de elementos repetibles. La primera aproximación que se adoptó fue la de definir, tanto para el desarrollo de EJB como para las interfaces, lenguajes basados en XML para propiciar la generación automatizada de código, utilizando plantillas XSLT. Estas herramientas fueron utilizadas en un proyecto de desarrollo para el Servicio Canario de Salud del Gobierno Autónomo de Canarias. A pesar de la complejidad inicial de la elaboración de plantillas XSLT, los resultados obtenidos nos animaron a continuar con la misma línea para los siguientes proyectos. Paralelamente, y en el marco de un proyecto de fin de carrera de un alumno de Ingeniería Informática, se propuso avanzar en la línea de utilizar como fuente de generación de código el XML Metadata Interchange [12] (XMI). La razón era obvia, el XMI era el formato utilizado por la mayoría de las herramientas de modelado UML para exportar los modelos, y por lo tanto podíamos basarnos en dichas herramientas para obtener la información necesaria para la generación de código. En el mencionado proyecto sólo se abordó la generación de código para la capa de persistencia, tanto a través de EJB como de Java Data Objects (JDO). Es importante resaltar que la semántica adicional para la generación de código se añadía a posteriori a las unidades de generación, obtenidas a partir del XMI. En este punto fue donde comenzamos a indagar sobre Model Driven Architecture (MDA), y en la posibilidad de construir un framework basado en sus principios. La idea era aplicar transformaciones a los modelos a partir del XMI, hasta obtener unidades de generación a las que pudiéramos aplicar las plantillas. El cambio sustancial fue la utilización de los perfiles UML como medio de aportar semántica adicional para la citada generación, evitándonos realizarlo en una fase posterior. Este trabajo se utilizó en un proyecto de desarrollo para la Consejería de Política Territorial del Gobierno Autónomo de Canarias, con unos resultados que nos permitieron reducir a la mitad el tiempo estimado para dicho desarrollo. La última modificación realizada ha sido la integración del framework en la plataforma Eclipse. Dicha modificación ha estado motivada por la necesidad de contar con un entorno integrado y extensible, lo que nos permitirá ir ampliando sus capacidades de una forma cohesiva. En este punto nos planteamos la utilización del Eclipse Modeling Framework (EMF), pero lo descartamos al no poder utilizar las

4 plantillas XSLT ya desarrolladas, ya que EMF utiliza un sistema de plantillas propietario. 4 La Herramienta Bussines Object Adaptor, BOA 4.1 Relación de BOA con la Estrategia MDA El alineamiento de BOA con MDA gira en torno al concepto de los Perfiles UML, un mecanismo de especialización definido como parte del propio UML. De hecho, este mecanismo es el que nos da la flexibilidad que otras aproximaciones al modelado de sistemas de software no nos permitían, salvo de forma propietaria. Los perfiles nos facilitan el modelado de aspectos específicos de un sistema de software: lenguaje de programación, tecnología, arquitectura. Por tanto, son los elementos que nos aportan la semántica adicional imprescindible en un contexto de desarrollo dirigido por el modelo (Model Driven Development). Un Perfil UML representa un metamodelo especializado que permite complementar los modelos con información específica para plataformas, lenguajes y arquitecturas: es decir, es el elemento necesario para transformar un PIM en un PSM. Pero llegados a este punto podemos plantearnos una serie de cuestiones: Podemos prescindir en un PIM de aspectos de diseño o arquitectura? Si prescindimos de dichos aspectos, podemos realmente llegar a una transformación automatizada? Es necesario el nivel de detalle de un PSM para generar el código? Nosotros creemos que no, y por este motivo nuestra aproximación a MDA presenta diferencias con las estrategias planteadas por el Object Management Group [6] (OMG). La idea inicial es diseñar un conjunto de Perfiles UML que describan simplemente arquitecturas, prescindiendo de tecnologías y lenguajes de programación. Dichas arquitecturas reúnen conjuntos de patrones de diseño neutrales, que deben ser incorporados al modelo en la fase de diseño del sistema. Y en este punto es donde entendemos que no cabe una transformación automática, dado que son decisiones de diseño difíciles de formalizar a través de dicha transformación. El principio básico para la obtención de cada uno de los perfiles es indagar generalizaciones entre diferentes lenguajes de programación, plataformas, tecnologías; además de incorporar otros aspectos relevantes relacionados con la integración con sistemas y aplicaciones heredadas (por ejemplo, en estos momentos estamos definiendo un metamodelo para la integración con sistemas de Workflow). Al final, estas generalizaciones dotan al perfil de soluciones de diseño basadas en una arquitectura, pero que no comprometidas con los citados lenguajes de programación, plataformas y tecnologías. Una vez el diseñador ha aplicado estos perfiles al modelo qué es lo que tenemos? Si aplicamos el concepto tal y como se concibe en MDA no es PIM, porque las decisiones de diseño al adoptar la arquitectura pueden implicar la asunción de que la persistencia de los objetos del sistema se realice a través de una base de datos relacional es este un modelo independiente de la plataforma? Por otro lado,

5 simplemente hemos dotado al modelo de una arquitectura concreta, y por tanto, tampoco podemos considerarlo un PSM al no resolver aspectos que puedan relacionarlo con una plataforma determinada. A partir del momento en que tenemos el modelo perfilado ya con una arquitectura cuál es el siguiente paso? En nuestra visión de MDA, consideramos que dicho modelo perfilado contiene ya la información suficiente para automatizar la generación de código. Incluso, y teniendo en cuenta la incorporación a UML 1.5 de la semántica de acciones [9], nuestro compromiso es lograr la generación del 100% del código. La transformación en un nuevo modelo (en un PSM) no nos aporta ningún beneficio adicional, ya que el modelo existente cubre todos los aspectos que establece MDA: la utilización de los modelos para comprender, diseñar, construir, desplegar, utilizar, mantener y modificar un sistema de software. 4.2 Arquitectura de BOA En la figura 1 se presenta la arquitectura completa de BOA. La herramienta BOA se ha planteado sobre una arquitectura totalmente modular, en la que se ha buscado una integración con las herramientas de modelado existentes desde la perspectiva de un bajo acoplamiento. Las únicas consideraciones para la elección de dichas herramientas son: que puedan ser establecidos Perfiles UML y que tengan la capacidad de exportar los modelos a XMI. Por otra parte contamos con los cartuchos (cartridge), cuya función es la de dirigir la generación, compilación y empaquetado del modelo exportado en XMI. En esencia, un cartucho reúne la implementación de los Perfiles UML en el contexto de la plataforma y lenguaje de programación sobre el que se generará el código. Dicho cartucho contendrá un descriptor donde se define los perfiles con cada uno de sus estereotipos, asignándoles las plantillas correspondientes (tantas como artefactos de software se deban generar a partir de dichos estereotipos). También el cartucho contendrá aspectos colaterales para la obtención del producto de software, como son, entre otros, los componentes neutrales que aporta BOA, empaquetados en un framework para la plataforma específica, y otros paquetes y librerías dependientes de la mencionada plataforma.

6 Fig. 1. Arquitectura de BOA Por último, como se muestra en la figura, tenemos el compilador de modelos, que toma el modelo XMI y el cartucho seleccionado para la generación, compilación y empaquetado. Este proceso comienza extrayendo la información del modelo contenida en el fichero XMI, y organizándola en unidades de generación. Dichas unidades de generación se organizan en paquetes y clases, pasando el compilador a seleccionar dentro de los perfiles descritos en el cartucho, los estereotipos correspondientes a las mismas. A continuación, se aplicarán las plantillas XSL para generar el código fuente, compilarlo y empaquetarlo para el despliegue. Todo este proceso es automático Desarrollo de software con BOA Un sistema de información se puede modelar usando cualquier tipo de herramienta que trabaje con UML, con los Perfiles UML y que guarde los modelos en el formato XMI. Para modelar usando nuestra herramienta BOA, necesitamos seguir unas ciertas convenciones de modelado. Esto implica que el modelo UML no puede tener una estructura arbitraria, sino que debe seguir estas convenciones para que tenga una estructura reconocible por BOA. Lo primero que debemos hacer es construir nuestro modelo de negocio, en el que definiremos las clases y las relaciones entre ellas. En la figura 2 se muestra un ejemplo del modelo de negocio de clientes y sus tarjetas de crédito.

7 Fig. 2. Modelo de negocio UML impreciso e incompleto. En este punto, podemos decir que el modelo UML es impreciso e incompleto, sobretodo de cara a automatizar las tareas de generación de código. El siguiente paso es completar este modelo con una arquitectura basada en los patrones de diseño, que en el modelo se aplican a través de los Perfiles UML. En estos perfiles se definen los aspectos/soluciones de diseño con los que debemos completar el modelo. Esto lo realizamos a través de la definición de un conjunto de estereotipos y clases complementarias que permiten la definición precisa y completa del modelo. En la Figura 3 mostramos el ejemplo anterior incluyendo los patrones de diseño factory y facade, a partir de las clases iniciales. Fig. 3. Modelo de negocio preciso y completo. Los estereotipos que añadimos al modelo completan la información que le falta al modelo UML de la figura 2 y permiten a BOA su manipulación a la hora de la generación de código. Además de las clases, en BOA se pueden estereotipar tanto atributos, como métodos y dependencias (links). Por ejemplo, en la figura 3, el estereotipo <<entity>> de la clase Customer le indica a BOA que se trata de un objeto persistente. Las clases que incorporen el estereotipo <<factory>> serán interpretadas por BOA como clases que gestionarán el ciclo de vida de los objetos con estereotipo <<entity>>. Por último, BOA tomará las clases con estereotipo <<service>> para definir una fachada (facade) para los servicios de la aplicación (aplicable, entre otros

8 escenarios, tanto a interfaz con la capa de presentación como a servicios Web). Cuando un estereotipo en concreto necesita información adicional, usamos otro elemento estándar de UML: los valores etiquetados. Con estos elementos podemos añadir aún más información a los elementos del modelo, permitiendo una generación de código más completa. Una vez definido el modelo estático, pasamos a la descripción del modelo dinámico que contempla, por un lado la interfaz de usuario con sus acciones y por otro, el flujo de mensajes para llevar a cabo estas acciones. Fig. 4. Modelo de una interfaz MVC2. En cuanto a la interfaz de usuario, nos hemos basado en el patrón de diseño Modelo Vista Controlador 2 (MVC2). Para ello se ha definido un perfil que agrupa los estereotipos y valores etiquetados necesarios para representar el flujo de acciones y páginas, así como diversos elementos con representación web como pueden ser listados y formularios. En la figura 4 vemos un fragmento de un diagrama de clases que especifica el modelo de interfaz de usuario gracias a estereotipos que representan páginas web, acciones, etc. Para modelar el flujo de mensajes en los que participa una acción empleamos los diagramas de secuencia, con los que podemos definir la secuencia de llamadas a métodos que intervienen en la ejecución de una acción determinada. Los estereotipos definidos que conforman el perfil UML para la capa de persistencia, son: <<entity>> Clase con persistencia en la base de datos. <<factory>> Clase que gestiona el ciclo de vida de objetos con estereotipo entity. <<service>> Fachada de acceso a la aplicación de la capa de presentación Para la capa de presentación o interfaz de usuario y sus acciones, el perfil UML correspondiente está formado por los siguientes estereotipos: <<WebAction>> Clase que representa una acción de un modelo MVC 2 <<WebPage>> Clase que se convierte en una Página Web <<WebForm>> Clase que se transforma en código que implementa un formulario web <<WebFormMaster>> Clase que se transforma en código de un formulario maestro <<WebList>> Clase que se transforma en código para mostrar un listado <<WebView>> Clase que se transforma en una vista Una vez que tenemos los diferentes diagramas, modelos estereotipados, exportamos el modelo UML completo, haciendo uso de la herramienta que

9 consideremos, al formato XMI. A continuación, con BOA integrado en Eclipse [3] a través de un Eclipse plug-in, generamos un nuevo proyecto BOA, y seleccionamos tanto el fichero XMI como el cartucho tecnológico que usaremos para generar el código. Cuando lanzamos la aplicación para que se genere el código fuente, internamente se realiza la fase de filtrado del fichero XMI para convertirlo en, lo que hemos denominado, unidades de generación. Estas unidades de generación estarán identificadas con el estereotipo proveniente del modelo UML, que junto con el cartucho permitirán aplicarle las plantillas XSLT de generación de código. Cuando termine este proceso habremos obtenido un proyecto Eclipse en el que tendremos generados todas las clases modeladas. 5 Estado actual del desarrollo En la actualidad el desarrollo de la herramienta tiene varios frentes, condicionados en gran parte por las demandas de los proyectos en los que se encuentra inmersa la empresa Open Canarias. El primero de dichos frentes es tender a la generación del 100% del código, con el fin de evitar la introducción manual del mismo. Para este objetivo usamos los diagramas de estado, incorporando en dichos estados semántica de acciones [13], tal y como se describe en la especificación 1.5 del UML. Para nuestra aproximación hemos utilizado el Action Specification Language (ASL) [14], y con algunas modificaciones hemos desarrollado la gramática sobre la que hemos generado un parser, utilizando el compilador de compiladores SableCC [15]. Dicho parser genera en estos momentos código Java, pero para futuros proyectos prevemos la generación para el lenguaje C#. Por otra parte, estamos trabajando en un cartucho para compilar los modelos de Perfiles UML, y así generar tanto la estructura de nuevos cartuchos como el correspondiente validador, que se aplicará a los modelos que usen este nuevo perfil. Las tareas para completar el cartucho se limitarán a la elaboración de las plantillas XSLT, y a la incorporación de las librerías necesarias para el código. Por último, estamos la mejorando la interfaz gráfica generada, con el objeto de permitir la creación automática de diferentes elementos para dicho interfaz, como pueden ser los menús, árboles, listas ordenables por columnas, calendarios, etc. 6. Conclusiones En nuestra aproximación de MDA, del PIM pasamos a código directamente por medio de los estereotipos y etiquetas donde indicamos gran cantidad de información independiente de la plataforma. BOA se basa en los Perfiles UML para describir dichos estereotipos. Con esta solución, la productividad del desarrollo de software aumenta de forma importante. El paso a otras arquitecturas se realiza a través de la realización de los cartuchos apropiados que incluyen los perfiles.

10 La herramienta desarrollada sigue los estándares y las tecnologías más usadas en este tipo de productos. No utiliza ningún producto propietario y por tanto permite compatibilidad con otras herramientas. BOA asegura la calidad de los productos desarrollados al seguir una estrategia basada en plantillas y generación de código automático. En la actualidad, BOA se está utilizando por el grupo de desarrollo de la empresa Open Canarias permitiendo acortar los tiempos de desarrollo y por tanto mejorar la productividad de la empresa. Esta alta productividad permitirá ser muy competitivos respecto al resto de empresas que no utilicen este tipo de estrategias. La última aplicación desarrollada con BOA, lleva cuatro meses funcionando y hasta la fecha no se ha detectado ningún error. Lo que si ha provocado la utilización de BOA, es una importante inversión en la cualificación de las personas que realizan los modelos. Además es importante la necesidad de educar a los usuarios potenciales de estas herramientas. 7. Reconocimientos Este trabajo ha sido financiado parcialmente por Fondos FEDER a través de la Dirección General de Universidades, Consejería de Educación, Cultura y Deportes del Gobierno de Canarias a través del proyecto I+D+I número TR 2003/05. Referencias 1. AndroMDA tool Arcstyler tool Eclipse Project JaMDA tool Model Driven Architecture Object Management Group G. Booch, I. Jacobson y J. Rumbaugh. The Unified Modelling Language User Guide. Addison-Wesley Professional OptimaJ tool Unified Modelling Language Velocity Project Xdoclet project XMI. http :// 13. Action Semantics Revised Final Submission. OMG document ad/ SL 14. The Action Specification Language Reference Manual SableCC Parser generator.

UNA EXPERIENCIA PRÁCTICA DE INTEGRACIÓN DE SISTEMAS HETEROGÉNEOS DIRIGIDA POR MODELOS

UNA EXPERIENCIA PRÁCTICA DE INTEGRACIÓN DE SISTEMAS HETEROGÉNEOS DIRIGIDA POR MODELOS UNA EXPERIENCIA PRÁCTICA DE INTEGRACIÓN DE SISTEMAS HETEROGÉNEOS DIRIGIDA POR MODELOS Gerente de Informática de Diputación IZFE, S.A. (Diputación Foral de Gipuzkoa) Analista IZFE, S.A. (Diputación Foral

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

MDA: Arquitectura Dirigida por Modelos

MDA: Arquitectura Dirigida por Modelos MDA: Arquitectura Dirigida por Modelos Uno de los principios básicos b de la ingeniería a de software es la abstracción, para separar lo esencial de lo no esencial. En términos t de negocio, lo esencial

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

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

Definición de Lenguajes de Modelos MDA vs DSL

Definición de Lenguajes de Modelos MDA vs DSL Departamento de Tecnologías y Sistemas de Información Definición de Lenguajes de Modelos MDA vs DSL Beatriz Mora, Francisco Ruiz, Félix García, Mario Piattini Grupo Alarcos. Universidad de Castilla-La

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

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

El Proceso Unificado de Desarrollo de Software

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

Más detalles

Curso de Spring Framework

Curso de Spring Framework Todos los Derechos Reservados Global Mentoring 2012 Experiencia y Conocimiento para tu Vida 1 Spring es un proyecto de código abierto (open source), originalmente creado por Rod Johnson y descrito en su

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

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

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

Más detalles

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

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

UML, OCL y Patrones en el contexto MDA

UML, OCL y Patrones en el contexto MDA UML, OCL y Patrones en el contexto MDA Ana Garis email: agaris@unsl.edu.ar Maestría en Ingeniería de Software Agenda Model Driven Architecture (MDA) Unified Modeling Language (UML) y Perfiles UML Object

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

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

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

MDA TOOLS COMPARISON

MDA TOOLS COMPARISON Comparativo de herramientas MDA (AndroMDA, ArcStyler, OptimalJ) Cuesta M. Albeiro * López T. Marcelo ** Joyanes A. Luis *** Resumen Con el entorno y dinámicas competitivas de la actualidad, contar con

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

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

ARQUITECTUA DE M2M MIGUEL ÁLVAREZ Y CLARA HERRERO. Documento inicial

ARQUITECTUA DE M2M MIGUEL ÁLVAREZ Y CLARA HERRERO. Documento inicial Título ARQUITECTUA DE M2M Proyecto Monkey to Monkey ( M 2 M ) Equipo Proyectos Informáticos Versión 1.0 Código PLAN_M2M_2012_04_01 Fecha 19/04/2012 Autores MIGUEL ÁLVAREZ Y CLARA HERRERO Estado Documento

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

TFC J2EE. Aplicación Web para la gestión de facturación de una empresa de cerrajería. Sara Gutiérrez Melero ITIG Junio de 2012

TFC J2EE. Aplicación Web para la gestión de facturación de una empresa de cerrajería. Sara Gutiérrez Melero ITIG Junio de 2012 TFC J2EE Aplicación Web para la gestión de facturación de una empresa de cerrajería Sara Gutiérrez Melero ITIG Junio de 2012 Consultor: Jose Juan Rodriguez Índice 1. Introducción Objetivos Planificació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

Ingeniería de Software en SOA

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

Más detalles

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

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

Más detalles

Una recomendación basada en MDA, BPM y SOA para el desarrollo de software a partir de procesos del negocio en un contexto de Negocio Bajo Demanda

Una recomendación basada en MDA, BPM y SOA para el desarrollo de software a partir de procesos del negocio en un contexto de Negocio Bajo Demanda Una recomendación basada en MDA, BPM y SOA para el desarrollo de software a partir de procesos del negocio en un contexto de Negocio Bajo Demanda Miguel Ángel Sánchez Vidales Escuela Universitaria de Informática

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

Capí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 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 detalles

Desarrollo de un Modelo Computacional basado en Arquitectura Orientada a Modelos para la Transformación de un Diagrama de Clases en Código Fuente Java

Desarrollo de un Modelo Computacional basado en Arquitectura Orientada a Modelos para la Transformación de un Diagrama de Clases en Código Fuente Java Escuela Académico Profesional de Informática Facultad de Ciencias Físicas y Matemáticas Universidad Nacional de Trujillo Desarrollo de un Modelo Computacional basado en Arquitectura Orientada a Modelos

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

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

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

SET (Software Engineering Tutor). Una herramienta para la construcción guiada de modelos de dominio

SET (Software Engineering Tutor). Una herramienta para la construcción guiada de modelos de dominio SET (Software Engineering Tutor). Una herramienta para la construcción guiada de modelos de dominio Arturo Cepeda Pérez, Sergio Bravo Martín, Francisco José García Peñalvo Universidad de Salamanca, Facultad

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

DISEÑO DE COMPONENTES DE SOFTWARE *

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

Más detalles

Enterprise Architect

Enterprise Architect Procesadores de Lenguajes II Enterprise Architect Adolfo Barroso Espinosa Juan Manuel Chaves Pérez Clement Désiles Leví Orta Caro Universidad de Cádiz Enero de 2012 Esquema 1 Introducción 2 Herramientas

Más detalles

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

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

Más detalles

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

UML 2 Iniciación, ejemplos y ejercicios corregidos

UML 2 Iniciación, ejemplos y ejercicios corregidos Ediciones ENI UML 2 Iniciación, ejemplos y ejercicios corregidos (3ª edición) Colección Recursos Informáticos Contenido Contenido 1 Capítulo 1 Introducción 1. Motivaciones de la obra.....................................

Más detalles

Capítulo III. Análisis y diseño.

Capítulo III. Análisis y diseño. Capítulo III. Análisis y diseño. 3.1 Análisis. El análisis es el intermediario entre los requisitos del sistema y el diseño, esta sección definiremos el análisis con una serie de modelos técnicos del sistema,

Más detalles

Sistema de Creación de Trámites Web 2.0 del Consejo Superior de Investigaciones Científicas

Sistema de Creación de Trámites Web 2.0 del Consejo Superior de Investigaciones Científicas Sistema de Creación de Trámites Web 2.0 del Consejo Superior de Investigaciones Científicas Clara Cala Rivero Sistema de Creación de Trámites Web 2.0 del Consejo Superior de Investigaciones Científicas

Más detalles

Aproximación al CONCEPTO

Aproximación al CONCEPTO 18 Aproximación al CONCEPTO LA NECESIDAD DE INTERCAMBIAR INFORMACIÓN ENTRE DEPARTAMENTOS Y ÁREAS DE NEGOCIO SE HA VUELTO CRUCIAL Y HA HECHO QUE LAS EMPRESAS VEAN LA INTEGRACIÓN COMO UN ELEMENTO CLAVE PARA

Más detalles

Introducción a Javato

Introducción a Javato Introducción a Javato Fº. Javier Pereñiguez Steria Iberica 20/02/2008 Índice Introducción Arquitectura Ejemplo arquitectura Plataforma Desarrollo Ejemplo de entorno de desarrollo Vías futuras Casos de

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

IBM Rational Software Architect V8.0.1 ofrece nuevos e innovadores enfoques para desarrollar arquitecturas de solución

IBM Rational Software Architect V8.0.1 ofrece nuevos e innovadores enfoques para desarrollar arquitecturas de solución con fecha de 14 de diciembre de 2010 IBM Rational Software Architect V8.0.1 ofrece nuevos e innovadores enfoques para desarrollar arquitecturas de solución Tabla de contenidos 1 Visión general 1 Fecha

Más detalles

INTEGRACIÓN DE TECNOLOGÍAS EN UNA PLATAFORMA J2EE DIRIGIDA POR MODELOS TECHNOLOGIES INTEGRATION IN A MODEL DRIVEN J2EE PLATFORM

INTEGRACIÓN DE TECNOLOGÍAS EN UNA PLATAFORMA J2EE DIRIGIDA POR MODELOS TECHNOLOGIES INTEGRATION IN A MODEL DRIVEN J2EE PLATFORM Colque et al.: Integración Ingeniare. de Revista tecnologías chilena en de una ingeniería, plataforma vol. J2EE 14 Nº dirigida 3, 2006, por pp. modelos 265-275 INTEGRACIÓN DE TECNOLOGÍAS EN UNA PLATAFORMA

Más detalles

elastic PROJECTS INFORMACIÓN COMERCIAL PROJECTS

elastic PROJECTS INFORMACIÓN COMERCIAL PROJECTS PROJECTS elastic PROJECTS INFORMACIÓN COMERCIAL Inscripción Registro Mercantil de Pontevedra, Tomo 3116, Libro 3116, Folio 30, Hoja PO-38276 C.I.F.: B-36.499.960 contact@imatia.com 1 INTRODUCCIÓN Mediante

Más detalles

Diseñando Transformaciones de Modelos CIM / PIM: desde un enfoque de negocio hacia un enfoque de sistema

Diseñando Transformaciones de Modelos CIM / PIM: desde un enfoque de negocio hacia un enfoque de sistema Diseñando Transformaciones de Modelos CIM / PIM: desde un enfoque de negocio hacia un enfoque de sistema Cecilia Ariste 1, Julieta Ponisio 1, Leopoldo Nahuel 1,2, Roxana Giandini 1,2 1 Laboratorio de Innovaciones

Más detalles

BPM: Articulando Estrategia, Procesos y Tecnología

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

Más detalles

Analista Programador Java: Business Apps Expert

Analista Programador Java: Business Apps Expert Analista Programador Java: Business Apps Expert TITULACIÓN DE FORMACIÓN CONTINUA BONIFICADA EXPEDIDA POR EL INSTITUTO EUROPEO DE ESTUDIOS EMPRESARIALES Analista Programador Java: Business Apps Expert Duración:

Más detalles

UML. Lenguaje de Modelado Unificado

UML. Lenguaje de Modelado Unificado Lenguaje de Modelado Unificado Concepto de Reseña Histórica Características Estándares que conforman Modelo Relacional con Ventajas Críticas Concepto de (Unified( Modeling language) Es un lenguaje usado

Más detalles

Oferta tecnológica: Herramienta software y método para modelar aplicaciones web independientes de dispositivo

Oferta tecnológica: Herramienta software y método para modelar aplicaciones web independientes de dispositivo Oferta tecnológica: Herramienta software y método para modelar aplicaciones web independientes de dispositivo Oferta tecnológica: Herramienta software y método para modelar aplicaciones web independientes

Más detalles

BOLETÍN DE NOVEDADES Barcelona, junio de 2008

BOLETÍN DE NOVEDADES Barcelona, junio de 2008 BOLETÍN DE NOVEDADES Barcelona, junio de 2008 Introducción El objeto de este documento es presentar y describir brevemente las principales actuaciones en los últimos meses de Carver en algunos de sus clientes,

Más detalles

En el siguiente apartado se detallan ciertos conceptos que ayudan a comprender en mayor medida el Proyecto.

En el siguiente apartado se detallan ciertos conceptos que ayudan a comprender en mayor medida el Proyecto. APÉNDICES En el siguiente apartado se detallan ciertos conceptos que ayudan a comprender en mayor medida el Proyecto. APÉNDICE 1. Herramientas Las herramientas que se usaron en el análisis, desarrollo

Más detalles

Generación de código para Hibernate desde modelos UML

Generació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 detalles

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el

desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el Capitulo II. Análisis de herramientas y tecnologías de desarrollo. Dentro del desarrollo de la tesis el proceso de modelado del sistema fue hecho con el lenguaje de Modelo de Objetos llamado UML (Unified

Más detalles

DIPLOMATURA DESARROLLO DE APLICACIONES JAVA

DIPLOMATURA DESARROLLO DE APLICACIONES JAVA DIPLOMATURA DESARROLLO DE APLICACIONES JAVA Contenidos MÓDULO UNO: Características del Lenguaje. OOP Reconocer las características del lenguaje Java y sus componentes. Distinguir la similitudes y diferencias

Más detalles

IBM Rational Statemate ayuda a los ingenieros de sistemas a enfrentarse a los retos del mercado de sistemas integrados complejos

IBM Rational Statemate ayuda a los ingenieros de sistemas a enfrentarse a los retos del mercado de sistemas integrados complejos ZP09-0207, con fecha 2 de junio de 2009 IBM Rational Statemate ayuda a los ingenieros de sistemas a enfrentarse a los retos del mercado de sistemas integrados complejos Índice 1 Resumen de características

Más detalles

Práctica de Integración de Sistemas Aplicación Web.NET: Sitio de Comentarios de Eventos Deportivos

Práctica de Integración de Sistemas Aplicación Web.NET: Sitio de Comentarios de Eventos Deportivos Práctica de Integración de Sistemas Aplicación Web.NET: Sitio de Comentarios de Eventos Deportivos 1. Introducción Curso académico 2009-2010 La práctica de Integración de Sistemas consiste en el diseño

Más detalles

Temario máster Java. Módulo 1 Fundamentals of the Java Programming Language. Duración: 40 horas

Temario máster Java. Módulo 1 Fundamentals of the Java Programming Language. Duración: 40 horas Temario máster Java Módulo 1 Fundamentals of the Java Programming Language. Duración: 40 horas En este módulo se explicarán las características del lenguaje programación Java. Unidad 1 Entendiendo la tecnología

Más detalles

Arturo Cepeda Pérez. Software Engineering Tutor

Arturo Cepeda Pérez. Software Engineering Tutor Software Engineering Tutor M A N U A L D E U S U A R I O Tabla de contenidos 1. Software Engineering Tutor... 1 2. Entorno... 2 2.1. Vista Modelo... 3 2.2. Vista Diagrama... 4 2.3. Vista Propiedades...

Más detalles

Capítulo I. Marco Teórico

Capítulo I. Marco Teórico 1 Capítulo I. Marco Teórico 1. Justificación Hoy en día existe una gran diversidad de aplicaciones que corren sobre la World Wide Web (WWW o Web), y cada una orientada a un fin en particular, el cuál depende

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

Extensión MDA (Model Driven Architecture) para proceso basado en RUP (Rational Unified Process)

Extensión MDA (Model Driven Architecture) para proceso basado en RUP (Rational Unified Process) Extensión MDA (Model Driven Architecture) para proceso basado en RUP (Rational Unified Process) Andrea Delgado, Natacha Carballal, Catalina Rapetti Universidad de la República, Facultad de Ingeniería,

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

Mejora del Proceso de Desarrollo de Software en los Sistemas Distribuidos en

Mejora del Proceso de Desarrollo de Software en los Sistemas Distribuidos en Mejora del Proceso de Desarrollo de Software en los Sistemas Distribuidos en el Centro Informático del INSS Técnico superior de Informática INSS María Isabel Vicente Hernández Técnico medio de Informática

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

Capítulo 11. Conclusiones y trabajo futuro

Capítulo 11. Conclusiones y trabajo futuro Capítulo 11. Conclusiones y trabajo futuro En esta tesis ha realizado un entorno de desarrollo Web que proporciona herramientas para la mejora de la calidad del código de los desarrolladores. Para conseguir

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

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

MARCANDO LA DIFERENCIA

MARCANDO LA DIFERENCIA MARCANDO LA DIFERENCIA INTEGRACIÓN RÁPIDA Y CONFIABLE entre sus sistemas Simplifique la integración y el mantenimiento de su lógica de negocio con nuestra arquitectura orientada a servicios. Ahorre dolores

Más detalles

Herramienta de Gestión Integral de E-Business

Herramienta de Gestión Integral de E-Business Herramienta de Gestión Integral de E-Business Ingeniería técnica de informática de sistemas Autor: David López Martín Tutor: Antoni Oller Arcas Índice Introducción Metodología Análisis Diseño Planificación

Más detalles

Desarrollo de aplicaciones web con Java y XML Experiencias en el CTI@UIB

Desarrollo de aplicaciones web con Java y XML Experiencias en el CTI@UIB Desarrollo de aplicaciones web con Java y XML Experiencias en el CTI@UIB Universidad idad de las Islas Baleares Centro de Tecnologías de la Información n (CTI@UIB( CTI@UIB) Daniel López Janáriz Objetivos

Más detalles

Desarrollo de Software con enfoque en el Negocio

Desarrollo de Software con enfoque en el Negocio Desarrollo de Software con enfoque en el Negocio Andrea Delgado Instituto de Computación Facultad de Ingeniería Universidad de la República 11300, Montevideo, Uruguay adelgado@fing.edu.uy Resumen Las Organizaciones

Más detalles

Deportes LSI 03. Sistema para Gestión de Artículos Deportivos LSI 03 Plan de Desarrollo Software. Versión 3.0

Deportes LSI 03. Sistema para Gestión de Artículos Deportivos LSI 03 Plan de Desarrollo Software. Versión 3.0 Deportes LSI 03 Sistema para Gestión de Artículos Deportivos LSI 03 Versión 3.0 Fecha: 02/01/2003 Historial de Revisiones Fecha Versión Descripción Autor 22/07/2002 0.9 Versión preliminar como propuesta

Más detalles

Cursos PROGRAMACIÓN DE APLICACIONES CON JAVA

Cursos PROGRAMACIÓN DE APLICACIONES CON JAVA Cursos CIÓN DE APLICACIONES CON JAVA OBJETIVOS Los cursos ofrecen al alumno fundamentos muy sólidos en la Plataformas de desarrollo Java, no solo en aspectos concretos (lenguaje java, paquetes disponibles,

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

Índice. http://www.dicampus.es

Índice. http://www.dicampus.es Módulo 2 UML Índice Introducción a UML Lenguaje Unificado de Modelado (UML) Diagramas UML Diagramas de casos de uso Diagramas estructurales: Clases Diagramas estructurales: Objetos Diagramas de interacción:

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

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

Desarrollo de Aplicaciones con Tecnologías Web

Desarrollo de Aplicaciones con Tecnologías Web Desarrollo de Aplicaciones con Tecnologías Web Código: Modalidad: Distancia Duración: 100 Horas. Objetivos: La presente formación se ajusta al itinerario formativo del Certificado de Profesionalidad IFCD0210

Más detalles

El Proceso Unificado Rational para el Desarrollo de Software.

El Proceso Unificado Rational para el Desarrollo de Software. Instituto de Electrónica y Computación El Proceso Unificado Rational para el Desarrollo de Software. Carlos Alberto Fernández y Fernández Huajuapan de León, Oaxaca 26 de octubre de 2000 Objetivo Proporcionar

Más detalles

Plataforma desarrollo Java Formación elearning tutorizada en castellano. Fabricante: Java Grupo: Desarrollo Subgrupo: Master Java

Plataforma desarrollo Java Formación elearning tutorizada en castellano. Fabricante: Java Grupo: Desarrollo Subgrupo: Master Java C/Comandante Zorita 4 28020 Madrid/ info@ceticsa.es 902 425 524 / 91 700 01 17 Plataforma desarrollo Java Formación elearning tutorizada en castellano JAVA00d Ciclo de formación en plataforma Java Curso

Más detalles

El proyecto del Diccionario de Datos de la Gerencia de Informática de la Seguridad Social

El proyecto del Diccionario de Datos de la Gerencia de Informática de la Seguridad Social El proyecto del Diccionario de Datos de la Gerencia de Informática de la Seguridad Social Jorge Manrubia Díez, Eugenio Bezares Ruíz Introducción El proyecto del Diccionario de Datos es una iniciativa de

Más detalles

Diseño y Modelación de un Proyecto de Software Utilizando el lenguaje UML

Diseño y Modelación de un Proyecto de Software Utilizando el lenguaje UML Diseño y Modelación de un Proyecto de Software Utilizando el lenguaje UML INTRODUCCION Desde los inicios de la informática se han estado utilizando distintas formas de representar los diseños de una manera

Más detalles

Enginyeria del Software III

Enginyeria 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 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

Enterprise Architect y UML Basic

Enterprise Architect y UML Basic Enterprise Architect y UML Basic Diciembre 2008 Carlos Alexander Zuluaga Agenda Presentación del curso. Introducción a Enterprise Architect. Exploración del modelo de ejemplo. Introducción a UML. Definición

Más detalles

con certif icado de profesionalidad

con certif icado de profesionalidad CARACTERÍSTICAS El diseño web está cambiando en poco tiempo. Las nuevas tecnologías y estándares de programación están revolucionando tanto la forma de crear web como de interactuar con ellas. En nuestro

Más detalles

Plataforma Tecnológica Qué es Marino Imagine? La integración de los requerimientos de sistemas informáticos en la determinados sectores. infraestructura de la empresa ha sucedido de forma Sus carencias

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

Construcción de editores de modelos con EMF

Construcción de editores de modelos con EMF Procesadores de Lenguajes 2 Construcción de editores de modelos con EMF Curso 2013-2014 Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad de Cádiz con EMF

Más detalles

Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP (Online)

Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP (Online) Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP (Online) Experto en Desarrollo de Componentes Web con Tecnología Servlet y JSP (Online) Duración: 300 horas Precio: 200 * Modalidad:

Más detalles

CUALIFICACIÓN SISTEMAS DE GESTIÓN DE INFORMACIÓN PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización

CUALIFICACIÓN SISTEMAS DE GESTIÓN DE INFORMACIÓN PROFESIONAL. Nivel 3. Versión 5 Situación RD 1201/2007 Actualización Página 1 de 16 CUALIFICACIÓN SISTEMAS DE GESTIÓN DE INFORMACIÓN PROFESIONAL Familia Profesional Informática y Comunicaciones Nivel 3 Código IFC304_3 Versión 5 Situación RD 1201/2007 Actualización Competencia

Más detalles

DOCUMENTACION A PRESENTAR: TRABAJADORES (RÉGIMEN GENERAL, ADMINISTRACIÓN PÚBLICA, AUTÓNOMOS) DEMANDANTES DE EMPLEO

DOCUMENTACION A PRESENTAR: TRABAJADORES (RÉGIMEN GENERAL, ADMINISTRACIÓN PÚBLICA, AUTÓNOMOS) DEMANDANTES DE EMPLEO MF0492_3 PROGRAMACION WEB EN EL ENTORNO SERVIDOR (IFCD0210: DESARROLLO DE APLICACIONES CON TECNOLOGÍAS WEB) 240 HORAS PRESENCIALES Nº DE EXPEDIENTE: FC/2013/0064 ACCION 217 GRUPO 1 ACCIÓN FORMATIVA FINANCIADA

Más detalles

Hacia la Integración de Técnicas de Pruebas en Metodologías Dirigidas por Modelos para SOA

Hacia la Integración de Técnicas de Pruebas en Metodologías Dirigidas por Modelos para SOA Hacia la Integración de Técnicas de Pruebas en Metodologías Dirigidas por Modelos para SOA Antonio García Domínguez Inmaculada Medina Bulo Mariano Marcos Bárcena Universidad de Cádiz Escuela Superior de

Más detalles