gestión de la calidad usando ingeniería dirigida por modelos

41
Gestión de la Calidad usando Ingeniería Dirigida por Modelos Iván Ruiz-Rube Departamento de Lenguajes y Sistemas Informáticos Universidad de Cádiz María José Escalona Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Trabajo Fin de Máster Máster en Ingeniería y Tecnología del Software Universidad de Sevilla 16 de noviembre de 2010

Upload: ivan-ruiz-rube

Post on 13-Dec-2014

413 views

Category:

Technology


1 download

DESCRIPTION

Trabajo Fin de Máster "Ingeniería y Tecnología del Software"

TRANSCRIPT

Page 1: Gestión de la calidad usando ingeniería dirigida por modelos

Gestión de la Calidad usando Ingeniería Dirigida por Modelos

Iván Ruiz-Rube Departamento de Lenguajes y Sistemas Informáticos

Universidad de Cádiz

María José Escalona Departamento de Lenguajes y Sistemas Informáticos

Universidad de Sevilla

Trabajo Fin de Máster Máster en Ingeniería y Tecnología del Software Universidad de Sevilla 16 de noviembre de 2010

Page 2: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Objetivos

Trabajo Fin de Máster

Identificación de nuevas líneas de Investigación

Revisión exhaustiva de la literatura

MDE como soporte a la calidad en los Procesos Software

Estudio de alcance

MDE como soporte a la calidad en el Producto Software

2/41

Page 3: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Contenidos

• Introducción

• Calidad en el Producto Software

• Calidad en el Proceso Software

• Ciclo de vida del Proceso Software

• Conclusiones y Trabajo futuro

Trabajo Fin de Máster

3/41

Page 4: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Contenidos

• Introducción

• Calidad en el Producto Software

• Calidad en el Proceso Software

• Ciclo de vida del Proceso Software

• Conclusiones y Trabajo futuro

Trabajo Fin de Máster

4/41

Page 5: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Introducción

• Calidad del software como elemento fundamental en la IS

• Gran interés por la calidad. Caso particular de CMMI en España

• Gestión de la calidad (QM) – Planificación

– Aseguramiento

– Control

– Mejora

Trabajo Fin de Máster

5/41

Page 6: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Niveles de la Calidad

Trabajo Fin de Máster

25000

PRODUCTO PROCESO

(Juran, 1998)

6/41

Page 7: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Coste de la Calidad

• QM implica esfuerzos en tiempo y recursos

• Actividades de QM son ‘no productivas’.

• ¿Cómo desarrollar actividades de QM con el menor esfuerzo posible?

Trabajo Fin de Máster

7/41

Page 8: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Ingeniería Dirigida por Modelos

Trabajo Fin de Máster

CIM PIM PSM Code

ARQUITECTURA DE MODELADO

NIVELES DE ABSTRACCIÓN

ESTÁNDARES

8/41

Page 9: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Calidad y MDE

¿Sería posible utilizar el enfoque MDE para potenciar la calidad del software?

Trabajo Fin de Máster

25000 25000

PRODUCTO PRODUCTO PROCESO PROCESO

25000

PRODUCTO PROCESO

ARQUITECTURA DE MODELADO ARQUITECTURA DE MODELADO

NIVELES DE ABSTRACCIÓN NIVELES DE ABSTRACCIÓN

ESTÁNDARES ESTÁNDARES

CIM PIM PSM Code

ARQUITECTURA DE MODELADO

NIVELES DE ABSTRACCIÓN

ESTÁNDARES

9/41

Page 10: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Contenidos

• Introducción

• Calidad en el Producto Software

• Calidad en el Proceso Software

• Ciclo de vida del Proceso Software

• Conclusiones y Trabajo futuro

Trabajo Fin de Máster

10/41

Page 11: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Puntos de vista

Calidad Interna

Calidad Externa

Calidad en Uso

Trabajo Fin de Master

11/41

Page 12: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Calidad interna Métricas

• Framework de desarrollo de modelos de evaluación [50]

• Metamodelo de evaluación de calidad [10]

Revisiones Técnicas

• Reconocimiento de anti-patrones & model checking [36]

• Adherencia al metamodelo [19]

• Reglas OCL [20]

Mejora de la Calidad

• Patrones de modelado [72]

• Refactoring de modelos [46]

Trabajo Fin de Master

[10] Cachero, C. et al.: Metamodeling the quality of the web development process' intermediate artifacts (2007) [19] Escalona, M. et al.: Measuring the quality of Model-Driven projects with NDT-Quality (2010) [20] Farkas, T.: Quality Improvement in Automotive Software Engineering using a Model-Based Approach (2008) [36] Koehler, J. et al.: Combining quality assurance and model transformations in business-driven development (2008) [46] Mens, T. et al.: Model-driven software refactoring (2008) [50] Mohagheghi, P. & Dehlen, V.: Developing a quality framework for model-driven engineering (2008) [72] Wahler, M.: A Pattern Approach to Increasing the Maturity Level of Class Models (2008)

