Tema 10 Calidad Software - Grupo de Investigación · El aseguramiento de la calidad software...

55
Tema 10 Calidad Software Ingeniería del Software I

Transcript of Tema 10 Calidad Software - Grupo de Investigación · El aseguramiento de la calidad software...

Tema 10 Calidad Software

Ingeniería del Software I

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software

La calidad software es el grado con el que un sistema, componente o proceso cumple los requisitos funcionales definidos y las necesidades del cliente o usuario. (IEEE, Std 610-1900).

La calidad del software es el conjunto de cualidades que lo caracterizan y que determinan su utilidad y existencia.

Concordancia del software producido con los requisitos explícitamente establecidos, con los estándares de desarrollo prefijados y con los requisitos implícitos no establecidos formalmente, que desea el usuario (Pressman, 1998).

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software

ENTRADA SW

Factoría Software

EQUIPO DE DESARROLLO

INFRAESTRUCTURA

DOCUMENTACIÓN

ETC. EQUIPO PRUEBAS

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software

CALIDAD

RECURSOS HUMANOS

FORMACIÓN GESTIÓN

METODOLOGÍA

INFRAESTRUCTURA ARQUITECTURA

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software

Conseguir productos software de calidad es uno de los objetivos principales de las factorías de software.

¿Cómo podemos obtener software de calidad?

¿Cómo podemos medir y evaluar la calidad de un producto software?

El software al no ser físico es difícil medir su función, ventajas y costes. Por lo tanto, los procesos y los métodos para

manejar, para supervisar, y para medir su calidad pueden ser muy complejos.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software

¿Qué propiedades puedo medir en un software para poder evaluarlo? Clasificación de propiedades

Propiedades o características operativas.

Propiedades adaptabilidad a nuevos entornos.

Propiedades de soportar cambios.

Estas propiedades son los denominados requisitos no funcionales.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Propiedades operativas:

Son aquellas que nos indican las características del propio programa.

Propiedades operativas

Funcionalidad Usabilidad Eficiencia Fiabilidad

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Funcionalidad: el grado en que un programa satisface sus especificaciones y cubre los requisitos funcionales solicitados por el cliente.

Aspectos:

Adecuación: capacidad para ofrecer al cliente los requisitos funcionales que éste solicita.

Exactitud: capacidad del software para proporcionar los resultados con el grado necesario de precisión (sin fallos).

Interoperabilidad: capacidad del sistema para interactuar con otros sistemas.

Seguridad de acceso o integridad: capacidad del sistema para proteger la información y datos. Los usuarios y sistemas no autorizados no deben poder leerlos ni modificarlos.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Facilidad de uso/Usabilidad: se mide mediante los factores humanos. Es el esfuerzo requerido para aprender un programa. Se debe conocer el target al que va dirigido el software.

Aspectos:

Capacidad de ser entendido: ¿el usuario entiende cómo manejar el sistema?

Capacidad para ser operado: ¿la facilidad que el usuario tiene para llevar a cabo las tareas?

Capacidad de atracción: ¿es un software donde el usuario se encuentra cómodo?

Cumplimiento de la usabilidad: ¿tiene el software la capacidad para adherirse a normas, guías de estilo relacionadas con la usabilidad?

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Rendimiento o eficiencia: cantidad de recursos requeridos por un programa para llevar a cabo sus funciones. Se puede mediar a través del la velocidad de proceso o por el tiempo de respuesta.

Aspectos:

Comportamiento temporal: ¿cuál es su tiempo de respuesta? ¿Cuál es su tiempo de proceso? (Medido todo bajo unas condiciones determinadas).

Utilización de recursos: ¿utiliza los recursos (memoria RAM) necesarios?

Cumplimiento de la eficacia: capacidad para adaptarse a normas o leyes relacionadas con la eficacia.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Fiabilidad: grado con el cual un programa lleva a cabo sus funciones con precisión y sin fallos. Se mide por la frecuencia de los fallos.

Aspectos:

Madurez: capacidad del software para evitar fallar.

Tolerancia a fallos: capacidad del software de mantenerse operativo aun habiendo sucedido algún fallo.

Capacidad de recuperación: capacidad del software para recuperar su estado inicial antes de ocurrir el fallo y de recuperar los datos que se han visto afectados por éste.

Cumplimiento de la fiabilidad: capacidad del producto software para adherirse a normas, convenciones y leyes relacionadas con la fiabilidad.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Propiedades para soportar cambios:

