Rodolfo Villarroel Acevedo 1, Yessica Gómez Gutiérrez 2, Cristian Vidal Silva 3, Ariel Marchant Gallardo 4

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

Download "Rodolfo Villarroel Acevedo 1, Yessica Gómez Gutiérrez 2, Cristian Vidal Silva 3, Ariel Marchant Gallardo 4"

Transcripción

1 UN LENGUAJE ESPECIFICO DE DOMINIO CON ASPECTOS DE SEGURIDAD PARA EL MODELADO DE ALMACENES DE DATOS A DOMAIN SPECIFIC LANGUAGE WITH SECURITY ASPECTS FOR THE DATA WAREHOUSES MODELING Rodolfo Villarroel Acevedo 1, Yessica Gómez Gutiérrez 2, Cristian Vidal Silva 3, Ariel Marchant Gallardo 4 1 Pontificia Universidad Católica de Valparaíso, Chile, rodolfo.villarroel@pucv.cl, Av. Brasil 2241, Valparaíso 2 Universidad Católica del Maule, Chile, jgomez@ucm.cl 3 Universidad de Playa Ancha, Chile, cristian.vidal@upla.cl 4 Pontificia Universidad Católica de Valparaíso, Chile, ariel.marchant.g@mail.pucv.cl RESUMEN: En los proyectos de almacenes de datos, el aspecto de seguridad generalmente depende de los gestores de bases de datos. Sin embargo, el diseño de estos aspectos debería ser considerado junto al modelado de datos, desde las etapas tempranas de un proyecto de software. En este artículo se presentan dos alternativas para definir un lenguaje específico de dominio, que incluyen los aspectos de seguridad en el modelado de almacenes de datos. La primera corresponde a utilizar los mecanismos de extensibilidad de UML (perfiles de UML) y la otra es definiendo un nuevo lenguaje de modelado distinto a UML. Se destaca que utilizar un lenguaje específico de dominio permite utilizar un lenguaje con conceptos que se encuentran centrados en un dominio específico, lo cual permite mejorar la productividad del desarrollador y la comunicación con los expertos del dominio. Palabras Clave: Almacenes de Datos, Seguridad, Lenguaje Específico de Dominio ABSTRACT: In the data warehouse projects the security aspect usually depends on database manager. However the design of these aspects should be considered together with the data modeling, from the early stages of a software project. This paper presents two alternatives to define a domain specific language, including security aspects in data warehouses modeling. The first is to use UML extensibility mechanism (UML Profiles) an the other is defining a new modeling language. The use of a domain specific language allows to use language concepts that are focused on a specific domain, which improves the developer productivity and communication with domain experts. KeyWords: Data Warehouses, Security, Domain Specific Language

2 1. INTRODUCCIÓN El diseño y modelado de los sistemas adquiere cada vez más importancia. Es por este motivo que se han definido propuestas usando modelos, debido a que posible representar con un mayor nivel de abstracción la problemática abordada. Los componentes de seguridad deberían estar presentes en todo desarrollo de sistemas de información. Sin embargo, solamente se considera una vez que el sistema se entrega para su utilización. Además, se ha dado poca importancia al modelado de almacenes de datos y menos importancia a incorporar seguridad en el modelado de almacenes de datos y procesos de Extracción, Transformación y Carga (ETL) en Almacenes de datos [1]. UML (Unified Modeling Language) es el lenguaje de modelado más utilizado en la actualidad, debido a que es de propósito general, lo que permite modelar aplicaciones de diferentes dominios de aplicación, debido a su gran flexibilidad y expresividad cuando se desea modelar sistemas. Sin embargo, si se desea un lenguaje más específico para modelar y representar los conceptos de algunos dominios particulares, entonces UML no resulta tan apropiado. Un lenguaje específico de dominio (DSL) es un lenguaje dedicado a representar y/o resolver un problema en particular, a este problema o ámbito se le llamará dominio. Son lenguajes de alto nivel destinados a expertos en el dominio. Ejemplos de DSL son SQL para consultas a bases de datos, Apache Maven, para administrar proyectos de software, BNF que permite describir la sintaxis de los lenguajes de programación, VHDL, que es un lenguaje de descripción de hardware, BPMN que es una notación gráfica para modelar procesos de negocios Existen dos alternativas para definir lenguajes específicos de dominio [2] [3]: a) extender el lenguaje de modelado UML, especializando alguno de sus conceptos y restringiendo otros, pero respetando la semántica original de los elementos de UML. En esta alternativa se pueden usar los mecanismos de extensibilidad de UML (también conocidos como Perfiles UML (UML Profiles), b) definir un nuevo lenguaje de modelado diferente a UML, que comúnmente se denomina DSL, esto se logra describiendo el nuevo metamodelo, definiendo el nuevo lenguaje y generando un editor (textual o gráfico) para describir los modelos. Un DSL bien diseñado ofrece algunos de los siguientes beneficios: - Contiene construcciones que se ajustan específicamente al problema. - Permite a las personas que no conocen del dominio entender el esquema general. - Mejoran la productividad, fiabilidad, facilidad de mantenimiento y la portabilidad. - Los expertos del dominio pueden entender, validar, modificar, y a menudo incluso desarrollar un DSL. - Permite que sea más fácil crear un prototipo de la aplicación final, ya que los desarrolladores pueden utilizar el código que genera su modelo para crear dicho prototipo y así poder mostrarlo al cliente. El artículo se organiza de la siguiente forma: la sección 2 presenta la primera alternativa para definir lenguajes específicos de dominio, usando los mecanismos de extensibilidad de UML. La Sección 3 presenta la segunda alternativa, correspondiente a la definición de un nuevo lenguaje de modelado. La Sección 4 presenta la generación del DSL que permita incorporar aspectos de seguridad en almacenes de datos. La Sección 5 presenta las conclusiones. 2. DEFINICIÓN DE UN PERFIL DE UML Los mecanismos de extensibilidad de UML no permiten modificar metamodelos existentes, pero sí permite añadirle elementos y restricciones, respetando su sintaxis y semántica original. De esta manera se permitirá particularizar un metamodelo para uno o varios dominios. Estas particularizaciones o adaptaciones están definidas por un Perfil (Profile) con los siguientes mecanismos de extensibilidad de UML: Estereotipos, Valores etiquetados y restricciones. Un estereotipo es un tipo de elemento del modelo definido en el propio modelo. Se muestran como cadenas de texto entre comillas o como un icono para un estereotipo particular. Los valores etiquetados se pueden utilizar para almacenar información sobre elementos estereotipados del modelo. Se muestran como cadenas con