12/41

Page 13: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Puntos de vista

Calidad Interna

Calidad Externa

Calidad en Uso

Trabajo Fin de Master

13/41

Page 14: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Calidad externa

Pruebas

• Testing de transformaciones [41]

• Generación automática de casos de prueba [62]

Simulación

• Modelos de simulación desde modelos de diseño [51]

Trabajo Fin de Master

[41] Lin, Y. et al.: A testing framework for model transformations (2005) [51] Monperrus, M. et al.: Model-driven simulation of a maritime surveillance system (2010) [62] Rui-zhi, D.: Model-Driven Testing of Software Product Line (2009)

14/41

Page 15: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Puntos de vista

Calidad Interna

Calidad Externa

Calidad en Uso

Trabajo Fin de Master

15/41

Page 16: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Calidad en Uso

Calidad de Servicio (QoS)

• Lenguaje específico de dominio (DSL) para definir acuerdos de nivel de servicio (SLA) [53]

• Enriquecer modelos PIM con aspectos QoS [74]

Trabajo Fin de Master

[53] Oberortner, E. et al.: Tailoring a model-driven Quality-of-Service DSL for various stakeholders (2009) [74] Weis, T. et al.: Quality of service in middleware and applications: a model-driven approach (2005)

16/41

Page 17: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Contenidos

• Introducción

• Calidad en el Producto Software

• Calidad en el Proceso Software

• Ciclo de vida del Proceso Software

• Conclusiones

Trabajo Fin de Máster

17/41

Page 18: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Calidad de Procesos

Trabajo Fin de Máster

Procesos no definidos

Descripciones textuales

Notaciones gráficas

Modelos de procesos

18/41

Page 19: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Calidad de Procesos

Trabajo Fin de Máster

Procesos no definidos

Descripciones textuales

Notaciones gráficas

Modelos de procesos

19/41

Page 20: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Calidad de Procesos

Trabajo Fin de Máster

Procesos no definidos

Descripciones textuales

Notaciones gráficas

Modelos de procesos

20/41

Page 21: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Calidad de Procesos

Trabajo Fin de Máster

Procesos no definidos

Descripciones textuales

Notaciones gráficas

Modelos de procesos

21/41

Page 22: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Calidad de Procesos

Trabajo Fin de Máster

Procesos no definidos

Descripciones textuales

Notaciones gráficas

Modelos de procesos

22/41

Page 23: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Calidad de Procesos

Trabajo Fin de Máster

Procesos no definidos

Descripciones textuales

Notaciones gráficas

Modelos de procesos

23/41

Page 24: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Modelado de Procesos

Trabajo Fin de Master

SPEM

Enterprise Architect

Eclipse Process Framework

IRIS Process Author

Visual Studio ALM

24/41

Page 25: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Contenidos

• Introducción

• Calidad en el Producto Software

• Calidad en el Proceso Software

• Ciclo de vida del Proceso Software

• Conclusiones y Trabajo futuro

Trabajo Fin de Máster

25/41

Page 26: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Ciclo de vida de BPM

Trabajo Fin de Master

Weske, M.: Business Process Management: Concepts, Languages, Architectures (2007)

26/41

Page 27: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Ciclo de vida de BPM

Trabajo Fin de Master

27/41

Page 28: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Diseño de Procesos

Trabajo Fin de Master

Metodologías

• Ágiles (OpenUP, Scrum y XP) [17]

• Regionales (Métrica, V-Modell) [71]

• Orientadas a Agentes [57]

Enfoques de mejora

• CMMI [33]

• ISO 12207 [22]

• PMBOK [38]

Otros usos

• Lineas de Productos Software [7]

• Gestión de Cadenas de Suministros [11]

• Gestión del Conocimiento [15]

[7] Avila-García, O. et al.: Combinando Modelos de Procesos y Activos Reutilizables en una Transición poco Invasiva hacia las Líneas de Producto de Software (2007) [11] Caldelas, A. et al.: Formalización de Servicios de Implantación de Sistemas SCM mediante el Estándar SEMDM (2009) [15] Chongsringam, P. & Prompoon, N.: Process Model Design for Knowledge Management in CMMI Organization (2008) [17] Eclipse Foundation: Eclipse Process Framework (2010) [22] Garbajosa, J. & Espinoza, A.: Repositorio de fragmentos de método y herramientas de explotación básicas (2007) [33] Juan Li, M. et al.: A Metamodel for the CMM Software Process (2004) [38] Koacz, K.: Using SPEM/UML profile to specification of IS development processes (2006) [57] Puviani, M., et al. Methodologies for self-organising systems: a SPEM approach (2009) [71] Wachtel, E. et al.: A Domain Specific Language for Project Execution Models (2009)

28/41

Page 29: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Ciclo de vida de BPM

Trabajo Fin de Master

29/41