Son aquellas que nos indican el nivel de flexibilidad del software.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Facilidad de mantenimiento: esfuerzo requerido para localizar y solventar un error en el programa

Aspectos:

Capacidad para ser analizado: ¿Es fácil poder diagnosticar deficiencias en el software o encontrar la causa de un fallo? ¿Es fácil saber qué partes deben ser tratadas para solucionar el fallo?

Estabilidad: A pesar de sufrir una modificación , ¿puedo controlar los efectos que puede producir ésta al resto del sistema?

Capacidad de probar las modificaciones: ¿Puedo validar la parte del software que he modificado?

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Facilidad de prueba: ¿Cuál es el esfuerzo a invertir para probar un programa y asegurar así el buen funcionamiento del sistema software?

Flexibilidad: ¿Cuál es el esfuerzo que tengo que invertir para hacer una modificación (añadir algún componente, eliminar algún componente, reunificar componentes, etc…) en el programa y que éste siga ofreciendo los requisitos funcionales requeridos?

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Propiedad de adaptabilidad a nuevos entornos:

Son aquellas que nos indican el nivel de adaptabilidad del software.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Portabilidad: ¿Qué esfuerzo tengo que hacer para migrar el software a otro entorno (diferente hardware o interacción con otros sistemas)?

Aspectos:

Adaptabilidad: capacidad para adaptarse a nuevos entornos sin tener que realizar modificaciones.

Instalabilidad: ¿es muy compleja la instalación del sw?

Coexistencia: ¿es capaz de interactuar con otro software en un entorno común y compartiendo recursos comunes?

Capacidad para reemplazar: ¿Nuestro software puede reemplazar a otros del mercado?

Cumplimiento de la portabilidad: adherirse a normas de portabilidad.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software: propiedades de calidad

Reusabilidad: ¿qué partes de mi programa podrían ser reutilizadas por otros sistemas de información?

Facilidad de interoperación: ¿Qué esfuerzo debo invertir para acoplar mi sistema software con otro sistema?

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Calidad Software

Satisfacción del usuario = Producto manejable + Buena Calidad + Entrega dentro de presupuesto y tiempo.

La calidad del software puede medirse después de que el producto haya sido implementado:

Si se hace así, nos puede salir muy caro si detectamos problemas en la arquitectura, en los requisitos funcionales…

La calidad del software se puede evaluar y controlar durante el proceso de desarrollo del software para asegurar que vamos a obtener un producto de calidad y no llevarnos sorpresas:

Aseguramiento de la Calidad Software (SQA, Software Quality Assurance)

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

El aseguramiento de la calidad se planifica antes de empezar a desarrollar un producto software.

Las actividades comprendidas dentro del aseguramiento de la calidad software se aplican durante todo el proceso de desarrollo.

El aseguramiento de la calidad software aumenta la calidad del proceso de desarrollo y disminuye los riesgos.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

Algunas de las actividades que están involucradas con el Aseguramiento de la Calidad Software:

Revisiones Técnicas Formales (RTF) en todos los pasos de desarrollo de software.

Control de la documentación.

Control de los cambios.

Asegurar que se sigue la metodología adoptada.

Definir mecanismos y técnicas de medida de la calidad.

Realizar auditorías y registrar la información mediante informes.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

Objetivos:

Satisfacción del cliente: la satisfacción del cliente significa relaciones a largo plazo (opinión positiva del cliente)

Reducir costes del desarrollo: se lleva a cabo este plan para prevenir defectos e ineficacias del software. La idea es que siguiendo un plan de SQA el plan termine a tiempo y dentro del presupuesto establecido. Se reduce inversión en pruebas.

Reducir costes en el mantenimiento: siguiendo un plan de aseguramiento de la calidad del software se generan aplicaciones más seguras y estables. Por tanto, nos ahorramos el invertir en tareas para solucionar fallos, revisiones con el cliente…

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

Objetivos:

Reducir tiempos de desarrollo: se ahorra tiempo en la fase de testing.

Hace que la gestión de cambio sea más fácil de realizar. (permeabilidad al cambio).

Asegura los requisitos funcionales que ha solicitado el cliente.

Asegura que se están siguiendo la metodología de desarrollo adoptada por la organización.

Los desarrollos son más predecibles al mantener información que pueda ayudar a las estimaciones futuras.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

