Unidad # 10 calidad del software

48
CALIDAD DEL SOFTWARE

Transcript of Unidad # 10 calidad del software

Page 1: Unidad # 10 calidad del software

CALIDAD DEL SOFTWARE

Page 2: Unidad # 10 calidad del software

Stefani Mite Piña

Verónica Herrera Bermeo

Vanessa Toral

Dayanna Gamboa

Andy Carrillo

INTEGRANTES

Page 3: Unidad # 10 calidad del software

INTRODUCCIÓN

Page 4: Unidad # 10 calidad del software

Es la aptitud de un producto o servicio para satisfacer las necesidades del usuario.

En el desarrollo del software, la calidad del diseño acompaña a la calidad de los requisitos especificaciones y diseño de sistemas . La calidad de concordancia es un aspecto centrado principalmente en la implementación, si la implementación sigue al diseño, y el sistema resultante cumple con los objetivos de requisitos y de rendimiento, la calidad de concordancia es alta.

Adicionalmente se puede seguir los siguientes aspectos para evaluar la calidad del Software:

Page 5: Unidad # 10 calidad del software

FUNCIONALIDAD: Conjunto de característica que algo sea practico y utilitario.

CONFIABILIDAD: Probabilidad de un buen funcionamiento de una cosa.

USABILIDAD: Es la facilidad que tiene una persona para utilizar para utilizar una herramienta.

EFICIENCIA: Capacidad para realizar adecuadamente una función.

MANTENIBILIDAD: La facilidad con la que un sistema o componente software puede ser modificado para corregir fallos, mejorar su funcionamiento u otros atributos.

PORTABILIDAD: Cualidad de un programa que se puede ejecutar en diversos tipos de ordenador.

ESCALABILIDAD: Es la propiedad deseable de un sistema, que indica su habilidad para extender el margen de operaciones sin perder calidad.

Page 6: Unidad # 10 calidad del software
Page 7: Unidad # 10 calidad del software

CALIDAD DEL SOFTWARE A NIVEL DE EMPRESA

Page 8: Unidad # 10 calidad del software

La calidad del software se refiere a las acciones que se toman de forma común para asegurar que se desarrolla software de calidad en todos los proyectos. Se divide en dos tipos de procesos.

• GESTIÓN DE LA CALIDAD DEL SW: aspecto de la función general de la gestión que determina y aplica la política de calidad. Incluye planificación estratégica, asignación de recursos, etc.

• ASEGURAMIENTO O GARANTÍA DE LA CALIDAD DEL SW: conjunto de actividades planificadas y sistemáticas necesarias para aportar la confianza en que el producto satisfará los requisitos dados de calidad. Incluye evaluaciones, auditorías, revisiones, etc.

Page 9: Unidad # 10 calidad del software
Page 10: Unidad # 10 calidad del software

ESTÁNDARES

Page 11: Unidad # 10 calidad del software

Los estándares de calidad de software son normas emitidas por organismos específicos, que sirven para sentar un marco con el que comparar si un proceso de desarrollo es o no de calidad

Page 12: Unidad # 10 calidad del software

ISO 9000

Page 13: Unidad # 10 calidad del software

NORMATIVA ISO 9000

Pone a disposición de un certificador de procesos internos, de forma que este se indique si cumple o no la normativa 100%; si los resultados son positivos se emite la certificación y cada cierto tiempo se tiene que renovar. La certificación es costosa, a consecuencia de costes que ocasionan la lejanía y el tiempo de duración de procesos (aprox. 6 meses.). Se certifica la empresa y la metodología para el desarrollo de la aplicación. Se certifica la empresa y la metodología para el desarrollo de la aplicación.

Page 14: Unidad # 10 calidad del software
Page 15: Unidad # 10 calidad del software

MEDICIÓN DE LA CALIDAD DEL SOFTWARE

Page 16: Unidad # 10 calidad del software

En el Software lo que se mide son atributos propios del mismo, se descompone un atributo general en otros más simples de medir; las ciencias bien estructuradas se basan en medidas bien hechas, se basan en la matemática:

Page 17: Unidad # 10 calidad del software

TIPOS DE MEDIDAS:

• Número de errores durante un periodo determinado.

• Fallo en la codificación o diseño de un sistema que causa que el programa no funcione correctamente o falle.

• Tamaño de un producto informático (líneas de código).

• Métrica de punto de función (IBM): relaciona funcionalidades que ofrecía.

