1.1 Aseguramiento de la calidad del software



Documentos relacionados
3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE

Planeación del Proyecto de Software:

CMMI (Capability Maturity Model Integrated)

Elementos requeridos para crearlos (ejemplo: el compilador)

Plan de Gestión de Configuración. Universidad Nacional de la Patagonia Austral

Metodología básica de gestión de proyectos. Octubre de 2003

Resumen General del Manual de Organización y Funciones

EMPRESAS PÚBLICAS DE MEDELLÍN E.S.P. DIRECCIÓN CONTROL INTERNO PROYECTO NORMALIZACIÓN ACTIVIDAD DE AUDITORÍA INTERNA

Procedimiento para el desarrollo de auditoria interna.

Gestión de la Configuración

AI 2 ADQUISICIÓN Y MANTENIMIENTO DE SOFTWARE DE APLICACIÓN AFINES OBJETIVOS OBJETIVOS DE CONTROL

SW-CMM Capability Maturity Model for Software

COMPONENTES DEL SISTEMA DE CONTROL INTERNO COMITÉ DE CONTROL INTERNO- SISOL

PROCEDIMIENTO AUDITORÍA INTERNA

1.1. Sistema de Gestión de la Calidad

CURSO COORDINADOR INNOVADOR

INFORME SOBRE LA AUTOEVALUACIÓN DE CALIDAD DE LA ACTIVIDAD DE AUDITORÍA INTERNA 2011

PROCEDIMIENTO DE AUDITORIAS INTERNAS

Aseguramiento de la Calidad, QA. Materia: Desarrollo Industrial de Software Alumno: David Alejandro González Díaz y Froylan Ruiz Cirilo.

Norma ISO 14001: 2015

PROCEDIMIENTO PARA AUDITORÍAS INTERNAS PC-TESI-10

Procedimiento General Auditorías Internas (PG 02)

Gestión y Desarrollo de Requisitos en Proyectos Software

Gestión de Configuración del Software

LINEAMIENTOS PARA AUDITORÍAS INTERNAS Y LAS AUDITORÍAS INTERNAS DE CALIDAD

GESTION OPERATIVA. Niveles de gestión

Estándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008

Mantenimiento de Sistemas de Información

PROCEDIMIENTO DE AUDITORÍAS INTERNAS DEL SISTEMA DE GESTIÓN DE CALIDAD

LISTA DE CHEQUEO NORMA NTC ISO 9001:2000 No. REQUISITOS EXISTE ESTADO OBSERVACIONES D: Documentado I: Implementado M: Mejorar SI NO D I M

Procedimiento de Auditoria Interna Revisión: 3. Facultad de Ciencias PROCEDIMIENTO: DE AUDITORIA INTERNA

Curso TURGALICIA SISTEMA DE GESTIÓN DE SEGURIDAD Y SALUD EN EL TRABAJO OHSAS 18001:2.007

PROCESO: GESTION INFORMÁTICA PROCEDIMIENTO: GESTION DE CONFIGURACIONES

Norma ISO 9001: Sistema de Gestión de la Calidad

I. Información General del Procedimiento

Informe de Seguimiento. Máster Universitario en Dirección y Administración de Empresas-MBA. Empresas-MBA de la Universidad de Málaga

Norma ISO 14001: 2004

PROCEDIMIENTO AUDITORIAS INTERNAS DE CALIDAD. PROCESO EVALUACIÓN Y CONTROL PÁGINA 1 de 9

Mejora de la Seguridad de la Información para las Pymes Españolas

ANEXO 23: TÉRMINOS DE REFERENCIA PARA LA AUDITORÍA DEL PROYECTO

Política de Gestión Integral de Riesgos Compañía Sud Americana de Vapores S.A.

OHSAS 18001: Sistema de Gestión de la Seguridad y Salud en el trabajo

INFORME Nº1 PROPUESTA METODOLÓGICA Y PLAN DE TRABAJO DESARROLLO DE UN SISTEMA INTEGRADO DE GESTIÓN PARA EL GOBIERNO REGIONAL DE ATACAMA

Procedimiento AUDITORIA INTERNA DE CALIDAD

Evaluación. del desempeño