¿Qué debemos hacer para elaborar y seguir un eficaz Aseguramiento de la Calidad Software?

Primero la planificación del plan de aseguramiento de la calidad.

Descripción del sistema.

Estimación de los objetivos y requisitos del sistema

Gestión de los riesgos elaboración plan contingencia.

Diagrama de Gantt.

Definir qué características de calidad se van a tener en cuenta a la hora de evaluar la calidad del producto.

Elegir las herramientas necesarias.

Cuando el plan está hecho se lleva a cabo durante el desarrollo del sistema.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

Para garantizar que el Plan de Aseguramiento de la Calidad Software se está cumpliendo se realizan auditorías:

Auditorías internas llevadas a cabo por la misma empresa

Auditorías externas llevadas a cabo por empresas ajenas. Normalmente estas empresas expiden certificados de calidad una vez ha terminado la auditoría.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

Actividades del Plan de Aseguramiento de la Calidad Software clasificadas por fases:

Fase de análisis:

Verificar requisitos consistentes.

Verificar requisitos comprobables y alcanzables.

Versión preliminar de casos de prueba.

Fase de diseño arquitectónico:

Inspección de diseño arquitectónico.

Estructuras de datos.

Arquitectura modular.

Verificar todos los requisitos asociados a componentes arquitectónicos

Versión preliminar del plan de pruebas.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

Fase de diseño detallado:

Diseño detallado de módulos.

Diseño detallado de estructuras de datos.

Actualización del plan de pruebas.

Actividades en la fase de implementación:

Inspección del software.

Validar pruebas de unidad.

Finalizar el plan de pruebas.

Fase de integración:

Validar pruebas según el plan de pruebas.

Revisión final de conformidad.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

¿Quién lleva a cabo las actividades de Aseguramiento de la Calidad Software?

Directivos (promueven y motivan)

Ingenieros software (máximo responsable).

Grupo SQA: preparan el plan de aseguramiento de la calidad, revisan el software, lo verifican, generan los informes y otra documentación.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

¿Qué significa que un software sea fiable?

Que las operaciones que ejecuta (en un entorno determinado y en un tiempo específico) estén libres de fallos.

Las pruebas contribuyen a mejorar la fiabilidad, pero no la garantizan.

Las pruebas son técnicas estáticas que se aplican a varios momentos del desarrollo del software y sirven para detectar defectos y ser corregidos.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

Las pruebas a las que puede ser sometido el software para evaluar su calidad.

Prueba de validación: se introducen datos de prueba que sabemos que son erróneos Ejemplo, introducir una cadena de caracteres en un campo numérico.

Comparación de los datos: comparar la salida del sistema a partir de unos parámetros con la salida esperada.

Prueba de tensión: se utiliza el software de forma exhaustiva y durante mucho tiempo para asegurar que es capaz de aguantar altos niveles de carga.

Prueba de la utilidad: los usuarios utilizan el software durante un tiempo y encuentran fallos y dificultades.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

Verificación: “¿Estamos construyendo el producto correctamente?”

El software debería ajustarse a su especificación

Validación: “¿estamos construyendo el producto correcto?”

El software debería hacer lo que el cliente realmente reclama y necesita.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Aseguramiento de la Calidad Software

Todas las evaluaciones y datos extraídos de las actividades del Aseguramiento de la Calidad deben ser almacenadas para proyectos futuros (los resultados de las pruebas, datos sobre revisiones, inspecciones…)

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software

Los Modelos de Calidad sirven para evaluar la calidad del producto y/o del proceso.

Son MODELOS y no de METODOLOGÍAS. Un modelo de calidad nos dice qué hacer pero no el cómo hacerlo.

Descomponen la calidad de software en una serie de características.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software

Tienen una estructura de 3 niveles:

Factores de calidad: nivel más alto. Se definen los factores de calidad que se van a medir y evaluar.

Criterios de calidad del producto: cada factor se descompone en un conjunto de criterios de calidad. Visión de la calidad desde el punto de vista de producto.

Métricas del producto: para cada criterio se definen un conjunto de métricas que nos ayudan a medir cada uno de los criterios de calidad.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: Boehm

Presentado por Barry Boehm en 1978.

Presenta una jerarquía de características que sirven para medir la calidad del producto software.

Características de alto nivel: representan requisitos generales de uso o usos primarios.

Características de nivel intermedio: representan los factores de calidad de Bohem.

