Вы находитесь на странице: 1из 38

Objetivo general de curso

Proporcionar al alumno una visin general de la verificacin, validacin y pruebas del software, el uso de comprobadores de modelos y el panorama actual de la investigacin en tcnicas de pruebas.

Evaluacin
Trabajos o investigaciones 40%

Participaciones 10%
Evaluacin 50%

Asistencia

Temario
Unidad 1

Introduccin
1.1 Contextualizacin de la verificacin y validacin. 1.2 Comentarios.

Aseguramiento de la Calidad del Software

La crisis del software


En los 70s
Se pierde la capacidad de producir sistemas basados en software, cada ves ms grandes y complejos, con la tecnologa existente. El mantenimiento sobrepasa el costo de los primeros desarrollos. El costo del software aumenta mientras que el hardware se hace cada vez ms barato. Fallas costosas en los grandes sistemas de software.

La crisis del software


A mediados de los ochenta, el software se vuelve una gran industria en crecimiento.
El desarrollo de software se convierte en una disciplina. Se observa la necesidad de definir procesos que ayuden a mejorar el desarrollo de software. Nacen las herramientas CASE. No haba una correspondencia entre el proceso requerido para el uso de las herramientas CASE, y el realizado por las organizaciones.

La crisis del software


Soluciones a la crisis del software
Pruebas formales de correctez del software No es aplicable sino hasta que el software ha sido desarrollado, adems de que no es aplicable a todo el software Verificacin y validacin (V&V) independiente Es costoso contratar organizaciones independientes para verificar y validar el software. Aseguramiento de la calidad del software Utiliza un grupo interno para realizar tareas de V&V Mejorar el proceso de desarrollo de software.

Situacin actual
La crisis del software no es crisis
Es una propiedad del software tener errores. No existe el software perfecto. La calidad del producto est relacionada con la calidad del proceso, y no con la falta de errores o fallas en el software.

Qu es la calidad en el software?

Qu es la calidad del software?


La calidad del software debe ser definida desde la perspectiva del usuario; est relacionada con la concordancia del software con los requerimientos del usuario, y con la visin que tiene el mismo usuario con respecto al software. Si el software es de calidad para el usuario, entonces es de calidad.

Las preguntas clave son, entonces:


Quienes son los usuarios? Qu es importante para ellos? Cmo se relacionan sus prioridades con la forma en que nosotros construimos, empaquetamos y damos soporte a nuestros productos?

Multidimensionalidad de la calidad
La calidad puede verse como un concepto multidimensional, dependiente del punto de vista
Vista trascendental: es algo que se reconoce pero no se define. Se puede concebir la calidad como un ideal al que se intenta llegar, aunque no lo conseguimos. Vista del usuario: es adecuacin al propsito. Se puede cuantificar las caractersticas de los productos, medirlos y establecer objetivos a alcanzar. Vista de fabricante: es conformidad con las especificaciones. Se trata de una vista centrada en el proceso. Vista del producto: la calidad est unida a las caractersticas inherentes al producto. Se centra en la medida de los atributos internos de los productos. Vista basada en valor: la calidad depende de la

Orgenes de la calidad
La calidad realizada: la que es capaz de obtener la persona que realiza el trabajo, gracias a su habilidad en la ejecucin de la tarea.
Se potencia con la mejora de las habilidades personales y tcnicas de los participantes en un proceso.

La calidad programada: la que se ha pretendido obtener. Es la que aparece descrita en una especificacin.
Se potencia con la elaboracin de una especificacin que sirva de buena referencia a los participantes del proyecto.

La calidad necesaria: la que el cliente exige con mayor o menor grado de concrecin o, al menos, la que le gustara recibir.
Se potencia con una adecuada obtencin de informacin de la idea de calidad de los clientes.

Cunto cuesta la calidad?


El costo de emprender actividades para asegurar la calidad cuesta, por lo tanto, Es recomendable invertir en stas actividades? La respuesta:
C1 Cunto cuestan los defectos invirtiendo en calidad? C2 Cunto cuesta invertir en asegurar la calidad? C3 Cunto no hacer nada? Si C3 >cuesta C1 + C2, entonces invertir

El costo de las fallas


Requerimientos y Especificacin Modelado de anlisis Diseo Codificacin Pruebas $1 $5

Entre ms tarde se detecten, ms costoso es resolverlos.


$ 20 $ 50 $ 100 Mantenimiento

Distintos estudios han mostrado que el costo relativo de encontrar un defecto durante los requerimientos, puede incrementarse ms de 50 veces si se encuentra en la fase de pruebas, y ms de 100 veces si se detecta despus de liberado el producto.

Cunto cuesta la calidad?


El costo de realizar actividades de V&V es controlable y fcil de estimar, en cambio el costo de no hacerlas no es controlable ni fcil de medir.

Midiendo el costo de la calidad


La medicin del costo de la calidad comprende las siguientes tres actividades:
Deteccin

Enfocada en tareas que ayudan a encontrar defectos.

Prevencin

Centrada en tareas que ayudan a prevenir que los defectos ocurran.