• Estimación de costes y esfuerzos.

• COCOMO. (Módulo de construcción de costos.)

Page 18: Unidad # 10 calidad del software
Page 19: Unidad # 10 calidad del software

MARCOS DE TRABAJO

Page 20: Unidad # 10 calidad del software

Lo marcos de trabajo recogen metas y procesos comunes que debe cumplir una organización.CMMI (Integración de módulos de madurez de capacidades.)Sirve para comprobar la habilidad de los procesos de las organizaciones para realizar determinados proyectos. CMMI clasifica el grado de madurez de las empresas en cinco niveles: 1_caótico; hasta 5_optimizado.

Page 21: Unidad # 10 calidad del software
Page 22: Unidad # 10 calidad del software

SPICESPICE ES UN MODELO DE MADUREZ PROPUESTO POR ISO. CLASIFICA LAS ORGANIZACIONES EN SEIS NIVELES DE MADUREZ, DESDE 0-INCOMPLETO, HASTA 5-OPTIMIZADO.

Page 23: Unidad # 10 calidad del software
Page 24: Unidad # 10 calidad del software

FACTORES DE CALIDAD

Page 25: Unidad # 10 calidad del software

Los factores de calidad sirven para descomponer el concepto de «calidad» en otros más sencillos, para facilitar su control, y su medición.

Page 26: Unidad # 10 calidad del software

FACTORES OPERATIVOS:

• CORRECCIÓN: el software cumple con las especificaciones.

• FIABILIDAD: grado que el software es confiable.

• EFICIENCIA: necesidad de recursos del software y hardware del producto.

• SEGURIDAD: grado en el que puede controlarse el acceso al software y a los datos.

• FACILIDAD DE USO: grado de esfuerzo necesario para utilizar el software.

Page 27: Unidad # 10 calidad del software

FACTORES DE MANTENIMIENTO: • FLEXIBILIDAD: esfuerzo necesario para modificar un programa. • FACILIDAD DE PRUEBA: esfuerzo requerido para realizar las pruebas de un programa.• FACILIDAD DE MANTENIMIENTO: esfuerzo requerido para localizar y reparar un error.

Page 28: Unidad # 10 calidad del software

FACTORES EVOLUTIVOS:

• PORTABILIDAD: facilidad de inmigrar un software de un entorno de operación a otro.

• CAPACIDAD DE REUTILIZACIÓN: grado de un programa o parte del mismo se puede utilizar en otras aplicaciones.

• CAPACIDAD DE INTEROPERACIÓN: esfuerzo necesario para que un software opere conjuntamente con otros sistemas.

Page 29: Unidad # 10 calidad del software

MÉTRICAS DE CALIDAD.

Page 30: Unidad # 10 calidad del software

Las métricas de calidad del software se aplica para valorar cualitativamente algún factor relativo al mismo.

Características de una nueva métrica:

• Simple y fácil de calcular, empírica, consistentes y objetiva, independiente del lenguaje de programación, que proporcione

Page 31: Unidad # 10 calidad del software

PUNTO DE FUNCIÓN:

Sirve para cuantificar la cantidad de funcionalidad que tiene un sistema a partir de la descripción del mismo. Se basa en cinco ciclos:ENTRADAS DE USUARIO SALIDAS DE USUARIO PETICIONESARCHIVOSINTERFACES EXTERNAS.

Page 32: Unidad # 10 calidad del software

• MÉTRICAS DE BANG: Sirve para calcular el tamaño del software a desarrollar a partir del modelo de análisis. • MÉTRICA DE CALIDAD DE

ESPECIFICACIÓN: Mide la calidad de análisis y de los requisitos capturados.

Page 33: Unidad # 10 calidad del software

FASES DE DISEÑO

Page 34: Unidad # 10 calidad del software

Trabajan frecuentemente con parámetros típicos de la estructura de los programas o con medidas del grado de cohesión, acoplamiento y complejidad de los algoritmos.Algunas de ellas son: Métricas de calidad de Card y Glass métrica que se basan en dos factores, calculados para cada módulo a partir de un diagrama de estructura:

Page 35: Unidad # 10 calidad del software

• COMPLEJIDAD ESTRUCTURAL: Número de módulos que controla un módulo dado.• COMPLEJIDAD DE DATOS: Suma de variables de entrada y salida

de un módulo.

Page 36: Unidad # 10 calidad del software