Características primitivas: nivel más bajo que corresponde a características directamente asociadas a uno o más métricas de calidad.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Características de alto nivel Características

de nivel

intermedio

Características

primitivas

Modelos de Calidad Software: Boehm

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: McCall

Conocido como modelo de factores/criterios/métricas.

Presentado en 1977.

Se focaliza en el producto software.

Identifica atributos (llamados factores de calidad) claves desde el punto de vista del usuario.

Los factores de calidad son demasiado abstractos para ser medidos. Por esta razón, para cada uno de ellos se introducen atributos de bajo nivel denominados criterios de calidad.

A cada criterio de calidad se le asigna un conjunto de métricas de calidad medibles.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: McCall

Define 3 vistas

vista de usuario: clasifica los factores de calidad.

vista de la dirección: clasifica los criterios de calidad.

vista del desarrollador: clasifica las métricas de calidad.

Los 3 factores de calidad comprendidos en la vista de usuario coinciden con 3 de las características de un producto software:

Revisión del producto: habilidad para ser cambiado.

Transición del producto: adaptabilidad al entorno.

Operación del producto: características de operación.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: McCall

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: Paradigma GQM (Goal-Question-Metric)

Paradigma que permite evaluar la calidad del producto y del proceso.

Evalúa la calidad del software basado en la identificación de objetivos a lograr.

Tres etapas:

Lista de objetivos principales en el desarrollo y mantenimiento del proyecto.

Para cada objetivo obtener las preguntas que deben contestarse para saber si se están cumpliendo los objetivos.

Decidir qué medir para poder contestar las preguntas de forma adecuada.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: Paradigma GQM

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: CMM (Capability Madurity Model)

Es motivado por los problemas que tenía el departamento de defensa de los estados unidos cuando encargaba el desarrollo de un software a otra empresa: se disparaban los presupuestos, las fechas se alargaban.

Convocaron un concurso de participación libre en el que se proponía resolver esos problemas.

La Universidad Carnegie Mellon ganó el concurso y creó el SEI y desde este instituto se creó el modelo de calidad CMM-CMMI. Su primera versión fue publicada en el 2002.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: CMM (Capability Madurity Model)

Es un modelo que evalúa los procesos de desarrollo.

Orientado a la mejora de procesos de desarrollo software.

Describe prácticas que conducen a mejores productos de software.

Ofrece un conjunto de prácticas importantes que deben ser implantadas por cualquier entidad que desarrolla o mantiene software.

CMM tiene como objetivo evaluar los procesos en sus distintos niveles de madurez.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: CMM (Capability Madurity Model)

Clasifica las empresas según su nivel de madurez de sus procesos de desarrollo.

Existen 5 niveles.

Nivel 1 - Inicial

No existe un proceso de desarrollo.

Los presupuestos se disparan.

No se entrega en plazo.

Los trabajadores trabajan noches y fines de semana (no hay control temporal)

No se conoce el estado en el que está el proyecto.

Desarrollo opaco.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: CMM (Capability Madurity Model)

Es el típico proyecto en el que se da la siguiente situación:

¿Cómo va el proyecto? - Bien, bien.

Dos semanas después… - ¿Cómo va el proyecto?

- Bien, bien. Tres semanas después…

- El lunes hay que entregar el proyecto.- No se por qué pero los proyectos se entregan los lunes.

- El lunes !!?. Todavía falta mucho!! - ¿Cómo? Me dijiste que el proyecto iba bien!! Arréglatelas como quieras,

pero el proyecto tiene que estar terminado para el lunes.

Si no sabes el tamaño del proyecto y no sabes cuanto llevas

hecho, nunca sabrás cuando vas a terminar.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: CMM (Capability Madurity Model)

Nivel 2 – Gestionado o Repetible

Quiere decir que el éxito de los resultados obtenidos se pueden repetir

Existe un proceso.

Existe una planificación.

El proceso se revisa y se evalúa.

El proyecto es controlado y gestionado durante el desarrollo.

Desarrollo no opaco (se conoce qué se desarrolla y por quién).

Se puede saber el estado del proyecto en todo momento.

Nivel más difícil de obtener ya que supone un cambio drástico en la forma de trabajar.

Requiere el apoyo completo de la dirección.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: CMM (Capability Madurity Model)

Nivel 2 – Gestionado o Repetible

Los procesos que se implantan en este nivel son: • Gestión de requisitos.

