1.

Conceptos básicos de
Calidad del Software
LS3148 - Calidad de Software
3IM1
Universidad Antonio de Nebrija
Justo Hidalgo –con algunos apuntes de Manuel Fernando Juan-

Contenidos




Introducción
SW vs. otros productos industriales
Características básicas
Definiciones de Calidad

Calidad de Software 1. Conceptos Básicos

2

Conceptos Básicos en Calidad de Software

Existen distintos puntos de vista respecto a la calidad:
1. Filosófico: se puede reconocer pero no definir.
2. Usuario: cumple con el propósito previsto
• (‘fitness for purpose’).
3. Producto: es algo intrínseco al producto.
4. Valor: tiene calidad para el que esté dispuesto a pagar por
ello.

Calidad de Software 1. Conceptos Básicos

3

¿Por qué Calidad de Software?

LIMITED WARRANTY
– Nebrisscape Inc. provides no warranty, either expressed or implied, with respect
to NEBRIGATOR’s performance, reliability or fitnees for any specified purpose.
Nebrisscape Inc. Does not warrant that the software or its documentation will
fulfil your requirements. Although Nebrisscape Inc. has performed thorough tests
of the software and reviewed the documentation, Nebrisscape Inc. does not
provide any warranty that the software and its documentation are free of errors.
Nebrisscape Inc. will in no case be liable for any damages, incidental, direct,
indirect or consequential, incurred as a result of impaired data, recovery costs,
profit loss and third party claims. The software is licensed “as is”. The purchaser
assumes the complete risk stemming from application of the NEBRIGATOR
program, its quality and performance.
– If physical defects are discovered in the documentation or the CD on which
NEBRIGATOR is distributed, Nebrisscape Inc. will replace, at no charge, the
documentation or the CD within 180 days of purchase, provided proof of
purchase is presented.

Calidad de Software 1. Conceptos Básicos

4

Conceptos Básicos 5 .SW vs. otros productos industriales • • • Complejidad del producto Visibilidad del producto Procesos de desarrollo y producción Calidad de Software 1.

Conceptos Básicos 6 . otros productos industriales: complejidad del producto • Parámetro: número de modos operacionales – Producto industrial: miles de modos de operación. Calidad de Software 1.SW vs. – SW: millones de posibilidades.

otros productos industriales: visibilidad del producto • Los productos SW son invisibles – ¿Cómo sabemos si a nuestro SW “le falta una puerta”? Calidad de Software 1. Conceptos Básicos 7 .SW vs.

otros productos industriales: procesos de desarrollo y producción (I) 1. 2.SW vs. Planificación de producción: • Acciones previas a puesta en producción 3. Conceptos Básicos 8 . Desarrollo de producto: • Diseñadores y profesionales de QA (Quality Assurance) diseñan y prueban el prototipo para detectar defectos. Manufactura Calidad de Software 1.

Conceptos Básicos 9 . 3. otros productos industriales: procesos de desarrollo y producción (y II) 1.SW vs. Calidad de Software 1. 2. Planificación de producción: • En algunos casos sí –software “llave en mano”. Manufactura • La manufactura SW es automática –copiar CDs y manuales-. Desarrollo de producto: • OK: en SW es donde se hacen las pruebas.

Características Básicas del desarrollo de Software • • • Complejidad alta Invisibilidad del producto Detección de defectos en menos fases de desarrollo y producción Calidad de Software 1. Conceptos Básicos 10 .

Qué nos obliga a asegurar la Calidad en el SW (I) • Quién realiza Software: – – – – Alumnos y profesores en el ámbito de la educación Aficionados Profesionales de otras áreas que desarrollan SW como base para sus trabajos Ingenieros de Software Calidad de Software 1. Conceptos Básicos 11 .

Conceptos Básicos 12 .Qué nos obliga a asegurar la Calidad en el SW (II): entorno del desarrollador profesional • • • • • • • Condiciones contractuales Relación cliente-proveedor Trabajo en equipo Cooperación y coordinación Interfaces con otros sistemas software Cambios de componentes del equipo Mantenimiento de producto Calidad de Software 1.

Conceptos Básicos 13 .Qué nos obliga a asegurar la Calidad en el SW (III): condiciones contractuales • • • • Lista de requisitos funcionales Presupuesto del proyecto Planificación temporal En algunos casos: equipos predefinidos Calidad de Software 1.

Qué nos obliga a asegurar la Calidad en el SW (IV): relación cliente-proveedor • • Cooperación continua. Conceptos Básicos 14 . Propenso a cambios Calidad de Software 1.

.. queramos o no.Qué nos obliga a asegurar la Calidad en el SW (V): trabajo en equipo • Componentes con diferentes: – – – – – • Criterios Objetivos Ganas Planteamientos profesionales . Conceptos Básicos 15 . Calidad de Software 1. Pero con una meta común. ...

Conceptos Básicos 16 .Qué nos obliga a asegurar la Calidad en el SW (VI): cooperación y coordinación • La multidisciplinariedad actual exige el trabajo entre diferentes equipos: – – – – Otros equipos sw de la misma organización Equipos SW y HW Equipos cliente y proveedor Subcontratas Calidad de Software 1.

