Verificacin y Validacin del Software Unidad 1 Introduccin

  • Slides: 38
Download presentation
Verificación y Validación del Software Unidad 1. Introducción a la verificación y validación del

Verificación y Validación del Software Unidad 1. Introducción a la verificación y validación del software Profesor: Dr. Oscar Mario Rodríguez Elias Email: omrodriguez@gauss. mat. uson. mx omarioroel@gmail. com Web page: http: //omarioroel. googlepages. com/vyv

Unidad 1 1. 2. 3. Calidad en el software El proceso de verificación y

Unidad 1 1. 2. 3. Calidad en el software El proceso de verificación y validación del software Integración de la verificación y validación al proceso de desarrollo de software Introducción a la V&V 2

Calidad y Aseguramiento de la Calidad del Software Una visión general

Calidad y Aseguramiento de la Calidad del Software Una visión general

La crisis del software ► En los 70’s § Se pierde la capacidad de

La crisis del software ► En los 70’s § Se pierde la capacidad de producir sistemas basados en software, cada ves más grandes y complejos, con la tecnología existente. § El mantenimiento sobrepasa el costo de los primeros desarrollos. § El costo del software aumenta mientras que el hardware se hace cada vez más barato. § Fallas costosas en los grandes sistemas de software. Introducción a la V&V 4

La crisis del software ►A mediados de los ochenta, el software se vuelve una

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 había una correspondencia entre el proceso requerido para el uso de las herramientas CASE, y el realizado por las organizaciones. Introducción a la V&V 5

