Está en la página 1de 55

UNIDAD I: Introducción a la calidad en el Desarrollo de

software
TEMA I: Generalidades y conceptos de la calidad en el
Desarrollo de software.
Conceptos
 Conjunto de propiedades y de
características de un producto
o servicio, que le confieren
aptitud para satisfacer
necesidades explícitas o
implícitas (ISO 8402)
Calidad  es “el grado con el que un sistema,
componente o proceso cumple los
requerimientos especificados y las
necesidades o expectativas del
cliente o usuario” . (IEEE, STD 610-
1990
¿Que es software ?
 Conjunto de programas y rutinas que permiten a
la computadora realizar determinadas tareas.

 Término informático que hace referencia a un


programa o conjunto de programas de cómputo,
así como datos, procedimientos y pautas que
permiten realizar distintas tareas en un sistema
informático.
Que es software de calidad ?
 Ausencia de errores  Cumplimiento de los
 Adecuación a las estandares establecidos
necesidades del usuario  Dentro del presupuesto de
 Eficiencia en tiempo, aprobado
espacio y recursos  Dentro del cronograma
planeado
Es la concordancia del producto con:
• Los requerimientos funcionales y no
funcionales explícitamente establecidos por
Calidad de los clientes o usuarios
software: • Los estándares de desarrollo explícitamente
documentados
• Las características implícitas que se espera de
todo software
Metodos para lograr el nivel de
calidad
Inspección

Métodos
Formales
Metodos
Pruebas

Técnicas de control
de proyectos
Modelos de Calidad
del software

Calidad del Calidad del


Calidad de uso
Producto proceso
Norma:
una norma es el procedimiento, un
modelo o patrón, al que se ajusta un
trabajo, una tarea o un proceso.
Definición de estándar

un estándar es un conjunto de
normas, acuerdos y recomendaciones
técnicas que regulan la transmisión
de los sistemas de comunicación.
1. Los estándares no se refieren directamente al software ...

Estándar: 2. Los estándares se refieren al PROCESO QUE SE SIGUE PARA DESARROLLARLO Y


MANTENERLO.

3. Enumeran y describen las prácticas ingenieriles comunmente aceptadas, que la experiencia


ha mostrado que hacen más factible el desarrollo de productos de buena calidad de una
manera consistente.
4. Establecen criterios objetivos para que auditores independientes puedan garantizarle a los
clientes que una compañía de software está aplicando las prácticas ingenieriles que en
general conducen al desarrollo de software de calidad de una manera consistente.
Qué objetivos tiene la estandarización

•Resolución de problemas.
•Mejora de los procesos.
•Generar un mayor rendimiento.
•Ordenación de la actividad y el contexto.
•Mejora en los resultados.
•Reducción de costes indirectos y 
directos.
•Automatización de procesos.
•Agilización de los procesos y toma de
decisiones.
Actividades de estandarización internacional para el desarrollo de
software

• IEC Comisión Electrónica Internacional (IEC) fué


fundada en el año 1906 para definir estándares en
eléctrica y electrónica
• ISO creada en 1947 para abarcar otros temas.
• ITU Unión internacional de telecomunicaciones
• JTC ( ISO e IEC en 1987 forman Comité Técnico
Conjunto, cuyo objetivo es elaborar estándares para
la Tecnología de Información)
Principales normas ISO
 ISO 216 Medidas de papel: p.e. ISO A4
 ISO 639 Nombres de lenguas
 ISO 690:1987 regula las citas bibliográficas (corresponde a la norma UNE 50104:1994)
 ISO 690-2:1997 regula las citas bibliográficas de documentos electrónicos
 ISO 732 Formato de carrete de 120
 ISO 838 Estandar para perforadoras de papel
 ISO 1007 Formato de carrete de 135
 ISO/IEC 1539-1 Lenguaje de programación Fortran
 ISO 3029 Formato carrete de 126
Principales normas ISO
• ISO 3166 códigos de países
• ISO 4217 códigos de divisas
• ISO 7811 Técnica de grabación en tarjetas de identificación
• ISO 8601 Representación del tiempo y la fecha. Adoptado en Internet
mediante el Date and Time Formats de W3C que utiliza UTC.
• ISO 8859 codificaciones de caracteres que incluye ASCII como un
subconjunto (Uno de ellos es el ISO 8859-1 que permite codificar las
lenguas originales de Europa occidental, como el español)
• ISO/IEC 8652:1995 Lenguaje de programación Ada
• ISO 9000 Sistemas de Gestión de la Calidad - Fundamentos y
vocabulario
• ISO 9001 Sistemas de Gestión de la Calidad - Requisitos
• ISO 9004 Sistemas de Gestión de la Calidad - Directrices para la mejora
del desempeño
Principales normas ISO
• ISO 9660 Sistema de archivos de CD-ROM
• ISO 9899 Lenguaje de programación C
• ISO 10279 Lenguaje de programación BASIC
• ISO 10646 Universal Character Set
• ISO/IEC 11172 MPEG-1 (estándares de codificación de audio y
vídeo normalizados )
• ISO/IEC_12207 Tecnología de la información / Ciclo de
vida del software
• ISO 13450 Formato de carrete de 110
• ISO/IEC 13818 MPEG-2 (codificar audio y vídeo para señales de
transmisión, que incluyen Televisión digital terrestre, por satélite o cable.
MPEG-2. Con algunas modificaciones, es también el formato
de codificación usado por los discos SVCD y DVD comerciales de películas).
Principales normas ISO
 ISO 14000 Estándares de Gestión Medioambiental en
entornos de producción
 ISO/IEC 14496 MPEG-4
 ISO/IEC 15444 JPEG 2000 (protocolo de navegación en imágenes
transmitidas desde un servidor de imágenes en la solicitud de un cliente,
reduciendo así el ancho de banda requerido).

 ISO 15693 Estándar para "tarjetas de vecindad"


 ISO/IEC 17799 Seguridad de la información
 ISO 26300 OpenDocument
 ISO/IEC 17025 Requisitos generales relativos a la
competencia de los laboratorios de ensayo y calibración
 ISO/IEC 27001 Sistema de Gestión de Seguridad de la
Información
Principales normas ISO

ISO 9000
Estandariza los sistemas de calidad de las diferentes
empresas y sectores, se publican las normas ISO 9000, que
son un conjunto de normas editadas y revisadas
periódicamente por la Organización Internacional de
Normalización (ISO) sobre la garantía de calidad de los
procesos.

Así, se consolida a nivel internacional la normativa de


la gestión y control de calidad.
Principales normas ISO

ISO 9000
• Proporcionar una guía para la gestión de la calidad: diseño e
implantación de sistemas de calidad.
(ISO 9000 no normaliza el sistema de gestión de calidad, ya que esto
depende del tipo de sector, tamaño de la empresa, organización
interna, etc, sino que normaliza las verificaciones que se han de
realizar sobre el sistema de calidad)

• Describir los requerimientos generales para garantizar la calidad


(demostrar la idoneidad del sistema de calidad).
Principales normas ISO
ISO 9000 Calidad de software

• ISO 900-1:2000. Modelo para conseguir la calidad total en el


diseño, desarrollo, producción, instalación y servicio post-venta.
• ISO 9000-3:1991. Guía para la aplicación de la norma ISO 9001 al
desarrollo, suministro y mantenimiento de software.
• ISO 9004-1:1994. Gestión de la calidad y elementos del sistema de
calidad.
Principales normas ISO
ISO 9000 Calidad de software
– ISO 8402:1994. Gestión de la calidad y garantía de la calidad.
Vocabulario.
– ISO 12207:1995. Procesos del ciclo de vida del software.
– ISO/IEC 9126:1991. Características de la calidad de un
producto software.
– ISO/IEC 12119:1995. Productos software: evaluación y test.
– ISO/IEC 14102:1995. Guía para la evaluación y selección de
herramientas CASE (Ingeniería de Software Asistida por Computadora) son
diversas aplicaciones informáticas o programas informáticos destinadas a aumentar
el balance en el desarrollo de software reduciendo el costo de las mismas en
términos de tiempo y de dinero))
NORMAS ISO/IEC
Estándares y procesos Es el estándar indica una serie de procesos
aplicables al desarrollo desde la recopilación de requisitos hasta la
de software. culminación del software, creada para
interesados en la adquisición de software,
ISO 12207 – Modelos de Ciclos de Vida del desarrolladores y proveedores
Software
Esta norma agrupa las actividades que pueden
llevarse a cabo durante el ciclo de vida del
software en cinco procesos principales, ocho
procesos de apoyo y cuatro procesos
organizativos
NORMAS ISO 12207
PROCESOS DE APOYO O
PROCESOS PRINCIPALES
SOPORTE

