la calidad del software11

13
LA CALIDAD DEL SOFTWARE

Upload: vljc

Post on 21-Dec-2015

218 views

Category:

Documents


0 download

DESCRIPTION

cd

TRANSCRIPT

LA CALIDAD DEL SOFTWARE

Administración de la calidad del Software• Se refiere a lograr un nivel de calidad

requerido en el producto de software • Involucra a la definición de estándares de

calidad apropiados y procedimientos que permitan asegurar que estos se cumplan.

• Debe llevar a desarrollar una cultura de calidad en donde la calidad es responsabilidad de todos

Administración de la calidad del Software– comprobación independiente de los procesos de

desarrollo– los productos resultantes de los procesos se introducen

en el proceso de administración de la calidad para asegurar su consistencia con estándares y objetivos de calidad

– equipo de aseguramiento y control: independientes de los equipos de desarrollo• responsabilidad de la administración de la calidad• visión objetiva del proceso• informan de problemas y dificultades a los administradores

principales de la organización

control de la calidad

• control de calidad– vigilar el proceso de desarrollo para asegurar que se

siguen los procedimientos de SQA y estándares de calidad ajustándose al plan de calidad

– dos enfoques complementarios• revisiones técnicas: el software, documentación y

procesos son revisados por un grupo de personas• valoración: normalmente automática, con algún

tipo de herramienta– el software y los documentos se procesan y

se comparan con los estándares que se aplican a ese proyecto

– implica una medida cuantitativa de de algunos atributos del software (medición y métricas)

Aseguramiento de la calidad

Aseguramiento de la calidad

Planificación de la calidad

Planificación de la calidad

Control de la calidadControl de la calidad

control de calidad: revisiones técnicas formales

Decisión final: - Aceptación - Rechazo - Aceptación condicionada a pequeñas modificaciones

Decisión final: - Aceptación - Rechazo - Aceptación condicionada a pequeñas modificaciones

Poca gente, preparación y duración breves

Poca gente, preparación y duración breves

Se revisa UN producto (especificación, módulo, listado,...)Se revisa UN producto (especificación, módulo, listado,...)

Participantes: jefe de revisión, revisores (ingenieros,programadores,...) y productor

Participantes: jefe de revisión, revisores (ingenieros,programadores,...) y productor

revisiones técnicas formales

• objetivos:

descubrir errores en la función, lógica o implementación de cualquier representación del softwre.

verificar el cumplimiento de los requisitos

garantizar el cumplimiento de los estándares.

conseguir un desarrollo uniforme del software

obtener proyectos que hagan más sencillo los trabajos técnicos (análisis que permitan buenos diseños, diseños que permitan implementaciones sencillas, estrategias de pruebas que faciliten éstas,...)

•RTFs: son un filtro que permite “purificar” las actividades de ingeniería de software.

– se aplican en diversos momentos del desarrollo para detectar defectos.

– diseño: entre el 50 y el 60% de los errores del desarrollo.– aprovecha la diversidad de un grupo de personas para:

señalar la necesidad de mejoras en el producto de ingeniería (diagramas del análisis, diccionario de datos, diseño, código, estrategia de pruebas,...)

confirmar las partes en las que no es necesaria una mejora.

conseguir un trabajo técnico de calidad más uniforme.– efectividad: se calcula que son efectivas en un 75%.

ejemploErrores encontrados Número Coste unitario Total

Llevando a cabo revisiones

Durante el diseño 22 1,5 33

Antes de la prueba 36 6,5 234

Durante la prueba 15 15,0 315

Tras la distribución 3 67,0 201

783

Sin revisiones

Antes de la prueba 22 6,5 143

Durante la prueba 82 15,0 1230

Tras la distribución 12 67,0 804

2177

ACS

• El aseguramiento de la calidad del software (ACS) consiste en controlar que los productos y procesos del desarrollo de software umplen estándares de completitud y calidad. Como se ha comentado, ACS cumple el rol de watchdog de los procesos del ciclo de vida del software.

• Existen dos formas de obtener software de calidad. La primera es prevenir la falta de calidad, defi niendo normas, estándares, métodos y técnicas apropiadas durante los procesos del ciclo de vida.

• La segunda es detectar y corregir la falta de calidad (e.g. errores en el ódigo, en el diseño, en manuales de usuarios, o código complejo mal documentado) a través de la evaluación de procesos, mejoramiento de procesos, revisiones y, por supuesto, testeo de software.

• Las actividades de aseguramiento de la calidad deben ser planificadas, con sus correspondientes asignaciones de recursos humanos y materiales. O sea, asegurar la calidad cuesta dinero. Sin embargo, la falta de calidad también tiene un precio.

• Costos de prevención: costos de actividades específicamente diseñadas para prevenir una calidad pobre.

• Costos de detección: costos de actividades orientadas a encontrar problemas de calidad.

• Costos de fallos: costos derivados de una calidad pobre, por ejemplo, el costo de corregir errores y el costo de atender quejas de usuarios