QUÉ ES LA CALIDAD DEL SOFTWARE ?

Page 37: Unidad # 10 calidad del software

La calidad del software es el conjunto de cualidades que lo caracterizan y que determinan su utilidad y existencia. La calidad del software es medible y varía de un sistema a otro o de un programa a otro. Un software elaborado para el control de naves espaciales debe ser confiable al nivel de "cero fallas"; un software hecho para ejecutarse una sola vez no requiere el mismo nivel de calidad; mientras que un producto de software para ser explotado durante un largo período (10 años o más), necesita ser confiable, mantenible y flexible para disminuir los costos de mantenimiento y perfeccionamiento durante el tiempo de explotación.

Page 38: Unidad # 10 calidad del software

La calidad del software puede medirse después de elaborado el producto. Pero esto puede resultar muy costoso si se detectan problemas deriva dos de imperfecciones en el diseño, por lo que es imprescindible tener en cuenta tanto la obtención de la calidad como su control durante todas las etapas del ciclo de vida del software.

Page 39: Unidad # 10 calidad del software

COMO OBTENER UN SOFTWARE DE CALIDAD?

Page 40: Unidad # 10 calidad del software

La obtención de un software con calidad implica la utilización de metodologías o procedimientos estándares para el análisis, diseño, programación y prueba del software que permitan uniformar la filosofía de trabajo, en aras de lograr una mayor confiabilidad, mantenibilidad y facilidad de prueba, a la vez que eleven la productividad, tanto para la labor de desarrollo como para el control de la calidad del software. La política establecida debe estar sustentada sobre tres principios básicos: tecnológico, administrativo y ergonómico.

Page 41: Unidad # 10 calidad del software

El principio tecnológico define las técnicas a utilizar en el proceso de desarrollo del software.

El principio administrativo contempla las funciones de planificación y control del desarrollo del software, así como la organización del ambiente o centro de ingeniería de software.

El principio ergonómico define la interfaz entre el usuario y el ambiente automatizado.

La adopción de una buena política contribuye en gran medida a lograr la calidad del software, pero no la asegura. Para el aseguramiento de la calidad es necesario su control o evaluación.

Page 42: Unidad # 10 calidad del software

COMO CONTROLAR LA CALIDAD DEL  SOFTWARE ?

Page 43: Unidad # 10 calidad del software

Para controlar la calidad del software es necesario, definir los parámetros, indicadores o criterios de medición, ya que, como bien plantea Tom De Marco, "usted no puede controlar lo que no se puede medir"

Page 44: Unidad # 10 calidad del software

Las cualidades para medir la calidad del software son definidas por innumerables autores, los cuales las denominan y agrupan de formas diferentes. Por ejemplo, John Wiley define métricas de calidad y criterios, donde cada métrica se obtiene a partir de combinaciones de los diferentes criterios. La Metodología  para  la  evaluación  de  la  calidad  de los  medios  de  programas de la CIC, define indicadores de calidad estructurados en cuatro niveles jerárquicos: factor, criterio, métrica, elemento de evaluación, donde cada nivel inferior contiene los indicadores que conforman el nivel precedente.

Page 45: Unidad # 10 calidad del software

Otros autores identifican la calidad con el nivel de complejidad del software y definen dos categorías de métricas: de complejidad de programa o código, y de complejidad de sistema o estructura.

Todos los autores coinciden en que el software posee determinados índices medibles que son las bases para la calidad, el control y el perfeccionamiento de la productividad.

Page 46: Unidad # 10 calidad del software

Una vez seleccionados los índices de calidad, se debe establecer el proceso de control, que requiere los siguientes pasos:

• Definir el software que va a ser controlado: clasificación por tipo, esfera de aplicación, complejidad, etc., de acuerdo con los estándares establecidos para el desarrollo del software.

• Seleccionar una medida que pueda ser aplicada al objeto de control. Para cada clase de software es necesario definir los indicadores y sus magnitudes.

Page 47: Unidad # 10 calidad del software

• Crear o determinar los métodos de valoración de los indicadores: métodos manuales como cuestionarios o encuestas estándares para la medición de criterios periciales y herramientas automatizadas para medir los criterios de cálculo.

• Definir las regulaciones organizativas para realizar el control: quiénes participan en el control de la calidad, cuándo se realiza, qué documentos deben ser revisados y elaborados, etc.

Page 48: Unidad # 10 calidad del software