Documentación
Adquisiciones

Gestión de la configuración
Suministros
Aseguramiento de la calidad

Operación Verificación
Desarrollo Validación
Mantenimiento
Revisión conjunto

Auditoría

Solución de problemas

PROCESOS ORGANIZATIVOS
Gestión Infraestructura

Mejora Recursos humanos


Organismos - ITU (Unión Internacional de
reguladores en el Telecomunicaciones)
ámbito - ISO (organización internacional
internacional para la normalización)
- IEEE(El Instituto de Ingenieros
Eléctricos y Electrónicos)
- IETF (Grupo de Trabajo en
Organismos Ingenieria de Internet)
reguladores - SEI Establecido por el
que trabajan ministerio de defensa de
USA.
en conjunto - OMG Estandar para
con software computación OO, utilizando
de calidad lenguaje UML.

Organismos ANSI (El Instituto Americano de


reguladores en Estados Normas Nacionales)
Unidos TIA (La Asociación de la Industria de
las Telecomunicaciones)
ESTANDARES DE LA DOCUMENTACION

Estos estándares hacen posible la interoperabilidad,


mejorando la comunicación entre ingenieros, llevando a
grandes avances en las posibilidades de producir
productos y servicios útiles.
ESTANDARES DE LA
DOCUMENTACION IEEE

