1 BLOQUE I 4 MDE orientado al usario Diseño Centrado en el Usuario Profesorado: Dra. María José Escalona Cuaresma Dr. José Mariano González.

Slides:



Advertisements
Presentaciones similares
MODELOS ORIENTADOS A OBJETOS
Advertisements

David Díez, Camino Fernández, Juan Manuel Dodero
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA 2006.
METODOLOGÍAS ÁGILES “PROCESO UNIFICADO ÁGIL (AUP)
PROYECTO DE GRADO ANÁLISIS, DISEÑO, DESARROLLO E IMPLEMENTACIÓN DE UN SISTEMA WEB PARA EL CONTROL DE UN TALLER TÉCNICO AUTOMOTRIZ EN PLATAFORMA PHP –
BPMN como herramienta de modelado de negocio para la creación de modelos conceptuales Integrantes Horenstein, Nicolás Gómez, Federico IDJEI 52.
Especificación y Verificación de Transformaciones de Modelos
Modelos de Proceso del Software
GENERADOR SEMIAUTOMÁTICO DE DIAGRAMAS DE SECUENCIA A PARTIR DE ESCENARIOS REPRESENTADOS COMO GRAFOS DE SOWA Por: CLAUDIA MARÍA GÓMEZ FLÓREZ Director:
Andrés Acuña Steven Walker
Erique Gaspar, Carlos Alfredo
Desarrollo Orientado a Objetos con UML
HERRAMIENTAS CASE.
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.
Análisis de requisitos
Explorar y conocer la técnica de Verificación De Modelos (Model Checking) con la finalidad de poder validar los Modelos de Casos de Uso y así poder ampliar.
El Proceso Software Ingeniería en Informática
Introducción al Proceso de Desarrollo de Software Patricio Letelier Departamento de Sistemas Informáticos y Computación Universidad.
10 Metodologías de desarrollo Web
Tendencias de la Ingeniería de Software Embebido Loayza Soloisolo, Jorge Ramirez Ticona, Jorge Thony Coaquira Ugarte, Lucas.
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA2006.
Especificación de un metamodelo para apoyar y extender la propuesta TD-MBUID William Joseph Giraldo Orozco Ph.D. Director Helmuth Trefttz Gómez Ph.D. CoDirector.
Aplicación Web para Informes de Asignaturas de Trabajo en Grupo
Como Desarrollar SW Distribuido de Calidad
Fundamentos de programación
Tema I Arquitectura de Software. Arquitectura de software es un conjunto de reglas que definen la estructura de un sistema y las relaciones entre sus.
Junio I Jornadas de trabajo META Subproyecto METAMETHOD - Soporte a la Especificación de Metodologías de Desarrollo mediante Técnicas MDD -
ESCUELA POLITÉCNICA DEL EJÉRCITO
Asignación de Tratamientos a Responsabilidades en el contexto del Diseño Dirigido por Modelos David Ameller & Xavier Franch Universitat Politècnica de.
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA 2006.
Ingeniería de Software Asistida por Computadora
GRUPO CALIDAD/MÉTRICAS Coordinadora: Dra. Marcela Genero Bocco Grupo Alarcos Escuela Superior de Informática Universidad Castilla-La Mancha, Ciudad Real,
5/8/2015Metamodelamiento1 METAMODELADO Carlos Mario Zapata J.
Ingeniería de Software en la Robótica Educativa Gabriela Arévalo, Ph.D. CAETI- UAI, LIFIA-UNLP, CONICET
Unidad ll Equipo 2 Juan Carlos Martínez Ramos Erik Iván Mancilla Romero Cristian Suarez Luis Ángel Santiago Alex Joshua Serrano.
1 Ingeniería del Software Curso German Rigau Ingeniería Técnica en Informática de Sistemas.
Introducción al Proceso de Desarrollo de Software Patricio Letelier Centro de Formación de Postgrado – Depto. Sistemas Informáticos y Computación Universidad.
DESARROLLO WEB Y MULTIMEDIA Trabajo sobre Web Engineering
Contribuciones a Lenguajes de Modelado Educativo
Nombre de equipo: abaddon Camilo ramos rojas Grupo :6 Pista # 2 Traductor y motor de búsqueda : google Miércoles 1 de septiembre 2010 Pagina de respuesta.
Subproyecto Medwsa Proyecto CICYT META Ciudad Real, Junio 2007.
1 Ingeniería del Software Curso German Rigau Ingeniería Técnica en Informática de Sistemas.
Sistemas de Información Agosto-Diciembre 2007 Sesión # 10.
Un conjunto de perfiles UML para el modelado conceptual de minería de datos sobre almacenes de datos Tesis Doctoral José Jacobo Zubcoff Vallejo 26 de Junio.
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: material asignatura CS169,Software Engineering,
Introducción a UML Departamento de Informática Universidad de Rancagua
1 DESARROLLO DE UN SISTEMA PARA EL ENVIO DE MENSAJES APLICADO A LLAMADAS TELEFÓNICAS Nelson Aceituno Gómez Jorge Ronaldo Orozco Universidad.
Jairo Pinto Ing. sistemas
UML.
Integrantes: Dennys Quintero José Ortega Simón Fagundez Caracas 09 de Febrero de 2015.
Actividades en el Proceso de desarrollo de Software
Metodología de análisis y diseño de sistemas mecatrónicos.
2-oct-15Ingeniería de Requisitos1 INGENIERÍA DE REQUISITOS Carlos Mario Zapata J.
TIPOS DE DATOS ABSTRACTOS
INGENIERIA DE SOFTWARE
¿Qué es la Ingeniería De Software? Ingeniería de Software.
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
BPMN COMO HERRAMIENTA DE MODELADO DE NEGOCIO PARA LA CREACIÓN DE MODELOS CONCEPTUALES Integrantes Horenstein, Nicolás Gómez, Federico IDJEI 52.
1 BLOQUE II 2 Metodologías para la Web Diseño Centrado en el Usuario Profesorado: Dra. María José Escalona Cuaresma Dr. José Mariano González.
Modelado Orientado a Objetos Programación Orientada a Objetos Departamento de Sistemas Universidad del Cauca 2006.
Ingeniería de Sistemas Desarrollo y Servicios Web Sesión 2 Fernando Barraza A.
Arquitectura de software dirigida por modelos (Model-Driven Architecture) Liliana Favre UNCPBA2006.
Cómo aumentar la productividad a través de las tecnologías de modelado Adrián Noguero
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.
1 BLOQUE I 3 Técnicas en Ingeniería Web Diseño Centrado en el Usuario Profesorado: Dra. María José Escalona Cuaresma Dr. José Mariano.
Consulting, IT & Outsourcing Professional Services Estructura de la información del proyecto Diraya Atención Especializada en una herramienta CASE (Enterprise.
1 Diseño Centrado en el Usuario Máster Oficial en Ingeniería y Tecnología del Software Profesorado: Dra. María José Escalona Cuaresma
BLOQUE I 3 Técnicas en Ingeniería Web
Transformación de modelos mediante gramáticas de grafos
ATLAS Transformation Language Introducción y comparativa con QVT
Transcripción de la presentación:

1 BLOQUE I 4 MDE orientado al usario Diseño Centrado en el Usuario Profesorado: Dra. María José Escalona Cuaresma Dr. José Mariano González Romano Master Oficial en Ingeniería y Tecnología del Software Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Curso 2008/09

2 MDE para la Web Introducción El paradigma guiado por modelos ofrece una nueva perspectiva de trabajo en el desarrollo de software. En la Ingeniería Web ofrece una vía importante para “facilitar” el desarrollo y reducir el tiempo, aumentando la consistencia y trazabilidad. Esta aplicación se ha comenzado a denominar Ingeniería Guiada por modelos para la Web (MDWE) Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación ATKINSON, C., KÜHNE, T Model-Driven Development: A metamodeling Foundation. IEEE Software. Vol 20. Issue 5. pp

3 MDE para la Web Introducción La Ingeniería Guiada da más importancia a los conceptos que a la forma de representarlo. La idea es detectar los conceptos y representarlos de manera abstracta. Tras esto se definen las relaciones entre estos conceptos. Basándose en los conceptos se pueden definir transformaciones. Concepto 1 Concepto 2 Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación

4 No hay que mezclar los conceptos. MDA no es lo mismo que MDE Model Driven Archietecture (MDA) es la estandarización de la OMG como platarforma para soportar MDD. MDA se basa en separar la especificación de los detalles de implementación. MDA ofrece una aproximación que consiste en paso a paso ir consiguiendo modelos basado en transformaciones. MDE para la Web MDA Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación MDA is an approach to system development, which increases the power of models in that work. It is model driven because it provides a means for using models to direct the course of understanding, design, construction, deployment, operation, maintenance and modification.

5 MDE para la Web MDA Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación MDA contempla cuatro modelos: CIM: Computation independent model PIM: Platform independent model PSM: Platform specific model Code KOCH, N., ZHANG, G., ESCALONA, M.J Model Transformations from Requirements to Web System Design. ACM International Conference Proceeding Series. 6th international conference on Web Engineering (ICWE 2006). Ed. ACM. pp La ingeniería guiada por modelos es mucho más genérica, aunque se basa en la misma idea

6 MDE para la Web Estructura básica Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación PASO 1: Definir los conceptos (abstractos) PASO 2: Definir las relaciones entre ellos PASO 3: Definir las transformaciones PASO 4: Elegir una sintaxis concreta Hay que abstraerse para definir los artefactos con los que se trabaja. Independientemente de cómo los representemos (metamodelo) La forma más extendida es usar un diagrama de clases en el que, además hay que estudiar las asociaciones (metaasociaciones). Los metamodelos de diferentes fases se interrelacionan y se definen transformaciones que más adelante definirán el proceso sistemático de obtención de conceptos Cuando ya se tiene definido todo el entorno, es cuando se busca el cómo se va a representar. La ventaja es que ya la metodología no “cierra” a una representación.

7 MDE para la Web Definiendo los conceptos. Ej. NDT Requisitos Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación PASO 1: Definir los conceptos (abstractos) ESCALONA, M.J., ARAGÓN, G. NDT A Model-Driven approach for Web requirements. IEEE Transaction on Software Engineering. Vol. 34. Nº3. pp

8 MDE para la Web Definiendo los conceptos. Ej. NDT Navegación (UWE) Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación PASO 1: Definir los conceptos (abstractos) UWE Metamodel

9 MDE para la Web Definiendo los conceptos. Ej. NDT Constraints Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación PASO 1: Definir los conceptos (abstractos) PASO 2: Definir las relaciones entre ellos

10 MDE para la Web Transformaciones Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación Las transformaciones definen, mediante relaciones dinámicas, los pasos que hay que dar para conseguir un modelo a partir de otro. Se pueden expresar de muchas formas diferentes. ATL (Atlas Transformation languages). Lenguaje transformación soportadopor Eclipse Teoría de grafos, caso por ejemplo de OOWS. (AGG Graphs) QVT (Query-view Transformations). Caso de NDT o UWE bin/apps/doc?ad/ pdf Solución propia

11 MDE para la Web Transformaciones. Ej. NDT & QVT Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación PASO 1: Definir los conceptos (abstractos) PASO 2: Definir las relaciones entre ellos PASO 3: Definir las transformaciones Transformation Requirements2Content (ndt:NDT, uml: UML){ top relation R1{ checkonly domain ndt c:Concept {name = n}; enforce domain uml cl: Class{name = n}; relation R2{ checkonly domain ndt sf : SpecificField {namespace = cp:Concept{}, name =sfn}; enforce uml at: Attribute {namespace = cc: Class{}, name = atn}; where {sf.nature->size () = 0;} when {R1(cp, cc);} relation R3{ checkonly domain ndt sf : SpecificField {namespace = cp:Concept{}, name =sfn, nature = conc:Concept{}}; enforce uml as: Association {name = asn}; where {asn.connection = {cp, conc};} when {R1(cp, cc);} De los RA a las CL

12 MDE para la Web Definir la sintaxis concreta. Ej. NDT Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación PASO 1: Definir los conceptos (abstractos) PASO 2: Definir las relaciones entre ellos PASO 3: Definir las transformaciones PASO 4: Elegir una sintaxis concreta Requistios Patrones REM Patrones NDT & Análisis UWE & & Prototipos HTML

13 MDE para la Web Ventajas. Ejemplo WebRE (I) WebRE ConceptNDTOOHDMUWEW2000 B e h a vi o r WebUserActor NavitationVisualization prototype Use caseNavigation use caseBrowse use case WebProcessUse case BrowseVisualization prototype Single choiceActivity SearchPhraseOptional data entryActivity UserTransactionFunctional requirement Application processingActivity St r u ct u r e NodeVisualization prototype ContentStorage requirementData entryClass WebUIInteraction Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación La representación queda en un segundo nivel, dando importancia a los concpetos indepedientemente de como cada una lo utilice. Esto facilita encontrar similitudes entres las propuestas. ESCALONA, M.J., KOCH, N Metamodelling the requirements of Web Systems. Web Information Systems and Technologies. International Conferences WEBIST 2005 and WEBIST Revised Selected Papers. LNBIP, Vol. 1, Springer, pp

14 Veamos un mismo ejemplo: FR-01Login DescriptionAuthentication to allow access to the checkout process ActorsUse case actor AC-01. WebUser Normal sequenceStepAction 1The system asks for the userID and password and the option to remember both userID and password 2The user puts the userID and the password 3The userID and the password are checked 4The userID and the password is stored if the field remember is true 5Access to checkout is allowed ExceptionsStepAction 4The user is not registered, so the user executes FR-02 4The userID or the password are not valid, continue with step 1 MDE para la Web Ventajas. Ejemplo WebRE (II) Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación

15 Veamos un mismo ejemplo: MDE para la Web Ventajas. Ejemplo WebRE (III) Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación

16 MDE para la Web Ventajas Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación Se pueden aprovechar las ventajas e inconvenientes de varias propuestas realizando transformaciones entre las diferentes metodologías. MORENO, M., ROMERO, J. R., VALLECILLO, A An overview of Model-Driven Web Engineering and the MDA. Web Engineering and Web Applications Design Methods. Vol. 12. Human-Computer Interaction Series. Chapter 12. Srpinger.

17 MDE para la Web Ventajas. Ejemplo NDT-Profile (I) Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación El uso y definición de profiles, es otra oportunidad para ampliar el elenco de herramientas de una manera ágil y sencilla.

18 MDE para la Web Ventajas. Ejemplo NDT-Profile (II) Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación

19 MDE para la Web Ventajas Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación Permite “dedicar más tiempo” al usuario. Es un tiempo que se va a recuperar porque: Los requisitos se transforman en análisis de manera sistemática (incluso automática) Se pueden transformar en pantallas (NDT-Suite) y validarlos automáticamente con ellos Se reduce el tiempo de desarrollo por la automatización de la generación Los errores se detectan antes y se garantiza más fácilmente la trazabilidad

20 MDE para la Web Ventajas Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación Sin embargo, el marco de trabajo aún es muy joven. Las herramientas para definir metamodelos y transformaciones están aún muy verdes. Además, hay que buscar “artificios” para hacer transparente todas esta abstracción en el mundo empresarial. El concepto de metamodelo y transformaciones no encaja directamente con el mundo empresarial.

21 MDE para la Web Evaluación FASE I: Definir el metamodelo de diagramas de clase FASE II: Puesta en común FASE III: Definir nuestro profile en EA FASE IV: Elaboración y defensa de las conclusiones Introducción Definición Estructura básica Conceptos Transformaciones Ventajas Evaluación