La crisis del software ► Soluciones a la crisis del software § Pruebas formales

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, además de que no es aplicable a todo el software § Verificación y validación (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 Introducción a la V&V 6

Situación actual ► La crisis del software no es crisis § Es una propiedad

Situación 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. Introducción a la V&V 7

¿Qué es la calidad en el software?

¿Qué es la calidad en el software?

¿Qué es la calidad del software? ► La calidad del software debe ser definida

¿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 visión 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? § ¿Cómo se relacionan sus prioridades con la forma en que nosotros construimos, empaquetamos y damos soporte a nuestros productos? Introducción a la V&V 9

Multidimensionalidad de la calidad ► La calidad puede verse como un concepto multidimensional, dependiente

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 adecuación al propósito. Se puede cuantificar las características 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 características inherentes al producto. Se centra en la medida de los atributos internos de los productos. § Vista basada en valor: la calidad depende de la cantidad que el cliente esté dispuesto a pagar. Introducción a la V&V 10

Orígenes de la calidad ► La calidad realizada: la que es capaz de obtener

Orígenes de la calidad ► La calidad realizada: la que es capaz de obtener la persona que realiza el trabajo, gracias a su habilidad en la ejecución de la tarea. § Se potencia con la mejora de las habilidades personales y técnicas de los participantes en un proceso. ► La calidad programada: la que se ha pretendido obtener. Es la que aparece descrita en una especificación. § Se potencia con la elaboración de una especificación que sirva de buena referencia a los participantes del proyecto. ► La calidad necesaria: la que el cliente exige con mayor o menor grado de concreción o, al menos, la que le gustaría recibir. § Se potencia con una adecuada obtención de información de la idea de calidad de los clientes. Introducción a la V&V 11

¿Cuánto cuesta la calidad? ► El costo de emprender actividades para asegurar la calidad

¿Cuánto cuesta la calidad? ► El costo de emprender actividades para asegurar la calidad cuesta, por lo tanto, ¿Es recomendable invertir en éstas actividades? ► La respuesta: § § § C 1 ¿Cuánto cuestan los defectos invirtiendo en calidad? C 2 ¿Cuánto cuesta invertir en asegurar la calidad? C 3 ¿Cuánto cuesta no hacer nada? Si C 3 > C 1 + C 2, entonces invertir Introducción a la V&V 12

El costo de las fallas Requerimientos y Especificación $1 Modelado de análisis Distintos estudios

El costo de las fallas Requerimientos y Especificación $1 Modelado de análisis Distintos estudios han mostrado que el costo relativo de encontrar un defecto durante los requerimientos, puede incrementarse más de 50 veces si se encuentra en la fase de pruebas, y más de 100 veces si se detecta después de liberado el producto. $5 Entre más tarde se detecten, más costoso es resolverlos. Diseño $ 20 Codificación $ 50 Pruebas $ 100 Mantenimiento Introducción a la V&V 13

¿Cuánto cuesta la calidad? ► El costo de realizar actividades de V&V es controlable

¿Cuánto cuesta la calidad? ► El costo de realizar actividades de V&V es controlable y fácil de estimar, en cambio el costo de no hacerlas no es controlable ni fácil de medir. Introducción a la V&V 14

Midiendo el costo de la calidad ► La medición del costo de la calidad

Midiendo el costo de la calidad ► La medición del costo de la calidad comprende las siguientes tres actividades: Detección Prevención Remoción Enfocada en tareas que ayudan a encontrar defectos. Centrada en tareas que ayudan a prevenir que los defectos ocurran. Incluye una variedad de tareas relacionadas con el aislamiento y la corrección de errores, la verificación de que han sido corregidos, y el costo asociado a preparar medios de distribución y. V&Vredistribución de software. 15 Introducción a la

¿Qué es el aseguramiento de la calidad del software?

¿Qué es el aseguramiento de la calidad del software?

Aseguramiento de la calidad del software (1/3) ► “Es la práctica de asegurar que

Aseguramiento de la calidad del software (1/3) ► “Es la práctica de asegurar que los estándares, procesos y procedimientos usados en los proyectos de desarrollo de software son apropiados, y están 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 están de conformidad con los requerimientos especificados, y adheridos a los planes establecidos Introducción a la V&V 17

Aseguramiento de la calidad del software (2/3) ► No se refiere sólo al descubrimiento

Aseguramiento de la calidad del software (2/3) ► No se refiere sólo al descubrimiento y corrección 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. Introducción a la V&V 18

Aseguramiento de la calidad del software (3/3) ► Actividades principales: § Verificación y Validación

Aseguramiento de la calidad del software (3/3) ► Actividades principales: § Verificación y Validación 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. § Administración de la Configuración del Software ►Documentar y rastrear los problemas y fallas para buscar evitarlas en el futuro. Introducción a la V&V 19

¿Qué es la verificación y validación del software?

¿Qué es la verificación y validación del software?

Verificación y Validación ► Son actividades encaminadas a determinar si se está construyendo el

Verificación y Validación ► 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 especificación y que cumple con las expectativas del cliente que lo comprará Introducción a la V&V 21

Verificación y Validación ► Durante y después del proceso de implementación, el programa que

Verificación y Validación ► Durante y después del proceso de implementación, el programa que se está desarrollando debe ser comprobado para asegurar que satisface su especificación y entrega la funcionalidad esperada por las personas que pagan por el software. ►A estos procesos de análisis y prueba se les conoce como Verificación y Validación Introducción a la V&V 22

La Verificación y Validación son dos cosas distintas

La Verificación y Validación son dos cosas distintas

Verificación y Validación ► El papel de la verificación implica comprobar que el software

Verificación y Validación ► El papel de la verificación implica comprobar que el software está de acuerdo con su especificación. ► La validación busca asegurar que el sistema software satisface las expectativas del cliente. Es decir, va más allá. Introducción a la V&V 24

Verificación ► Ayuda a contestar la siguiente pregunta: ► ¿Estamos construyendo el producto de

Verificación ► Ayuda a contestar la siguiente pregunta: ► ¿Estamos construyendo el producto de la manera correcta? Introducción a la V&V 25

Verificación ► Es el proceso de determinar si los productos de una determinada fase

Verificación ► 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 verificación son desarrolladas de manera concurrente con las actividades del desarrollo de software. Introducción a la V&V 26

Verificación ► La verificación se da en torno a tres procesos básicos: § Inspección

Verificación ► La verificación se da en torno a tres procesos básicos: § Inspección ► Es una revisión técnica a fondo, rigurosa y formal, diseñada para identificar problemas tan cerca de su punto de origen como sea posible. § Medición ► Es el proceso por medio del cual se miden la mayor cantidad de atributos del producto y proceso, con el fin de tener información cuantificable útil para la mejora continua. § Administración de la configuración Introducción a la V&V 27

Validación ► Ayuda a contestar la siguiente pregunta: ► ¿Estamos construyendo el producto correcto?

Validación ► Ayuda a contestar la siguiente pregunta: ► ¿Estamos construyendo el producto correcto? , o en su defecto, ¿Construimos el producto correcto? Introducción a la V&V 28

Validación ► Es el proceso de evaluar el software al final del proceso de

Validación ► Es el proceso de evaluar el software al final del proceso de desarrollo para asegurar que cumple con los requerimientos. ► Las actividades de validación se dan después de que el software ha sido desarrollado, para determinar si se han implementado correctamente los requerimientos. Introducción a la V&V 29

Validación ► La validación comprende actividades dentro de tres procesos básicos: § Pruebas §

Validación ► La validación comprende actividades dentro de tres procesos básicos: § Pruebas § Medición § Aumento de la confiabilidad del software ►Ayuda en la toma de decisiones con respecto a cuándo hay que dejar de probar y liberar el software. Introducción a la V&V 30

Verificación y Validación ► El objetivo es establecer la seguridad de que el sistema

Verificación y Validación ► El objetivo es establecer la seguridad de que el sistema es lo suficientemente bueno para su uso predeterminado. Nivel de confianza requerido La función del software Las expectativas del usuario Introducción a la V&V El entorno de mercado 31

Función del software ► El nivel de confianza depende de: § Lo crítico que

Función del software ► El nivel de confianza depende de: § Lo crítico que sea al software para una organización. Introducción a la V&V 32

Expectativas del usuario ► El nivel de confianza depende de: § Lo que el

Expectativas del usuario ► El nivel de confianza depende de: § Lo que el cliente esté dispuesto a aceptar ► Algunos usuarios están dispuestos a aceptar fallos en los sistemas cuando los beneficios de su uso son mayores que sus desventajas. Introducción a la V&V 33

Entorno de mercado ► El nivel de confianza depende de: § Los programas competidores,

Entorno de mercado ► El nivel de confianza depende de: § Los programas competidores, el precio que los clientes están dispuestos a pagar y la agenda requerida para entregar el sistema. Introducción a la V&V 34

Verificación y Validación ► Existen dos aproximaciones para el análisis y comprobación de los

Verificación y Validación ► Existen dos aproximaciones para el análisis y comprobación de los sistemas: § Inspecciones de software: analizan y comprueban las representaciones del sistema. § Pruebas del software: implican ejecutar una implementación del software con datos de prueba. Introducción a la V&V 35

Verificación y Validación Inspecciones de software Especificaciones de requerimientos Diseño de alto nivel Especificación

Verificación y Validación Inspecciones de software Especificaciones de requerimientos Diseño de alto nivel Especificación formal Diseño detallado Programa Prueba de programas Prototipo Introducción a la V&V 36

Tarea ► Bajar y estudiar el documento del modelo Mo. Pro. Soft (se encuentra

Tarea ► Bajar y estudiar el documento del modelo Mo. Pro. Soft (se encuentra en la página del curso) § Identificar las actividades de verificación y validación 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 clase el documento y su escrito para la siguiente Introducción a la V&V 37

Bibliografía ► Sommerville, capítulo: 22 ► Pressman, capítulo 26 Introducción a la V&V 38

Bibliografía ► Sommerville, capítulo: 22 ► Pressman, capítulo 26 Introducción a la V&V 38