Gestión de Calidad  PROCESOS DE INGENIERIA DE SOFTWARE
Calidad “ A la calidad se define también como característica o atributo de algo. Como atributo se refiere a cosas que se pueden comparar para reconocer estándares, como longitud, color, propiedades eléctricas y maleabilidad. Cuando se habla de características de un producto, existen dos tipos de calidad: calidad de diseño, calidad de concordancia Calidad de diseño,  se refiere a las características que los diseñadores especifican para un elemento. La  calidad de concordancia  es el grado en el que las especificaciones de diseño se aplican durante la fabricación.
Control de Calidad.-  Involucra inspecciones, revisiones y pruebas empleadas a lo largo del proceso de Software. Garantía de la calidad .-  Consiste en un conjunto de funciones de auditoría e información que evalúan la efectividad y que tan completas son las actividades de control de calidad. Costo de la Calidad.-  El coste de calidad incluye costos que genera la calidad o que demanda el desarrollo de actividades relacionadas con la calidad.  Los costes de calidad se dividen en costos asociados con prevención (revisiones técnicas), evaluación (inspección en el proceso y entre procesos) y fallas (defectos).
Garantía de la Calidad de Software  (SQA) Para la calidad del software actúan dos tipos de integrantes diferentes, los ingenieros de software que realizan el trabajo técnico  y un grupo SQA que tiene la responsabilidad de planificar, supervisar, guardar registros, analizar y reportar la garantía de calidad, auxilian al equipo de desarrollo a obtener un producto final de alta calidad.
Garantía de la Calidad de Software  (SQA) El grupo de SQA se encarga de:  Preparar un plan de SQA para un proyecto. (elaborado en la fase de planificación y revisado por todos).  Participar en el desarrollo de la descripción del proceso de software del proyecto.  Revisar las actividades de ingeniería del software para verificar que se ajuste al proceso de software definido.  Auditar productos de trabajo de software seleccionados para verificar que se ajusten con los definidos como parte del proceso.  Garantiza que las desviaciones en el trabajo de SW y en los productos de trabajo estén documentadas.  Registra cualquier falta de ajuste y lo informa al gestor ejecutivo.
Revisiones del software Las revisiones del software son un in filtro para el proceso de software, es un medio efectivo para descubrir errores y mejorar la calidad del software. El beneficio que traen es el descubrimiento temprano de errores de modo que ya no se propaguen al paso siguiente en el proceso de desarrollo de software. Existen dos tipos de revisiones Las revisiones informales Las revisiones técnicas formales(medio para descubrir errores y mejorar la calidad de Software)
Impacto de los defectos del software en el costo  Varios estudios realizados por TRW, NEC y Mitre Corp., entre otros indican que en las actividades de diseño se introducen entre el 50 a 65 por ciento de los errores. Si un error es descubierto en una etapa de diseño dicho error costara 1.0 unidades, Si este es descubierto antes de la fase de pruebas costara 6.5 unidades, durante las pruebas 15 unidades y luego de su liberación entre 60 y 100 unidades.
Amplificación y eliminación del defecto
Amplificación y eliminación del defecto  Amplificación con revisiones Amplificación sin revisiones
Un ejemplo parecido, algunas enfermedades, dicen los médicos, son  más fáciles de curar en sus inicios aunque difícil de reconocer, pero en el transcurso del tiempo, cuando no han sido reconocidos a primera vista y tratadas, se vuelven fáciles de reconocer pero difícil de curar.
Revisiones Técnicas Formales  Descubren errores  Verifican que el software satisface los requisitos del sistema Garantizan que el software producido cumple con los estándares vigentes Logran software desarrollado en una manera uniforme Hacen proyectos más manejables. Una RTF se enfoca en una parte específica del software total, con el fin de tener una mayor probabilidad de descubrir errores.
Revisiones Técnicas Formales  Las personas que intervienen en el proceso de revision de un proyecto son: Productor  Jefe del Proyecto  Jefe de revisión Revisores (Registrador) Durante la RTF, el registrador, escribe todos los problemas que hayan surgido, y se genera una  lista de problemas de revisión. Se llena un informe resumen de RTF que contiene: Que se revisó?, Quién lo revisó?, Cuáles fueron los hallazgos y conclusiones ?
DIRECTRICES DE LA REVISIÓN Revisar  el producto, no al productor Establecer una agenda y respetarla Limitar el debate y la impugnación Enunciar áreas de problema, pero no se intente resolver todos los que se hayan señalado Tomar notas Limitar el número de participantes e insistir en la preparación anticipada  Desarrollar una lista de verificación para cada producto que tenga probabilidad de ser revisado Asignar recursos y programar las RTF Realizar un entrenamiento significativo de todos los revisores Analizar las revisiones previas
Garantía de la calidad estadística del software La información acerca de defectos de SW se recopila y clasifica. Determinar la causa de cada defecto Principio de Pareto (80% defectos se encuentran en el 20% de las causas posibles) se aísla un 20% (vitales). Una vez identificadas las causas vitales, se corrigen los problemas que han provocado los defectos.
Revisiones Basadas en Muestras Para que un proceso basado en muestras sea eficaz se debe tener en cuenta: La muestra debe ser suficientemente representativa del producto de trabajo como un todo. Debe ser lo suficientemente grande de tal manera que sea significativa para los revisores que realizan el muestreo. Un equipo de software debe establecer el mejor valor según los tipos de productos de trabajo producidos.
Seis   Sigma : Se definen los siguientes pasos :   Definir  los requisitos del cliente, entregables y metas del proyecto, comunicación con el cliente.   Medir  el proceso existente, determinar el desempeño de calidad actual.   Analizar  las métricas de defecto y determinar las causas poco viables.   Diseñar  el proceso para evitar las causas originales de los defectos y satisfacer los requisitos del cliente   Verificar  que el modelo de proceso, evitará los defectos y satisfacerá los requisitos del cliente
Fiabilidad del Software: La fiabilidad del software se define en términos estadísticos como “La probabilidad de la operación libre de fallas de un programa de computadora en un entorno especifico durante un tiempo especifico”
La seguridad del software es una actividad de aseguramiento de la calidad que se enfoca en la identificación y evaluación de los peligros potenciales que pueden  afectar negativamente al software y provocar una falla de todo el sistema.   La confiabilidad del software y su seguridad están estrechamente relacionadas, la confiabilidad utiliza análisis estadístico para determinar la probabilidad de que ocurra una falla; la seguridad del software examina las formas en las cuales las fallas resultan en condiciones que pueden conducir a un percance.
Los Estándares de Calidad  ISO 9000  Describe un sistema de garantía de la calidad  en términos genéricos que se aplican a cualquier negocio sin importar los productos o servicios ofrecidos  Sistema de garantía de calidad,  estructura organizacional, responsabilidades, procedimientos, procesos, y recursos para implementar la gestión de la calidad ISO 9001:2000  se aplica a la ingeniería de software aborda tópicos como: Responsabilidad de la gestión Sistema de calidad Revisión de contrato Control de diseño Control de documentos y datos  Identificación y seguimiento del producto Control de proceso Inspección y pruebas Acciones correctivas y preventivas Control de registro de la calidad Auditorias de calidad interna Entrenamiento Servicio y técnicas estadísticas
El plan SQA: Esta es una herramienta que permite instituir la garantía de seguridad del software, desarrollado por el grupo de SQA este proporciona un plantilla de actividades, se debe tener en cuenta lo siguiente: El propósito y ámbito del plan Una descripción de todos los productos de software Estándares y prácticas aplicables a nuestro proceso.  Las acciones y tareas del SQA. Las herramientas y métodos utilizados. Procedimientos de gestión de configuración. Métodos para salvaguardar, ensamblar y mantener los registros. Documentación, papeles y responsabilidades en la organización  relativas a la calidad del producto elaborado.