PAVVS
• Plan de validación y verificación de software.

• Plan de aseguramiento de la calidad del software


PAQS

PACS
• Plan de administración de la configuración del software

PAPS
• Plan de administración del proyecto de software

ERS
• Especificación de requerimientos del software

DDS
• Documentación del diseño de software

DPS
• Documentación de pruebas del sotware
IEEE 730-1989 Aseguramiento
de la calidad

IEEE 1012-1986 V&V


(Verificación y validación)

IEEE 829-1990 Administración

ESTANDARES
de la configuración del software

IEEE 830-1993
Requerimientos específicos con

IEEE
organización orientada a objetos

IEEE/ANSI Estándares para


expresar diseños

IEEE-890 Diseño detallado de


software

IEEE-ANSI Documentación de
pruebas

IEEE 1919-1992 Mantenimiento


de software
IEEE 730-1989
Aseguramiento de la calidad.

Quien será responsable de la


calidad.

 Que documentación se requiere


para administrar el proyecto

Que técnica se usara para asegurar


la calidad

Que procedimientos se seguirán


para administrar el proyecto
IEEE 1012-1986 V&V
(verificación y validación)

5. Estándares, Practicas,
1. Introducción convenciones y métricas.
5.1. Propósito
5.2 Contenido
.
2. Documentos citados

6. Revisiones y Auditorias
6.1 Propósito
3. Administración: 6.2 Requerimientos mínimos
6.2.1 Revisión de requerimientos
3.1. Organización de software.
3.2. Tareas 6.2.2. Revisión de diseño preliminar
3.3. Responsabilidades 6.2.3 Revisión de diseño critico
6.2.4 Revisión de PAVVS
6.2.5 Auditoria funcional
6.2.6 Auditoria física
6.2.7 Auditorias en proceso
4. Documentación:
6.2.8 Revisión administrativa
4.1. Propósito
6.2.9 Revisión de las PACS
4.2. Requerimientos mínimos de la
6.2.10 Revisión posmortem
documentación
6.3 otros
4.3 Otros
IEEE 829-1990 Administración de la
configuración del software

1. Registro de
defectos
Bosquejo del plan de administración del 2. Registro
software (PACS) histórico del
tiempo.

1. Proteger y
Especificar la necesidad de una respaldar el
herramienta de AC (administración de código.
la configuración) 2. Utilizar
clases