Conceptos Básicos Otro equipo subcontratado 17 .Qué nos obliga a asegurar la Calidad en el SW (VII): cooperación y coordinación Equipo de Desarrollo SW Otro equipo subcontratado Equipo de Desarrollo HW Equipo de Desarrollo SW Otro equipo subcontratado Nuestro Equipo Equipo de Desarrollo del Cliente Otro equipo subcontratado Calidad de Software 1.

Qué nos obliga a asegurar la Calidad en el SW (VIII): interfaces con otros sistemas software • • • Interfaces de entrada de otros sistemas sw Interfaces de salida a otros sistemas sw Interfaces de entrada y salida al panel de control Sistema de Control de Asistencia Sistema de Gestión de Notas Calidad de Software 1. Conceptos Básicos Sistema de Envío de Información 18 .

Qué nos obliga a asegurar la Calidad en el SW (IX): cambio de componentes del equipo Calidad de Software 1. Conceptos Básicos 19 .

Conceptos Básicos 20 . sino que ¡¡¡NACE!!! .. un bebé un poco problemático Calidad de Software 1.Qué nos obliga a asegurar la Calidad en el SW (y X): mantenimiento de producto • El software no se termina cuando se entrega al cliente..

ISO 8492:1986 En una situación contractual.Definición de Calidad (I) Definiciones académicas de Calidad: Totalidad de aspectos o características de un producto o servicio que le hace satisfacer necesidades explícitas o implícitas. las necesidades suelen ser explícitas. Conceptos Básicos 21 . Calidad de Software 1. mientras que en otras situaciones las necesidades están implícitas y hay que averiguarlas y documentarlas.

estando su valor medido por el grado de satisfacción del consumidor que lo ha adquirido o lo utiliza ISO 8402 (1994) Calidad de Software 1. Conceptos Básicos 22 .Definición de Calidad (II) Calidad de un producto o servicio es la capacidad de dicho producto o servicio para satisfacer las exigencias para las que fue creado.

12-1990 Calidad de Software 1. El grado en que un sistema.Definición de calidad (III) Calidad es: El grado en que un sistema. un componente o un proceso satisface las necesidades o expectativas de un cliente o usuario. un componente o un proceso satisface sus requisitos especificados. Conceptos Básicos 23 . IEEE Std 610.

Definición de calidad (y IV) •Calidad es valor para alguien (Weinberg). •¿Es suficiente el cumplimiento de los requisitos para que un producto sea de calidad? Hay distintos enfoques en las definiciones de Calidad. resolviendo sus necesidades explícitas e implícitas. algo con calidad es algo que satisface al cliente. •Crosby : Calidad es el cumplimiento de los requisitos. •Traducido al entorno empresarial. Conceptos Básicos 24 . ¿Hay contradicciones o todas las definiciones son compatibles? Calidad de Software 1.