3 el nombre de la etiqueta, un signo igual, y el valor. Se colocan normalmente en listas entre llaves. Una restricción es una condición semántica representada como expresión textual. Puede utilizarse una notación matemática formal, un lenguaje de restricción como OCL (Object Constraint Language), un lenguaje de programación, pseudocódigo, o un lenguaje natural informal. Las restricciones pueden expresar limitaciones y relaciones que no pueden ser expresadas con UML. La Figura 1 muestra un modelado conceptual para Almacenes de Datos que incluye un profile de UML que permite incorporar aspectos de seguridad en el modelado [4]. Figura 1: Modelado de Almacenes de Datos usando un Profile de UML con aspectos de seguridad El Profile permite diferenciar las clases en un Almacén de Datos usando un icono particular (estereotipo) que representa si es clase Fact (clase de Hecho), clase Dimensión, clase Base (jerarquías) o es la clase con el Perfil de Usuario. En este ejemplo, la clase Fact se denomina Admisión, hay 3 clases de tipo Dimensión (Diagnóstico, Paciente, y Tiempo). Cada dimensión tiene sus jerarquías que permitirán las consultas con mayor o menor grado de detalle, la dimensión Diagóstico puede ser consultada con la clase Base GrupoDiagnos, la dimensión Paciente puede ser consultada por Ciudad o por Provincia, y la dimensión Tiempo puede ser consultada por las clases Base Mes o Trimestre. Cada clase estereotipada puede tener valores etiquetados que indican el nivel de seguridad (SL) y el rol de seguridad (SR). También pueden representarse valores etiquetados a nivel de atributos de la clase. Las restricciones se representan mediante notas UML que están asociadas a Reglas de asignación de Información sensible considerando niveles de seguridad y roles de seguridad (SIAR), reglas de autorización (AUR) y reglas de auditoría (AR). 3. DEFINICIÓN DE UN NUEVO LENGUAJE DE MODELADO En la actualidad la mayoría de los sistemas son de una gran complejidad, y la utilización de UML puede dificultar el modelado de toda la complejidad del software en un dominio especializado. Además, la utilización de perfiles de UML pueden estar muy ligados a herramientas concretas, que respetan los estándares de OMG. Para un dominio en particular, puede ser más conveniente usar un DSL que tenga abstracciones más orientadas a ese dominio. Para generar el DSL se utiliza el paradigma MDE (Model- Driven Engineering) cuya finalidad es proveer técnicas y herramientas para utilizar modelos de manera automática en el proceso de desarrollo de software [3]. Existen cuatro aspectos para la definición completa de un nuevo lenguaje de modelado (ver Tabla I):

4 Semántica Sintaxis Tabla I: Aspectos de la definición de un lenguaje de modelado Interpretación (correspondencia semántica) Derivación (teoría deductiva) Concreta (notación textual/gráfica) Abstracta (metamodelo) (estructura lógica) Relación de correspondencia con la realidad representada en el modelo. Relación con otros modelos derivables por medio de reglas deductivas de transformación. Aspecto: conjunto de símbolos textuales/gráficos que se utilizan en los diagramas. Estructura lógica: reglas que especifican las expresiones bien formadas de las características del modelo. 3.1 Entorno de desarrollo y herramientas utilizadas en MDE A continuación se describen los principales entornos de desarrollo y herramientas utilizadas para la construcción de un DSL (ver Tabla II) [3]. TABLA II: Entorno de Desarrollo y herramientas utilizadas para la construcción de un DSL Entorno de Desarrollo Arquitectura OMG Arquitectura Eclipse/EMF Microsoft DSL Tools Editores (Sintaxis Concreta) Editores Gráficos GMF EuGENia Graphiti Sirius Plataformas de Metamodelado (Sintaxis Abstracta) MOF Ecore/OCL Domain Model Editores Textuales Xtext EMFText TCS Entorno de desarrollo UML es un lenguaje de modelado de software cuyo metamodelo está definido con el lenguaje de metamodelos MOF (Meta Object Facility), perteneciente a la arquitectura OMG (Object Management Group). El concepto de perfiles (profiles) fue ideado para conseguir que UML fuese aplicable a cualquier dominio, no solamente al software. Modeling Project es el nombre del proyecto Eclipse destinado a ofrecer soporte a la construcción de herramientas y soluciones MDE. Todos estos proyectos se articulan en torno a EMF (Eclipse Modeling Framework) que proporciona los mecanismos básicos para manejar metamodelos. DSL Tools está diseñada para la creación de lenguajes de dominio específico en el universo Microsoft. DSL Tools se instala en el entorno de desarrollo integrado Visual Studio [6]. La implementación de DSL con la herramienta de metamodelado DSL Tools consiste en la definición de una sintaxis abstracta (metamodelo) que modele todos los elementos del lenguaje en base a la cual se define una sintaxis concreta (editor). Microsoft utiliza los conceptos Domain Model y Designer para referirse a la sintaxis abstracta y concreta respectivamente.

5 3.1.2 Plataformas de Metamodelo (sintaxis abstracta) El metamodelo va a permitir definir la sintaxis abstracta de un DSL. El metamodelo es un modelo que define de manera abstracta los elementos que estarán presentes en un modelo, con un conjunto de reglas que los rigen. Para representar un metamodelo es necesario un lenguaje que proporcione un conjunto de construcciones destinado a este fin. MOF (Meta Object Facility) es el lenguaje de metamodelado de la OMG (Object Management Group) en la definición de UML. OMG definió además una versión simplificada de MOF llamada EMOF (Essential MOF) que rescata los aspectos más esenciales de MOF. 3.2 DSL Los DSL se crean específicamente dentro de un dominio particular, y no está pensado para resolver problemas fuera de este dominio. Algunos ejemplos son SQL, HTML, CSS, etc. Ya definida la sintaxis abstracta (metamodelo), la cual generalmente se expresa en un diagrama de clases, se debe definir la sintaxis concreta del DSL. La sintaxis concreta es una representación de la sintaxis abstracta (metamodelo), la cual puede ser textual (por ejemplo, una consulta SQL) o gráficamente (por ejemplo, usando un lenguaje de modelado). Si se construye un editor textual pueden usarse Xtext, EMFText o TCS. Xtext es un plug-in de Eclipse basado en EMF. Permite asociar la representación textual (sintaxis concreta) a los conceptos y relaciones del lenguaje especificados en el metamodelo (sintaxis abstracta). EMFText es un plug-in de Eclipse que define una sintaxis textual para un metamodelo Ecore. TCS es un componente de Eclipse/GMT que permite la especificación de una sintaxis concreta textual de un DSL proporcionando información sintáctica de los metamodelos. Si se construye un editor gráfico se deben definir una serie de modelos con información sobre: - Los elementos gráficos que se mostrarán en la pantalla. - La paleta de herramientas del editor - La relación entre el metamodelo de partida y los dos modelos recientemente mencionados. De esta manera, se establecerá un mapping entre cada elemento del metamodelo (sintaxis abstracta) y la herramienta de la paleta que permitirá añadir cada elemento al diagrama. 3.3 EDITORES GRÁFICOS PARA DSL Existen herramientas que permiten dar soporte a las fases de desarrollo de un DSL. El uso de los editores gráficos ayuda a omitir detalles innecesarios y proporcionan una visión global del modelo [2] [5] [7]. GMF (Graphical Modeling Framework) es una herramienta que sigue un enfoque dirigido a modelos para la creación de diagramas. Además, ofrece un conjunto de componentes e infraestructura para el desarrollo de editores basados en EMF (Eclipse Modeling Framework), como plug-in de Eclipse. Para la creación de un editor gráfico es necesario crear seis modelos diferentes: - Domain Model: Es el metamodelo necesario para crear el editor gráfico. - Domain Gen Model: Se utiliza para generar el código del modelo de dominio con EMF. - Graphical Def Model: Se utiliza para definir los elementos gráficos para el modelo de dominio. - Tooling Def Model: Se utiliza para definir la paleta de herramientas a utilizar en el editor gráfico. - Mapping Model: Vincula el modelo de dominio, el modelo gráfico y el modelo de herramientas. - Diagram Editor Gen Model: Se utiliza para generar el editor GMF gráfico, además del código EMF generado por el archivo genmodel. A diferencia de Graphiti, GMF es más complejo de utilizar, pero dispone de mayor funcionalidad. EuGENia es parte del proyecto Epsilon de Eclipse. Epsilon es una plataforma para la creación de lenguajes específicos de dominio. Incorpora herramientas para la transformación de modelos o para su validación. Además de estos lenguajes, Epsilon provee varias facilidades para llevar a cabo tareas comunes en el marco del desarrollo de software dirigido por modelos. Una de ellas es EuGENia, una herramienta para simplificar el desarrollo de editores GMF. EuGENia además de reducir el número de modelos que debe definir el desarrollador, permite la reutilización de los archivos de personalización en diferentes desarrollos. EuGENia genera automáticamente los modelos gmfgraph, gmftool y gmfmap, mediante anotaciones al modelo Ecore. Estas anotaciones hacen referencia a la representación gráfica de los elementos del modelo. Graphiti es otra herramienta que permite desarrollar un editor gráfico para DSL [8]. Los objetivos de Graphiti son:

