Post on 25-Sep-2018
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Modelos, normas y estándares de calidad
internacionales para los productos de software
750092M Desarrollo de Software II
1
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Agenda • Introducción • ISO 9000 (no es de PRODUCTO es de PROCESO,
Sistema de Gestión de Calidad) • Modelos, normas y estándares Internacionales de
calidad del producto – Generación 1
• ISO 9126 • ISO 14598
– Generación 2 • SQuaRE 25000
• Referencias • Taller en clase
2
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
INTRODUCCIÓN
3
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
¿Cómo evaluar la calidad del PRODUCTO (software producido)? • ¿La calidad se ve? • ¿La calidad se siente? • ¿La calidad se construye? • ¿Hay medidas estandarizadas? • ¿Es diferente la calidad del producto que la
calidad del proceso de desarrollo? • ¿Hay formas de comparar y clasificar la calidad? • ¿Cuáles son las entidades que velan por los
métodos de evaluación de la calidad? 4
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Conceptos importantes antes de empezar
• ¿Qué es un modelo? ¿Qué es una norma? • ¿Qué es un protocolo? • ¿Qué es un estándar?
5
CMMi (Capacidad de Madurez)
TCP/IP (Comunicaciones)
MODELO
NORMA
PROTOCOLO
ESTANDAR
ISO-9000 (Calidad Producto SW)
NTC-5854 (Accesibilidad Web)
Ejercicio: Asociar concepto y ejemplo
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Conceptos importantes antes de empezar
• Modelo: En ciencias puras y aplicadas, se denomina modelo a una representación abstracta, conceptual, gráfica, física, matemática, de fenómenos, sistemas o procesos a fin de analizar, describir, explicar, simular, explorar, controlar y predecir- esos fenómenos o procesos.
6
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Conceptos importantes antes de empezar
• Norma: Modelo o patrón considerado como típico. Ejemplo: Bad Smell in OO code, GoF Design Patterns
• Protocolo: Descripción formal de formatos de mensaje y de reglas para intercambiar mensajes. Ejemplo: FTP, HTML
• Estándar: Consisten en ciertos términos, conceptos, formatos de datos, estilos de documento, procedimientos y técnicas acordadas por los creadores de software. Para ser considerado un estándar, un modelo, protocolo o norma determinada necesita ser aceptado e incorporado por un grupo de desarrolladores que contribuyen a la definición y el mantenimiento de la norma o protocolo. Ejemplos: HTML (W3C), ISO 9000 (ISO) , ISO SQuaRE 25000
7
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
8
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9000
Calidad en la producción de
software,
9
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9000 • ISO 9000: Normas que enuncian exigencias en
materia del manejo y de la garantía de la calidad en una organización.
• El estándar ISO 9000 NO especifica cuáles son los pasos o procedimientos para realizar un producto de calidad, solo enuncia las características a tener en cuenta en la creación de un Sistema de Gestión de Calidad.
10
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Objetivos ISO - 9000 • Homogeneizar el lenguaje relacionado con el
concepto de calidad. • Dar las líneas directrices que le permitan crear un
Sistema de Gestión de la Calidad a una empresa. • Permitir evaluar diferentes sistemas de calidad. La
evaluación sirve de base para obtener un certificado (universal) que garantiza que la empresa domina su sistema de gestión de la calidad.
11
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Familia de estándares ISO – 9000
Son 4 Normas Centrales: • ISO 9000:2005: Definiciones y guías para la utilización de las
normas. Principios y vocabulario. • ISO 9001:2015: Requisitos de sistemas de gestión de calidad. • ISO 9004:2009: Da recomendaciones de una gama más amplia
sobre un sistema de gestión de calidad para mejorar el desempeño global de la organización. No es guía para implementar la ISO 9001:2015, ni para usarla con fines contractuales o de certificación.
• ISO 19011:2011: Directrices para auditoras de sistemas de gestión de calidad internas y externas.
• La revisión de los estándares ISO se hace +/- cada 5 años para asegurar que permanezcan útiles y relevantes
12
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Certificación • La certificación es un
reconocimiento por un ente oficial que la empresa satisface las exigencias de un sistema de gestión de calidad establecidas en la norma ISO 9001.
• Por lo tanto, tiene los mecanismos para garantizar la calidad
13
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
14
Certificación
ISO 9001:1987
Procedimientos
ISO 9001:1994
Acciones
Preventivas
ISO 9001:2000
Procesos,
acercamientos y espiral de mejora
continua
ISO 9001:2008
Procesos, acercamientos y espiral de mejora
continua
ISO 9001:2015
Manejo de riesgos y
oportunidades
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
15
Certificación
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9001 ¿A quiénes Aplica? • La norma es genérica y debería ser aplicable a
cualquier tipo de empresa sin importar el tamaño, producto o modelo de negocio.
• Si por la naturaleza del negocio no se pueden cumplir con algunos requisitos de la norma se consideran para exclusión. – En este caso no se considera que se cumple con la norma
16
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9001
¿Por qué se necesita? • Se necesita demostrar la capacidad de
proporcionar de manera adecuada SGC que satisfagan a sus clientes.
• Necesita mejorar la satisfacción del cliente
mediante la implementación eficaz de un sistema de gestión de calidad
17
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Conceptos relacionados con la documentación de la calidad
• En la norma ISO 9000:2015, se aclaran algunos términos relacionados con la calidad, algunos de ellos son:
• Política de la calidad: intenciones globales y
orientación de una organización relativas a la calidad. • Sistema de gestión de calidad: Sistema de gestión
para dirigir y controlar una organización con respecto a la calidad
18
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Conceptos relacionados con la documentación de la calidad
• Plan i f icac ión de la ca l idad : En focada a l establecimiento de los objetivos de la calidad y a la especificación de los procesos operativos y de los recursos relacionados para cumplir los objetivos de la calidad
• Control de calidad: Orientada al cumplimiento de los requisitos de la calidad.
• Aseguramiento de la calidad: Orientada a proporcionar confianza en que se cumplirán los requisitos de la calidad
• Mejora de la calidad: Orientada a aumentar la capacidad de cumplir con los requisitos de la calidad.
19
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Conceptos relacionados con la documentación de la calidad
• Manuales de calidad: Proporcionan información coherente, interna y externamente, acerca del sistema de gestión de la calidad (SGC) de la organización.
• Planes de calidad: Describen cómo se aplica el SGC a un producto, proyecto o contrato específico.
• Especificaciones: Establecen requisitos. • Guías: Establecen recomendaciones o sugerencias. • Registros: Proporcionan evidencia objetiva de las
actividades realizadas o resultados obtenidos.
20
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
GENERACIÓN 1 ISO 9126
Calidad en el producto
21
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9126
• ISO 9126 es un estándar internacional para la evaluación de un producto de software.
22
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Definiciones en ISO 9126
• Producto de Software: Son los ejecutables, código fuente, descripciones de arquitectura, descripciones de requerimientos, etc.
• Usuario de Software: Son los operadores (con algún rol o perspectiva de usuario) y programadores (usuarios de componentes como son bibliotecas software)
23
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Definiciones en ISO 9126 • Un fallo: Incumplimiento de los requisitos previos. (Requisitos del
Cliente) • No conformidad: Es el incumplimiento de los requisitos
especificados (Requerimientos definidos en fase de Análisis).
• Verificación ¿Estamos construyendo el producto correctamente? Conjunto de actividades que aseguran la implementación correcta de una función
• Validación ¿Estamos construyendo el producto correcto? Conjunto de actividades que aseguran que el software construido corresponde con los requerimientos.
24
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9126 - estructura
• Dividido en cuatro capítulos:
– ISO/IEC 9126-1: Carácterísticas de calidad y subcategorías, el modelo de calidad.
– ISO/IEC 9126-2: Métricas externas (Software con Ejecución, comportamiento)
– ISO 9126-3: Métricas internas (Software sin Ejecución)
– ISO 9126-4: Métricas de uso con referencia a carácterísticas y subcategorías sobre un contexto. (Software en Producción)
25
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9126 - estructura
26
Criterios de Calidad
Factores de Calidad
Tipo de Calidad
Estándar
Funcionalidad
Conformidad Exactitud
Interoperabilidad Seguridad de acceso
Fiabilidad Madurez Tolerancia a fallos
Capacidad de recuperación Usabilidad
Capacidad para ser entendido Capacidad para ser aprendido Capacidad para ser operado
Grado de atracción del usuario
Eficiencia
Comportamiento en el tiempo Uso de recursos
Tiempo de ejecución
Mantenibilidad
Capacidad para ser analizado Capacidad para ser cambiado Capacidad para ser probado
Portabilidad
Adaptabilidad Instalabilidad Coexistencia
Capacidad para ser remplazado
Efectividad
Productividad
Seguridad
Satisfacción
ISO/IEC 9126
Calidad interna y externa
Calidad en uso
Métricas
Métrica 1
Métrica 2
Métrica N
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Definiciones en ISO-9126
• Define 3 tipos características de calidad: – Factores de calidad (especificar): visión
externa del software, cómo es visto por los usuarios.
– Criterios (construir): visión interna del software, cómo es visto por el desarrollador.
– Métricas (controlar): Se definen y se usan para proveer una escala y método para la medida.
27
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9126
28
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9126 - 1 Modelo de Calidad
29
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Estructura ISO 9126
• El modelo de calidad contempla tres niveles – Característica – Subcaracterística – Atributo
• Entidad que puede ser verificada o medida en el producto software.
• No están definidos en el estándar, ya que varían entre diferentes productos software (Tipo de producto – plataforma de desarrollo – Modelo de desarrollo de Software)
30
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Estructura ISO 9126 – 2 y 3
31
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Norma ISO 9126- 2 Métricas Externas
• % Cobertura Funcionalidad • Tiempo de análisis de fallos • # Éxitos al encontrar causas de fallo
32
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9126- 3 Métricas Internas
• % Completitud de la implementación Funcional
• % Suficiencia de las Pruebas • % Funcionalidades Evidentes para el
usuario • % Tiempo de respuesta promedio • % Trazabilidad de cambios
33
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Estructura ISO 9126-4
34
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9126- 4 Métricas de Calidad de Uso
• Métricas de Efectividad – % Efectividad de Tareas – % Tareas Completas – Frecuencia de Errores
• Métricas de Productividad – Tiempo promedio de tareas – Eficiencia de tareas (Nro Tareas / Tiempo) – Costo de Productividad (Tareas/ Total costo) – % Tiempo Productivo – % Eficiencia Relativa (Uso sistema vs Experto)
35
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO 9126- 4 Métricas de Calidad de Uso
• Métricas de Seguridad – % Seguridad de Software: (Usuarios reportan
incidentes en Producción Vs Total Usuarios) – % Afectación Software: (Usuarios afectados por
incidentes en Producción Vs Total Usuarios) – Daño Económico
• Métricas de Satisfaccion – Escala de Satisfacción – Uso del Software
36
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
GENERACIÓN 1 ISO 14598
Calidad en el producto
37
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO/IEC 14598 - Alcance
• Presenta una visión general de los procesos de evaluación del producto software
• Proporciona directrices y requisitos para la evaluación.
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO/IEC 14598 - Estructura
• ISO/lEC 14598-2 e ISO/lEC 14598-6 son relativas a la gestión y soporte de la evaluación a nivel corporativo.
• Proceso de Evaluación en tres situaciones a
nivel de proyecto: – Desarrollo (mejora) (ISO/lEC 14598-3); – Adquisición (ISO/lEC 14598-4); – Evaluación independiente (incluyendo evaluación por
tercera parte) (ISO/lEC 14598-5).
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO/IEC 14598 Modelo de Evaluación
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO/IEC 14598 Modelo de Evaluación
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
GENERACIÓN 2 ISO (SQUARE) 25000
Calidad en el producto
42
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO (SQuaRE) 25000
• SQuaRE (Software Product Quality Requirements and Evaluation)
• Unifica los conceptos de ISO 9126 e ISO 15288 (Fases del ciclo de vida de desarrollo del producto Sw).
• Objetivo: Organizar, enriquecer y unificar: especificación de requisitos de calidad del software y evaluación de la calidad del software.
• Define entonces un proceso de medición de calidad del software.
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO (SQuaRE) 25000 - Familia
• ISO/IEC 25000:2005 – Software Engineering -- Software product
Quality Requirements and Evaluation (SQuaRE) -- Guide to SQuaRE
• ISO/IEC 25001:2007 – Software Engineering -- Software product
Quality Requirements and Evaluation (SQuaRE) -- Planning and management
44
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO (SQuaRE) 25000 Estructura
• ISO/IEC 2500n: Relativo a gestión de calidad (Introducción, Descripción de todos).
• ISO/IEC 2501n: Relativo al modelo de calidad (calidad interna, externa y en uso).
• ISO/IEC 2502n: Relativo a la medida de calidad (métricas de calidad y una guía práctica para su aplicación).
• ISO/IEC 2503n: Relativo a requisitos de calidad (para definición o evaluación).
• ISO/IEC 2504n: Relativo a evaluación de calidad (evaluadores, clientes o desarrolladores).
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO (SQuaRE) 25000 Modelo Heredado de ISO 15288
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO (SQuaRE) 25000 Modelo Extendido de ISO 9126
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
ISO (SQuaRE) 25000 Modelo Heredado de ISO 15288
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
TALLER EN CLASE
49
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Funcional Vs No Funcional
• Piense en una aplicación como Amazon. – Defina 2 req. funcionales y 2 req. no funcionales.
Para los req. no funcionales piense en atributos de calidad y una métrica clara para su definición.
50
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Nuevo SQUARE
• Consulte sobre el nuevo estándar SQUARE 25023:2016 su estructura jerárquico, realice un diagrama de dicha jerarquía. – https://www.iso.org/obp/ui/#iso:std:iso-iec:
25023:ed-1:v1:en
51
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
REFERENCIAS
52
Escuela de Ingeniería de Sistemas y Computación Calidad y Pruebas de Software
Referencias • Vista previa de algunas secciones de ISO 9001:2015
– https://www.iso.org/obp/ui/#iso:std:iso:9001:ed-5:v1:en
• Para comprar el estandar ISO 9001-2015 – http://www.iso.org/iso/catalogue_detail?csnumber=62085
• ISO 9126-4 – https://www.iso.org/obp/ui/#iso:std:iso-iec:tr:9126:-4:ed-1:v1:en
• ISO 9126-2 – https://www.iso.org/obp/ui/#iso:std:iso-iec:tr:9126:-2:ed-2:v1:en
• Para comprar el estandar ISO 25000 – http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?
csnumber=64764
53