COMPETENCIA Identifica y aplica conceptos bsicos de calidad de software. CONTENIDOS 1. Introduccin a la calidad: ISO 9000, Modelo EFQM. Modelo Six-Sigma 2. Calidad del software: definicin, puntos de vista 3. Factores que determinan la calidad Calidad del software: interna y externa, del producto, proceso y recursos humanos. Control y aseguramiento de la calidad Caractersticas de calidad: error, falla, defecto Visin Popular Algo abstracto Perfeccin Lujo y cuestin de gusto Visin Profesional Conformidad a los requisitos Adecuacin al uso DEFINICIONES DE CALIDAD Es la suma de todos aquellos aspectos o caractersticas de un producto o servicio que influyen en su capacidad de satisfacer las necesidades, expresadas o implcitas . (ISO 8402) Grado con el cul un cliente o usuario percibe que el SW satisface sus expectativas. (IEEE 729-83) Calidad es cumplimiento de requisitos. (Philip Crosby) Calidad es satisfaccin del cliente. (William Edwards Deming)
ISO 9000 Conjunto de normas que pretenden construir una serie de reglas de aplicacin internacional, garantizando niveles de calidad determinados RAZONES PARA USAR ISO 9000 Demanda del cliente Necesidad de mejorar procesos/sistemas ISO 9000 2000: Enfoque basado en procesos MODELO EFQM 1988 (European Foundation for Quality Management) a. El modelo EFQM, que fue creado como marco para evaluar las organizaciones con el fin de conceder el European Quality Award, se puede utilizar como: herramienta para autoevaluacin forma de comparacin (benchmark) con otras organizaciones gua para identificar las reas de mejora base para un vocabulario comn y una manera de pensar estructura para sistemas de gestin de la organizacin b. Se basa en 9 criterios: Agentes facilitadores (5): son el liderazgo, las personas, la estrategia, la alianza y los procesos y resultados (4): son los resultados en las personas, en los clientes, en la sociedad y los resultados clave. c. El modelo EFQM se basa en una serie de principios: Orientacin a los resultados Orientacin al cliente Liderazgo y coherencia en los objetivos Gestin por procesos y hechos Desarrollo e implicacin de las personas Aprendizaje, innovacin y mejora continuos Desarrollo de alianzas Responsabilidad social
MODELO SIX SIGMA Definir Medir Analizar Analizar Controlar CLIENTE Entrega al cliente Indicadores Causales Correcciones Acciones Sistema de gestin administrativa enfocada a la calidad no solo del producto, sino de todo lo que caracteriza a una organizacin, es decir, la parte directiva y la parte operativa. Seis sigma es el cambio de cultura organizativa tomando en cuenta al cliente, proceso y al empleado. El proceso seis sigma se descompone en cinco fases, que responden al acrnimo DMAIC y que constan de varios pasos: - Definir el problema e identificar lo que es importante: consiste en definir el problema, formar un equipo, establecer un esquema del proyecto, desarrollar el plan del proyecto, identificar los clientes, identificar las salidas clave, identificar y priorizar los requisitos de los clientes, y documentar el proceso actual. - Medir el proceso actual: determinar qu medir, llevar a cabo las mediciones, calcular el nivel sigma actual, determinar la capacidad del proceso, y llevar a cabo comparaciones (benchmark) con lderes del proceso. - Analizar lo que est mal y las soluciones potenciales, determinando las causas de la variacin, determinando que mejoras tendran el mayor impacto para satisfacer los requisitos del cliente, desarrollando un mapa de procesos y evaluando los riesgos asociados al proceso revisado. - Mejorar el proceso implantando las soluciones: obtener la aprobacin para los cambios propuestos, finalizar el plan de implementacin, e implementar los cambios aprobados. - Controlar el proceso mejorado asegurando que los cambios se mantienen, mediante el establecimiento de mtricas clave, el desarrollo de la estrategia de control, la celebracin y comunicacin de los xitos. CALIDAD DEL SOFTWARE Depende de la necesidad del usuario Requisitos funcionales Qu tiene que hacer el software?
Requisitos no funcionales Desempeo Seguridad Usabilidad Ejemplo: requisitos funcionales para controlar el stock Registro de productos Registro de proveedores Entrada y salida de productos Emisin de reportes Investigacin Login TRABAJO Diagramar los requisitos no funcionales: seguridad, usabilidad, performance
DEFINICIN DE CALIDAD DEL SOFTWARE Totalidad de caractersticas de un producto software que le confiere la capacidad de satisfacer las necesidades implicitas y explcitas. [ISO 8402] Calidad de software es la conformidad de los requisitos funcionales y de desempeo que fueron explcitamente declarados, a patrones de desarrollo claramente documentados, y a las caractersticas implcitas que son esperadas de todo software desarrollado por profesionales. [Pressman, 1994]
PUNTO DE VISTA DE CALIDAD DEL SOFTWARE Se interesa principalmente en el uso del software La calidad est orientada a las caractersticas internas del software La calidad del producto no puede ser desvinculada de los intereses de la organizacin FACTORES QUE DETERMINAN LA CALIDAD Calidad Interna: Medible a partir de las caractersticas intrnsecas, como el cdigo fuente Externa: Medible en el comportamiento del producto, como en una prueba Calidad en uso: Durante la utilizacin efectiva por parte del usuario Revisin del producto Implantacin del producto Operacin del producto 1. Mantenibilidad 2. Flexibilidad 3. Testeabilidad 1. Portabilidad 2. Reusabilidad 3. Interoperabilidad 1. Correctitud 2. Confiabilidad 3. Eficiencia 4. Integridad 5. Usabilidad FACTORES DE CALIDAD DE McCall Correctitud El sistema hace aquello que es necesario? Confiabilidad El sistema se comporta con una precisin del 100%? Mantenibilidad Se pueden realizar cambios en el sistema? Flexibilidad El sistema acepta nuevos requisitos? Testeabilidad Se puede hacer pruebas en el sistema? Eficiencia El sistema funciona muy bien en el hardware actual? Integridad El sistema es seguro? Usabilidad El sistema es fcil de usar? Portabilidad El sistema puede ser utilizado en otro ambiente? Reusabilidad El sistema puede utilizarse nuevamente en otro sistema? Interoperabilidad El sistema comparte alguna interfaz con otro sistema? FACTORES DE CALIDAD INTERNA Y EXTERNA ISO 9126 Funcionalidad Confiabilidad Usabilidad Eficiencia. Mantenibilidad Portabilidad FACTORES DE CALIDAD EN USO Efectividad Productividad Seguridad crtica Satisfaccin CONTROL Y ASEGURAMIENTO DE LA CALIDAD Control de la Calidad (QC) Orientado al producto. Detecta. Actividades relacionadas a la evaluacin de un producto. Aseguramiento de la Calidad (QA) Orientado al proceso. Previene. Actividades relacionadas a la creacin y mejora de procesos asociados al desarrollo y mantenimiento de un producto.
CARACTERSTICAS DE CALIDAD Error (mistake): accin humana que produce un resultado incorrecto; diferencia entre el valor obtenido y el esperado, es decir, cualquier estado intermedio incorrecto o resultado inesperado en la ejecucin del software. Ejemplo: divisiones entre 0 o una inadecuada consulta a una BD. Defecto (failure): incapacidad de proveer el servicio conforme ha sido especificado, puede ser conducido por un error. Por ejemplo: usar el operador < en lugar de <=, falta de campos en una tabla de BD, etc. Falla (bug): paso, proceso p definicin de datos incorrectos; manifestacin en el software de un engao cometido por el desarrollador; discrepancia visible que se produce al momento de ejecutar un programa con un defecto. Por ejemplo: una consulta que no arroje ningn resultado. CASOS DE ESTUDIO Identificar el error, defecto y falla del ERP Trilce. Determinar los requisitos funcionales y no funcionales que deber tener en cuenta cada sistema identificado en los casos de estudio: HEALTHEON PIRELLI CEMTEC PFIZER NOTA: si desea tener ms informacin, revisar la siguiente direccin: http://alarcos.esi.uclm.es/competisoft/