6 - Proporciona una herramienta de fácil uso que pueda configurar las características necesarias para el desarrollo del editor gráfico. - Reutilización de algoritmos ya existentes. Además, es multiplataforma. - Rapidez en el aprendizaje de la herramienta, debido a que se abstrae de la complejidad de las herramientas que lo componen. Los modelos de Graphiti son: - El modelo de dominio, que contiene los datos que tienen que ser visualizados gráficamente. Representa el modelo que define el problema. del metamodelo, escribir las clases y anotaciones que le dirán al generador las clases que serán nodos y las que serán enlaces, los nodos que estarán compuestos por otros, etc. A partir del modelo emfatic se genera el modelo Ecore. Además, a partir de este último, se puede generar una representación gráfica del metamodelo, facilitando aún más la creación. En el modelo se representan los hechos (Fact), dimensiones y Bases (jerarquías). A los elementos se les puede añadir también un rol SR (Secure Rol) y un nivel de seguridad SL (Security Level). - El modelo de pictograma, que contiene la información completa para representar el editor gráfico. - El modelo de enlace, que es el responsable de la conexión de datos del modelo de dominio y la representación gráfica o modelo pictograma. Sirius es otro proyecto de Eclipse, cuyo objetivo es la creación de herramientas de modelado de manera visual y sin tener que generar código en forma manual ni conocer la arquitectura de Eclipse Modeling para su utilización [9]. Sirius permite crear un editor gráfico sin escribir código fuente y tiene las siguientes características: - El editor gráfico es descrito en un archivo serializado en XML. - La especificación del editor gráfico y sus herramientas asociadas son especificadas e interpretadas en tiempo de ejecución. Figura 1: Metamodelo para Data Warehouses con aspectos de seguridad Las Figuras 2 y 3 presentan el metamodelo representado en Ecore y de manera textual en emfatic. - Sirius proporciona varios puntos de vista que son adaptados dependiendo de la actividad del usuario o su función. Sirius, entrega un entorno completo y fácil de usar para crear las especificaciones y el resultado puede ser liberado como un plugin de Eclipse. 4. GENERACIÓN DEL DSL Se definen los elementos del modelo, con la perspectiva otorgada por Eclipse (ver Figura 1). Se pueden crear clases, clases abstractas e interfaces, e interrelaciones entre ellas como referencia, composición, además de enumeraciones, tipos de datos, operaciones y atributos. El metamodelo creado posee varias representaciones. En el flujo de trabajo de EuGENia se parte por un modelo Emfatic, que es la representación textual

7 generar GMF Editor. La Figura 4 muestra la generación del editor gráfico usando EuGENia. Figura 2: Metamodelo en.ecore Figura 4: Modelado de Data Warehouses usando un Editor del DSL Es necesario crear instancias del modelo generado, para lo cual se crea un proyecto en Eclipse y dentro de éste se crea un nuevo SecureDWmodel.diagram. que es el nombre que se había escogido. Al abril se verá un editor como el mostrado en la Figura 5: Figura 3: Metamodelo en.emfatic A continuación, se debe generar el código a partir del metamodelo creado. Para realizar esto en Eu- GENia, solamente se debe seleccionar la opción Figura 5: Modelado de Data Warehouses usando un Editor del DSL El editor generado es un plug-in de Eclipse, con características como drag and drop, panel de pro-

