MCGEN: UN ENTORNO PARA LA GENERACIÓN AUTOMÁTICA DE COMPILADORES DE MODELOS ESPECÍFICOS DE DOMINIO

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "MCGEN: UN ENTORNO PARA LA GENERACIÓN AUTOMÁTICA DE COMPILADORES DE MODELOS ESPECÍFICOS DE DOMINIO"

Transcripción

1 XV Jornadas de Ingeniería del Software y Bases de Datos JISBD 2006 José Riquelme - Pere Botella (Eds) CIMNE, Barcelona, 2006 MCGEN: UN ENTORNO PARA LA GENERACIÓN AUTOMÁTICA DE COMPILADORES DE MODELOS ESPECÍFICOS DE DOMINIO Manuel Llavador, José H. Canós, Patricio Letelier y Carlos Solís Grupo de Ingeniería del Software y Sistemas de Información Departamento de Sistemas Informáticos y Computación Universidad Politécnica de Valencia Camino de Vera S/N, C.P , Valencia (España) {mllavador, jhcanos, letelier, web: Palabras clave: Compiladores de Modelos, MDA, Software Factories, XSL, Semántica Resumen. A pesar de las expectativas abiertas en cuanto a mejoras en productividad y calidad, los paradigmas basados en factorías de software y desarrollo dirigido por modelos no han sido adoptados en un grado significativo por la industria del software. Uno de los mayores obstáculos para la aplicación de esta tecnología es el coste asociado a la construcción de los Compiladores de Modelos en los que se basan. En este trabajo presentamos un entorno orientado a servicios para la generación automática de Compiladores de Modelos específicos de dominio. La generación automática reduce drásticamente los costes así como los posibles errores de implementación. 1. INTRODUCCIÓN La generación automática de código permite obtener el código fuente de una aplicación a partir de modelos que describen, de forma gráfica o textual, su arquitectura y/o comportamiento. Los programas que dan soporte a ese proceso son conocidos de forma genérica como Compiladores de Modelos. La capacidad de generar código de forma automática a partir de modelos tiene un gran impacto en la productividad y calidad asociada al proceso de producción de software permitiendo la validación de las aplicaciones, sin coste añadido, reduciendo los tiempos de desarrollo, evitando posibles errores de implementación y permitiendo la reutilización de soluciones a problemas previamente modelados. El paradigma de Desarrollo de Software guiado por Modelos (Model-Driven Development, MDD [1]) propone la definición y uso de modelos a diferentes niveles de abstracción para la especificación de las aplicaciones y entiende el proceso de desarrollo como una secuencia de transformaciones en las que los modelos más abstractos (independientes de plataforma) se van refinando en modelos más concretos (específicos de plataforma) hasta que, en el paso final, se obtiene el código fuente de la aplicación como resultado de la compilación de los modelos concretos. Este nuevo tipo de herramientas CASE (Computer-Aided Software Engineering) proporcionan un conjunto de aplicaciones de soporte para la especificación de las aplicaciones (diseñadores gráficos, validadores, depuradores, etc.), basadas en un conjunto

2 de metamodelos, y compiladores de modelos que permiten la transformación de los modelos para llegar al código fuente. El mayor problema de esta aproximación es la necesidad de implementar un compilador de modelos para cada lenguaje. Además, aún suponiendo que tuviéramos un metamodelo capaz de describir cualquier tipo de aplicación, implementar el compilador de modelos correspondiente sería una tarea tanto o más compleja que la de implementar la propia aplicación y, por tanto, con los mismos problemas de errores en la implementación, baja productividad, calidad y reutilización. Como alternativa, recientemente han aparecido herramientas METACASE para la definición de Lenguajes Específicos de Dominio (Domain Specific Languages, DSL [2]) y generación automática de Factorías de Software (Software Factories [3]). La idea de partida consiste en proporcionar herramientas capaces de definir metamodelos sencillos, especializados en un dominio de aplicación, así como los compiladores de modelos correspondientes, con el objetivo de poder construir de forma automática herramientas CASE especializadas. Dentro de este paradigma se encuentran herramientas como Microsoft DSL Tools [4] o MetaEdit+ [5]. Al trabajar con modelos más específicos, los compiladores de los modelos son más sencillos de implementar. Sin embargo, en los entornos de desarrollo actuales la implementación de los mismos se sigue realizando con lenguajes imperativos específicos para cada herramienta (por ejemplo, C# en el caso de DSL Tools o un lenguaje de scripts propio en MetaEdit+) introduciendo de nuevo los mismos problemas de implementación, costes, etc. En este artículo presentamos MCGen, un entorno para la generación automática de compiladores de modelos que resuelve los problemas mencionados. Partiendo de modelos específicos de domino, expresados en formato XML, y de la gramática del lenguaje destino, MCGen permite definir de forma visual e intuitiva las transformaciones que debe aplicarse para obtener el código fuente asociado a una instancia de un modelo específico de dominio. Para ello, se basa en las relaciones semánticas entre el metamodelo y el lenguaje destino. Como característica adicional, MCGen sigue el paradigma orientado a servicios permitiendo su integración con otros entornos y herramientas, como las actuales herramientas METACASE. El resto del trabajo está estructurado como sigue: la siguiente sección presenta el proceso seguido para la generación del compilador de modelos. La Sección 3 presenta la arquitectura así como las características de cada uno de los componentes. En la sección 4 se expone un caso de estudio. Finalmente, la sección 5 presenta algunas conclusiones y sugiere trabajos futuros. 2. PROCESO DE GENERACIÓN DE LOS COMPILADORES DE MODELOS El objetivo común de todo compilador de modelos es aplicar una función de transformación que toma como entrada una instancia de un metamodelo cualquiera (el modelo origen) y devuelve como resultado el código fuente equivalente (el modelo destino). MCGen es capaz de generar compiladores de modelos para cualquier metamodelo origen y cualquier lenguaje destino cuya gramática sea conocida. Para ello se sigue un proceso en tres etapas: 2

3 especificación de la función de transformación, generación del compilador de modelos y prueba de la transformación. En esta sección presentamos en detalle cada una de las etapas. En la Sección 3 se presentará la arquitectura y los componentes que lo soportan Especificación del metamodelo origen, gramática destino y relaciones semánticas Una función de transformación se define en base a las relaciones semánticas existentes entre el metamodelo origen y la gramática del lenguaje destino. Dado que, a día de hoy, la mayoría de herramientas para la especificación de modelos son capaces de almacenar e importar los modelos en formato XML, MCGen admite cualquier modelo expresado en tal lenguaje. Eso significa, por tanto, que los metamodelos vendrán expresados como esquemas XSD. Por su parte, la sintaxis de un lenguaje de implementación se define mediante una gramática formada por un conjunto de símbolos terminales, que representan fragmentos del código fuente final, y un conjunto de símbolos no-terminales que representan reglas de reescritura al estilo de los lenguajes funcionales. Para poder construir el compilador de modelos, el primer paso consiste en establecer un conjunto de relaciones semánticas de equivalencia entre el metamodelo origen y la gramática destino. Esta es la única tarea que debe realizar el ingeniero de software de forma manual, como explicamos en la sección Generación automática del compilador de modelos Dado que nuestro objetivo es transformar modelos representados en formato XML, los compiladores de modelos creados por MCGen serán plantillas de transformación XSL. Una plantilla XSL está formada por elementos estructurales y elementos de selección de datos. Los primeros permiten construir la estructura del documento destino mientras que los segundos permiten inyectar datos del documento origen en el documento resultado de la transformación. Nótese que, si bien una plantilla XSL se emplea generalmente para transformar un documento XML en otro documento XML, en este caso se va a generar un programa sintácticamente correcto de acuerdo a la gramática del lenguaje destino. La forma en que los elementos del modelo origen se transforman en partes del código fuente depende exclusivamente del tipo de símbolo de la gramática con los que se relacionan, como se verá más adelante Prueba de la transformación Una vez generada la plantilla, MCGen aplica la transformación a una instancia del metamodelo mostrando al usuario el código fuente generado. Esto permite al usuario comprobar si el resultado es el esperado. En caso contrario el usuario tiene la posibilidad de volver al punto inicial. 3. ARQUITECTURA Y COMPONENTES DEL ENTORNO DE TRABAJO El proceso definido en la sección anterior viene soportado por el conjunto de componentes de que consta MCGen. Como se mencionó anteriormente, la única actividad del proceso que 3

4 1 XSDInferer 2 1 Modelo Origen.xml 1 Modelo Origen.xml 2 XPathInferer Servicios Web DSLXSLGenerator y 5 DSLXSMapper 5 Usuario gramar.dll Figura 1 Representación gráfica de la arquitectura y los componentes del entorno de MCGen requiere intervención por parte del usuario es la definición de las relaciones semánticas entre el metamodelo origen y la gramática destino. Para ello, MCGen dispone de una herramienta gráfica para la definición de las relaciones semánticas. Como complemento, tres Servicios Web implementan el resto de actividades automáticas. La Figura 1 muestra los distintos componentes de la arquitectura, que describimos en esta sección. Los números incluidos en la figura definen la secuencia de interacciones que implementan el proceso XSDInferer Es frecuente encontrarse con situaciones en las que los usuarios disponen de modelos instancia ejemplo pero no de los metamodelos correspondientes. Sin embargo, ya hemos comentado que la función de transformación se basa en el esquema XSD del metamodelo origen. El servicio Web XSDInferer * permite obtener de forma automática el metamodelo en formato XSD correspondiente a un modelo instancia dado. XSDInferer toma como entrada un documento XML que representa el modelo origen, y devuelve como resultado un esquema XSD respecto al cual el documento es válido. Para ello, de forma automática, realiza un recorrido secuencial sobre el documento XML, identificando los elementos y atributos que contiene y construyendo las correspondientes etiquetas <xsd:complextype > para cada elemento, <xsd:element > para cada subelemento, y <xsd:attribute > para cada atributo del esquema XSD XPathInferer Las relaciones semánticas entre los símbolos de la gramática y los elementos del metamodelo se almacenan asociando a cada símbolo de la gramática el conjunto de expresiones XPath en las que se encuentran los datos del modelo origen que se emplean para * 4

5 aplicar una determinada regla de transformación. Estas expresiones pueden llegar a ser muy complicadas de calcular, por lo que MCGen incorpora un servicio Web, XPathInferer, capaz de obtener automáticamente el listado de conceptos (elementos y atributos del modelo) y las expresiones XPath en las que aparecen dentro de un documento XML dado. En [6] se explican en detalle los algoritmos empleados para ello. De esta manera, las relaciones semánticas que definen la transformación están compuestas por relaciones entre los conceptos del metamodelo origen y los símbolos de la gramática destino, ocultando al usuario la complejidad de las expresiones XPath Biblioteca Gramar Una gramática, como ya se ha comentado, está formada por un conjunto de símbolos terminales, que representan el código fuente, y un conjunto de no-terminales que representan las reglas reescritura. Los terminales pueden ser de dos tipos: conceptos o texto. Los conceptos representan valores de elementos o atributos del modelo origen, y los de tipo texto representan cadenas de caracteres constantes. Los no-terminales pueden ser de dos tipos: reglas o enumeraciones. La diferencia entre las reglas y las enumeraciones radica en que las primeras se aplican a un solo elemento del modelo origen, mientras que las enumeraciones permiten transformar un conjunto de elementos. Dado que los elementos de una enumeración pueden ser heterogéneos, se definen distintos formatos de enumeración para cada tipo de elemento a transformar. Opcionalmente, tanto las reglas como las enumeraciones pueden venir condicionadas por cláusulas de navegación (campos where). MCGen proporciona una biblioteca de clases para la construcción de las gramáticas de forma sencilla. Esta biblioteca de clases se ha representado en la Figura 1 con el nombre gramar.dll DSLXSLGenerator El servicio Web DSLXSLGenerator permite obtener automáticamente la plantilla XSL que implementa el compilador de modelos partiendo de las relaciones semánticas. La forma en que los modelos origen se transforman en el código fuente depende exclusivamente del tipo de símbolo de la gramática que los representa. Para los símbolos terminales, se inyectarán los valores en el código. Para los no-terminales, se aplicarán las reglas de reescritura recursivamente. Los terminales de tipo texto no se enlazan, ya que no toman datos del modelo origen, y simplemente inyectan texto constante en la plantilla. El Algoritmo 1 describe la construcción de la plantilla XSL DSLXSMapper DSLXSMapper es la herramienta gráfica que permite definir la gramática y establecer las relaciones semánticas con el metamodelo origen. Además, se encarga de soportar el proceso 5

6 1) Partiendo de un documento XML vacío se añade una cabecera stylesheet para indicar que se trata de una plantilla XSL: <xsl:stylesheet version="1.0" xmlns:xsl=http://www.w3.org/1999/xsl/transform> 2) Se añade un elemento output para indicar que el resultado de la transformación será de tipo textual: <xsl:output method="text"/>. A continuación, partiendo de la regla raíz 3) Se añade un elemento template. El atributo match toma como valor la ruta en la que se encuentran los datos del modelo origen a inyectar en el código fuente y el atributo mode el nombre del símbolo: <xsl:template match="ruta" mode="nombre "> 4) Se añaden elementos para cada símbolo en los que se descompone la regla: a. Para símbolos de tipo texto, un elemento text con el contenido de la cadena: <xsl:text>texto_constante_a_inyectar</xsl:text> b. Para conceptos, un elemento value-of con atributo select con la ruta/s en las que se encuentran los datos del modelo origen contextualizadas en función del valor del atributo match de la template (rutas relativas). En caso de haber definido una cláusula where de navegación se añadirá a la ruta entre corchetes: <xsl:value-of select="ruta_de_los_datos_contextualizada[cláusula_where]"/> c. Para reglas, un elemento apply-templates con atributo select con valor de la ruta, igual que en los conceptos, y atributo mode con el nombre de la regla. Recursivamente se aplica el algoritmo desde el punto 3 para cada símbolo en los que se descompone: <xsl:apply-templates select="ruta[cláusula]" mode="nombre "> d. Para enumeraciones, un apply-templates igual que en el caso de las reglas. Además, un template igual que en el punto 3 con un elemento choose que representa los distintos formatos de enumeración en elementos when donde el atributo test contiene la condición del formato de enumeración y un apply-templates. Recursivamente se volverá al punto 3 para cada símbolo sobre el que se reescribe cada uno de los formatos de enumeración <xsl:choose> <xsl:when test="condición"> un when por cada formato <xsl:apply-templates > </xsl:when> </xsl:choose> Algoritmo 1 Construcción de la plantilla XSL que representa el compilador de modelos completo de desarrollo de los compiladores de modelos invocando los distintos servicios Web de forma transparente al usuario. La parte izquierda de la Figura 2 muestra una captura de pantalla tomada durante la definición de la gramática que utilizaremos en el caso de estudio presentado en la siguiente sección. La interfaz está compuesta por un conjunto de botones, que representan cada una de los símbolos de la gramática, donde cada tipo de símbolo se identifica por un color distinto, y un conjunto de botones constructores identificados por tres puntos ( ). Figura 2 Capturas de pantalla de la herramienta durante la definición de la gramática destino y definición de las relaciones semánticas entre los conceptos del modelo origen y los símbolos de la gramática 6

7 Al pulsar sobre un botón, aparece un menú contextual que permite modificar las propiedades del símbolo (para los botones de símbolos) o añadir nuevos símbolos a la gramática (para los constructores). Los menús contextuales dependen del tipo de símbolo, y permiten mostrar formularios para la especificación de sus propiedades. Por ejemplo, para las reglas se debe especificar el nombre de la regla, los conceptos del metamodelo origen con los que se relacionan semánticamente y las clausulas where a aplicar; para los símbolos de tipo texto, se indica el texto a inyectar; y para el resto de elementos se actúa de forma similar. A modo de ejemplo, en la parte derecha de la Figura 2 se muestra el formulario para la definición de una regla. Obsérvese que los conceptos del metamodelo origen se presentan al usuario junto con las expresiones XPath de forma automática, sin que el usuario tenga que teclear las expresiones manualmente. La herramienta también permite almacenar y recuperar definiciones de gramáticas. En la siguiente sección presentamos un caso de estudio en el que se realiza el proceso completo de generación de un compilador de modelos. 4. CASO DE ESTUDIO: DE ESQUEMA RELACIONAL A SQL Como caso de estudio se ha escogido un ejemplo típico en el campo de la transformación de modelos y compilación automática consistente en obtener el código SQL correspondiente a un esquema relacional. El modelo origen, el esquema relacional de la base de datos, se expresa como instancia del metamodelo representado en la parte izquierda de la Figura 3. La clase abstracta RModelElement representa los campos comunes a todos los símbolos del esquema relacional donde name representa el nombre del símbolo y es de tipo cadena. La clase Schema representa el esquema relacional completo, el cual está formado por un conjunto de tablas representadas por la clase Table. Cada tabla está formada por un conjunto de columnas, un conjunto de claves y un conjunto de claves ajenas, respectivamente Column, Key y Figura 3 Representación gráfica del metamodelo y modelo de ejemplo propuestos. 7

8 ForeignKey. Las claves hacen referencia a columnas de la tabla y las claves ajenas hacen referencia a columnas de la tabla y a una clave de la tabla a la que referencian. Por último, el campo type de las columnas representa el tipo de datos que contendrán. Este metamodelo puede representarse con un esquema XSD (disponible, como el resto de esquemas y documentos mencionados en esta sección, en Como ejemplo instancia del metamodelo propuesto se ha utilizado el modelo de esquema relacional representado en la parte derecha de la Figura 3. Este modelo está formado por tres tablas: Order, Item y USAddress. Cada tabla está formada por un conjunto de columnas con sus respectivos tipos de datos. Además, existe una clave para cada tabla y tres claves ajenas, dos que relacionan la tabla Order con la tabla USAddress y una que relaciona la tabla Item con la tabla Order. Este modelo está almacenado en formato XML. Por otra parte, como lenguaje destino se ha escogido un subconjunto del lenguaje SQL que permite crear la base de datos correspondiente a cualquier modelo instancia del metamodelo propuesto. Este lenguaje se especifica con la gramática de la Figura 4. En la figura, la regla raíz se ha representado en negrita y subrayado, las reglas se representan subrayadas, las enumeraciones en cursiva con los formatos entre paréntesis, los textos entre comillas dobles con el texto simple en negrita y los símbolos en cursiva, los conceptos en negrita y las distintas alternativas en las reescrituras separadas por el símbolo. Es importante mencionar que, aunque primarykeycolumns, foreignkeycolumns y foreignkeyprimarykeycolumns se reescriben al mismo término (columns), no representan el mismo concepto semántico y por tanto deben ser reglas distintas. Esto nos permite enlazarlos correctamente con los conceptos del modelo origen al definir la función de transformación. Las símbolos y representan el carácter salto de línea y tabulación respectivamente. Haciendo uso de DSLXSMapper se puede construir gráficamente, y de forma incremental, la gramática estableciendo las relaciones semánticas con el metamodelo origen (representadas en la parte izquierda de la Figura 5). Figura 4 Gramática para los scripts SQL resultado de la compilación de los modelos 8

9 Figure 5 Relaciones semánticas y resultado de la transformación Una vez definida la gramática y las relaciones semánticas, pulsando el botón END de la interfaz se invoca el servicio Web DSLXSLGenerator para obtener automáticamente la plantilla de transformación XSL. La Figura 6 muestra un fragmento de la plantilla XSL resultante. En la última fase, DSLXSMapper prueba la plantilla generada sobre el modelo instancia, obteniendo el resultado mostrado en la parte derecha de la Figura 5. Figure 6 Fragmento de la plantilla XSL que representa el compilador de modelos 9

10 5. CONCLUSIONES Y TRABAJOS FUTUROS En este trabajo se ha presentado MCGen, un entorno para la generación automática de compiladores de modelos basados en plantillas de transformación XSL. Con nuestro enfoque se reducen drásticamente los costes de implementación de los compiladores, cuello de botella de las aproximaciones actuales para el desarrollo de software basado en factorías y MDD. El hecho de poder generar automáticamente la plantilla, sin coste adicional, facilita la construcción incremental de los compiladores de modelos permitiendo realizar pruebas a medida que se va construyendo la gramática para comprobar que se obtiene el resultado esperado, mejorando aún más la calidad del resultado. La aproximación basada en el uso de conceptos semánticos permite abstraer los detalles estructurales del formato de almacenamiento de los modelos origen, permitiendo al ingeniero de software centrarse en la definición de la función de trasformación de conceptos en fragmentos del código fuente. Como trabajo futuro se plantea incorporar ontologías que permitan automatizar más el proceso así como hacer uso de las funciones de transformación de los lenguajes XSLT y XPath para permitir transformaciones sobre los valores (por ejemplo, concatenación o subcadenas). Gracias a la implementación de los componentes como servicios Web, todo el proceso de generación se realiza en un servidor. Esto nos permite construir un catálogo de transformaciones y relaciones semánticas entre metamodelos y lenguajes de programación que permitirá en un futuro automatizar aún más el proceso infiriendo automáticamente, o al menos sugiriendo las relaciones semánticas que servirán como guía al diseñador. Por otra parte, la orientación a servicios hace que la solución sea independiente de plataforma y fácil de integrar en otros entornos o herramientas, como por ejemplo las herramientas METACASE o los graficadores de metamodelos existentes en el mercado. Así, está previsto integrar el entorno presentado en este artículo en un ambiente software para la generación automática de herramientas gráficas que den soporte a la especificación de modelos basados en metamodelos específicos de dominio. Esto completa el ciclo de desarrollo de herramientas CASE específicas de dominio consiguiendo una aproximación totalmente automatizada. REFERENCIAS [1] Stuart Kent, Model Driven Engineering, LNCS 2335, [2] Marjan Mernik, Jan Heering y Anthony M. Sloane. When and how to develop domainspecific languages. ACM Computing Surveys, 37(4): , [3] Jack Greenfield, Keith Short, Steve Cook y Stuart Kent, Software Factories, Assembling Applications with Patterns, Models, Frameworks and Tools. Wiley [4] Microsoft Visual Studio 2005 Domain-Specific Language Tools, [5] Domain Specific Modeling with MetaEdit+. [6] Manuel Llavador, José H. Canós, Un entorno para la generación semiautomática de plantillas de transformación entre documentos XML, Proyecto Final de Carrera, Facultad de Informática de la Universidad Politécnica de Valencia

Transformación de documentos : XSLT

Transformación de documentos : XSLT Transformación de documentos : XSLT XSL : Lenguaje Extensible de Hojas de Estilo, cuyo objetivo principal es mostrar cómo debería estar estructurado el contenido, cómo debería ser diseñado el contenido

Más detalles

extensible Markup Language (XML)

extensible Markup Language (XML) extensible Markup Language (XML) 1. INTRODUCCIÓN Jennifer Pérez Benedí Departamento de Sistemas Informáticos y Computación Universidad Politécnica de Valencia C/Camino de Vera s/n E-46071 Valencia- España

Más detalles

Ingeniería inversa de GUIs

Ingeniería inversa de GUIs Ingeniería inversa de GUIs Existen numerosos sistemas en funcionamiento que fueron desarrollados en los años 90 utilizando entornos RAD (Rapid Application Development), tales como Delphi, Visual Basic

Más detalles

Software Reutilizable. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 18 Slide 1

Software Reutilizable. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reutilizable Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 18 Slide 1 Objetivos Para explicar los beneficios del software reutilizable y algunos de sus problemas Para discutir

Más detalles

Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad de Cádiz

Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad de Cádiz Procesadores de Lenguajes 2 Lenguajes Específicos de Dominio Curso 2013-2014 Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad de Cádiz 17/10/13 PL2 - Lenguajes

Más detalles

5.1 Introducción a XSL

5.1 Introducción a XSL 5.1 Introducción a XSL Añadir Forma al Contenido (I)! Un documento XML que cumple las normas del dialecto ListaML:

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

Instituto Superior Politécnico José Antonio Echeverría Facultad de Ingeniería Informática

Instituto Superior Politécnico José Antonio Echeverría Facultad de Ingeniería Informática Instituto Superior Politécnico José Antonio Echeverría Facultad de Ingeniería Informática COMPONENTE PARA LA TRANSFORMACIÓN A ESTÁNDARES DE MODELOS DE PROCESOS DE NEGOCIO. MODELOS DE LA BPMS BONITA Informe

Más detalles

Estimación de Líneas de Código Orientada a Plantillas de Código Fuente

Estimación de Líneas de Código Orientada a Plantillas de Código Fuente Estimación de Líneas de Código Orientada a Plantillas de Código Fuente Mario R. MORENO SABIDO Depto. de Sistemas y Computación, Instituto Tecnológico de Mérida Mérida, Yucatán 97118, México y Jorge BAROUDI

Más detalles

DISEÑO E IMPLEMENTACIÓN DE UNA BASE DE DATOS PARA LA ONG ASEM

DISEÑO E IMPLEMENTACIÓN DE UNA BASE DE DATOS PARA LA ONG ASEM Universidad Carlos III de Madrid Escuela Politécnica Superior DISEÑO E IMPLEMENTACIÓN DE UNA BASE DE DATOS PARA LA ONG ASEM 1 Pablo Burgos Escribano Tutor: José María Sierra Cámara Ingeniería Técnica en

Más detalles

Access 2013. Ministerio de Educación, Cultura y Deporte SERIE OFIMÁTICA COLECCIÓN AULA MENTOR. CamSo SGALV

Access 2013. Ministerio de Educación, Cultura y Deporte SERIE OFIMÁTICA COLECCIÓN AULA MENTOR. CamSo SGALV Access 2013 Ministerio de Educación, Cultura y Deporte COLECCIÓN AULA MENTOR SERIE OFIMÁTICA CamSo SGALV Access 2013 Ofimática Catálogo de publicaciones del Ministerio: www.educacion.gob.es Catálogo

Más detalles

Desarrollo de software para navegación web desde terminales celulares de 3ª generación

Desarrollo de software para navegación web desde terminales celulares de 3ª generación Desarrollo de software para navegación web desde terminales celulares de 3ª generación Registro SIP 2008-0796 Resumen Como parte de un Programa generador de páginas web para celulares, se desarrolló un

Más detalles

La importancia del desarrollo para el buen diseño del software

La importancia del desarrollo para el buen diseño del software La importancia del desarrollo para el buen diseño del software RESUMEN N L González Morales. 1 En este ensayo se examinan los temas vistos en clase que son Desarrollo de Orientado a Objetos y Arquitectura

Más detalles

Comparativa de herramientas para la enseñanza de lenguajes relacionales

Comparativa de herramientas para la enseñanza de lenguajes relacionales Comparativa de herramientas para la enseñanza de lenguajes relacionales Javier J. Gutiérrez, María J. Escalona, Darío Villadiego, Manuel Mejías Dpto. de Lenguajes y sistemas Informáticos Universidad de

Más detalles

Visual COBOL R3 LIBERTAD. ELECCIÓN. MÁS COBOL SIN LÍMITES

Visual COBOL R3 LIBERTAD. ELECCIÓN. MÁS COBOL SIN LÍMITES Visual COBOL R3 LIBERTAD. ELECCIÓN. MÁS COBOL SIN LÍMITES COBOL ha evolucionado y se libera de sus limitaciones COBOL es el motor que impulsa las modernas aplicaciones empresariales y financieras en todo

Más detalles

UML, ejemplo sencillo sobre Modelado de un Proyecto

UML, ejemplo sencillo sobre Modelado de un Proyecto UML, ejemplo sencillo sobre Modelado de un Proyecto Normal &DOLILFDU 0L3DQRUDPD 626 (VFULEHSDUD1RVRWURV Por Armando Canchala Contenido Introducción Objetivo Requerimientos Casos de Uso Subcasos de Uso

Más detalles

SIOM-Interfaz AM Manual de Usuario

SIOM-Interfaz AM Manual de Usuario SIOM-Interfaz AM Manual de Usuario Alfonso XI, 6 28014 Madrid F(+34) 91 524 03 96 www.omie.es Ref. MU_InterfazAM.docx Versión 4.0 Fecha: 2012-11-26 ÍNDICE 1 INTRODUCCIÓN 3 2 REQUISITOS PREVIOS 4 2.1 COMPONENTES

Más detalles

PROCESADORES DE LENGUAJES I PRÁCTICA DE LABORATORIO 7

PROCESADORES DE LENGUAJES I PRÁCTICA DE LABORATORIO 7 PROCESADORES DE LENGUAJES I PRÁCTICA DE LABORATORIO 7 En esta práctica veremos cómo aplicar transformaciones XSLT a documentos XML. Esta tecnología nos permite hacer algo similar a lo que ya hicimos en

Más detalles

Hojas de Estilos XSLT en el aula. Nieves Carralero Colmenar I.E.S Ramón y Cajal. Albacete ncarralero@jccm.es

Hojas de Estilos XSLT en el aula. Nieves Carralero Colmenar I.E.S Ramón y Cajal. Albacete ncarralero@jccm.es Hojas de Estilos XSLT en el aula Nieves Carralero Colmenar I.E.S Ramón y Cajal. Albacete ncarralero@jccm.es Resumen Según la Orden EDU/2887/2010, de 2 de noviembre, por la que se establece el currículo

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

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

PROCESO UNIFICADO CAPTURA DE REQUISITOS

PROCESO UNIFICADO CAPTURA DE REQUISITOS PROCESO UNIFICADO CAPTURA DE REQUISITOS El proceso unificado de desarrollo, Ivar Jacobson, Grady Booch, James Rumbaugh, Ed. Addison Wesley, 1999 The unified software development process, Ivar Jacobson,

Más detalles

Modelización y diseño interactivo de interfaces con estructura dinámica

Modelización y diseño interactivo de interfaces con estructura dinámica Modelización y diseño interactivo de interfaces con estructura dinámica P. Castells, F. Saiz, R. Moriyón, F. García E.T.S. de Informática, Universidad Autónoma de Madrid Ctra. de Colmenar Viejo km. 17,

Más detalles

TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS

TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS 1 1 BASES DE DATOS DISTRIBUIDAS TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS 3.1 Metodología del procesamiento de consultas distribuidas 3.2 Estrategias de

Más detalles

Curso de Programación Web en Entorno Servidor

Curso de Programación Web en Entorno Servidor Curso de Programación Web en Entorno Servidor TITULACIÓN DE FORMACIÓN CONTINUA BONIFICADA EXPEDIDA POR EL INSTITUTO EUROPEO DE ESTUDIOS EMPRESARIALES Curso de Programación Web en Entorno Servidor Curso

Más detalles

M. Carmen Fernández Panadero

M. Carmen Fernández Panadero <mcfp@it.uc3m.es> Introducción n a XML M. Carmen Fernández Panadero Introducción a XML 1 Objetivos Familiarizarse con conceptos y herramientas básicas de XML Conocer la estructura de un documento XML Ser capaz de diseñar

Más detalles

DISEÑO DE UN CURSO INTERACTIVO Y ADAPTATIVO DE PROCESADORES DE LENGUAJES

DISEÑO DE UN CURSO INTERACTIVO Y ADAPTATIVO DE PROCESADORES DE LENGUAJES Alfonseca, M., Carro, R.M., Pulido, E. and Rodríguez, P. (2000): Diseño de un curso interactivo y adaptativo de procesadores de lenguajes. Proceedings of JENUI 2000: VI Jornadas sobre la Enseñanza Universitaria

Más detalles

Análisis de esquemas XML [1]

Análisis de esquemas XML [1] Análisis de esquemas XML [1] Dirigido a: Administradores de Bases de Datos Área: Bases de Datos Autor: Pablo F. Dueñas Servicios Profesionales Danysoft Resumen Un esquema XML describe la estructura de

Más detalles

Programación: QBASIC

Programación: QBASIC 1. QBASIC Programación: QBASIC Guía del alumno Qbasic es una versión moderna del lenguaje BASIC. Se trata de un lenguaje de alto nivel. En un lenguaje de alto nivel las instrucciones tienen un formato

Más detalles

El modelo de casos de uso. Ingeniería de la Programación

El modelo de casos de uso. Ingeniería de la Programación El modelo de casos de uso Ingeniería de la Programación Prácticas cas 1 Contenidos Introducción RF y RNF Introducción al modelo de RF de UML. Actores y Casos de Uso Modelo de casos de uso Diagrama de contexto

Más detalles

Ministerio de Educación. Base de datos en la Enseñanza. Open Office. Módulo 6: Iniciación a SQL

Ministerio de Educación. Base de datos en la Enseñanza. Open Office. Módulo 6: Iniciación a SQL Ministerio de Educación Base de datos en la Enseñanza. Open Office Módulo 6: Iniciación a SQL Instituto de Tecnologías Educativas 2011 Iniciación al lenguaje estructurado de consultas (SQL) El lenguaje

Más detalles

Diseño de páginas web

Diseño de páginas web Diseño de páginas web Formularios Ricardo Esteban Alonso Insertar Formularios (1) Permiten que el visitante envíe información al servidor web, que la procesa y la almacena o bien se nos envía a través

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

DESCRIPCIÓN FUNCIONAL API XBRL-PGC2007

DESCRIPCIÓN FUNCIONAL API XBRL-PGC2007 DESCRIPCIÓN FUNCIONAL API XBRL-PGC2007 ADAPTACIÓN DEL MÓDULO DE SOFTWARE DE TRATAMIENTO DE INFORMES XBRL A LA NUEVA VERSIÓN DE LA TAXONOMÍA PGC2007 (V1.4.1) Noviembre 2011 ÍNDICE 1. INTRODUCCIÓN 2. DESCRIPCIÓN

Más detalles

Guía del Curso Analista Programador PHP Javascript

Guía del Curso Analista Programador PHP Javascript Guía del Curso Analista Programador PHP Javascript Modalidad de realización del curso: Número de Horas: Titulación: Online 180 Horas Diploma acreditativo con las horas del curso OBJETIVOS UML usa técnicas

Más detalles

http://en.wikipedia.org/wiki/edgar_f._codd

http://en.wikipedia.org/wiki/edgar_f._codd 26/03/2012 1 http://en.wikipedia.org/wiki/edgar_f._codd Codd estableció los fundamentos del modelo relacional en el artículos de 1970 "A Relational Model of Data for Large Shared Data Banks". En adelante,

Más detalles

XML Schema. Sergio Luján Mora. sergio.lujan@ua.es http://gplsi.dlsi.ua.es/~slujan/

XML Schema. Sergio Luján Mora. sergio.lujan@ua.es http://gplsi.dlsi.ua.es/~slujan/ XML Schema Sergio Luján Mora sergio.lujan@ua.es http://gplsi.dlsi.ua.es/~slujan/ 1 XML SCHEMA... 3 Introducción... 3 Ventajas... 3 Qué necesito para usar XML Schema... 4 Diseño de un documento XML... 5

Más detalles

CAPÍTULO 4 IMPLEMENTACIÓN DE SARP. Este capítulo describe los detalles de la implementación de SARP. Una vez explicado el

CAPÍTULO 4 IMPLEMENTACIÓN DE SARP. Este capítulo describe los detalles de la implementación de SARP. Una vez explicado el CAPÍTULO 4 IMPLEMENTACIÓN DE SARP Este capítulo describe los detalles de la implementación de SARP. Una vez explicado el diseño del sistema SARP (ver Capítulo 3) es posible realizar su implementación.

Más detalles

Microsoft Access 2007 (Completo)

Microsoft Access 2007 (Completo) Microsoft Access 2007 (Completo) Descripción del funcionamiento del programa de gestión de bases de datos Microsoft Access 2007, estudiando los conceptos fundamentales de las bases de datos: desde su análisis

Más detalles

MICROSOFT ACCESS 2003

MICROSOFT ACCESS 2003 MICROSOFT ACCESS 2003 1. AVANZADO Nº Horas: 18 Objetivos: Curso en el que se estudian los tipos de objetos consulta, formulario e informe: cuál es su papel, cuándo se utilizan, etc. Se detalla el diseño

Más detalles

VAST: Manual de usuario. Autores: Francisco J. Almeida-Martínez Jaime Urquiza-Fuentes

VAST: Manual de usuario. Autores: Francisco J. Almeida-Martínez Jaime Urquiza-Fuentes VAST: Manual de usuario Autores: Francisco J. Almeida-Martínez Jaime Urquiza-Fuentes Índice general Índice general 2 1. Introducción 4 2. Representación intermedia del AST 5 2.1. Funcionamiento del VAST

Más detalles

Anuncio de software de IBM Europe, Middle East and Africa ZP09-0157, con fecha 2 de junio de 2009

Anuncio de software de IBM Europe, Middle East and Africa ZP09-0157, con fecha 2 de junio de 2009 ZP09-0157, con fecha 2 de junio de 2009 La gama IBM Optim ya es compatible con el desarrollo de bases de datos de Oracle: las soluciones de administración se han ampliado y se ha mejorado la integración

Más detalles

MICROSOFT ACCESS 2010

MICROSOFT ACCESS 2010 MICROSOFT ACCESS 2010 1. BÁSICO Nº Horas: 24 Objetivos: Introducción a la suite ofimática Microsoft Office 2010 y se introducen los conceptos de análisis y diseño de bases de datos relacionales y cómo

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

Analista Programador en Visual Basic 2012 (VB.NET 2012)

Analista Programador en Visual Basic 2012 (VB.NET 2012) Analista Programador en Visual Basic 2012 (VB.NET 2012) Titulación certificada por EUROINNOVA BUSINESS SCHOOL Analista Programador en Visual Basic 2012 (VB.NET 2012) Analista Programador en Visual Basic

Más detalles

ESQUEMAS INTRODUCCION A LA VALIDACIÓN DE DOCUMENTOS MEDIANTE ESQUEMAS. 7.3 Partes importantes de los esquemas. 7.3.4 Repeticiones de elementos

ESQUEMAS INTRODUCCION A LA VALIDACIÓN DE DOCUMENTOS MEDIANTE ESQUEMAS. 7.3 Partes importantes de los esquemas. 7.3.4 Repeticiones de elementos Apuntes básicos del Tema 7 ESQUEMAS INTRODUCCION A LA VALIDACIÓN DE DOCUMENTOS MEDIANTE ESQUEMAS Contenidos: 7.0 Introducción y definición 7.1 Comenzando con un ejemplo 7.2 Introducción a los namespace

Más detalles

Comentario sobre el entorno de desarrollo Microsoft Visual Studio 2005 Juan Manuel Lucas

Comentario sobre el entorno de desarrollo Microsoft Visual Studio 2005 Juan Manuel Lucas Comentario sobre el entorno de desarrollo Microsoft Visual Studio 2005 Juan Manuel Lucas Introducción El entorno de desarrollo Visual Studio 2005 o 2008 es una potente herramienta desarrollada por Microsoft

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

XMLSpy. Manual de usuario. www.ejie.es

XMLSpy. Manual de usuario. www.ejie.es XMLSpy Manual de usuario Fecha: 31/08/2007 Referencia: EJIE S.A. Mediterráneo, 3 Tel. 945 01 73 00* Fax. 945 01 73 01 01010 Vitoria-Gasteiz Posta-kutxatila / Apartado: 809 01080 Vitoria-Gasteiz www.ejie.es

Más detalles

B.1 Checklist: evaluación heurística del producto software

B.1 Checklist: evaluación heurística del producto software Apéndice B Plantillas En las siguientes secciones se describen las plantillas textuales necesarias para la descripción de los documentos empleados en OPSOA. B.1 Checklist: evaluación heurística del producto

Más detalles

ACCESS 2010 OFIMÁTICA AULA MENTOR

ACCESS 2010 OFIMÁTICA AULA MENTOR ACCESS 2010 OFIMÁTICA AULA MENTOR Módulo I: Introducción UNIDADES DIDÁCTICAS: 1. Unidad didáctica 1 2 Introducción a las Bases de Datos 2. Unidad didáctica 2 10 Comenzar a trabajar con Access Página 1

Más detalles

SQL Server Business Intelligence parte 1

SQL Server Business Intelligence parte 1 SQL Server Business Intelligence parte 1 Business Intelligence es una de las tecnologías de base de datos más llamativas de los últimos años y un campo donde Microsoft ha formado su camino a través de

Más detalles

Administración Local Soluciones

Administración Local Soluciones SISTEMA INTEGRADO DE GESTIÓN DE EXPEDIENTES MODULAR (SIGM) MANUAL DE USUARIO DEL CATÁLOGO DE PROCEDIMIENTOS SIGM v3 Administración Local Soluciones Control de versiones Versión Fecha aprobación Cambio

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

Capítulo 4 Implementación

Capítulo 4 Implementación Capítulo 4 Implementación Este capítulo describe los detalles de implementación del sistema. La sección 4.1 habla sobre las herramientas utilizadas y detalla la arquitectura para la implementación de ATEXEM.

Más detalles

XML. Escuela Técnica Superior de Ingeniería de Telecomunicación Universidad Rey Juan Carlos. Marzo de 2016. gsyc-profes (arroba) gsyc.urjc.

XML. Escuela Técnica Superior de Ingeniería de Telecomunicación Universidad Rey Juan Carlos. Marzo de 2016. gsyc-profes (arroba) gsyc.urjc. XML Escuela Técnica Superior de Ingeniería de Telecomunicación Universidad Rey Juan Carlos gsyc-profes (arroba) gsyc.urjc.es Marzo de 2016 GSyC - 2016 XML 1 c 2016 GSyC Algunos derechos reservados. Este

Más detalles

Aplicaciones Distribuidas con Visual Studio 2005

Aplicaciones Distribuidas con Visual Studio 2005 Aplicaciones Distribuidas con Visual Studio 2005 24.10.2006 Servicios Profesionales Danysoft Ahora los arquitectos en.net disponen de una versión de Visual Studio especialmente creada para atender sus

Más detalles

Figura 4.1 Clasificación de los lenguajes de bases de datos

Figura 4.1 Clasificación de los lenguajes de bases de datos 1 Colección de Tesis Digitales Universidad de las Américas Puebla Romero Martínez, Modesto Este capítulo describen los distintos lenguajes para bases de datos, la forma en que se puede escribir un lenguaje

Más detalles

SIOM-Interfaz AM. Manual de Usuario. Operador del Mercado Ibérico de Energía - Polo Español Alfonso XI, 6 28014 Madrid. Versión 3.10 Fecha: 2010-09-17

SIOM-Interfaz AM. Manual de Usuario. Operador del Mercado Ibérico de Energía - Polo Español Alfonso XI, 6 28014 Madrid. Versión 3.10 Fecha: 2010-09-17 SIOM-Interfaz AM Manual de Usuario Operador del Mercado Ibérico de Energía - Polo Español Alfonso XI, 6 28014 Madrid Versión 3.10 Fecha: 2010-09-17 Ref : MU_InterfazAM_310.doc ÍNDICE 1 INTRODUCCIÓN...

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

PROYECTO SMART DESARROLLO SISTEMA GESTOR DE CONTENIDOS Y SERVIDOR DE ENTREGA DE CONTENIDOS DESCRIPCIÓN DE LA ARQUITECTURA

PROYECTO SMART DESARROLLO SISTEMA GESTOR DE CONTENIDOS Y SERVIDOR DE ENTREGA DE CONTENIDOS DESCRIPCIÓN DE LA ARQUITECTURA ESTRATEGIA 2011-2015 SUBPROGRAMA COMPETITIVIDAD I+D PROYECTO SMART DESARROLLO SISTEMA GESTOR DE CONTENIDOS Y SERVIDOR DE ENTREGA DE CONTENIDOS DESCRIPCIÓN DE LA ARQUITECTURA ÍNDICE 1 DESARROLLO SISTEMA

Más detalles

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

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

Más detalles

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

construcción de programas Prof. Eliana Guzmán U.

construcción de programas Prof. Eliana Guzmán U. Unidad II. Metodología para la construcción de programas Prof. Eliana Guzmán U. Semestre: A-2015 Introducción Resolver un problema con una computadora conduce a la escritura de un programa y a su ejecución.

Más detalles

Interacción y manejo de documentos XML.

Interacción y manejo de documentos XML. Interacción y manejo de documentos XML. Como último miembro de la familia XML, nos planteamos la tecnología por la cual una aplicación externa, escrita en no importa que lenguaje de programación, puede

Más detalles

PWSP Manual de Usuario

PWSP Manual de Usuario PWSP Manual de Usuario Plataforma de Servicios Web del Grupo PentaSoft Febrero 2007 http://ws.pentasoft.es http://ws.test.pentasoft.es PWSP PentaSoft Web Services Platform es un producto registrado de

Más detalles

XML y XQuery. Qué es XML? Qué es XML? (II) Ejemplo de fichero XML. Cuerpo de un documento XML. Estructura de un documento XML

XML y XQuery. Qué es XML? Qué es XML? (II) Ejemplo de fichero XML. Cuerpo de un documento XML. Estructura de un documento XML Qué es XML? XML y XQuery BDSI 2008/09 Rafael Caballero Conjunto de reglas para definir lenguajes de marcado específicos No se trata de un lenguaje, sino de un metalenguaje XML no es: HTML: : Lenguaje de

Más detalles

Sistemas de Información 12/13 XML (extensible Mark-up Language)

Sistemas de Información 12/13 XML (extensible Mark-up Language) 12/13 XML (extensible Mark-up Language) Departamento Informática e Ingeniería de Sistemas Universidad de Zaragoza (raqueltl@unizar.es) " Guión Introducción Ejemplos Documentos vs apliaciones XML Espacios

Más detalles

Tecnología Multimedia

Tecnología Multimedia Tecnología Multimedia Profesor Coordinador: Manuel Castro Antonio Colmenar, UNED Profesores de la asignatura: Manuel Castro, UNED Lenguajes de Marcado Índice LENGUAJES DE MARCADO... 3 Lenguajes de marcado

Más detalles

Práctica Java POJO de Integración de Sistemas Tienda de Comercio Electrónico

Práctica Java POJO de Integración de Sistemas Tienda de Comercio Electrónico Práctica Java POJO de Integración de Sistemas Tienda de Comercio Electrónico Curso académico 2008-2009 1 Introducción La práctica de Integración de Sistemas consistirá en el diseño e implementación de

Más detalles

MODELO DE EGOVERNMENT PARA LA ADMINISTRACIÓN LOCAL BASADO EN LA INTEROPERABILIDAD

MODELO DE EGOVERNMENT PARA LA ADMINISTRACIÓN LOCAL BASADO EN LA INTEROPERABILIDAD MODELO DE EGOVERNMENT PARA LA ADMINISTRACIÓN LOCAL BASADO EN LA INTEROPERABILIDAD Francisco Tous Llull, Antoni Reus Darder, Felip Salas Suau Fundació Illes Balears per la Innovació Tecnològica (IBIT) Parc

Más detalles

Analista Programador MySQL

Analista Programador MySQL TITULACIÓN DE FORMACIÓN CONTINUA BONIFICADA EXPEDIDA POR EL INSTITUTO EUROPEO DE ESTUDIOS EMPRESARIALES Analista Programador MySQL Duración: 360 horas Precio: 0 * Modalidad: Online * hasta 100 % bonificable

Más detalles

Altova XMLSpy 2016. Fecha de publicación: 2015. 2015 Altova GmbH

Altova XMLSpy 2016. Fecha de publicación: 2015. 2015 Altova GmbH Tutorial Todos los derechos reservados. Ningún fragmento de esta publicación podrá ser reproducido de manera alguna (ya sea de forma gráfica, electrónica o mecánica, fotocopiado, grabado o reproducido

Más detalles

Diagramas de Clase en UML 1.1

Diagramas de Clase en UML 1.1 Diagramas de Clase en UML. Francisco José García Peñalvo Licenciado en Informática. Profesor del Área de Lenguajes y Sistemas Informáticos de la Universidad de Burgos. fgarcia@.ubu.es Carlos Pardo Aguilar

Más detalles

Diseño orientado a los objetos

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

Más detalles

TEMA 35: Estándares SGML y XML. Entornos de aplicación.

TEMA 35: Estándares SGML y XML. Entornos de aplicación. Entornos de aplicación TEMA 35: Estándares SGML y. Entornos de aplicación. Índice 1 INTRODUCCIÓN 1 2 SGML 2 2.1 Cómo funciona SGML? 2 2.2 Definición de la sintaxis de un lenguaje SGML 3 2.3 Declaración

Más detalles

Arquitectura para análisis de información. Zombi es una arquitectura que proporciona de manera integrada los componentes

Arquitectura para análisis de información. Zombi es una arquitectura que proporciona de manera integrada los componentes Capítulo 4 Arquitectura para análisis de información propuesta 4.1 Arquitectura Zombi es una arquitectura que proporciona de manera integrada los componentes necesarios para el análisis de información

Más detalles

Transformación de documentos XML con

Transformación de documentos XML con Transformación de documentos XML con X S L T Necesidad de las transformaciones XML se presenta como un estándar para transmitir datos a través de Internet. Ante la posibilidad de que distintos centros

Más detalles

Pasos para crear un sitio web ASP.Net con el Visual Studio en cualquiera de sus versiones. Unidad 1. Conceptos [ASP.NET EN VISUAL STUDIO]

Pasos para crear un sitio web ASP.Net con el Visual Studio en cualquiera de sus versiones. Unidad 1. Conceptos [ASP.NET EN VISUAL STUDIO] Pasos para crear un sitio web ASP.Net con el Visual Studio en cualquiera de sus versiones Conceptos Lo primero que necesitamos para crear una aplicación o proyecto web es seleccionar el entorno del Visual

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

CAPITULO 2. Como se definió en el plan del presente proyecto, este será desarrollado bajo

CAPITULO 2. Como se definió en el plan del presente proyecto, este será desarrollado bajo 1 CAPITULO 2 ANÁLISIS DEL SISTEMA 1. Introducción Como se definió en el plan del presente proyecto, este será desarrollado bajo la metodología orientada a objetos. El objetivo del análisis será marcar

Más detalles

Ambiente Virtual de Comercio Electrónico B2B para la Comunidad Virtual de Negocios del departamento del Cauca

Ambiente Virtual de Comercio Electrónico B2B para la Comunidad Virtual de Negocios del departamento del Cauca Ambiente Virtual de Comercio Electrónico B2B para la Comunidad Virtual de Negocios del departamento del Cauca Ing. WILSON ALFREDO ORTEGA ORDOÑEZ Ing. JUAN CARLOS MENDEZ CAMACHO Universidad del Cauca Facultad

Más detalles

Conceptos SOA: XSD, Estructurando XML Por Medio de Esquemas

Conceptos SOA: XSD, Estructurando XML Por Medio de Esquemas Newsletter Junio 2013 Contenido Conceptos SOA: XSD, Estructurando XML Por Medio de Esquemas Página: Por Ing. Daniel Caciá dcacia@datum.com.gt 1 Conceptos SOA: XSD, Estructurando XML Por Cuando creamos

Más detalles

Estándares SGML y XML. Entornos de aplicación

Estándares SGML y XML. Entornos de aplicación Índice de contenido Estándares SGML y XML. Entornos de aplicación Estándares SGML y XML. Entornos de aplicación...1 Licencia...1 SGML...1 Introducción...1 Etiquetado...2 Estructura de un documento SGML...2

Más detalles

Framework de Simulación de Planificación de Procesos. por Emmanuel Luján

Framework de Simulación de Planificación de Procesos. por Emmanuel Luján Framework de Simulación de Planificación de Procesos por Emmanuel Luján INFORMACIÓN GENERAL Fecha: Noviembre del 2010 Tema: Framework de Simulación de Planificación Materia: Taller de Tiempo Real para

Más detalles

BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN

BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN 3.3 Aplicaciones Definición de Aplicación (Application). Programa informático que permite a un usuario utilizar una computadora con un fin específico. Las

Más detalles

Listados y Etiquetas personalizados de PrefGest WhitePaper Julio 2008

Listados y Etiquetas personalizados de PrefGest WhitePaper Julio 2008 Listados y Etiquetas personalizados de PrefGest WhitePaper Julio 2008 Contenidos 1. Propósito 3 2. Introducción 4 3. Listados personalizados 5 3.1. Ejemplos prácticos 7 3.2. Consideraciones adicionales

Más detalles

GENERACIÓN DE APLICACIONES MEDIANTE LENGUAJES ESPECIFICOS DE DOMINIO

GENERACIÓN DE APLICACIONES MEDIANTE LENGUAJES ESPECIFICOS DE DOMINIO WICC 2012 626 GENERACIÓN DE APLICACIONES MEDIANTE LENGUAJES ESPECIFICOS DE DOMINIO 1. A.Cortez, C.Naveda 1. Consejo de Investigaciones (CIUDA) UDA. 2. Instituto de Investigaciones Facultad de Ciencias

Más detalles

Tema 5. Diseño detallado.

Tema 5. Diseño detallado. Ingeniería del Software II 2011 Tema 5. Diseño detallado. Diseño del Software. Los requisitos y el análisis orientado a objetos se centran en aprender a hacer lo correcto: Entender los objetos de nuestro

Más detalles

Introducción a Visual Studio.Net

Introducción a Visual Studio.Net Introducción a Visual Studio.Net Visual Studio es un conjunto completo de herramientas de desarrollo para la generación de aplicaciones Web ASP.NET, Servicios Web XML, aplicaciones de escritorio y aplicaciones

Más detalles

Introducción a MS Access Diapositiva 1

Introducción a MS Access Diapositiva 1 Introducción n a MS Access Métodos de Inicio Abrir una Base de Datos existente La Ventana de Base de Datos Abrir paneles de tareas y pasar de uno a otro Utilización de las Vistas Exploración de Tablas

Más detalles

De los casos de uso a los casos de prueba. Caso práctico. Aplicación web Javier Gutiérrez / javierj@us.es

De los casos de uso a los casos de prueba. Caso práctico. Aplicación web Javier Gutiérrez / javierj@us.es De los casos de uso a los casos de prueba Caso práctico. Aplicación web Javier Gutiérrez / javierj@us.es Objetivo Objetivo: Mostrar cómo aplicar el proceso ETUC para la generación de casos de prueba a

Más detalles

MDA y Desarrollo de Videojuegos

MDA y Desarrollo de Videojuegos MDA y Desarrollo de Videojuegos Emanuel Montero y José A. Carsí Grupo de Ingeniería del Software y Sistemas de Información, Departamento de Sistema Informáticos y de Computación, Universitat Politècnica

Más detalles

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo. CONSULTAS CON SQL 1. Qué es SQL? Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería realmente complicada a gestionar de no ser por la existencia

Más detalles

Introducción a las bases de datos

Introducción a las bases de datos Introducción a las bases de datos Juan Ignacio Rodríguez de León Abstract Aplicaciones de los sistemas de bases de datos. Sistemas de bases de datos frente a sistemas de archivos. Visión de los datos.

Más detalles

InfoPath forma parte del paquete ofimático de Microsoft desde la versión XP (2003).

InfoPath forma parte del paquete ofimático de Microsoft desde la versión XP (2003). Formularios Los Sistemas Informacionales utilizan los datos derivados de los OAS y Transaccionales (nóminas, facturaciones, etc.) para, en su aspecto más básico, generar informes que ayuden a los directivos

Más detalles

El conocimiento de los desarrolladores de sistemas: cómo nutrirlo, sistematizarlo y potenciarlo. Alan Calderón Castro

El conocimiento de los desarrolladores de sistemas: cómo nutrirlo, sistematizarlo y potenciarlo. Alan Calderón Castro El conocimiento de los desarrolladores de sistemas: cómo nutrirlo, sistematizarlo y potenciarlo Alan Calderón Castro Temario Motivación Patrones de análisis de dominio Familias de productos de software

Más detalles

Herramientas Visuales de Programación

Herramientas Visuales de Programación Pág. 1 07/04/2013 Para la compilación y ejecución del código que se realizará a lo largo de este curso vamos a utilizar el entorno de programación de la Herramienta Visual Studio 2010. El entorno de programación

Más detalles

Objetivos y Temario CURSO VISUAL BASIC 2012

Objetivos y Temario CURSO VISUAL BASIC 2012 Objetivos y Temario CURSO VISUAL BASIC 2012 OBJETIVOS Este curso sobre VB.NET está dirigido a los desarrolladores, incluso principiantes, que quieran dominar Visual Basic.NET. Después de describir el entorno

Más detalles