Page 30: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Análisis de Procesos Verificación

• Reglas OCL [25]

• Redes de Petri [8]

Validación

• Adherencia a modelos (CMMI) [55]

• Usabilidad modelos [43]

• Evaluación visual [5]

Simulación

• DEVSHybrid [49]

• SimSe [25]

Métricas

• Medidas sobre modelos SPEM [23]

Trabajo Fin de Master

[5] Alegría, J. et al.: Software Process Model Blueprints (2010) [8] Bendraou, R. et al.: Definition of an Executable SPEM 2.0 (2007) [23] Garcia, F. et al.: A Proposal and Empirical Validation of Metrics to Evaluate the Maintainability of Software Process Models (2007) [25] Hsueh, N. et al.: Applying UML and software simulation for process definition, verification, and validation (2008) [43] Mahrin, M. et al.: Investigating factors afecting the usability of software process descriptions (2008) [49] Park, S. et al.: Developing a software process simulation model using SPEM and analytical models (2008) [55] Pablo Szyrko, D.R.: Definición de un metamodelo para la validación de procesos de software organizacionales basados en modelos estándares (2010)

30/41

Page 31: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Ciclo de vida de BPM

Trabajo Fin de Master

31/41

Page 32: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Configuración de Procesos

Implantación

• Entorno de ejecución de procesos MDA [42]

• Integración de herramientas de soporte SOA [3]

Adaptación (Tailoing)

• Situational Method Engineering [1]

• Lineas de Procesos [44]

Trabajo Fin de Master

[1] Aharoni, A. & Reinhartz-Berger, I.: A Domain Engineering Approach for Situational Method Engineering (2008) [3] Aldazabal, A. et al.: Automated Model Driven Development Processes (2008) [42] Maciel, R.S.P. et al.: An Integrated Approach for Model Driven Process Modeling and Enactment (2009) [44] Martínez-Ruiz, T. et al.: Towards a SPEM v2.0 Extension to Dene Process Lines Variability Mechanisms (2008)

32/41

Page 33: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Ciclo de vida de BPM

Trabajo Fin de Master

33/41

Page 34: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Ejecución de Procesos

Operación (Enactment)

• BPEL [3]

• XPDL [21]

• Web [39]

• MS Project [38]

Monitorización

• Ontologías OWL y reglas SWRL [59]

Trabajo Fin de Master

[3] Aldazabal, A. et al. Automated Model Driven Development Processes (2008) [21] Feng, Y. et al.: SPEM2XPDL: Towards SPEM Model Enactment (2006) [38] Koacz, K.: Using SPEM/UML profile to specication of IS development processes (2006) [39] Larrucea, X. & Alonso, J.: Vulcano: Especificación del metamodelo a utilizar (2007) [59] Rodríguez, D. & Sicilia, M.: Defining SPEM 2.0 process constraints with semantic rules using SWRL (2009)

34/41

Page 35: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Ciclo de vida de BPM

Trabajo Fin de Master

35/41

Page 36: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Evaluación Procesos

Monitorización de Actividad de Negocio

• Análisis de métricas recopiladas desde herramientas de soporte

Trabajo Fin de Master

[61] Rufaatti, G. et al.: New Trends Towards Process Modelling: Spago4Q (2007)

36/41

Page 37: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Contenidos

• Introducción

• Calidad en el Producto Software

• Calidad en el Proceso Software

• Ciclo de vida del Proceso Software

• Conclusiones y Trabajo futuro

Trabajo Fin de Máster

37/41

Page 38: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Conclusiones

• Calidad del SW a dos niveles

• MDE no es sólo MDD

• MDE como soporte al producto software:

– Medición, revisiones técnicas, mejora, pruebas, simulación y calidad de servicio

• MDE como soporte al proceso software (BPM):

– Diseño, análisis, configuración, ejecución y evaluación

Trabajo Fin de Master

38/41

Page 39: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Conclusiones

Trabajo Fin de Master

Fuentes: Google Scholar, TDG Scholar e Inspec

39/41

Page 40: Gestión de la calidad usando ingeniería dirigida por modelos

Iván Ruiz-Rube

Trabajo Futuro

• Representación en SPEM de metodologías web: NDT1.

• Aplicaciones de ADM2 para los procesos software.

• Modelado de aspectos no funcionales del proceso software.

• Modelado de líneas de procesos software.

Trabajo Fin de Master

1 Navigational Development Techniques (NDT). http://www.iwt2.org/ndt.php 2 Architecture-Driven Modernization (ADM). http://adm.omg.org/

40/41

Page 41: Gestión de la calidad usando ingeniería dirigida por modelos

Gestión de la Calidad usando Ingeniería Dirigida por Modelos

Iván Ruiz-Rube Departamento de Lenguajes y Sistemas Informáticos

Universidad de Cádiz

María José Escalona Departamento de Lenguajes y Sistemas Informáticos

Universidad de Sevilla