Variabilidad en requisitos: Un enfoque basado en meta-modelado y transformación de modelos Bruno González-Baixauli Miguel A. Laguna Julio Cesar Sampaio.

Slides:



Advertisements
Presentaciones similares
MODELOS ORIENTADOS A OBJETOS
Advertisements

U.M.L A/Gx. Diego Gutiérrez Application Analysis and Design.
Arquitecturas de administración de redes y sus submodelos
INGENIERÍA DE SOFTWARE Introducción Arquitectura de Software
Red Social: “Un millón de Amigos”.
Fundamentos de Diseño de Software INFT.1
Enfoques de desarrollo
DATA WAREHOUSE Presentador Por: Andrés Fabián Cortes Solano.
PROCESO Y MODELOS EN LA INGENIERIA DE SOFTWARE
CRISP-DM (
CALIDAD DE PRODUCTO PORTADA CALIDAD DE PRODUCTO.
Equipo 11 -Enríquez Chávez Jocelyn -Martínez Arvallo Diana Berenice
Guia Diseño Robert Echeverria
DESARROLLO E IMPLEMENTACIÓN DE UN PLUGIN DE GOOGLE WALLET PARA PAGOS ONLINE UTILIZANDO SOFTWARE OPEN SOURCE.
COMPONENTIZACIÓN DE ALGORITMOS GENETICOS Y SU IMPLEMENTACIÓN EN UNA PLATAFORMA ABIERTA PARA APRENDIZAJE COMPUTACIONAL.
Etapas y actividades en el desarrollo OO basado en UML
Proyecto Fin de Carrera E.T.S. Ingeniería Informática 26 de Septiembre de 2006 DESARROLLO DE UN COMPONENTE TECLADO ALUMNO: Fco. Javier Sánchez Ramos TUTORES:
Autor: Jose Carlos Jiménez Sánchez Tutor: Miguel Ángel Laguna Serrano
INTRODUCCIÓN A UML Oscar Miguel Alonso Moreno.
Ingeniería del Software
Andrés Acuña Steven Walker
Evaluación de Productos
Desarrollo Orientado a Objetos con UML
Una Introducción a UML El Modelo de Proceso de Negocio
“Persuasive argumentation in negotiation” Katia P. Sycara.
Fundamentos de Programación
I Taller sobre Desarrollo de Software Dirigido por Modelos, MDA y Aplicaciones (DSDM'04) MDA Aplicado: Una Gramática de Grafos para la Transformación de.
Se viven nuevos escenarios
PROCESO DE DESARROLLO. Introducción Mediante esta presentación se pretende describir el proceso de desarrollo del TALLER I.
Weka.
Departamento de Sistemas Informáticos y Programación Universidad Complutense de Madrid Uso de DocBook en la creación de Objetos Educativos interoperables.
(c) P. Gomez-Gil, INAOE DISEÑO DE COMPONENTES DE SOFTWARE * NOTAS DEL CURSO Ingeniería de Software I DRA. MARIA DEL PILAR GÓMEZ GIL INAOEP.
Ingeniería de Software
Sesión 5 Herramientas de creación de DSL gráficos (GMF)
Ingeniería de Software Orientado a Objetos
Guía para la formulación de un proyecto de investigación cualitativa Introducción a la psicología social Universidad Tecnológica de Guadalajara.
5.3 APROXIMACIONES AL DISEÑO
Contexto Proyecto consolidado dentro de la línea de investigación de Sistemas de Información en el Dpto. de Ingeniería en Sistemas de Información de la.
Asignación de Tratamientos a Responsabilidades en el contexto del Diseño Dirigido por Modelos David Ameller & Xavier Franch Universitat Politècnica de.
CONCEPTOS BÁSICOS Diseño de Sistemas.
Administración Proyectos Jorge Baracaldo Robin Ochoa.
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
Análisis y diseño detallado de aplicaciones informáticas de gestión
Vista de interacción  Una vista de interacción muestra el flujo de control requerido que se establece entre los objetos.
Modelo-Vista-Controlador Este patrón fue descrito por primera vez por Trygve Reenskaug en 1979, y la implementación original fue realizada en Smalltalk.
Ingeniería de software
Requerimientos del Puesto
Formulación de Proyectos de Titulación
CICLO DE VIDA Y NORMAALIZACION DE UN SISTEMA DE BASE DE DATOS
LOGO e-Learning Desktop Integración de RIA’s a objetos de Aprendizaje Alvaro Rodríguez, Darvin Orozco, Rocael Hernández Universidad Galileo {alvrodriguez,
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
Estudio de Viabilidad del Sistema (EVS)
El modelo de análisis tiene como objetivo generar una arquitectura de objetos que sirva como base para el diseño posterior del sistema. Dependiendo del.
Evaluación interna Nivel superior (NS)
Ingeniería de Requisitos
Relación con otras asignaturas del plan de estudio
Introducción al proceso de verificación y validación.
ANÁLISIS ESTRUCTURADO
Actividades de aprendizaje basadas en la red: WebQuest R e d d e P r o f e s o r e s I n n o v a d o r e s Módulo: Actividades de aprendizaje basadas en.
Proceso de Diseño de Interfaces
AFM – Web File Manager Versión 5. Novedades técnicas – Forma de Implementación Siguiendo última tecnología de Microsoft: Framework.NET 3.5 Implementación.
ESTILOS Y TIPOS DE PLANEACIÓN
Evaluación interna Nivel superior (NS)
UNIVERSIDAD AUTÓNOMA SAN FRANCISCO TEMA : PLANEACION ESTRATEGICA EN LA ADMINISTRACION.                   CURSO : ADMINISTRACION GENERAL   ESTUDIANTE.
POWERT POINT Es un programa diseñado para hacer presentaciones con texto esquematizado, animaciones de texto e imágenes prediseñadas o importadas. Se le.
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
ADMINISTRACIÓN Docente: Cr. Damián Galó.
Entorno de Recomendación para el Desarrollo de Objetos de Aprendizaje Manuel E. Prieto Universidad de Castilla-La Mancha, España Victor H. Menéndez Universidad.
VERIFICACIÓN Y VALIDACIÓN DE SISTEMAS 3.10 Fase de manejo de requerimientos 4.1 Modelado de pruebas en UML Ponente: ing. Alejandro tapia vazquez.
Transcripción de la presentación:

Variabilidad en requisitos: Un enfoque basado en meta-modelado y transformación de modelos Bruno González-Baixauli Miguel A. Laguna Julio Cesar Sampaio do Prado Leite III Taller sobre Desarrollo de Software Dirigido por Modelos

Página 2 Grupo de Investigación en Reutilización y O.O. Agenda Introducción: Variabilidad, Metas y Aspectos Meta-modelo Reglas de Composición Ejemplo Conclusiones

Página 3 Grupo de Investigación en Reutilización y O.O. Introducción TAREA SOFTGOAL META descomposición contribución(+/-) operacionalización Modelado de la Variabilidad en requisitos

Página 4 Grupo de Investigación en Reutilización y O.O. Introducción Problemas Integración del modelo de metas funcional con el no funcional Explosión combinatoria debido a las alternativas Solución Propuesta: orientación a aspectos “Entrelazar” operacionalizaciones en modelos funcionales Composición Parcial Fases: a) meta-modelo y reglas de composición de modelos en vistas b) técnicas de exploración y selección de la variabilidad c) técnicas de configuración de la variabilidad.