Inter American Accreditation Cooperation. Grupo de prácticas de auditoría de acreditación Directriz sobre:

Ejemplo Manual de la Calidad

Aplicaciones de Ingeniería de Software

Fábrica de Software. Documento de Proceso de la Gerencia de SQA

Modelo de Proceso de Desarrollo de Software

Empresa Financiera Herramientas de SW Servicios

DOCUMENTO DE REFERENCIA MECI SISTEMA INTEGRADO DE GESTIÓN. Contenido DOCUMENTO MECI - CALIDAD ARMONIZACIÓN CONCEPTUAL... 3

I. INTRODUCCIÓN DEFINICIONES

Firma: Fecha: Marzo de 2008

PERFILES OCUPACIONALES

INSTRODUCCION. Toda organización puede mejorar su manera de trabajar, lo cual significa un

SOLICITUD DE DESARROLLO Y ACTUALIZACIÓN DE APLICACIONES G OBIERNO D E L A CIUDAD DE BUENOS AIRES

Plan provincial de Producción más limpia de Salta

PROCEDIMIENTO GENERAL RAZÓN SOCIAL DE LA EMPRESA. Auditorias Internas de Calidad. Código PG-09 Edición 0. Índice:

4.4.1 Servicio de Prevención Propio.

Sede Escazú, Plaza Tempo

Auditoría Interna como aporte de valor para la Organización.

DOCUMENTO TECNICO PROGRAMA DE MEJORAMIENTO DE LA GESTIÓN (PMG) PROGRAMA MARCO AÑO 2013

TECNOLOGICO DE ESTUDIOS SUPERIORES DE ECATEPEC CALIDAD DE SOFTWARE Guía para Examen Segundo Parcial Grupo 6501

Plan de Administración del Proyecto

Proceso: AI2 Adquirir y mantener software aplicativo

NORMA ISO Estos cinco apartados no siempre están definidos ni son claros en una empresa.

ESTRUCTURA DEL MODELO ESTÁNDAR DE CONTROL INTERNO

0. Introducción Antecedentes

PROCEDIMIENTO DE AUDITORIAS INTERNAS. CALIDAD INSTITUCIONAL Versión: 02

MODELOS Y SISTEMAS DE CALIDAD EN LA EDUCACIÓN

POLÍTICA PARA LA GESTIÓN INTEGRAL DE RIESGOS EN IBERPLAST

TIPO DE PROCESO EVALUACION VERSIÓN 1 PROCEDIMIENTO AUDITORIAS INTERNAS PÁGINA: 1 de 7

PROCEDIMIENTO DE AUDITORIAS INTERNAS FECHA NOMBRE Y CARGO FIRMA. Bárbara Aguirre Coordinadora de Calidad. Matías Carrère Gerente Comercial

Gestión de la Prevención de Riesgos Laborales. 1

Sistemas de gestión de la calidad Requisitos

Proceso de administración y escalación de problemas Guía de referencia

MODELOS DE ESTRUCTURA PARA LAS DIRECCIONES DE INFORMÁTICA

Actualización de la Norma ISO 9001:2008

programación y guías docentes, el trabajo fin de grado y las prácticas externas.

TALLER: ISO Ocean. Alejandro Tonatiuh López Vergara Geog. Miriam Ruiz Velasco

Sistemas de Gestión de Calidad. Control documental

ISO 9001:2015 Cuestionario de autoevaluación

ENFOQUE ISO 9000:2000

ISO 9000:2000. Roberto Aprili Justiniano Rodrigo Ramírez Pérez. Roberto Aprili, Rodrigo Ramírez

SEGURIDAD DE LA INFORMACIÓN

PROCEDIMIENTO DE AUDITORÍA INTERNA PR04

TÍTULO : NORMAS GENERALES DEL SISTEMA DE CONTROL INTERNO: COMPONENTE SUPERVISION

SISTEMAS Y MANUALES DE LA CALIDAD

C O N T E N I D O. 1. Propósito. 2. Alcance. 3. Responsabilidad y autoridad. 4. Normatividad aplicable. 5. Políticas

Estándares de Seguridad

NORMA DE ADMINISTRACIÓN DE INCIDENTES DE SEGURIDAD

configurándola para ser usada dentro del área de QA de una fábrica de software.