Gestion De Calidad Cap 26

  • 1.
    Gestión de Calidad PROCESOS DE INGENIERIA DE SOFTWARE
  • 2.
    Calidad “ Ala calidad se define también como característica o atributo de algo. Como atributo se refiere a cosas que se pueden comparar para reconocer estándares, como longitud, color, propiedades eléctricas y maleabilidad. Cuando se habla de características de un producto, existen dos tipos de calidad: calidad de diseño, calidad de concordancia Calidad de diseño, se refiere a las características que los diseñadores especifican para un elemento. La calidad de concordancia es el grado en el que las especificaciones de diseño se aplican durante la fabricación.
  • 3.
    Control de Calidad.- Involucra inspecciones, revisiones y pruebas empleadas a lo largo del proceso de Software. Garantía de la calidad .- Consiste en un conjunto de funciones de auditoría e información que evalúan la efectividad y que tan completas son las actividades de control de calidad. Costo de la Calidad.- El coste de calidad incluye costos que genera la calidad o que demanda el desarrollo de actividades relacionadas con la calidad. Los costes de calidad se dividen en costos asociados con prevención (revisiones técnicas), evaluación (inspección en el proceso y entre procesos) y fallas (defectos).
  • 4.
    Garantía de laCalidad de Software (SQA) Para la calidad del software actúan dos tipos de integrantes diferentes, los ingenieros de software que realizan el trabajo técnico y un grupo SQA que tiene la responsabilidad de planificar, supervisar, guardar registros, analizar y reportar la garantía de calidad, auxilian al equipo de desarrollo a obtener un producto final de alta calidad.
  • 5.
    Garantía de laCalidad de Software (SQA) El grupo de SQA se encarga de: Preparar un plan de SQA para un proyecto. (elaborado en la fase de planificación y revisado por todos). Participar en el desarrollo de la descripción del proceso de software del proyecto. Revisar las actividades de ingeniería del software para verificar que se ajuste al proceso de software definido. Auditar productos de trabajo de software seleccionados para verificar que se ajusten con los definidos como parte del proceso. Garantiza que las desviaciones en el trabajo de SW y en los productos de trabajo estén documentadas. Registra cualquier falta de ajuste y lo informa al gestor ejecutivo.
  • 6.
    Revisiones del softwareLas revisiones del software son un in filtro para el proceso de software, es un medio efectivo para descubrir errores y mejorar la calidad del software. El beneficio que traen es el descubrimiento temprano de errores de modo que ya no se propaguen al paso siguiente en el proceso de desarrollo de software. Existen dos tipos de revisiones Las revisiones informales Las revisiones técnicas formales(medio para descubrir errores y mejorar la calidad de Software)
  • 7.
    Impacto de losdefectos del software en el costo Varios estudios realizados por TRW, NEC y Mitre Corp., entre otros indican que en las actividades de diseño se introducen entre el 50 a 65 por ciento de los errores. Si un error es descubierto en una etapa de diseño dicho error costara 1.0 unidades, Si este es descubierto antes de la fase de pruebas costara 6.5 unidades, durante las pruebas 15 unidades y luego de su liberación entre 60 y 100 unidades.
  • 8.
  • 9.
    Amplificación y eliminacióndel defecto Amplificación con revisiones Amplificación sin revisiones
  • 10.
    Un ejemplo parecido,algunas enfermedades, dicen los médicos, son más fáciles de curar en sus inicios aunque difícil de reconocer, pero en el transcurso del tiempo, cuando no han sido reconocidos a primera vista y tratadas, se vuelven fáciles de reconocer pero difícil de curar.
  • 11.
    Revisiones Técnicas Formales Descubren errores Verifican que el software satisface los requisitos del sistema Garantizan que el software producido cumple con los estándares vigentes Logran software desarrollado en una manera uniforme Hacen proyectos más manejables. Una RTF se enfoca en una parte específica del software total, con el fin de tener una mayor probabilidad de descubrir errores.
  • 12.
    Revisiones Técnicas Formales Las personas que intervienen en el proceso de revision de un proyecto son: Productor Jefe del Proyecto Jefe de revisión Revisores (Registrador) Durante la RTF, el registrador, escribe todos los problemas que hayan surgido, y se genera una lista de problemas de revisión. Se llena un informe resumen de RTF que contiene: Que se revisó?, Quién lo revisó?, Cuáles fueron los hallazgos y conclusiones ?
  • 13.
    DIRECTRICES DE LAREVISIÓN Revisar el producto, no al productor Establecer una agenda y respetarla Limitar el debate y la impugnación Enunciar áreas de problema, pero no se intente resolver todos los que se hayan señalado Tomar notas Limitar el número de participantes e insistir en la preparación anticipada Desarrollar una lista de verificación para cada producto que tenga probabilidad de ser revisado Asignar recursos y programar las RTF Realizar un entrenamiento significativo de todos los revisores Analizar las revisiones previas
  • 14.
    Garantía de lacalidad estadística del software La información acerca de defectos de SW se recopila y clasifica. Determinar la causa de cada defecto Principio de Pareto (80% defectos se encuentran en el 20% de las causas posibles) se aísla un 20% (vitales). Una vez identificadas las causas vitales, se corrigen los problemas que han provocado los defectos.
  • 15.
    Revisiones Basadas enMuestras Para que un proceso basado en muestras sea eficaz se debe tener en cuenta: La muestra debe ser suficientemente representativa del producto de trabajo como un todo. Debe ser lo suficientemente grande de tal manera que sea significativa para los revisores que realizan el muestreo. Un equipo de software debe establecer el mejor valor según los tipos de productos de trabajo producidos.
  • 16.
    Seis Sigma : Se definen los siguientes pasos :   Definir los requisitos del cliente, entregables y metas del proyecto, comunicación con el cliente.   Medir el proceso existente, determinar el desempeño de calidad actual.   Analizar las métricas de defecto y determinar las causas poco viables.   Diseñar el proceso para evitar las causas originales de los defectos y satisfacer los requisitos del cliente   Verificar que el modelo de proceso, evitará los defectos y satisfacerá los requisitos del cliente
  • 17.
    Fiabilidad del Software:La fiabilidad del software se define en términos estadísticos como “La probabilidad de la operación libre de fallas de un programa de computadora en un entorno especifico durante un tiempo especifico”
  • 18.
    La seguridad delsoftware es una actividad de aseguramiento de la calidad que se enfoca en la identificación y evaluación de los peligros potenciales que pueden afectar negativamente al software y provocar una falla de todo el sistema.   La confiabilidad del software y su seguridad están estrechamente relacionadas, la confiabilidad utiliza análisis estadístico para determinar la probabilidad de que ocurra una falla; la seguridad del software examina las formas en las cuales las fallas resultan en condiciones que pueden conducir a un percance.
  • 19.
    Los Estándares deCalidad ISO 9000 Describe un sistema de garantía de la calidad en términos genéricos que se aplican a cualquier negocio sin importar los productos o servicios ofrecidos Sistema de garantía de calidad, estructura organizacional, responsabilidades, procedimientos, procesos, y recursos para implementar la gestión de la calidad ISO 9001:2000 se aplica a la ingeniería de software aborda tópicos como: Responsabilidad de la gestión Sistema de calidad Revisión de contrato Control de diseño Control de documentos y datos Identificación y seguimiento del producto Control de proceso Inspección y pruebas Acciones correctivas y preventivas Control de registro de la calidad Auditorias de calidad interna Entrenamiento Servicio y técnicas estadísticas
  • 20.
    El plan SQA:Esta es una herramienta que permite instituir la garantía de seguridad del software, desarrollado por el grupo de SQA este proporciona un plantilla de actividades, se debe tener en cuenta lo siguiente: El propósito y ámbito del plan Una descripción de todos los productos de software Estándares y prácticas aplicables a nuestro proceso. Las acciones y tareas del SQA. Las herramientas y métodos utilizados. Procedimientos de gestión de configuración. Métodos para salvaguardar, ensamblar y mantener los registros. Documentación, papeles y responsabilidades en la organización relativas a la calidad del producto elaborado.