•¿Qué es entonces satisfacción del cliente? Calidad de Software 1.e. ISO 8402 (1994) •Cliente: interno o externo. Conceptos Básicos 25 . •El que elige. confederaciones).Definición de cliente (I) •Destinatario de un producto proporcionado por el suministrador. •El usuario. •Cinco aspectos en el cliente: •El que decide. •Y a veces interesa tener en cuenta al cliente del cliente (p. •El que compra. •El que influye.

(Weinberg). Calidad es el grado en que el cliente o usuario percibe que el software satisface el conjunto de sus expectativas (IEEE Std 610. a un coste razonable. Conceptos Básicos 26 .Definición de cliente (y II) Para que el software pueda satisfacer al cliente debe ser usable y proporcionar una solución a una necesidad (explícita o implícita) del cliente. Calidad es capacidad para ser usado (Juran).12-1990) Calidad de Software 1. Calidad es valor para el cliente.

pertenecientes a la operación de un sistema informático.Definición de software ¿Qué es Software? Programas de ordenador. procedimientos y posible documentación y datos asociados. IEEE Std 610.12-1990 Calidad de Software 1. Conceptos Básicos 27 .

Definición de software de calidad •Calidad es cumplir con los requisitos (Crosby. Conceptos Básicos 28 . Quality is free. ¿cero defectos => sw de calidad? ¿muchas posibilidades => sw de calidad? ¿código elegante => sw de calidad? ¿rapidez => sw de calidad? ¿precio => sw de calidad? ¿facilidad de uso => sw de calidad? Calidad de Software 1. •Ej: Un editor de textos que sea incapaz de manejar ficheros de más de 200 o 300 páginas será un software de calidad para el que sólo escribe documentos de pocas páginas. 1979). vol1. Software quality management. 1991). •Calidad es cumplir con los requisitos de una persona determinada (Weinberg. •Sin embargo el mismo editor de textos será un software de mala calidad para el que escriba libros o documentos extensos.

La segunda es algo objetivo y cuantificado.Definición de calidad de software Calidad del software Conjunto de características que confieren al software la aptitud para satisfacer las necesidades establecidas y las implícitas. Calidad de Software 1. Diferencia entre software de calidad y calidad del software: La primera es la percepción que tiene un cliente. Conceptos Básicos 29 .

• Incoherencia con respecto a algún requisito. – Fault: defecto • Es un error software que no es mitigado por otras líneas. Conceptos Básicos 30 . – Failure: fallo.¿Qué es un error software? (I) • Debemos diferenciar entre: – Error: • Inconsistencia gramatical en alguna o algunas líneas de código. avería • Es un defecto que ocurre. Calidad de Software 1.

pero no es un fallo. ¿y si cambia el criterio? Calidad de Software 1. • Pero.¿Qué es un error software? (y II) • Software para una cadena farmacéutica: – No se debe vender a clientes que deban más de €200: el programador puso “500”. pues pues las farmacias no dan crédito. • Es un defecto. Conceptos Básicos 31 .

Mala reutilización Presupuesto/ tiempo Errores lógicos de diseño • • • • • Algoritmos erróneos Secuenciamiento erróneo Condiciones frontera erróneas Omisión de estados Omisión de tratamiento de excepciones Calidad de Software 1. Conceptos Básicos 32 .Causas de Errores Software (I) 1. 3. Mala definición de requisitos Mala comunicación con el cliente Desviaciones deliberadas • • 4. 2.

Errores de documentación Calidad de Software 1. Errores de procedimiento 9. Conceptos Básicos 33 . Errores de codificación 6.Causas de Errores Software (y II) 5. Pruebas incompletas 8. Incumplimiento de estándares de codificación y documentación 7.

y para dirigir y controlar dicha organización para lograr dichos objetivos. Conceptos Básicos 34 .Sistema de Gestión de la Calidad (I) Sistema de gestión de la calidad Conjunto de elementos mutuamente relacionados que interactúan para establecer la política y los objetivos de calidad de una organización. ISO 9000:2000 Calidad de Software 1.

Conceptos Básicos 35 .Sistema de Gestión de Calidad (y II) •Actividades coordinadas para dirigir y controlar una organización en lo relativo a la calidad. •Generalmente incluye el establecimiento de: • política de la calidad • objetivos de calidad • planificación de la calidad • control de la calidad • mejora de la calidad • aseguramiento de la calidad ISO 9000:000 Calidad de Software 1.

Conceptos Básicos 36 . • Mínimo coste. • Prevención de defectos. • Mantenibilidad. • Rapidez de entrega.Política de Calidad • • • Intenciones globales y orientación de una organización relativas a la calidad tal como se expresan formalmente por la Alta Dirección. ISO 9000:2000 Ejemplos: • Cero defectos • Satisfacción del cliente. Calidad de Software 1. Proporciona el marco de referencia para el establecimiento de los objetivos de la calidad.

ISO 9000:2000 Calidad de Software 1.Planificación de Calidad •Parte de la gestión de la calidad enfocada al establecimiento de los objetivos de la calidad y a la especificación de los procesos operativos necesarios y de los recursos relacionados para cumplir los objetivos de la calidad. Conceptos Básicos 37 .

Shewhart: Shewhart Control significa acción para conseguir un determinado propósito. se comparan con estándares. Conceptos Básicos 38 . y se toman acciones sobre las desviaciones. Control de calidad son las acciones necesarias para mantener una determinada característica o características de la calidad dentro de unos límites preestablecidos.Control de Calidad Juran: El control de calidad el el proceso a través del cual se miden las características de la calidad en un momento dado. Calidad de Software 1.

Mejora de Calidad Parte de la gestión de la calidad orientada a aumentar la capacidad de cumplir con los requisitos de la calidad. Conceptos Básicos 39 . ISO 9000:2000 Calidad de Software 1.

Este sistema implica la planificación. Conceptos Básicos 40 .Aseguramiento de Calidad (I) Parte de la gestión de la calidad orientada a proporcionar confianza en que se cumplirán los requisitos de la calidad. medida y seguimiento de las actividades de desarrollo llevadas a cabo. ISO 9000:2000 El aseguramiento de la calidad del software es el sistema de métodos y procedimientos empleados para asegurar que el producto software satisface sus requisitos. Calidad de Software 1.

estándares y procedimientos. los datos asociados. •Implica asegurar que el producto es el adecuado y es desarrollado al coste y en el plazo previsto.Aseguramiento de Calidad (y II) •Aseguramiento del producto software •El aseguramiento del producto es el conjunto de actividades a través de las cuales se obtiene la adecuación al uso. •Bajo el término producto se incluye el software. la documentación y todo el papeleo de soporte y reporte NASA SW product assurance guidebook Calidad de Software 1. Conceptos Básicos 41 . •Aseguramiento del software •Conjunto de actividades planificadas y sistemáticas que aseguran que los productos y procesos software son conformes a los requisitos. independientemente de dónde o cuando se realicen.

•No conformidad •Incumplimiento de un requisito.Últimos conceptos . ISO 9000:2000 Calidad de Software 1.) •Conformidad: •Cumplimiento de un requisito. Conceptos Básicos 42 . •Defecto: •Incumplimiento de un requisito asociado a un uso previsto o especificado.

Sign up to vote on this title
UsefulNot useful