Norma ISO Francisco D Angelo Douglas García Claudia Herrera Luis Laviosa

Aseguramiento de la Calidad

Lista de la Verificación de la Gestión de la Seguridad y Salud Ocupacional 1

Curso. Introducción a la Administracion de Proyectos

Nombre del Documento: Manual de Gestión de la Calidad. Referencia a punto de la norma ISO 9001:2000: DIRECCIÓN GENERAL DE EVALUACIÓN

INFORME PORMENORIZADO DEL ESTADO DEL CONTROL INTERNO Noviembre de 2014 a febrero de MÓDULO DE CONTROL DE PLANEACIÓN Y GESTIÓN

Transcripción:

1.1 Aseguramiento de la calidad del software El propósito del Aseguramiento de la Calidad (Software Quality Assurance, SQA) es entregar a la administración una visibilidad adecuada del proceso utilizado y los productos construidos mediante acciones planificadas y sistemáticas que aseguren la calidad de dichos procesos y productos [Roj96]. Por ello, SQA abarca revisar, auditar e informar a la administración del proyecto sobre la adherencia de los productos y procesos a los estándares y procedimientos establecidos. El proceso incluye todas las actividades, métodos y prácticas para desarrollar o mantener software y sus productos asociados. El producto comprende el software y todos los artefactos creados como parte de la definición, mantención y uso del proceso de software, incluyendo especificaciones, descripciones de procesos, planes, procedimientos, código y documentación relacionada. Basándose en lo anterior, los objetivos principales de SQA son [AGB]: 1. Planificar las actividades de SQA. 2. Verificar la adherencia de los productos de trabajo y de las actividades a los estándares, procedimientos y requerimientos establecidos. 3. Informar a los grupos e individuos afectados sobre las actividades de SQA y sus resultados. 4. Comunicar a la administración superior sobre desviaciones no resueltas dentro del proyecto. Para alcanzar estos objetivos se requiere comprender la necesidad de un grupo responsable de SQA (Software Quality Group), las actividades del proceso de SQA, sus tareas a lo largo del ciclo de vida de un proyecto y su relación con otras áreas de prácticas del desarrollo de software. 7

1.1.1 Grupo de SQA SQA es una especialidad compleja y abundante en metodologías, por lo que es necesario la especialización de sus profesionales. De ahí, que el liderazgo de SQA deba ser asumido por uno o más ingenieros de calidad, lo que se conoce como grupo de SQA. El grupo de SQA trabaja en el proyecto de software, desde etapas tempranas, para establecer planes, estándares y procedimientos que otorguen valor agregado al proyecto y satisfagan los requerimientos y las políticas organizacionales. Por medio de su cooperación en la elaboración del plan, procedimientos y estándares, asegura su concordancia con las necesidades del proyecto y su utilidad para las revisiones y auditorías posteriores. Mediante su participación en las revisiones y auditorías de los productos de trabajo a través del ciclo de vida del proyecto, el grupo de SQA provee a la administración visibilidad sobre como el proyecto de software se adhiere a los planes, estándares y procedimientos establecidos. El rol del grupo de SQA es guiar al equipo de desarrollo para alcanzar un producto de alta calidad. La implantación de la calidad es responsabilidad de la administración superior y de los grupos de desarrollo. Es más, la existencia de un grupo de calidad dedicado no garantiza por sí sola que los procesos sean seguidos y que la calidad se introduzca mágicamente en el producto. Debe existir un compromiso de toda la organización por orientarse hacia una cultura de calidad [Roj96]. Dentro de las actividades de este grupo destacan [Press97]: Preparar el Plan de SQA para cada proyecto Participar en el desarrollo de la descripción del proceso de software para un proyecto. Revisar las actividades de ingeniería en acuerdo con el proceso definido. 8