Página 5 Grupo de Investigación en Reutilización y O.O. Meta-modelo Modelar elementos y relaciones OM Relacionar parte funcional y no funcional Modularizar partes de modelo Clásica: un elemento “explosiona” a un modelo Aspectual: composición (“weaving”) Creación de vistas Referencias para no duplicar elementos Modificables (eliminar elementos) Nuevas relaciones producidas por composición

Página 6 Grupo de Investigación en Reutilización y O.O. Relacionar Funcional y No Funcional Nueva relación: aspectual Indica que un softgoal (RNF) modifica a un elemento funcional Encriptar [Datos] Autentificar [Usuario] Seguridad ++ Mandar [Correo-e] Recibir [Correo-e] Cliente [Correo-e] Autentificar [Usuario] Encriptar [Datos] Mandar [Correo-e]

Página 7 Grupo de Investigación en Reutilización y O.O. Meta-modelo (1)

Página 8 Grupo de Investigación en Reutilización y O.O. Meta-modelo (2)

Página 9 Grupo de Investigación en Reutilización y O.O. Composición (weaving) Permiten crear nuevas vistas en el proyecto a partir de 1 o 2 modelos (de Interés o Vista) De 1 modelo para modificarlo No existe un método para especificar composiciones Utilizar transformaciones Problema:de 1 modelo a otro modelo Solución: el modelo es todo el proyecto