Incluye una variedad de tareas relacionadas con el aislamiento y la correccin de errores, la verificacin de que han sido corregidos, y el costo asociado a preparar medios de distribucin y redistribucin de software. Introduccin a la V&V

Remocin

Qu es el aseguramiento de la calidad del software?

Aseguramiento de la calidad del software


Es la prctica de asegurar que los estndares, procesos y procedimientos usados en los proyectos de desarrollo de software son apropiados, y estn implementados correctamente.

El proceso de aseguramiento de la calidad es un proceso para proveer una seguridad adecuada de que los productos de software y procesos en el ciclo de vida de un proyecto estn de conformidad con los requerimientos especificados, y adheridos a los planes establecidos.

Aseguramiento de la calidad del software


No se refiere slo al descubrimiento y correccin de defectos, sino a evitar que estos ocurran. Para esto es necesario:
Conocer las causas de los defectos para poder evitarlos, identificando y evitando estas causas antes de que se conviertan en problemas o fallas en el software o el proceso de desarrollo. Identificando las causas de los problemas ocurridos, para tratar de evitarlas en futuros proyectos.

Aseguramiento de la calidad del software


Actividades principales:
Verificacin y Validacin del software
Evitar las causas de las fallas en el proceso y los productos.

Pruebas del Software


Encontrar las fallas en los productos y procesos para corregirlas.

Administracin de la Configuracin del Software


Documentar y rastrear los problemas y fallas para buscar evitarlas en el futuro.

Qu es la verificacin y validacin del software?

Verificacin y Validacin
Son actividades encaminadas a determinar si se est construyendo el producto correcto de la manera correcta.

Se utiliza para mostrar que el sistema se ajusta a su especificacin y que cumple con las expectativas del cliente que lo comprar

Verificacin y Validacin
Durante y despus del proceso de implementacin, el programa que se est desarrollando debe ser comprobado para asegurar que satisface su especificacin y entrega la funcionalidad esperada por las personas que pagan por el software.

A estos procesos de anlisis y prueba se les conoce como Verificacin y Validacin.

La Verificacin y Validacin son dos cosas distintas

Verificacin y Validacin
El papel de la verificacin implica comprobar que el software est de acuerdo con su especificacin.

La validacin busca asegurar que el sistema software satisface las expectativas del cliente. Es decir, va ms all.

Verificacin
Ayuda a contestar la siguiente pregunta:

Estamos construyendo el producto de la manera correcta?

Verificacin
Es el proceso de determinar si los productos de una determinada fase del ciclo del proceso de desarrollo cumplen los requerimientos establecidos durante la fase previa. Las actividades de verificacin son desarrolladas de manera concurrente con las actividades del desarrollo de software.

Verificacin
La verificacin se da en torno a tres procesos bsicos:
Inspeccin
Es una revisin tcnica a fondo, rigurosa y formal, diseada para identificar problemas tan cerca de su punto de origen como sea posible.

Medicin
Es el proceso por medio del cual se miden la mayor cantidad de atributos del producto y proceso, con el fin de tener informacin cuantificable til para la mejora continua.

Administracin de la configuracin

Validacin
Ayuda a contestar la siguiente pregunta:

Estamos construyendo el producto correcto?, o en su defecto, Construimos el producto correcto?

Validacin
Es el proceso de evaluar el software al final del proceso de desarrollo para asegurar que cumple con los requerimientos.

Las actividades de validacin se dan despus de que el software ha sido desarrollado, para determinar si se han implementado correctamente los requerimientos.

Validacin
La validacin comprende actividades dentro de tres procesos bsicos:
Pruebas Medicin Aumento de la confiabilidad del software

Ayuda en la toma de decisiones con respecto a cundo hay que dejar de probar y liberar el software.

Verificacin y Validacin
El objetivo es establecer la seguridad de que el sistema es lo suficientemente bueno para su uso predeterminado.

Nivel de confianza requerido

La funcin del software

Las expectativas del usuario

El entorno de mercado

Funcin del software


El nivel de confianza depende de:
Lo crtico que sea al software para una organizacin.

Expectativas del usuario


El nivel de confianza depende de:
Lo que el cliente est dispuesto a aceptar

Algunos usuarios estn dispuestos a aceptar fallos en los sistemas cuando los beneficios de su uso son mayores que sus desventajas.

Entorno de mercado
El nivel de confianza depende de:
Los programas competidores, el precio que los clientes estn dispuestos a pagar y la agenda requerida para entregar el sistema.

Verificacin y Validacin
Existen dos aproximaciones para el anlisis y comprobacin de los sistemas:
Inspecciones de software: analizan y comprueban las representaciones del sistema. Pruebas del software: implican ejecutar una implementacin del software con datos de prueba.

Verificacin y Validacin

Especificaciones de requerimientos

Diseo de alto nivel

Especificacin formal

Diseo detallado

Programa

Prototipo

Prueba de programas

Tarea
Bajar y estudiar el documento del modelo MoProSoft
Identificar las actividades de verificacin y validacin en los distintos procesos Identificar los documentos a verificar y validar Escribir sus reflexiones, conclusiones y comentarios sobre las actividades de V&V requeridas en el modelo.

Traer el documento y su escrito para la siguiente clase.

Вам также может понравиться