1. Herramientas en uso.
2. Sitios web de
Evaluar herramientas contra sus almacenamiento de la
necesidades y presupuestos documentación.
3. Almacenamiento
sencillo de archivos.
IEEE 830-1993 Requerimientos
específicos de la organización orientada
a objetos

1. Requerimiento de
interfaz externa
2. Interfaz de usuario
3. Interfaz de hardware
Requerimientos de interfaz 4. Interfaz de
comunicación.

Requerimientos funcionales
1. Clases de objetos

Requerimientos inversos
1. Requerimientos del
desempeño
2. Restricciones del
Requerimientos no funcionales diseño
3. Atributos del sistema
de software
IEEE/ANSI 1016-1987 Guia para la
documentación del diseño

1. Propósito
2. Alcances
Introducción 3. Definiciones, acrónimos y
abreviaturas

Referencias 1. Descomposición de módulos


2. Descomposición de procesos
concurrentes.
Descripción de descomposición 3. Descomposición de datos

1. Dependencia entre módulos


Descripción de dependencia 2. Dependencia procesos
3. Dependencia entre datos

Descripción de interfaz 1. Interfaz de modulo


2. Interfaz del proceso

Diseño detallado de modulos 1. Diseño detallado de módulos


2. Diseño detallado de datos
IEEE 829-2983
documentación de pruebas

1. Introducción
Informe de transmisión de
2. Plan de pruebas: elementos de prueba:
Elemento a probar, localización
Elementos a probar, alcance, física de resultados, persona
enfoque, recursos, programa responsable para transmitir.
de tiempos, personal.

3. Diseño de pruebas: Archivo de prueba: Registro


Elementos a probar, enfoque, cronológico, localización física de la
plan detallado. prueba, nombre del probador

Casos de prueba: Establece


los datos de entrada y los eventos Informe de incidentes de
prueba: Documentación de
cualquier evento que ocurre
Procedimiento de prueba: durante la prueba que requiere
Pasos para preparar y ejecutar los mayor investigación
casos de prueba.
IEEE 1219-1992
Identificación de problemas de
mantenimiento
1.Identificación del
problema: Pruebas del sistema:
Entrada, proceso, control, salida,
Entrada, proceso, control, salida,
factores de calidad y métricas.
factores de calidad, métricas

2. Análisis:
Entrada, proceso, análisis de
factibilidad, control, salida, factores Pruebas de aceptación:
de calidad, métricas. Entrada, proceso, control, salida,
factores de calidad y métricas.

3. Diseño:
Entrada, proceso, control, salida,
factores de calidad, métricas.

Entrega: Entrada, proceso,


4. Implementación: control, salida, factores de calidad y
4.1 Entrada métricas.
4.2. proceso:
4.2.1 Código y pruebas
4.2.3. Análisis de riesgo
4.2.4. Revisión de Pruebas finales
4.3. Control, salida, Factores de
calidad y métricas.
TEMA II: Conceptos y métricas
de calidad en el desarrollo de
software
 Métrica:

Es una medida del grado en que un


sistema, componente o proceso posee un
atributo dado.

 Medida:
Proporciona una indicación cuantitativa
de la cantidad, dimensiones o tamaño de
algunos atributos de un producto.

‣Medición:
Acto de determinar una medida.
Métrica:

Proceso para reunir métricas


1. Identifique y defina las métricas que usara el equipo en cada etapa; incluidas
 Tiempo gastado en