8 piedades, exportación del modelo como imagen, impresión, ordenamiento de los elementos, entre otros. 5. CONCLUSIONES Con el fin de resolver problemas basados en un dominio específico resulta muy útil el desarrollo de un DSL. Sin embargo, la principal dificultad encontrada es distinguir el dominio adecuado para el enfoque de la solución. Esto también se aplica a la definición del metamodelo, ya que se debe tener un conocimiento profundo del dominio que se quiere analizar para su modelado. Se han presentado las dos alternativas para definir un lenguaje específico de dominio. Se ha visualizado que la plataforma Eclipse/EMF provee una mayor simpleza y una disponibilidad de herramientas que facilitan el modelado en la construcción de un DSL. Además, dispone de una variedad de editores gráficos que de manera automática facilitan el modelado en un dominio específico. Al construir un DSL, o usar los mecanismos de extensibilidad de UML, los elementos gráficos y textuales que se utilicen deben estar familiarizados con el dominio que representen, de manera que sea de fácil entendimiento para los usuarios finales. 6. REFERENCIAS BIBLIOGRÁFICAS 1. Villarroel, R.; Y. Gómez y C. Krause. Incorporación de Seguridad en el Modelado Conceptual de Procesos Extracción-Transformación-Carga. Información Tecnológica. Vol 24(6), (2013). 2. Fuentes, L. and A. Vallecillo. An Introduction to UML Profiles. Upgrade, Vol 5(2), 6-12 (2004). 3. Jácome, S. Descripción de las actividades de una propuesta de Metodología de Desarrollo de Software Dirigida por Modelos. Trabajo de Fin de Máster I2TIC, Universidad Autónoma de Madrid, Fernandez-Medina, E.; J.Trujillo; R. Villarroel and M. Piattini. Developing secure data warehouses with a UML extension. Information Systems, Elsevier, 32(6): (2007). 5. Vargas, F.; J. Roda; A. Estévez; A. Avila- García y V. Sánchez. Generación de Editores Gráficos de Modelos para una Herramienta MDA. XV Jornadas de Ingeniería del Software y Bases de Datos JISBD MSDN Library: "Acerca de los lenguajes específicos de dominio". url:[ bb aspx] 7. Musat, D.; Pérez, J.; Alarcón, P. Tutorial de Introducción a Introducción a EMF y GMF. url:[ 8. Batista, L.: Desarrollo de DSL Visuales con Graphiti url:[ 9. García, A.: Tutorial de DSL Visuales con Sirius. url:[ 7. SÍNTESIS CURRICULAR Rodolfo Villarroel es Doctor del Programa Técnicas Informáticas Avanzadas, de la Universidad de Castilla-La Mancha (Ciudad Real, España) y Magíster en Ingeniería Informática de la Universidad Técnica Federico Santa María (Valparaíso, Chile). Actualmente se desempeña como profesor de categoría Adjunto, en la Pontificia Universidad Católica de Valparaíso (Valparaíso, Chile). Es miembro del Directorio de la Sociedad Chilena de Ciencias de la Computación (desde noviembre de 2012). Ha participado como Organizador del Congreso Chileno de Educación Superior en Computación (desde el año 2013) y del Workshop de Ingeniería de Software Avanzada (WASE 2015), que es un track de la Conferencia Internacional de la Sociedad Chilena de Ciencias de la Computación. Ha publicado en revistas y congresos, en sus líneas de investigación asociadas a mejora de procesos de software, seguridad en el diseño de sistemas de información, e informática en educación.

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 Desarrollo del formato de representación Curso 2013-2014 Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad de Cádiz 14/11/13 PL2

Más detalles

COORDINADORES AUTORES PRÓLOGO PREFACIO... 43

COORDINADORES AUTORES PRÓLOGO PREFACIO... 43 ÍNDICE COORDINADORES... 17 AUTORES... 21 PRÓLOGO... 37 PREFACIO... 43 CAPÍTULO 1. DESARROLLO DIRIGIDO POR MODELOS: UN NUEVO PARADIGMA DE CONSTRUCCIÓN DE SOFTWARE... 51 1.1 INTRODUCCIÓN... 51 1.2 DE LOS

Más detalles

Maestría en Ingeniería

Maestría en Ingeniería Maestría en Ingeniería Curso de Ingeniería Web Modelado de Aplicaciones Web con UML Fernando Barraza A. fbarraza@javerianacali.edu.co Antecedentes UML es un lenguaje de modelado de propósito general: Puede

Más detalles

Taller de Ingeniería Dirigida por Modelos (TMDE) Lenguajes y Sintaxis Concreta

Taller de Ingeniería Dirigida por Modelos (TMDE) Lenguajes y Sintaxis Concreta Taller de Ingeniería Dirigida por Modelos (TMDE) Lenguajes y Sintaxis Concreta Objetivos de hoy Comprender el rol de los Lenguajes de Dominio Específico (DSL) y su diferencia con los Lenguajes de Propósito

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 Desarrollo de DSLs usando MDE Curso 2013-2014 Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad de Cádiz 01/11/13 PL2 - Desarrollo

Más detalles

Introducción a la ingeniería del software dirigida por modelos Curso

Introducción a la ingeniería del software dirigida por modelos Curso Procesadores de Lenguajes 2 Introducción a la ingeniería del software dirigida por modelos Curso 2013-2014 Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad

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 Desarrollo de editores gráficos con GMF Curso 2013-2014 Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad de Cádiz 14/11/13 PL2

Más detalles

Clasificación de las Herramientas CASE

Clasificación de las Herramientas CASE Qué es una herramienta CASE? Las herramientas CASE (Computer Aided Software Engineering, Ingeniería de Software Asistida por Computadora) son diversas aplicaciones informáticas destinadas a aumentar la

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 Desarrollo de metamodelos con EMF Curso 2013-2014 Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad de Cádiz 07/11/13 PL2 - Desarrollo

Más detalles

El lenguaje Unificado de Modelado (UML)

El lenguaje Unificado de Modelado (UML) El lenguaje Unificado de Modelado (UML) Enrique Hernández Orallo (ehernandez@disca.upv.es) Cualquier rama de ingeniería o arquitectura ha encontrado útil desde hace mucho tiempo la representación de los

Más detalles

El Lenguaje Unificado de Modelado (UML)

El Lenguaje Unificado de Modelado (UML) El Lenguaje Unificado de Modelado (UML) Enrique Hernández Orallo(ehernandez@disca.upv.es) Cualquier rama de ingeniería o arquitectura ha encontrado útil desde hace mucho tiempo la representación de los

Más detalles

Ingeniería de Software. UML.

Ingeniería de Software. UML. Ingeniería de Software. Unified Modeling Language UML. Ingeniería de Software. UML Página 0 Qué es el UML? The Unified Modeling Language (UML) is a graphical language for visualizing, specifying, constructing,

Más detalles

Tema 1. Introducción a UML C H R I STO PHER E X P Ó S I TO I Z Q U I ERDO A I R A M E X P Ó S I TO M Á R Q UEZ I S R A E L LÓ P EZ P L ATA M A R Í A

Tema 1. Introducción a UML C H R I STO PHER E X P Ó S I TO I Z Q U I ERDO A I R A M E X P Ó S I TO M Á R Q UEZ I S R A E L LÓ P EZ P L ATA M A R Í A Tema 1. Introducción a UML C H R I STO PHER E X P Ó S I TO I Z Q U I ERDO A I R A M E X P Ó S I TO M Á R Q UEZ I S R A E L LÓ P EZ P L ATA M A R Í A B E L É N M E L I Á N BAT I STA J O S É MARCOS M O R

Más detalles

INGENIERÍA DEL SOFTWARE

INGENIERÍA DEL SOFTWARE ESCUELA SUPERIOR POLITÉCNICA AGROPECUARIA DE MANABÍ MANUEL FÉLIX LÓPEZ CARRERA INFORMÁTICA SEMESTRE SÉPTIMO PERIODO ABR. /SEP.-2015 INGENIERÍA DEL SOFTWARE TEMA: RESUMEN#4: LENGUAJE UNIFICADO DE MODELADO

Más detalles

Transformación del Modelo de Negocio al Modelo de Caso de Uso del Sistema Utilizando QVT

Transformación del Modelo de Negocio al Modelo de Caso de Uso del Sistema Utilizando QVT Transformación del Modelo de Negocio al Modelo de Caso de Uso del Sistema Utilizando QVT Ariel S. Arsaute 1, Marcela Daniele 2, Fabio A. Zorzan 3, Daniel Riesco 4 RESUMEN Esta línea de investigación contribuye

Más detalles

MAGIC DRAW UML. Índice. José Ignacio Colmenero González Carlos Pérez Herrero José Luis Bravo Sánchez

MAGIC DRAW UML. Índice. José Ignacio Colmenero González Carlos Pérez Herrero José Luis Bravo Sánchez MAGIC DRAW UML José Ignacio Colmenero González Carlos Pérez Herrero José Luis Bravo Sánchez Índice Herramientas CASE: Introducción. Qué son. Historia. Clasificación. Componentes y funcionalidades. UML:

Más detalles

Procesadores de Lenguajes II. Luis M a Montero de Espinosa Díaz Manuel Trinidad García. 17 de enero de 2013

Procesadores de Lenguajes II. Luis M a Montero de Espinosa Díaz Manuel Trinidad García. 17 de enero de 2013 Procesadores de Lenguajes II Luis M a Montero de Espinosa Díaz Manuel Trinidad García Ingeniería Informática Universidad de Cádiz 17 de enero de 2013 1 / 42 Índice 1 Resumen Introducción Principales conceptos

Más detalles

TEMA 6: INTRODUCCIÓN A UML

TEMA 6: INTRODUCCIÓN A UML TEMA 6: INTRODUCCIÓN A UML Por qué modelamos? El modelado es una parte central de todas las actividades que conducen a la producción de un software de calidad. Como tal la ingeniería software debe basarse

Más detalles

Escuela Técnica Superior de Ingeniería Informática INGENIERÍA INFORMÁTICA. Curso Académico 2009/2010. Proyecto de Fin de Carrera

Escuela Técnica Superior de Ingeniería Informática INGENIERÍA INFORMÁTICA. Curso Académico 2009/2010. Proyecto de Fin de Carrera Escuela Técnica Superior de Ingeniería Informática INGENIERÍA INFORMÁTICA Curso Académico 2009/2010 Proyecto de Fin de Carrera M2DAT - DB Desarrollo de Editores Gráficos para el Modelado de Bases de Datos

Más detalles

3. DESARROLLO Y HERRAMIENTAS

3. DESARROLLO Y HERRAMIENTAS 14 3. DESARROLLO Y HERRAMIENTAS 3.1 Desarrollo El primer paso es recolectar toda la información posible y analizar cuál será de utilidad y cual no. Documentación sobre el sistema (Sistema integrado de

Más detalles

ANEXO 4: DOCUMENTACIÓN DEL TRANSFORMADOR. DE LA APLICACIÓN WEB GENERATOR (WAPP Generator)

ANEXO 4: DOCUMENTACIÓN DEL TRANSFORMADOR. DE LA APLICACIÓN WEB GENERATOR (WAPP Generator) ANEXO 4: DOCUMENTACIÓN DEL TRANSFORMADOR DE LA APLICACIÓN WEB GENERATOR (WAPP Generator) FERNEY SANTOS AGUILLÓN MARTÍNEZ MARIO ALONSO MATEUS GÓMEZ PONTIFICIA UNIVERSIDAD JAVERIANA FACULTAD DE INGENIERÍA

Más detalles

Diseño de un Profile para el Modelado de Aplicaciones Paralelas y Concurrentes

Diseño de un Profile para el Modelado de Aplicaciones Paralelas y Concurrentes Diseño de un Profile para el Modelado de Aplicaciones Paralelas y Concurrentes Universidad Nacional de La Matanza Departamento de Ingeniería e Investigaciones Tecnológicas Instituto de Investigación y

Más detalles

NÚMERO DE HORAS: 160H PROGRAMACIÓN WEB EN EL ENTORNO CLIENTE OBJETIVO

NÚMERO DE HORAS: 160H PROGRAMACIÓN WEB EN EL ENTORNO CLIENTE OBJETIVO PACK FORMATIVO EN DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB NÚMERO DE HORAS: 160H PROGRAMACIÓN WEB EN EL ENTORNO CLIENTE OBJETIVO - Identificar la estructura de una página web conociendo los lenguajes

Más detalles

PROYECTO: Plataforma inalámbrica para alertar a los conductores de emergencias vehiculares

PROYECTO: Plataforma inalámbrica para alertar a los conductores de emergencias vehiculares PROYECTO: Plataforma inalámbrica para alertar a los conductores de emergencias vehiculares ACTIVIDAD.4.1 Realización del modelo del proceso para la creación de la plataforma Dra. María Eugenia Cabello

Más detalles

Generación Automática de Aplicaciones Web Móviles Mediante Componentes Configurables

Generación Automática de Aplicaciones Web Móviles Mediante Componentes Configurables Generación Automática de Aplicaciones Web Móviles Mediante Componentes Configurables Pablo Vera, Claudia Pons, Carina González, Rocío Rodríguez, Daniel Giulianelli Universidad Nacional de La Matanza Departamento

Más detalles

UN ENFOQUE MDD PARA EL DESARROLLO DE RIA

UN ENFOQUE MDD PARA EL DESARROLLO DE RIA UN ENFOQUE MDD PARA EL DESARROLLO DE RIA Guido Nuñez Cáceres 22 de febrero de 2016 Primera Defensa de Proyecto Final de Carrera Departamento de Electrónica e Informática Facultad de Ciencias y Tecnología

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 Proyecto de Asignatura Curso 2013-2014 Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad de Cádiz 31/10/13 PL2 - Proyecto de Asignatura

Más detalles

Unidad V. UML. Tema I. Conceptos Básicos Tema II. Definición de UML. Vocabulario Tema III. Elementos UML Tema IV. Diagramas.

Unidad V. UML. Tema I. Conceptos Básicos Tema II. Definición de UML. Vocabulario Tema III. Elementos UML Tema IV. Diagramas. Unidad V. UML Tema I. Conceptos Básicos Tema II. Definición de UML. Vocabulario Tema III. Elementos UML Tema IV. Diagramas Objetivos Conocer el modelo UML Utilizar el modelo UML como parte de la metodología

Más detalles

Centro Universitario UAEM Zumpango

Centro Universitario UAEM Zumpango Agosto 2015 "2015. Año del Bicentenario Luctuoso de José María Morelos y Pavón" Centro Universitario UAEM Zumpango Ingeniería en Computación Unidad de Aprendizaje: DISEÑO DE SISTEMAS Unidad de Competencia

Más detalles

Programación Orientada a Objetos

Programación Orientada a Objetos Programación Orientada a Objetos PROGRAMACIÓN ORIENTADA A OBJETOS 1 Sesión No. 8 Nombre: El Modelo de diseño con UML Contextualización Los modelos que podemos crear con UML son varios, por lo que debemos

Más detalles

1. Asignar Responsabilidades a componentes de software es la habilidad más importante del AOO. Porque:

1. Asignar Responsabilidades a componentes de software es la habilidad más importante del AOO. Porque: Análisis y Diseño O.O. Preguntas del diseño : Cómo podrían asignarse responsabilidades a las clases de los objetos? Cómo podrían interactuar los objetos? Qué deberían hacer las clases? Patrones : Ciertas

Más detalles

Diagramas UML JUAN CARLOS CONDE RAMÍREZ INTRODUCTION TO PROGRAMMING

Diagramas UML JUAN CARLOS CONDE RAMÍREZ INTRODUCTION TO PROGRAMMING Diagramas UML JUAN CARLOS CONDE RAMÍREZ INTRODUCTION TO PROGRAMMING Objetivos Comprender la importancia del modelado y el uso de diagramas para la Ingeniería y la arquitectura. Conocer las ventajas que

Más detalles

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIER IA SYLLABUS. PROYECTO CURRICULAR: Ingeniería de Sistemas

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIER IA SYLLABUS. PROYECTO CURRICULAR: Ingeniería de Sistemas UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS FACULTAD DE INGENIER IA SYLLABUS PROYECTO CURRICULAR: Ingeniería de Sistemas NOMBRE DEL DOCENTE: ESPACIO ACADÉMICO (Asignatura): Opción AII: Tendencias Avanzadas

Más detalles

Presentación de la Asignatura.

Presentación de la Asignatura. INGENIERÍA DEL SOFTWARE I Tema 0 Presentación de la Asignatura www.ctr.unican.es/asignaturas/is1/ Profesorado Michael González Harbour (teoría, responsable asignatura) E-mail: mgh@unican.es Web: http://www.ctr.unican.es/

Más detalles

Bases de Datos Especializadas. Sesión 2: Modelado de datos

Bases de Datos Especializadas. Sesión 2: Modelado de datos Bases de Datos Especializadas Sesión 2: Modelado de datos Contextualización Entre las metodologías para el desarrollo de sistemas informáticos para las organizaciones, se destacan aquellas que se dirigen

Más detalles

UWE (UML-BASED WEB ENGINEERING

UWE (UML-BASED WEB ENGINEERING B.U.A.P. F.C.C. APLICACIONES WEB UWE (UML-BASED WEB ENGINEERING Verano 2018 Dr. Mario Rossainz López. QUÉ ES UWE? UWE es una metodología de ingeniería de software para desarrollar aplicaciones web que

Más detalles

Diagramas De Casos De Uso

Diagramas De Casos De Uso Estáticos Diagramas De Casos De Uso Los diagramas de casos de uso documentan el comportamiento de un sistema desde el punto de vista del usuario.. Por lo tanto los casos de uso determinan los requisitos

Más detalles

INGENIERÍA DE SOFTWARE. Sesión 10: Diagramas de comunicación

INGENIERÍA DE SOFTWARE. Sesión 10: Diagramas de comunicación INGENIERÍA DE SOFTWARE Sesión 10: Diagramas de comunicación Contextualización Los diagramas son parte importante en el desarrollo de aplicaciones, pues con éstos se puede visualizar la forma en que funcionará

Más detalles

octubre de 2007 Arquitectura de Software

octubre de 2007 Arquitectura de Software octubre de 2007 Arquitectura de Software Seis mejores Prácticas Desarrollo Iterativo Administrar Requerimientos Usar Arquitecturas basadas en Componentes Modelado Visual (UML) Verificar Continuamente la

Más detalles

Arquitectura de So.ware

Arquitectura de So.ware Arquitectura de So.ware Perfiles UML Fernando Barraza A. fernando.barraza@gmail.com Mo7vación UML es un lenguaje de modelado de propósito general: Puede ser usado en todos los dominios de aplicaciones;

Más detalles

INGENIERÍA DEL SOFTWARE

INGENIERÍA DEL SOFTWARE INGENIERÍA DEL SOFTWARE Sesión No. 11 INGENIERÍA DEL SOFTWARE 1 Nombre: Estereotipos y valores etiquetados de los paquetes Contextualización Los estereotipos dentro de los medios de programación son más

Más detalles

ORGANIZACIÓN DOCENTE del curso

ORGANIZACIÓN DOCENTE del curso ORGANIZACIÓN DOCENTE del curso 2009-10 1. DATOS GENERALES DE LA ASIGNATURA NOMBRE Ingeniería del Software I PÁGINA WEB www.ctr.unican.es/asignaturas/is1 CÓDIGO DEPARTAMENTO Matemáticas, Estadística y Computación

Más detalles

Ingeniería de Software

Ingeniería de Software Ingeniería de Software ANÁLISIS Y DISEÑO DE SISTEMAS CON Auxiliar: Andrés Neyem aneyem@dcc.uchile.cl Oficina 418 de Doctorado Auxiliar - 10 de Abril de 2007 Repaso Historia de los lenguajes de modelamiento

Más detalles

Requerimientos de Software

Requerimientos de Software Requerimientos de Software Ingeniería de Requerimientos Se define como el proceso de establecer los servicios que el consumidor requiere de un sistema y las restricciones sobre las cuales de funcionar

Más detalles

INGENIERÍA DEL SOFTWARE

INGENIERÍA DEL SOFTWARE INGENIERÍA DEL SOFTWARE INGENIERÍA DE SOFTWARE 1 Sesión No. 9 Nombre: Diagramas de casos de uso Contextualización Cómo modelar las funciones del sistema? Las funciones del sistema se modelan por medio

Más detalles

"Módulo OOWS para StarUML" INTRODUCCIÓN

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

Más detalles

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

Programming with C# DESCRIPCION MODULOS DE CAPACITACION. Sistemas Informáticos del Valle Módulo 1: Revisión de la sintaxis de C#

Programming with C# DESCRIPCION MODULOS DE CAPACITACION. Sistemas Informáticos del Valle   Módulo 1: Revisión de la sintaxis de C# Programming with C# DESCRIPCION MODULOS DE CAPACITACION Módulo 1: Revisión de la sintaxis de C# Este módulo repasa la sintaxis del núcleo y las características del lenguaje de programación C#. También

Más detalles

Programación Orientada a Objetos. Conceptos Básicos

Programación Orientada a Objetos. Conceptos Básicos Programación Orientada a Objetos Conceptos Básicos Programación Orientada a Objetos Paradigma de programación Un programa orientado a objetos está organizado como un conjunto de agentes en interacción

Más detalles

Los diagramas de clases y de objetos sirven para modelar diversos aspectos estructurales o estáticos de un sistema: Modelado - Vocabulario del Sistema

Los diagramas de clases y de objetos sirven para modelar diversos aspectos estructurales o estáticos de un sistema: Modelado - Vocabulario del Sistema Modelado Los diagramas de clases y de objetos sirven para modelar diversos aspectos estructurales o estáticos de un sistema: Vocabulario del Sistema Distribución de Responsabilidades Semántica de una Clase

Más detalles

12/08/2017. Diagrama de secuencia. Diagrama de secuencia. Diagrama de secuencia. Diagrama de secuencia

12/08/2017. Diagrama de secuencia. Diagrama de secuencia. Diagrama de secuencia. Diagrama de secuencia ICI3242 Modelamiento de sistemas de software Escuela de Ingeniería Informática Pontificia Universidad Católica de Valparaíso "Un diagrama que representa una interacción poniendo el foco en la secuencia

Más detalles

PROYECTO: Plataforma inalámbrica para impulsar la competitividad en zonas urbanas y rurales

PROYECTO: Plataforma inalámbrica para impulsar la competitividad en zonas urbanas y rurales PROYECTO: Plataforma inalámbrica para impulsar la competitividad en zonas urbanas y rurales ACTIVIDAD.4.1 Realización del modelo del proceso para la creación de la plataforma Dra. María Eugenia Cabello

Más detalles

Generación automática de interfaces de usuario para sistemas de información clínicos basados en una metodología multi-nivel

Generación automática de interfaces de usuario para sistemas de información clínicos basados en una metodología multi-nivel Generación automática de interfaces de usuario para sistemas de información clínicos basados en una metodología multi-nivel Arianne Palau, Laura Cuadrado, Antonio Lopez, Pablo Pazos http://cabolabs.com/papers/infolac2014_palau-cuadrado-pazos.pdf

Más detalles

Asignatura: Ingeniería del Software II Profesor: José Merseguer. Departamento de Informática e Ingeniería de Sistemas

Asignatura: Ingeniería del Software II Profesor: José Merseguer. Departamento de Informática e Ingeniería de Sistemas Apuntes de UML Asignatura: Ingeniería del Software II Profesor: José Merseguer Departamento de Informática e Ingeniería de Sistemas Universidad de Zaragoza Agradecimiento: Estos apuntes tomaron como base

Más detalles

Adaptatividad y Adaptabilidad en el Modelado de Usuarios para Aplicaciones Web

Adaptatividad y Adaptabilidad en el Modelado de Usuarios para Aplicaciones Web Adaptatividad y Adaptabilidad en el Modelado de Usuarios para Aplicaciones Web ING. SILVIA ALCARAZ VITALE silvialcaraz@gmail.com ING. MAGALÍ GONZÁLEZ mgonzalez@uca.edu.py DR. LUCA CERNUZZI lcernuzz@uca.edu.py

Más detalles

ESPORA: Definición de Lenguajes de Operación. Específicos de Dominio Siguiendo un Proceso de. Desarrollo Dirigido por Modelos

ESPORA: Definición de Lenguajes de Operación. Específicos de Dominio Siguiendo un Proceso de. Desarrollo Dirigido por Modelos ESPORA: Definición de Lenguajes de Operación Específicos de Dominio Siguiendo un Proceso de Desarrollo Dirigido por Modelos David Musat Salvador Jennifer Pérez Benedí Pedro P. Alarcón Cavero GRUPO DE INVESTIGACIÓN

Más detalles

Diagrama de despliegue

Diagrama de despliegue Diagrama de despliegue Definición.- Los Diagramas de Despliegue muestran las relaciones físicas de los distintos nodos que componen un sistema y el reparto de los componentes sobre dichos nodos. La vista

Más detalles

Ingeniería a de Software CC51A

Ingeniería a de Software CC51A Ingeniería a de Software CC51A Clase Auxiliar Auxiliar: Andrés s Neyem Oficina 418 de Doctorado aneyem@dcc.uchile.cl 19 de Marzo de 2007 Aspectos Generales Grupo CC51A Diseño Cliente Requisitos Usuario

Más detalles

Maestría en Ingeniería

Maestría en Ingeniería Maestría en Ingeniería Curso de Ingeniería Web Sesión 2: Métodologías de Diseño de Aplicaciones Web Fernando Barraza A. fbarraza@puj.edu.co Sesión 2 Objetivo: Presentar las aproximaciones actuales y métodos

Más detalles

Crear diagramas basados en UML para la representación de la solución a un problema mediante el Paradigma Orientado a Objetos.

Crear diagramas basados en UML para la representación de la solución a un problema mediante el Paradigma Orientado a Objetos. PROGRAMA DE CURSO Modelo 2009 DEPARTAMENTO: COMPUTACIÓN Y DISEÑO GRÁFICO NOMBRE DEL CURSO: Diseño de Software con Práctica Profesional CLAVE: 1013M ACADEMIA A LA QUE PERTENECE: Diseño de Software PROFESIONAL

Más detalles

Autor: Amhed Sinue Pérez Valdéz

Autor: Amhed Sinue Pérez Valdéz LYG_2015 Maestría en: Tecnologías de la Información y comunicación Asignatura: Ingeniería del Software Autor: Amhed Sinue Pérez Valdéz INTRODUCCIÓN La ingeniería de software es la forma en que se desarrollan

Más detalles

Transformando Diseños Orientados a Aspectos en Código Orientado a Aspectos

Transformando Diseños Orientados a Aspectos en Código Orientado a Aspectos Transformando Diseños Orientados a Aspectos en Código Orientado a Aspectos C. Abdelahad, D. Riesco, L. Baigorria, G. Montejano Departamento de Informática Universidad Nacional de San Luis San Luis, Capital,

Más detalles

UN ENFOQUE MDD PARA EL DESARROLLO DE RIA

UN ENFOQUE MDD PARA EL DESARROLLO DE RIA UN ENFOQUE MDD PARA EL DESARROLLO DE RIA Guido Nuñez Cáceres 15 de febrero de 2017 Defensa Final de Proyecto Final de Carrera Departamento de Electrónica e Informática Facultad de Ciencias y Tecnología

Más detalles

Bases de Datos Especializadas

Bases de Datos Especializadas Bases de Datos Especializadas BASES DE DATOS ESPECIALIZADAS 1 Sesión No. 2 Nombre: Modelado de datos Objetivo : Al término de la sesión, el alumno identificará elementos el modelado de datos. Contextualización

Más detalles

QUÉ SON EL ANÁLISIS Y EL DISEÑO?

QUÉ SON EL ANÁLISIS Y EL DISEÑO? QUÉ SON EL ANÁLISIS Y EL DISEÑO? Análisis: Investigación Para crear una aplicación de software hay que describir el problema y las necesidades o requerimientos: en qué consiste el conflicto y que debe

Más detalles

CAPÍTULO 5 DESARROLLO DEL SISTEMA

CAPÍTULO 5 DESARROLLO DEL SISTEMA DESARROLLO DEL SISTEMA CAPÍTULO 5 DESARROLLO DEL SISTEMA 5.1 IMPLEMENTACIÓN DE BASE DE DATOS La implementación de la base de datos se realizó usando el manejador de Bases de datos Microsoft SQL Server

Más detalles

1. INTRODUCCIÓN AL UML...1

1. INTRODUCCIÓN AL UML...1 1. INTRODUCCIÓN AL UML...1 1.1. INTRODUCCIÓN...1 1.2. MODELO CONCEPTUAL DEL UML...1 1.2.1. Bloques de construcción del UML...2 1.2.1.1. Cosas...2 1.2.1.2. Relaciones...3 1.2.1.3. Diagramas...3 1.2.2. Reglas

Más detalles

Lenguaje Unificado de Modelado

Lenguaje Unificado de Modelado Lenguaje Unificado de Modelado UML UML es el lenguaje de modelado de sistemas de software más conocido y utilizado en la actualidad. Es un lenguaje gráfico para visualizar, especificar, construir y documentar

Más detalles

Desarrollo de Lenguajes de Dominio Específico

Desarrollo de Lenguajes de Dominio Específico Desarrollo de Lenguajes de Dominio Específico Mernik, M., Heering, J., Sloane, A.M., When and how to develop domainspecific languages, ACM Computing Surveys, Vol. 37, No. 4, Dec. 2005, pp. 316-344. Lenguajes

Más detalles

Unidad IV: Modelo de Diseño 4.1. Estrategias de diseño

Unidad IV: Modelo de Diseño 4.1. Estrategias de diseño Unidad IV: Modelo de Diseño 4.1. Estrategias de diseño El diseño se define como la búsqueda de una solución en cualquier campo, sin embargo las soluciones no llegan de una manera simple, muchas veces realizamos

Más detalles

Desarrollo Orientado a Objetos

Desarrollo Orientado a Objetos Desarrollo Orientado a Objetos 1 Sesión No. 2 Nombre: Introducción al desarrollo orientado a objetos. Parte II. Contextualización Dentro del desarrollo orientado a objetos se cuenta con varios elementos

Más detalles

UNIVERSIDAD DE GUADALAJARA. Experiencia metodología de proyectos IT, desarrollo de bases de datos, licenciatura en informática o afines

UNIVERSIDAD DE GUADALAJARA. Experiencia metodología de proyectos IT, desarrollo de bases de datos, licenciatura en informática o afines Formato 1 Diseño estructural y propuesta de actividades 1. DATOS GENERALES DEL CURSO Nombre del curso Diseño e implementación de bases de datos Programa al que pertenece Licenciatura en Tecnologías e Información

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

Específicamente los elementos de un patrón de diseño son [ 3 ] :

Específicamente los elementos de un patrón de diseño son [ 3 ] : Patrones de Diseño Marco Teórico Introductorio Diego Andrés Asenjo González Alejandro Ríos Peña Contenido Qué son los patrones de Diseño?...1 Clasificación de los patrones de diseño...3 Patrones de Creación.....4

Más detalles

PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ

PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ PONTIFICIA UNIVERSIDAD CATÓLICA DEL PERÚ FACULTAD DE CIENCIAS E INGENIERÍA ANÁLISIS, DISEÑO E IMPLEMENTACIÓN DE UNA HERRAMIENTA CASE PARA LA GESTIÓN DEL ALCANCE DE PROYECTOS BASADA EN WBS Anexos Germán

Más detalles

UNIVERSIDAD DE LA HUASTECA

UNIVERSIDAD DE LA HUASTECA UNIVERSIDAD DE LA HUASTECA VERACRUZANA PLANEACIÓN Y ARTEFACTOS INGENIERIA DE SOFTWARE C A T E D R Á T I C O : N o m b r e d e l d o c e n t e P R E S E N T A N : N o m b r e d e l o s i n t e g r a n t

Más detalles

ANÁLISIS DE SISTEMAS. Prof. Eliz Mora

ANÁLISIS DE SISTEMAS. Prof. Eliz Mora ANÁLISIS DE SISTEMAS Prof. Eliz Mora Programa Fundamentos del Análisis de Sistemas Estilos Organizacionales y su impacto en los Sistemas de Información Rol del Analista de Sistema Determinación de Factibilidad

Más detalles

INTRODUCCIÓN A LA NOTACIÓN UML Diagramas de clases

INTRODUCCIÓN A LA NOTACIÓN UML Diagramas de clases INTRODUCCIÓN A LA NOTACIÓN UML Diagramas de clases 1 Introducción Este documento proporciona una breve descripción de la notación UML utilizada en los diagramas UML de clases. 2 Clase Una clase UML (figura

Más detalles

Universidad Nacional del Nordeste. IBM WebSphere Studio Application Developer (WSAD)

Universidad Nacional del Nordeste. IBM WebSphere Studio Application Developer (WSAD) Universidad Nacional del Nordeste IBM WebSphere Studio Application Developer (WSAD) Año o 2006 Multiplataforma Inicialmente, la Web ofrecía a una interactividad prácticamente nula (los usuarios se limitaban

Más detalles

Universidad Autónoma de Madrid

Universidad Autónoma de Madrid Universidad Autónoma de Madrid Escuela Politécnica Superior Máster I 2 TIC Trabajo de Fin de Máster Descripción de las actividades de una propuesta de Metodología de Desarrollo de Software Dirigida por

Más detalles

EXAMEN EXTRAORDINARIO Informática y Computación IV

EXAMEN EXTRAORDINARIO Informática y Computación IV Nombre del alumno: EXAMEN EXTRAORDINARIO Informática y Computación IV Lee cada una de las preguntas y contesta con una V para verdedero o una F en caso de que sea falso lo que se propone. Una base de datos

Más detalles

Es un conjunto de palabras y símbolos que permiten al usuario generar comandos e instrucciones para que la computadora los ejecute.

Es un conjunto de palabras y símbolos que permiten al usuario generar comandos e instrucciones para que la computadora los ejecute. Los problemas que se plantean en la vida diaria suelen ser resueltos mediante el uso de la capacidad intelectual y la habilidad manual del ser humano. La utilización de la computadora en la resolución

Más detalles

UML. (Unified Modeling Language) Lenguage Unificado de Modelado

UML. (Unified Modeling Language) Lenguage Unificado de Modelado 1 (Unified Modeling Language) Lenguage Unificado de Modelado Antonio J. Sierra 1 Índice Historia Introducción Objetivos del modelo Críticas Modelo Conceptual de Clases Diagrama de Clases 2 2 Historia (I)

Más detalles

Miguel López Morales Juan Carlos Ríos Legupín Daniel Ruiz Camacho Diego Sánchez Díaz

Miguel López Morales Juan Carlos Ríos Legupín Daniel Ruiz Camacho Diego Sánchez Díaz Miguel López Morales Juan Carlos Ríos Legupín Daniel Ruiz Camacho Diego Sánchez Díaz Índice Introducción a Ruby Ventajas y Desventajas de Ruby Tipos de DSL DSL en Ruby Instalación de Ruby Iniciación a

Más detalles

Sistemas de Bases de Datos I Introducción y Conceptos Generales

Sistemas de Bases de Datos I Introducción y Conceptos Generales Sistemas de Bases de Datos I Introducción y Conceptos Generales Base de Datos Definición: Un conjunto de datos relacionados entre si y almacenada por un prolongado período de tiempo. Representa algún aspecto

Más detalles

Interacción Persona - Ordenador

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

Más detalles

Transformación de modelos conceptuales mediante uso de XSLT

Transformación de modelos conceptuales mediante uso de XSLT Transformación de modelos conceptuales mediante uso de XSLT Juan Pablo Fernández Taurant, Claudia Castro, Marcelo Marciszack Dpto. Ingeniería en Sist. de Información/ Facultad Regional Córdoba/ Universidad

Más detalles

Modelo Dinámico del Diseño del Software y Representación en UML. UNIDAD 9 Análisis y Diseño de Sistemas de Información

Modelo Dinámico del Diseño del Software y Representación en UML. UNIDAD 9 Análisis y Diseño de Sistemas de Información Modelo Dinámico del Diseño del Software y Representación en UML UNIDAD 9 Análisis y Diseño de Sistemas de Información El Modelo Dinámico El objetivo del modelo Dinámico es presentar o describir el comportamiento

Más detalles

Objetivos Didácticos Contenidos Criterios de evaluación Estándares de aprendizaje evaluables

Objetivos Didácticos Contenidos Criterios de evaluación Estándares de aprendizaje evaluables Bloque 1. La sociedad de la Información y el ordenador Describir las diferencias entre La Sociedad de la Información y la Analizar y valorar las influencias de 1.1. Describe las diferencias entre lo que

Más detalles

Elicitación n de Requisitos de Seguridad en Procesos de Negocio

Elicitación n de Requisitos de Seguridad en Procesos de Negocio I Taller sobre Procesos de Negocio e Ingeniería del Software Zaragoza, 11 de septiembre de 2007 Elicitación n de Requisitos de Seguridad en Procesos de Negocio Alfonso Rodríguez Universidad del Bio Bio,

Más detalles

Análisis y Negociación de Requisitos

Análisis y Negociación de Requisitos 11/11/2013 Análisis y Negociación de Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Objetivos del tema Conocer los objetivos,

Más detalles

Hacia una integración de MDA y el Proceso Unificado a través de reglas de transformación QVT

Hacia una integración de MDA y el Proceso Unificado a través de reglas de transformación QVT Hacia una integración de MDA y el Proceso Unificado a través de reglas de transformación QVT Ariel Arsaute, Marcelo Uva, Fabio Zorzan, Marcela Daniele, Paola Martellotto, Ariel Gonzalez, Mariana Frutos

Más detalles

Proceso Unificado de Desarrollo de Software. 13 de sep de 2006

Proceso Unificado de Desarrollo de Software. 13 de sep de 2006 Proceso Unificado de Desarrollo de Software 13 de sep de 2006 Referencias básicas El Proceso unificado de desarrollo de Software I. Jacobson, G. Booch y J.Rumbaugh Addison Wesley - Pearson Education 1999

Más detalles

Herramientas de soporte al proceso de desarrollo dirigido por modelos y su implementación con DSL Tools

Herramientas de soporte al proceso de desarrollo dirigido por modelos y su implementación con DSL Tools Herramientas de soporte al proceso de desarrollo dirigido por modelos y su implementación con DSL Tools L. Cuaderno, E. Di Lorenzo, A. Gaig, D. García, R. Giandini L. Nahuel, L. Ocaranza, M. Pinasco, C.

Más detalles

Introducción a la orientación a objetos y a UML

Introducción a la orientación a objetos y a UML Introducción a la orientación a objetos y a UML El lenguaje unificado de modelado. Manual de referencia. James Rumbaugh, Ivar Jacobson, Grady Booch. Ed. Addison Wesley, 2000 El proceso unificado de desarrollo,

Más detalles

Diseño de un Profile para aplicaciones Móviles

Diseño de un Profile para aplicaciones Móviles Diseño de un Profile para aplicaciones Móviles 1 Daniel A. Giulianelli, 2 Claudia F. Pons, 1 Pablo M. Vera, 1 Rocío A. Rodríguez, 1 Victor F. Fernández 1 Universidad Nacional de La Matanza (UNLaM) Departamento

Más detalles

Tema 1 Introducción al paradigma de programación orientado a objetos

Tema 1 Introducción al paradigma de programación orientado a objetos Tema 1 Introducción al paradigma de programación orientado a objetos Programación Orientada a Objetos Curso 2013/2014 Contenido Paradigmas de programación vs. Lenguajes de programación. Evolución de los

Más detalles

UNIDAD I. Universidad del Zulia Costa Oriental del Lago. Conceptos Básicos

UNIDAD I. Universidad del Zulia Costa Oriental del Lago. Conceptos Básicos Costa Oriental del Lago UNIDAD I Conceptos Básicos Comandos internos y externos. Estructura básicas: entidad, atributo, base de datos, clave primaria y secundaria, registro y archivo de datos empresas

Más detalles

En la ingeniería de software se denomina aplicación web a aquellas aplicaciones que los usuarios pueden utilizar accediendo a un servidor web a

En la ingeniería de software se denomina aplicación web a aquellas aplicaciones que los usuarios pueden utilizar accediendo a un servidor web a En la ingeniería de software se denomina aplicación web a aquellas aplicaciones que los usuarios pueden utilizar accediendo a un servidor web a través de Internet o de una intranet mediante un navegador.

Más detalles

Control del Documento

Control del Documento Control del Documento Proyecto [Nombre del Proyecto al que se refiere este documento] Título Arquitectura del Sistema [v1.1.1 al 1 de enero de 2007.] Generado por : [Fulanito de Tal y Menganito de Cual.]

Más detalles