Se ha denunciado esta presentación.
Se está descargando tu SlideShare. ×

4. introduccion a los modelos de calidad

Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Cargando en…3
×

Eche un vistazo a continuación

1 de 44 Anuncio

Más Contenido Relacionado

Presentaciones para usted (20)

A los espectadores también les gustó (20)

Anuncio

Similares a 4. introduccion a los modelos de calidad (20)

Más reciente (20)

Anuncio

4. introduccion a los modelos de calidad

  1. 1. Introducción a los modelos de calidad del software Dr. Juan Pablo Carvallo Vega jpcarvallo@gmail.com
  2. 2. MODELOS DE CALIDAD DEL SOFTWARE
  3. 3. Calidad del producto  El producto debe ser analizado de diferentes puntos de vista:  Funcional  No-funcional  Pero la calidad puede ser influenciada por otros factores:  Políticos  Administrativos  Económicos  Legales  Y de los vendedores, ...  Podemos identificar tres temas a abordar:  Que factores de calidad se deben considerar?  Como evaluar los productos?  Como utilizar los factores de calidad para asegurar la calidad?
  4. 4. Como se evalúa en la calidad?  En muchas ocasiones se definen listas de criterios :  No estructuradas  Demasiado largas  No claramente medibles  No confiables  Quienes proveen estos criterios:  Fabricantes  Empresas consultoras  Terceras organizaciones (ej., INCOSE - WfMC)
  5. 5. ¿Que es un modelo de calidad del software?  Un modelo de calidad es:  “El conjunto de características y las relaciones entre ellas que proveen la base para la especificación de los requisitos de calidad y la evaluación de la calidad.” ISO/IEC 8402.  Los modelos de calidad permiten:  Definición estructurada de criterios de evaluación  Especificación de requisitos con relación a ellos  Descripción de componentes en un marco común  Definición de métricas y prioridades
  6. 6. Modelos de calidad: Algunas interrogantes “El conjunto de características y las relaciones entre ellas que proveen la base para la especificación de los requisitos de calidad y la evaluación de la calidad.”  Que conjunto?  Que tipo de características? Como se estructuran?  Que tipo de relaciones?  Como debemos utilizar los modelos de calidad para especificar requisitos?  Como debemos utilizar los modelos de calidad para describir los componentes?  Además:  Como deben construirse?  Como podemos reutilizarlos?
  7. 7. Modelos de Calidad: Estructura  Todos los modelos de calidad comparten:  Un catalogo de factores de calidad (fijo? desechable?)  Diferentes niveles de abstracción (Numero de capas? jerarquía? grafo?)  Algunos autores recomiendan su descripción en forma de un modelo conceptual que describa:  La forma del modelo  Propiedades de las métricas  Elementos medibles  Aspectos de formalización (definiciones)
  8. 8. Tipos de modelos de calidad Modelo Fijo • Reusable • Rígido A la Medida • Desechable • Flexible Modelo Mixto • Reusable • Flexible
  9. 9. Tipos de modelos de calidad  Modelos fijos:  Existe un catalogo de partida del cual se elige un subset de características de calidad  Pros: reutilizable, comparable, rápido de utilizar  Contras: inflexible  Modelos a la medida :  Determinación de factores de calidad basada en necesidades del contexto  Pros, contras: Lo contrario del caso anterior  Modelos mixtos:  Un modelo de alto nivel que puede ser refinado  Pros, contras: balanceados
  10. 10. Modelos fijos  Aproximación típica: Jerarquía multi-nivel (con pocos niveles fijos)  Factores de alto nivel (-ilities)  Criterios mas concretos  Eventualmente metricas para medidas del software  Ejemplos  Modelo de McCall (1977):  11 factores de calidad (en 3 grupos), 23 criterios de calidad (no incluye métricas)  Modelo de Boehm (1978):  6 factores de calidad (en 3 grupos), 12 criterios de calidad (no incluye métricas)  Modelo FURPS (HP, 1987):  5 factores de calidad (Functionality, Usability, Reliability, Performance, Supportability), 27 criterios (no incluye metricas)
  11. 11. Modelos fijos: McCall Product Operation Product Transition Product Revision Correcteness Reliability Efficiency Integrity Usability Maintainability Testability Flexibility Interoperability Reusability Portability Communicativeness Operability Training Traceability Completeness Consistency Accuracy Error Tolerance Execution Efficiency Storage Efficiency Access Control Access Audit Software System Independence Modularity Data Commonality Machine Independence Communications Commonality Simplicity Conciseness Instrumentation Self-descriptiveness Expandability Generality
  12. 12. Modelos fijos: Boehm General Utility As-Is Utility Maintainability Reliability Efficiency Human Engineering Understandability Testability Modifiability Communicativeness Self Descriptiveness Device Independence Self Containedness Accuracy Completeness Robustness/Integrity Consistency Accountability Device Afficiency Accessibility Legibility Augmentability Structuredness Conciseness Portability
  13. 13. Modelos a la medida  Razonamiento es requerido para determinar el modelo de calidad:  Identificar objetivos a alcanzar  Hacer operativos estos objetivos  Ejemplos  Estándar IEEE 1061 (1998)  Define factores subfactores y métricas  No fija ninguna instancia particular o métrica  Goal-Question-Metric (GQM) (Basili y compañeros, 1992):  Objetivo: Nivel conceptual (Atributos abstractos)  Pregunta: Nivel operacional (Caracteriza el objeto a ser medido)  Metrica: Nivel cuantitativo (Objetiva o subjetiva)  Puede ser utilizado en combinación con el estándar IEEE 1061
  14. 14. Modelos a la medida: GQM QuestionQuestion Metric MetricMetric MetricMetric Metric Goal 1 Goal 2 Question QuestionQuestion •Objetivo •Propósito: mejorar Objeto: cambiar tiempo de proceso •Objeto: Línea de tiempo de Punto de vista: Administradores •Pregunta 1 •Cual es la velocidad de proceso requerida actualmente? •Métricas •1 •2 •3 •Tiempo promedio del ciclo •Desviación estándar •% de veces fuera del limite •Pregunta 2 •Esta mejorando el rendimiento? •Métricas •1 •2 •(tiempo promedio de ciclo X 100) / tiempo promedio estimado •Calificación subjetiva de los administradores
  15. 15. Modelo mixto: Gilb  Modelo de Gilb  Casi fijo:  4 dimensiones de calidad: capacidad de trabajo, disponibilidad, adaptabilidad, usabilidad  4 atributos de recursos: tiempo, dinero, personas, herramientas  Refinamiento del modelo:  Sigue 7 principios  Ej.: Principio de medición: “todos los atributos tiene y deben ser medibles en la practica”  Plantillas para definición de atributos:  Escala de medida, Procedimiento de prueba, valores posibles
  16. 16. ESTANDARES DE MODELOS DE CALIDAD DEL SOFTWARE
  17. 17. Estándares de modelos de calidad: ISO/IEC 9126  Modelo mixto con un catalogo de partida mas elaborado:  6 características, 27 subcaracteristicas...  ... descomponibles en atributos (jerarquía multi-nivel)  Grupo de métricas propuestas  Antiguamente un estándar único:  ISO/IEC 9126, 1991  Actualmente un estándar multiparte:  ISO/IEC 9126: Software quality (part1 1, 2001; 2&3, 2003; 4: 2004)  ISO/IEC 14598: Software Product Evaluation (6 partes)  Recientemente remplazado:  ISO/IEC CD 25000, SQuaRE (Software Quality Requirements and Evaluation)
  18. 18. ISO/IEC 9126 y14598 Evaluation Process Resources and environment Software Product Effect of the Software Product Evaluation Support Evaluation process Internal metrics External metrics Quality in use metrics 14598-1 9126-1 9126-3 9126-2 9126-4 14598-2 14598-6 14598-3 14598-4 14598-5 Software Product
  19. 19. El estándar ISO/IEC 9126: parte 1 Modelo de calidad interna y externa adaptability, installability, co-existence, replaceability, portability compliance Portability analyzability, changeability, stability, testability, maintainability compliance Maintainability time behavior, resource behavior, efficiency complianceEfficiency understandability, learnability, operability, attractiveness, usability complianceUsability maturity,fault tolerance, recoverability, reliability compliance Reliability suitability, accuracy, interoperability, security, functionality compliance Functionality SubcaracteristicsCaracterísticas
  20. 20. El estándar ISO/IEC 9126: partes 2 y 3  Métricas en una forma GQM:  nombre, propósito, método de aplicación, formula, interpretación, métrica, tipo de escala, tipo de medida, datos requeridos, audiencia  Parte 2: métricas externas; parte 3: métricas internas  Ejemplo: precisión computacional  Con cuanta frecuencia el usuario final encuentra resultados incorrectos?  Registrar el numero de imprecisiones de acuerdo a las especificaciones  X = A/T, A = No. de cómputos imprecisos encontrados por los usuarios, T = tiempo de operación  X >= 0, Lo mas cercano a 0 es mejor  A = Conteo, T = Tiempo, X = Conteo / Tiempo  Datos requeridos: especificación de requisitos, reporte de pruebas  Audiencia objeto: desarrollador, usuario
  21. 21. El estándar ISO/IEC 9126 en la practica  El estándar es ambiguo en algunos puntos  Interpretación de las entidades de calidad:  Subcaracteristicas vs. atributos  Estructura de la jerarquía:  Multi-nivel  Solapamiento; la misma entidad?  Sobre las métricas:  Algunas propuestas en las partes 2,3 y 4 del estándar  Conexión con la teoría clásica de métricas  Que entidades de calidad son medibles  Que tipos de métricas se deben utilizar
  22. 22. Estándares de modelos de calidad: IEEE 1061  Modelo a la medida:  No fija ninguna característica de calidad  Modelo multinivel mas flexible  Versiones 1992 y 1998  Identifica claramente donde se aplican las métricas  Recomienda el uso de técnicas GQM para la identificación de métricas
  23. 23. Estándares de modelos de calidad: IEEE 1661 Software Quality of System X Direct Metric (S) Quality Subfactor Quality Factor Direct Metric (S) Quality Subfactor Quality Factor Direct Metric (S) Quality Subfactor Quality Factor Metric Metric Metric
  24. 24. Catálogos de Atributos  Incose, Nplace, TEC, etc. Performance Engineering Throughput Latency Capacity Modes Synthesis Analisys Demand System Observation Interval Processing rate Criticality Utilization Schedulable Utilization Spare capacity Response window Precedence Jitter Criticality Arrival pattern Execution time Type of resource Software services Resource allocation Scheduling theory Queuing theory Formal methods Concerns Factors Methods
  25. 25. ESTRUCTURA Y PROPIEDADES DE LOS MODELOS DE CALIDAD DEL SOFTWARE
  26. 26. ISO/IEC 9126: propuesta conceptual para modelos de calidad * * * * * 1 * * Subcharacteristic {disjoint, complete} Basic Subcharacteristic * 0..1 Derived Subcharacteristic Quality Model 1 * Quality Feature {disjoint, complete} Characteristic Subjective Objective Attribute {disjoint, complete} Basic Attribute * * Derived Attribute * * Metric {disjoint, complete}
  27. 27. Estructura y elementos constitutivos ƒƒ ƒƒƒƒ ½½ aa bb cc aa bb cc aa bb cc aa bb ccaa bb cc aa bb cc aa bb cc aa bb cc ½½ƒƒ ½½ Características Atributos Subcaracteris- ticas Metricas Capa 1 Capa n+j Capa n+i Capa n Capa 2 ............ Grupos de elementos similares Capa n+j+1 • Tipos de elementos • Numero de elementos de cada tipo • Numero de Capas • Capas de cada tipo
  28. 28. Estructura y elementos constitutivos ƒƒ ƒƒƒƒ ½½ aa bb cc aa bb cc aa bb cc aa bb ccaa bb cc aa bb cc aa bb cc aa bb cc ½½ƒƒ ½½ Características Atributos Subcaracteris- ticas Metricas Capa 1 Capa n+j Capa n+i Capa n Capa 2 ............ Grupos de elementos similares Elementos Internos Elementos Externos Capa n+j+1
  29. 29. Factores internos y externos  Algunos modelos hacen distinción de los factores internos y externos  Los internos tienen un efecto sobre los externos  Los externos ayudan a estimar el comportamiento de los internos  La falta de esta separación puede comprometer el uso de los modelos  En algunos casos muy critico:  Modelos proceso-producto ej. SQUID, Dromey. Internal quality characteristic Internal quality characteristic Internal quality characteristic Internal quality characteristic Internal quality characteristic Internal quality characteristic Internal quality attribute Internal quality attribute External quality characteristic External quality characteristic External quality attribute External quality attribute External quality attribute External quality characteristic Link
  30. 30. Estructura y elementos constitutivos ƒƒ ƒƒƒƒ ½½ aa bb cc aa bb cc aa bb cc aa bb ccaa bb cc aa bb cc aa bb cc aa bb cc ½½ƒƒ ½½ Características Atributos Subcaracteris- ticas Metricas Capa 1 Capa n+j Capa n+i Capa n Capa 2 ............ Grupos de elementos similares Elementos Internos Elementos Externos Capa n+j+1
  31. 31. Estructura y elementos constitutivos ƒƒ ƒƒƒƒ ½½ aa bb cc aa bb cc aa bb cc aa bb ccaa bb cc aa bb cc aa bb cc aa bb cc ½½ƒƒ ½½ Características Atributos Subcaracteris- ticas Metricas Capa 1 Capa n+j Capa n+i Capa n Capa 2 ............ Grupos de elementos similares Solapamiento Elementos Internos Elementos Externos Capa n+j+1 Subcaracteristicas Transversales
  32. 32. Solapamiento de factores  Algunos factores son útiles para la evaluación de varias características  Existen modelos:  Con solapamiento McCall, Boehm  Sin solapamiento FURPS  Con solapamiento solo a algunos niveles 9126-1  Ejemplos:  Documentación técnica afecta a instalabilidad, facilidad de aprendizaje  Capacidad de respaldo y restauración afecta a la recuperabilidad, de los datos y del sistema
  33. 33. Estructura y elementos constitutivos ƒƒ ƒƒƒƒ ½½ aa bb cc aa bb cc aa bb cc aa bb ccaa bb cc aa bb cc aa bb cc aa bb cc ½½ƒƒƒƒ ½½ (-)(+) (D)(+) Características Atributos Subcaracteris- ticas Metricas Capa 1 Capa n+j Capa n+i Capa n Capa 2 ............ Grupos de elementos similares Dependencia Solapamiento Elementos Internos Elementos Externos Capa n+j+1 Subcaracteristicas Transversales
  34. 34. Interrelaciones entre factores de calidad  Algunos factores de calidad tiene relaciones con otros  Modelo de interdependencias de Perry C orrecteness R eliability EfficiencyIntegrityU sability M aintainability Testability Flexibility Portability R eusability Interoperability Correcteness Reliability − Efficiency Integrity • Usability − − • − Maintainability − − • − Testability − − • − − Flexibility − − • − − − Portability • − − Reusability • • • − − − − Interoperability • • − − Direct • Inverse blank Neutral
  35. 35. Interrelaciones entre factores de calidad  Estándar IEEE 1061-1992 Software Quality Factors Efficiency FlexibilityIntegrity Interoperability M aintainability Portability R eliability Survivability C orrecteness R eusability VerifiabilityU sability Expandability Efficiency Flexibility X Integrity X Interoperability X O X Maintainability X O Portability X O Reliability X O Survivability X X X Correcteness O Reusability X X O O O X O Verifiability X O O O O O Usability X O O O O X Expandability X X O X O X means the factors conflict O means the factors support one another A blank space means there is not relationship
  36. 36. Relaciones mas complejas  Chung, Milopolous y otros modelo NFR:  MAKES (++): Provee suficiente soporte positivo; cuando un factor es satisfecho el otro también lo es.  BREAKS (--): Provee suficiente soporte negativo; cuando un factor se satisfecho, el relacionado es negado.  HELPS (+): Provee un soporte positivo de manera parcial; cuando un factor es satisfecho el factor relacionado recibe un soporte positivo parcial.  HURTS (-): Provee un soporte positivo de manera parcial; cuando un factor es satisfecho el relacionado recibe un soporte negativo parcial.  UNKNOWN (?): Un factor de calidad provee alguna contribución a otro factor de calidad pero con un signo desconocido (positivo o negativo) y extensión (parcial o suficiente).
  37. 37. Relaciones mas complejas  Escala de Chung:  Pero ojo:  Demasiadas dependencias pueden comprometer el la utilidad del modelo  Hay que saber discriminar (articulo de Paul Grumbajer) BREAK HURT UNKNOWN HELP MAKE SOME +SOME - (--) (-) (?) (++)(+)
  38. 38. Estructura y elementos constitutivos ƒƒ ƒƒƒƒ ½½ aa bb cc aa bb cc aa bb cc aa bb ccaa bb cc aa bb cc aa bb cc aa bb cc ½½ƒƒƒƒ ½½ (-)(+) (D)(+) Características Atributos Subcaracteris- ticas Metricas Capa 1 Capa n+j Capa n+i Capa n Capa 2 ............ Grupos de elementos similares Dependencia Solapamiento Elementos Internos Elementos Externos Capa n+j+1 Subcaracteristicas Transversales
  39. 39. Estructura y elementos constitutivos ƒƒ ƒƒƒƒ ½½ aa bb cc aa bb cc aa bb cc aa bb ccaa bb cc aa bb cc aa bb cc aa bb cc ½½ƒƒƒƒ ½½ (-)(+) (D)(+) Características Atributos Subcaracteris- ticas Metricas ƒƒ ƒƒ Capa 1 Capa n+j Capa n+i Capa n Capa 2 ............ Grupos de elementos similares Dependencia Solapamiento Elementos Internos Elementos Externos Capa n+j+1 Subcaracteristicas Transversales
  40. 40. Métricas  Útiles para:  Proveer la base para estimaciones  Realizar un seguimiento del avance  Determinar la complejidad  Ayudarnos a entender cuando hemos alcanzado el nivel de calidad esperado  Analizar defectos  Validar experimentalmente las mejores practicas  Proceso de medición: MeasurementsInput Measuring Instruments Quantities and Units Etalons Characteristics of measuring instruments Measurement Results
  41. 41. Escala de medida  Tipos de Escalas Fenton and Pfleeger, Zuse  Nominal.  Ordinal.  Intervalo.  Ratio.  Absoluta. Scale Type Admissible Transforms (how measures M and M’ must be related) Examples Nominal 1-1 mapping from M to M’ Labeling, classifying entities Ordinal Monotonic Increasing function from M to M’, that is M(x)≥M(y) implies M’(x)≥M’(y) Preference, hardness, air quality, intelligence tests (raw scores) Interval M’=aM+b (a>0) Relative time, temperature (Fahrenheit, Celcius), intelligence tests (standardized scores) Ratio M’=aM (a>0) Time interval, length, temperature (Kelvin) Absolute M’=M Counting entities
  42. 42. Clasificación de los modelos de calidad del software  Existen propuestas en relación a:  Estructura [Trendowicz & Punter 03]:  Numero de capas  Numero de relaciones entre capas  Alternativa de construcción [Buglione et. al 02]:  Fijo o a la medida  A la medida subdividido en definido en forma directa o indirecta  Aplicación [Tiam 04] :  General  Especifico para un producto  Nosotros consideraremos dos dimensiones:  Dimensión Especifico/General  Dimensión Reutilizable/desechable
  43. 43. FURPS [GC87] Specific General Throw-AwayReusable McCall [MRW77] Boehm [BBK+78] GQM [Bas92] Gilb [Gilb88] IEEE 1061 [IEEE98] SQUID [BDKP99] Dromey [Dro96] ISO/IEC 9126-1 [ISO01] ADEQUATE [HKF99] Clasificación de los modelos de calidad del software
  44. 44. Aplicaciones de los modelos de calidad (1/2)  Aplicaciones exploradas por diversos autores:  Especificaciones de software  Diseño arquitectónico del software  Soporte a la implementación del software  Soporte a la evaluación del software  Soporte para la certificación del software  Identificación de riesgos  Otros:  Soporte a decisiones económicas en relación al rendimiento del software  Evaluación de la calidad de la documentación provista por los vendedores de componentes COTS

×