a) investigación
b) Ejecucion
c)Revision
 Tamaño (líneas de código
 # defectos detectados por unidad (líneas de código)
 Autoevaluación de la calidad en una escala de 1 -10 ( debe mantenerse la
distribución de la campana)
Métrica:

Proceso para reunir métricas

2. Documentación de las PAQS


3. Acumulación de los datos históricos del proyecto.
4. Decida donde se localizaran los datos de las mediciones
 Conforme avanza el proyecto
 ¿En las PAQS, PAPS o en unapendice?
5. Designe ingenieros para administrar la recolección por etapa
 Líder de QA o lideres por etapas.
6. Programe revisiones de los datos para aprender para aprender de la
experiencia.
 Especifique cuando y como va a retroalimentar las mejoras.
Métricas de
Software

Las métricas del Software comprenden


un amplio rango de actividades
diversas, estas son algunas:

‣ Aseguramiento y control de calidad


‣ Modelos de fiabilidad
‣ Modelos y evaluación de ejecución
‣ Modelos y medidas de productividad
Métricas de Software
Métricas de
Software

Proceso de recopilación de métricas de Software:


Clasificación de las métricas
de Software

Según los criterios:


Clasificación de las métricas de
Software
Según el contexto en que se aplican:

Métricas de proceso Métricas de producto


‣ Se recopilan de todos los proyectos, y ‣ Se centran en las características del
durante un largo periodo de tiempo software
‣ Caracterizados por: y no en como fue producido.
‣ Control y ejecución del proyecto. ‣ También son productos los artefactos,
‣ Medición de tiempos de las fases. documentos, modelos, y componentes
que
‣ Métricas de proyecto conforman el software.
‣ Permiten evaluar el estado del ‣ Se miden cosas como el tamaño, la
proyecto. calidad, la
‣ Permiten seguir la pista de los totalidad, la volatilidad, y el esfuerzo.
riesgos.
Métricas de Calidad

 Principal objetivo de los ingenieros de


software es producir sistemas,
aplicaciones o productos de alta
calidad.

 Para las evaluaciones que se quieran


obtener es necesario la utilización de
medidas técnicas, que evalúan la
calidad de manera objetiva.
Métricas de Calidad - Modelos conocidos
Modelo de MCCALL (1977)

 Describe la calidad como un  Identifica una serie de criterios, tales


concepto elaborado mediante como rastreabilidad, simplicidad,
relaciones jerárquicas entre factores capacidad de expansión, etc.
de calidad, en base a criterios

 Los factores de calidad se


concentran en tres aspectos  Las métricas desarrolladas están
importantes de un producto de relacionadas con los factores de calidad
software: características operativas, y la relación que se establece se mide en
capacidad de cambios y adaptabilidad a función del grado de cumplimiento de
nuevos entornos. los criterios.
Métricas de Calidad - Modelos conocidos

Modelo de MCCALL
Métricas de Calidad - Modelos conocidos

Modelo de FURPS (1987)

 Basado en el modelo de MCCALL.


 Modelo desarrollado por Hewlett
Packard (HP) en 1987, desarrollando un
conjunto de factores de calidad de
 Se utilizan para establecer métricas
software y sus respectivos atributos.
de la calidad para todas las
 Funcionalidad (Functionality), actividades del proceso de desarrollo
de un software, inclusive de un
usabilidad (Usability),confiabilidad
sistema de información.
(Reliability), desempeño (Performance)
y capacidad de soporte (Supportability).
Métricas de Calidad - Modelos conocidos

Modelo de FURPS (1987)


Métricas de Calidad - Modelos conocidos

Modelo de DROMEY (1996)

Resalta el hecho de que la calidad del


producto es altamente determinada por
los componentes del mismo (incluyendo
documentos de requerimientos, guías de
usuarios, diseños, y código),
• Sugiere el uso de cuatro categorías que
implican propiedades de calidad, que son:
correctitud, internas, contextuales y
descriptivas.
Métricas de Calidad - Modelos conocidos

Modelo de DROMEY (1996)


Métricas de Calidad - Modelos conocidos

Modelo de DROMEY (1996)


Métricas de Calidad - Modelos conocidos

Normas ISO 9000


ISO/IEC 9126

basados en el modelo de McCall establece una guía acerca de los elementos que deben
considerarse al evaluar un software para así generar métricas propias que guíen tanto
el desarrollo como su valoración.
Métricas de Calidad - Modelos conocidos

Normas ISO 9000


ISO/IEC 9126
Métricas de Calidad - Modelos conocidos

MOSCA (Modelo Sistémico de Calidad)

 Consta de 4 niveles: dimensiones, categorías, características y


las métricas. En base de tres ramas:

 El producto
 el proceso
 la humana

Contiene un total de 715 métricas.


Métricas de Calidad - Modelos conocidos
MOSCA (Modelo Sistémico de Calidad)

También podría gustarte