• Planificación de proyectos (plan de proyecto).

• Seguimiento y control de proyectos.

• Gestión de proveedores

• Medición y análisis

• Aseguramiento de la calidad

• Gestión de la configuración

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: CMM (Capability Madurity Model)

Nivel 3 – Definido

La forma de desarrollar proyectos (gestión e ingeniería) esta definida, documentada y existen métricas (obtención de datos objetivos) para la consecución de objetivos concretos.

Los procesos que se implantan en este nivel son: • Desarrollo de requisitos

• Solución Técnica

• Integración del producto

• Verificación y validación

• Desarrollo y mejora de los procesos de la organización

• Definición de los procesos de la organización

• Planificación de la formación

• Gestión de riesgos

• Análisis y resolución de toma de decisiones

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: CMM (Capability Madurity Model)

Nivel 4 – Cuantitativamente Gestionado

Los proyectos usan objetivos medibles para alcanzar las necesidades de los clientes y la organización. Se usan métricas para gestionar la organización. Los procesos que hay que implantar para alcanzar este nivel son: • Gestión cuantitativa de proyectos

• Mejora de los procesos de la organización

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: CMM (Capability Madurity Model)

Nivel 5 – Optimizado

Los procesos de los proyectos y de la organización están orientados a la mejora de las actividades. Mejoras incrementales e innovadoras de los procesos que mediante métricas son identificadas, evaluadas y puestas en práctica.

Los procesos que hay que implantar para alcanzar este nivel son: • Innovación organizacional

• Análisis y resolución de las causas.

Normalmente las empresas que intentan alcanzar los niveles 4 y 5 lo realizan simultáneamente ya que están muy

relacionados.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: CMM (Capability Madurity Model)

Es un enfoque escalonado.

Para llegar a un nivel debemos haber conseguido los precedentes.

La implantación de este modelo es un proceso largo y costoso que puede costar varios años de esfuerzo.

Aún así el beneficio obtenido para la empresa es mucho mayor que lo invertido.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Modelos de Calidad Software: SPICE (Software Process Improvement and

Capability Determination)

Orientado a la mejora de procesos de desarrollo.

Es un modelo de madurez de procesos internacional. Se ha convertido en la ISO/IEC 15504.

Fomenta productos de calidad, promueve la optimización de procesos y facilita la evaluación del producto durante el proceso de desarrollo.

Se aplica tanto a nivel directivo como a nivel de usuario.

El modelo describe los procesos que una organización puede ejecutar, adquirir, suplir, desarrollar, operar, evolucionar, brindar soporte de software y todas las prácticas genéricas que caracterizan las potencialidades de estos procesos.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Certificación

Procedimiento mediante el cual, un determinado organismo, acredita mediante un documento escrito, que un servicio, proceso o producto resulta conforme a unas exigencias.

Nos permite demostrar la excelencia del sistema de calidad y el proceso de desarrollo que sigue una empresa.

Podemos considerar la certificación como una garantía final en la que la empresa se preocupa por la calidad de su producto final o su servicio.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Certificación

¿Por qué las empresas están interesadas en certificarse?

Incentiva el disponer de un sistema de calidad que aumenta la calidad de sus productos.

Incrementa su prestigio en el mercado. Buena imagen.

Consiguen ventajas competitivas frente a los competidores. Se hacen estables.

Protegen la satisfacción de sus clientes.

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Solicitud: La empresa envía la documentación necesaria a la empresa certificadora.

Certificación: se evalúa el sistema de calidad que sigue la empresa.

¿Se documenta? ¿Cada cuanto tiempo

hay una RTF? ¿existe un estándar de

documentación? ¿existe un estándar de

variables? ¿se utilizan pruebas de caja

negra y de caja blanca?...

Concesión: Si el sistema de calidad supera las evaluaciones, la empresa obtendrá el certificado.

Seguimiento: Periodicamente la empresa se evalua para ver si aún es merecedora del certificado.

Certificación

www.kybele.es www.kybele.etsii.urjc.es Ingeniería del Software I – 2011/2012

Certificación

AENOR (Asociación Española de normalización y certificación)

Certificado de medio ambiente: Los productos certificados deberán fabricarse cumpliendo unos criterios ecológicos y el proceso de fabricación no afecta al medio ambiente.

Certificado de gestión ambiental: los productos deben cumplir con una elaboración siguiendo un sistema normalizado de gestión.