Auditar los productos de trabajo designados, para verificar su adherencia con aquellos definidos en el modelo de proceso. Asegurar que las desviaciones en el desarrollo y en los productos de trabajo sean documentadas y apoyadas por el procedimiento de documentación. Registrar cualquier disconformidad e informar a la administración superior. Coordinar la gestión de configuración. Apoyar la recolección y análisis de métricas de software. 1.1.2 Actividades del proceso de SQA SQA se define como un conjunto de actividades planificadas y sistemáticas, cuyo primer objetivo es evaluar la calidad y la adherencia de los productos de software a los estándares, procesos y procedimientos. La conformidad con los estándares y procedimientos es evaluada a través del monitoreo de procesos, la evaluación del producto y las auditorías [AGB]. El monitoreo de procesos y la evaluación del producto corresponden a las actividades de SQA responsables de verificar que el plan del proyecto, los procedimientos y estándares son seguidos correctamente durante el desarrollo y el control de los procesos. La auditoría es una técnica, que analiza con detenimiento los procesos y productos sobre la base de su adherencia a los procedimientos y estándares. Su propósito es garantizar que se cuenta con un proceso de control adecuado, que la documentación es mantenida y que los informes de los desarrolladores reflejan el estado de la actividad que desempeñan. Y su producto, un informe de guías y recomendaciones para los procesos de calidad y de desarrollo dirigido a la administración superior. 9

Si bien estas tareas son las principales actividades de SQA, son aún demasiado generales con relación a una implantación de esta área de prácticas. Por ello, es necesario establecer y definir las tareas que permiten materializar el monitoreo de procesos, la evaluación del producto y las auditorías al interior de una organización. Estas actividades son [Horch96]: Estándares Revisiones Prueba Análisis de defectos Gestión de Configuración 1.1.2.1 Estándares Los estándares son los cimientos de cualquier sistema de calidad de software, pues proveen la base para la evaluación y medición de las actividades y de los productos de trabajo durante todo el ciclo de vida del software. Por tanto, ellos establecen el marco de trabajo para el desarrollo de software, constituyéndose en un factor crítico de este último. Su aplicación otorga uniformidad, consistencia, rigurosidad, y fortaleza a los métodos y a las actividades del desarrollo de software. Es más, los estándares entregan métodos y prácticas comunes que permiten concretar una tarea repetidas veces en la misma forma. Las áreas contenidas en el estándar varían de una organización a otra según sus necesidades. Lo importante es no estandarizar todo. Un conjunto de estándares que cubra cada uno de los aspectos de las actividades organizacionales pierde la adhesión de sus usuarios sólo por su envergadura. Muchas veces, es preferible contar con guías que mencionen los métodos preferidos para las 10

distintas actividades, dejando a los individuos un grado de libertad para aquellas tareas en que los métodos específicos no son requeridos. Por tanto, la estandarización puede ser aplicada a cualquier o a todas las áreas del desarrollo de software y mantención. Sin embargo, es recomendable limitar su campo de acción, el cual debería cubrir: Ciclo de vida del software Documentación Código fuente Criterios para denominar los ítems de configuración Procedimientos y protocolos Por último, para SQA es de gran importancia contar tempranamente con estándares confiables y apropiados, pues las tareas de monitoreo, evaluación y auditoría toman como entrada estas definiciones. 1.1.2.2 Revisiones Las revisiones constituyen la primera forma de monitorear y evaluar la calidad de los productos de trabajo, y además, proveen mayor visibilidad al desarrollo. Las revisiones son una metodología definida, estructurada y disciplinada para la detección e identificación de defectos en los productos de trabajo durante el ciclo de vida del software. Cuenta con seis etapas: planificación, orientación, preparación, inspección, rework y seguimiento, las cuales son llevadas a cabo por un equipo con tareas y responsabilidades definidas, con documentación específica y por un período determinado. 11

El rol de SQA es observar, participar de ser necesario y verificar que las revisiones se realicen y documenten correctamente. También debe supervisar que cualquier acción requerida, fruto de estas actividades, sea asignada, documentada, programada y actualizada. 1.1.2.3 Prueba La prueba es la última actividad de evaluación del producto que permite detectar defectos y establecer el nivel de satisfacción de los requerimientos. Sus actividades incluyen la planificación, diseño, ejecución y reporte sobre los diferentes niveles de prueba existentes durante el proyecto. Estos niveles van desde las pruebas de unidad, pasando por la de integración, hasta las del sistema y aceptación. Es responsabilidad de SQA verificar que la prueba se realice de acuerdo a los planes y procedimientos establecidos. También, debe corroborar la completitud y adherencia a los estándares de la documentación de la prueba. Esto incluye a los planes, especificaciones, procedimientos e informes. Por lo tanto, SQA debe garantizar que: Los procedimientos de prueba verifican los requerimientos según el plan. La versión del software evaluada sea la actual. Los procedimientos sean utilizados. Cualquier problema detectado durante esta actividad, sea registrado e informado oportunamente. Los informes entregados correspondan a la realidad y sean completos. La corrección de los errores sea realizada antes de la entrega del producto final. 12