Página 10 Grupo de Investigación en Reutilización y O.O. Composición (weaving) 3 tipos de reglas: Crear vista (View) Crear referencias (ElementRef y RelationshipRef) Composición (AO_Relationships -> nuevas relaciones) Buscar Operacionalizaciones del Elemento Source y crear Relación OR con sources = operacionalizaciones y target = Elemento Target

Página 11 Grupo de Investigación en Reutilización y O.O. Composición (Crear Vista)

Página 12 Grupo de Investigación en Reutilización y O.O. Composición (Crear Referencias) b a

Página 13 Grupo de Investigación en Reutilización y O.O. Composición (Weaving)

Página 14 Grupo de Investigación en Reutilización y O.O. Composición (Weaving)

Página 15 Grupo de Investigación en Reutilización y O.O. Implementación con GME

Página 16 Grupo de Investigación en Reutilización y O.O. Implementación con GME

Página 17 Grupo de Investigación en Reutilización y O.O. Ejemplo: Modelos de Interés – Funcional Permitir [Recepción, Mensaje] Permitir [Composición, Mensaje] Permitir [Emisión, Mensaje] Permitir [Comunicación] Permitir [Entrada, Mensaje] Softgoal Meta Tarea Referencia Operacionalización Contribución Descomposición

Página 18 Grupo de Investigación en Reutilización y O.O. Ejemplo: Modelos de Interés – RNF Adaptable [Entrada, Discapacidad Motora] Adaptable [Composición, Discapacidad Habla] Adaptable [Composición, Discapacidad Mental] Usar [Componer, SPC] Usar [Reconocedor Voz] Usar [Entrada, Botones] Usar [Entrada, Barrido] Softgoal Meta Tarea Referencia Operacionalización Contribución Descomposición

Página 19 Grupo de Investigación en Reutilización y O.O. Modelos de Interés – R. Aspectuales

Página 20 Grupo de Investigación en Reutilización y O.O. Modelos de Interés – Vistas (1) Adaptable [Entrada, Discapacidad Motora] Adaptable [Composición, Discapacidad Habla]Adaptable [Composición, Discapacidad Mental] Usar [Componer, SPC] Usar [Reconocedor Voz]Usar [Entrada, Botones] Usar [Entrada, Barrido]

Página 21 Grupo de Investigación en Reutilización y O.O. Modelos de Interés – Vistas (3) Usar [Entrada, Barrido] Permitir [Emisión, Mensaje] Adaptable [Entrada, Discapacidad Motora] Permitir [Entrada, Mensaje] Usar [Entrada, Botones] Adaptable [Entrada, Discapacidad Mental] Usar [Componer, SPC] Permitir [Composición, Mensaje] Adaptable [Entrada, Discapacidad Habla] Usar [Reconocedor Voz]

Página 22 Grupo de Investigación en Reutilización y O.O. Conclusiones Modelar modelos de metas con enfoque aspectual Meta-modelo basado en modelos de interés y vistas Reglas de composición para generar nuevas vistas de forma automática Aplicable al modelado de metas en general. Relacionar parte funcional y no funcional Análisis por separado Mejor estructuración -> mayor reutilización Variabilidad Vistas donde se pueden eliminar elementos (escalabilidad) Componer solo ciertos modelos (escalabilidad) Análisis de los RNF con NFR Framework Utilización de catálogos de RNF