1.1.2.4 Análisis de defectos Los defectos ocurren a lo largo de todo del ciclo de vida del software sin excepción. Por ello resulta natural concentrar esfuerzos en su detección y corrección. No obstante a que la corrección de defectos es importante, más lo es su prevención. Esta sólo puede alcanzarse a partir del registro y seguimiento de los defectos, puntapié inicial para un posterior análisis. Es, entonces, el análisis de defectos la actividad responsable de corregir las deficiencias actuales en el proceso y así disminuir los defectos en futuros proyectos. En términos generales, el análisis de defectos es el puente que une las tareas orientadas al control de la calidad (detectar defectos en los productos de trabajo) con aquellas orientadas al aseguramiento de la calidad (detectar debilidades en los procesos y procedimientos). Un análisis de defectos efectivo permite, a partir de la detección de fallas y de las mediciones del producto, identificar relaciones causa-efecto, las cuales van entregando pautas sobre posibles mejoras al proceso de desarrollo. Inclusive, una vez que se ha acumulado suficiente información, pueden indicarse modificaciones que hagan al proceso de desarrollo más efectivo. SQA debe responsabilizarse de crear un método de identificación de defectos de deficiencias del proceso y de realizar los cambios necesarios para mejorar su eficacia y eficiencia. Es más, debe apoyar a la gestión en la definición y perfeccionamiento de los procesos. Por tanto, el análisis de defectos es una actividad de su entera responsabilidad. 13

1.1.2.5 Gestión de configuración El propósito de la Gestión de Configuración (Software Configuration Management, SCM) es establecer y mantener la integridad de los productos a través de todo el ciclo de vida del software, proveyendo un adecuado control de los cambios producidos en los diversos ítems de configuración 1. Para ello, SCM se compone de cuatro actividades principales: identificación de la configuración, control de cambios, contabilidad y auditorías de la configuración. La identificación de la configuración proporciona un método único y especifico para identificar cada instancia (release, versión, etc.) de un producto de software. El control de cambios asegura que cada modificación sobre alguna instancia del producto sea conocida, autorizada y documentada. La contabilidad de la configuración permite establecer un seguimiento e informar sobre el estado de la configuración en un tiempo dado. Y, finalmente, las auditorías establecen si el producto ha sido construido de acuerdo a los requerimientos y que el software esté realmente representado por la documentación que le acompaña. SQA garantiza que estas actividades se adhieran al plan de SCM, a los estándares y procedimientos. Como primer paso, el plan de SCM es revisado, de acuerdo a los requerimientos y a las políticas de SCM, para detectar posibles desviaciones. Luego, se auditan la conformidad de las funciones de SCM a los estándares y procedimientos y se generan los reportes necesarios. 1 Un ítem de configuración es cualquier documento o artefacto que forma parte del software, factible de ser desarrollado evaluado independientemente. 14

Además, SQA audita y monitorea el control de las baselines 2 y la identificación, el control, la auditoría y la autenticidad de la configuración del software, asegurando que: Las baselines sean establecidas y debidamente mantenidas para su uso posterior en el control y desarrollo de baselines. La identificación de la configuración del software sea consistente con los números y/o nombres de los programas, módulos, unidades y con la documentación del software. El control de la configuración sea mantenido de manera tal que la configuración del software, utilizada durante las etapas de prueba, aceptación y entrega, sea compatible con la documentación asociada. La auditoría de la configuración proporcione registros y reportes que incluyen información sobre la identificación de la configuración, los cambios propuestos y su estado de implementación. La autentificación de la configuración sea establecida por una serie de revisiones y auditorías que reflejan el funcionamiento requerido por la especificación de requerimientos. La biblioteca del software provea la información apropiada sobre como las diferentes versiones de los ítems de configuración y baselines hayan ido evolucionando durante todo el ciclo de vida del software. Sólo aquellos cambios, que han sido aprobados, sean implementados adecuadamente en todos los ítems afectados. 1.1.3 Actividades de SQA durante el ciclo de vida de un proyecto 2 Un baseline o línea base es uno o más documentos formalmente diseñados y corregidos en un tiempo específico del ciclo de vida de los ítems de configuración. 15

Como actividad continua durante todo el ciclo de vida del software, SQA es aplicado en cada etapa del desarrollo con diferentes propósitos [AGB]: a) Planificación Durante la etapa de planificación, SQA debe participar de la elaboración del plan de proyecto. Es su responsabilidad producir el Plan de SQA y verificar que los procesos, procedimientos y estándares identificados en el plan de proyecto son apropiados, claros, específicos y auditables. El contenido del plan de SQA debe identificar: evaluaciones, auditorías y revisiones, estándares, procedimientos de seguimiento y reporte de errores, y la documentación por producir. b) Especificación de requerimientos SQA debe corroborar que en la especificación estén expresados todos los requerimientos funcionales, técnicos, operacionales y de interfaz, de manera tal que puedan ser verificados en el producto final. c) Diseño En la fase de diseño, dentro de las actividades de SQA se incluyen asegurar: La adherencia del diseño y su documentación a los estándares definidos en el plan del proyecto. La presencia de todo módulo en el diseño. La incorporación de los resultados de las inspecciones en el diseño. 16

El ingreso del diseño a la configuración del software, tras su aprobación. d) Implementación A SQA le corresponde auditar: Los resultados de las actividades de diseño y codificación. El estado de todos los entregables. Las actividades de gestión de configuración y de la biblioteca del software. Los informes sobre desviaciones y las acciones correctivas. e) Integración y prueba Con relación a la integración y a la prueba, a SQA le corresponde garantizar la concordancia de las pruebas con el plan y los procedimientos definidos, así como también que toda desviación haya sido informada y corregida. Además, debe certificar que las actividades de prueba se han completado satisfactoriamente y que el software y su documentación se encuentran listos para la entrega del producto final. f) Aceptación y entrega En la fase de aceptación, SQA es responsable de realizar la última auditoría de configuración del software, con el objetivo de determinar que los deliberables están listos para la entrega. g) Mantención Durante la operación pueden presentarse correcciones o mejoras que originen pequeños ciclos de desarrollo. En tal caso, se repetirán las actividades de SQA descritas con anterioridad. 17

1.1.4 Relación con otras áreas de prácticas El grupo de SQA es únicamente el facilitador de los procesos de calidad y el responsable por aplicar los principios de calidad a lo largo de la organización. La responsabilidad por la implantación de la calidad recae en la administración superior y en los grupos de desarrollo. La existencia de un grupo de SQA dedicado no garantiza por sí solo que los procesos sean seguidos y que la calidad se introduzca mágicamente en el producto. Debe existir un compromiso de toda la organización por orientar hacia una cultura de la calidad [Roj96]. El concepto de SQA se basa en la premisa de que la calidad de un producto de software está fundamentalmente determinada por los procesos utilizados en su desarrollo y mantención. Es decir, a través de la incorporación de prácticas de ingeniería de software y del monitoreo de la adherencia a ellas, se logrará perfeccionar el proceso de desarrollo y, por consecuencia, mejorar la calidad del producto. Sin embargo, es necesario comprender que la calidad no puede ser una función exclusiva de una persona o de un grupo dentro de una organización. Muy por el contrario es responsabilidad de cada persona involucrada en el desarrollo del producto. La labor de SQA se limita a difundir y motivar a los miembros de la organización en el mejoramiento de la calidad, participar en la evaluación del producto y en el monitoreo de procesos para garantizar su adherencia a los estándares y procedimientos establecidos y guiar a la administración en la innovación, integración y optimización del proceso de desarrollo. SQA es, por lo tanto, un staff de apoyo en la toma de decisiones para el nivel de gestión, un fiscalizador durante todo el ciclo de vida de un proyecto y el principal promotor de las prácticas de calidad dentro de todos los niveles organizacionales. 18