Página 23 Grupo de Investigación en Reutilización y O.O. Trabajo Futuro Definir técnicas para el análisis de la variabilidad Analizando diferentes RNF Priorizando unos RNF sobre otros Adaptar el trabajo desarrollado para el análisis de la configuración Herramienta de modelado Visualización de vistas Catálogos Aplicación de composiciones transparente

Página 24 Grupo de Investigación en Reutilización y O.O. Meta-modelo (3) [TR-GIRO “Meta-modelo para el Análisis de Variabilidad Guiado por Metas ”,

Página 25 Grupo de Investigación en Reutilización y O.O. Meta-modelo (4) Elemento [Meta-clase]Descripción Proyecto [Project]Proyecto de variabilidad orientado a metas. Es una agrupación de modelos. Modelo [Model]Modelo del proyecto. Modelo de Interés [Concern]Una parte de interés del sistema a analizar. Es una estructura jerárquica de Elementos con un nodo raíz. Vista [View]Modelo generado a partir de uno o más modelos. Elemento [Element]Elementos del Modelo de Interés. Se describen por un tema (Subject) y cero o más tópicos (Topic). Meta [Goal]Objetivo del sistema. Se descomponen en sub-metas hasta llegar a las tareas. Valores: alcanzada / denegada. Tarea [Task]Forma de alcanzar una meta / satisfacer un softgoal. Puede ser un algoritmo, proceso, restricción, decisión de diseño… Su presencia o no en una variante determina los valores de metas y softgoals. Softgoal [Softgoal]Meta que no tiene un criterio claro y definido de satisfacción. Valores desde claramente satisfecho a claramente insatisfecho. Descriptor [DescriptionElement]Unidad de descripción de un elemento. Se organizan en jerarquías de herencia que pueden utilizarse para sugerir relaciones aspectuales. Relación OM [GO_Relationship]Relaciones propias de los modelos orientados a metas. Descomposición [Decomposition]Relación de jerarquía entre elementos de mismo tipo o de tarea a meta. Subtipos: And, Or, Xor. Operacionalización [Operationalization]Indica una posible solución a un softgoal (representada como una tarea). Subtipos: Strong, Weak. Contribución [Contribution]Indica como contribuye un elemento a un softgoal. Suptipos: Strong Possitive, Weak Positive, Weak Negative, Strong Negative Relación Aspectual [AO_Relationship]Indica que un softgoal puede afectar a un elemento funcional, modificando su comportamiento. Restricción [Constraint]Relaciona una o más tareas. Subtipos: Requires (1 tarea necesita otras tareas) y MutuallyExclusive (las tareas no pueden estar a la vez) Referencia a Elemento [Element_Ref]Referencia a un elemento. Referencia a Relación [Relationship_Ref]Referencia a una relación. [TR-GIRO “Meta-modelo para el Análisis de Variabilidad Guiado por Metas ”,

Página 26 Grupo de Investigación en Reutilización y O.O. Implementación (Meta-modelo) GME 5 (Generic Modeling Environment) Universidad de Vanderbilt (Nashville) Permite definir el meta-modelo Permite comprobar restricciones (OCL) Permite personalizar presentación Exporta modelos a XML Gratuito

Página 27 Grupo de Investigación en Reutilización y O.O. Implementación (Reglas) Hojas de Estilo XSLT XML Modelo GME Exportar XML Modelo Meta-modelo XLST XSLT (M1, M2) XML Modelo Meta-modelo con vista XSLT XML Modelo GME con vista

Página 28 Grupo de Investigación en Reutilización y O.O. Dominio de Aplicación Comunicación alternativa y adaptable (AAC) Personas discapacitadas RNF fundamentales: Facilidad de manejo Movilidad Restringido Alumnos Colegio Obregón – Parálisis cerebral Sobre PDAs

Página 29 Grupo de Investigación en Reutilización y O.O. Modelos de Interés – Vistas (2) Adaptable [Entrada, Discapacidad Motora] Adaptable [Entrada, Discapacidad Habla] Adaptable [Composición, Discapacidad Mental] Usar [Componer, SPC] Usar [Reconocedor Voz] Usar [Entrada, Botones] Usar [Entrada, Barrido] a Usar [Reconocedor Voz] Usar [Entrada, Botones] Usar [Entrada, Barrido] bc