





Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Los mejores documentos en venta realizados por estudiantes que han terminado sus estudios
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Descubre las mejores universidades de tu país según los usuarios de Docsity
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
En 48 horas tu documento estará visible para otros usuarios
Tipo: Monografías, Ensayos
1 / 9
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!
Ingeniare. Revista chilena de ingeniería, vol. 27 Nº 2, 2019, pp. 319-
Aymara Marin Diaz^1 * Yaimí Trujillo Casañola^1 Denys Buedo Hidalgo^1 Recibido 08 de noviembre de 2017, aceptado 02 de junio de 2018 Received: November 08, 2017 Accepted: June 02, 2018 RESUMEN Para poder introducirse en el mercado del software y ocupar puestos privilegiados o al menos prosperar en la industria, es necesario complacer al cliente para el cual se trabaja, esto se logra con la calidad requerida de los productos demandados. La calidad ya no es un factor más, sino que se ha convertido en uno de los principales factores competitivos, sin el cual toda empresa estará condenada al fracaso y a su posterior desaparición. La presente investigación presenta un marco de trabajo que gestiona actividades de calidad propuestas con el fin de disminuir los costos de corrección de defectos teniendo en cuenta la experiencia de las organizaciones y las tendencias nacionales e internacionales. Palabras clave: Gestión, calidad, costos, defectos. ABSTRACT In order to be able to enter the software market and occupy privileged positions or at least prosper in the industry, it is necessary to please the customer for whom they work, this is achieved with the required quality of the products demanded. Quality is no longer a factor, but it has become one of the main competitive factors, without which every company will be doomed to failure and its subsequent disappearance. The present research presents a framework that manages proposed quality activities in order to reduce the costs of correcting defects taking into account the experience of organizations and national and international trends. Keywords: Management, quality, costs, defects. (^1) Dirección de Calidad de Software. Universidad de las Ciencias Informáticas. Carretera San Antonio Km 2 ½ Reparto Torrens. La Lisa. La Habana, Cuba. E-mail: amarin@uci.cu; yaimi@uci.cu; dbuedo@uci.cu
La calidad ha evolucionado y se ha convertido en un importante punto diferenciador en la industria del software. Los productos que ostentan certificados de calidad tienen un mayor mercado pues trasmiten seguridad y confianza [1]. Varios son los autores que han expresado lo difícil de una definición de calidad, el diccionario de la lengua española define este vocablo con el siguiente concepto: “Propiedad o conjunto de propiedades inherentes a una cosa, que permite apreciarla como igual, mejor o peor que las restantes de su especie”.
Ingeniare. Revista chilena de ingeniería, vol. 27 Nº 2, 2019 Según lo que plantea la norma ISO 9000:2000 [2] la calidad: “Es el grado en el que un conjunto de características (rango diferenciador) inherentes cumple con los requisitos (necesidad o expectativa establecida, generalmente implícita u obligatoria)”. Otros autores como Pressman plantean que la calidad está asociada al cumplimiento de exigencias establecidas por consumidores y por documentación técnica elaborada a través de la ingeniería del software durante el ciclo de vida de un proyecto [3-4]. Las tendencias actuales consideran a la calidad como un factor estratégico. Romero y otros plantean: “(…) ya no se trata de una actividad inspectora sino preventiva: planificar, diseñar, fijar objetivos, educar e implementar un proceso de mejora continua, la gestión estratégica de la calidad hace de esta una fuente de ventajas competitivas que requiere del esfuerzo colectivo de todas las áreas y miembros de la organización ” [5]. La ingeniería de software desde sus inicios ha aplicado un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento del software, con el objetivo de alcanzar un software de alta calidad. Un software que sea producido en tiempo, con el costo planificado y que funcionen los requisitos pactados con el cliente [3-4, 28]. Sin embargo, el Standish Group en los reportes publicados en los últimos 5 años muestra que el comportamiento de los proyectos exitosos sigue siendo menor que los proyectos cancelados y fallidos. Una de las causas es la: Identificación de defectos en las etapas de pruebas [6], según los estudios de Humphrey, Larman y Pressman esta causa afecta el costo y los tiempos, cuando afirman: “(…) aunque hay muchos aspectos relacionados con la calidad del software, el primer aspecto de la calidad está relacionado necesariamente con sus defectos. Esto no significa que los defectos son el único aspecto o que son los más importante, pero debes tratar con muchos de los defectos para poder satisfacer cualquiera de los otros objetivos ” [7]. “Es más barato y fácil efectuar cambios durante las actividades de análisis y diseño que en la fase de construcción: el software es más duro de lo que pensamos” [8]. “Las pruebas son necesarias, pero también es una forma costosa de encontrar errores. Gasta el tiempo en encontrar errores al comienzo del proceso y podrá reducir significativamente los costos de pruebas y depuración de errores ” [3]. Es decir que la calidad está altamente relacionada con los defectos en los productos y que al alejarse su detección del momento en que se introducen aumentan los costos y los tiempos de corrección. Aunque la tendencia es a desarrollar pruebas estos científicos afirman que es importante invertir en encontrar errores desde el comienzo del proceso de desarrollo [3, 7-8]. La gestión de la calidad es definida por Sanz y Bonilla [9-10], sustentados en la definición de la Norma ISO 9000: Gestión y aseguramiento de calidad como: “el conjunto de actividades y medios necesarios que en primera instancia permiten definir e implantar un sistema de calidad, y posteriormente responsabilizarse de su control, aseguramiento y mejora continua”. No se debe hacer alusión a la gestión de la calidad sin abordar el modelo Plan-Do-Check-Act, original de Sherwhart [29], y difundido sobre todo por Deming en varias ocasiones. Deming se refería a este modelo como el Ciclo de Sherwhart, hoy se reconoce en muchos espacios como el Ciclo de Deming como consecuencia de los aportes realizados por él [17]. A través de la aplicación de este ciclo se ha establecido que al utilizar los principios de Deming la calidad aumenta, por lo tanto, bajan los costos [11]. La planificación de calidad debe tener en cuenta las concesiones entre costos y beneficios. El principal beneficio de cumplir con los requisitos de calidad, es un menor reproceso, lo cual significa mayor productividad, menores costos y mayor satisfacción de los interesados. Los costos de la calidad son los costos totales incurridos en inversiones para prevenir el incumplimiento de los requisitos, evaluar la conformidad del producto o servicio con los requisitos, y por no cumplir con los mismos (reproceso) [12]. De las actividades que se plantean en la gestión de la calidad la más importante es el mejoramiento continuo pues permite visualizar un horizonte más amplio, donde se buscará siempre la excelencia
Ingeniare. Revista chilena de ingeniería, vol. 27 Nº 2, 2019 efectividad o inexististencia de actividades que busquen encontrar defectos. Al realizar un diagnóstico para conocer las actividades de calidad que se realizan en dicha institución a los proyectos de desarrollo de software se conoce que realizan revisiones de adherencia a procesos y productos y pruebas de software. En el diagnóstico también se tuvieron en cuenta organizaciones desarrolladoras de software a nivel nacional como son: DATYS, XETID y Desoft, y se determinó que las tendencias sobre las actividades de calidad que realizan es a efectuar pruebas del software. Teniendo en cuenta lo documentado en las investigaciones de Humprhey, Larman y Pressman, estas actividades son insuficientes para detectar en mayor medida los defectos cercanos a las etapas donde se introducen. Los investigadores proponen como resultado de la investigación un marco de trabajo que permita la gestión de las actividades de calidad de manera que se detecten los defectos más cercanos a la etapa donde se introducen, lo cual permitirá reducir los costos de corrección de defectos [3, 7-8]. RESULTADOS Un marco de trabajo es una visión general amplia o esquema de elementos interconectados, que define un conjunto estandarizado de conceptos, prácticas y criterios para enfocar un tipo de problemática particular [26]. Un marco de trabajo proporciona una estructura base para organizar los componentes de un proceso [27], incluyendo actividades, reglas y métodos aplicables a cualquier escenario sin importar su tamaño o complejidad [15]. El propósito es disminuir el costo de corrección de defectos del software mediante la gestión de actividades de calidad. Sus objetivos serán:
Marin Diaz, Trujillo Casañola y Buedo Hidalgo: Apuntes para gestionar actividades de calidad en proyectos… En la etapa de Ejecutar se llevarán a cabo las actividades y se verificará el cumplimiento de las mismas a partir de las planificaciones realizadas por los equipos de proyectos. La salida de esta etapa será un análisis de incidencias, en el cual se recogerán los datos del comportamiento de los defectos en cuanto a cantidad de defectos introducidos por etapas y cantidad de defectos detectados por etapas. Este análisis de incidencias constituirá la entrada a la etapa de Mejorar, en la cual se elaborará un análisis de tendencias con los datos recopilados en la etapa anterior que permitirá la mejora continua del marco de trabajo mediante las oportunidades de mejora y lecciones aprendidas. Las actividades de calidad propuestas a gestionar por el marco de trabajo se muestran en la Figura 3. Fuente: Elaboración propia. Figura 3. Actividades de Calidad. En el cuadro vertical se listan técnicas y métodos como: revisiones entre pares, pruebas de conceptos, simulación, listas de chequeo, contabilidad de los defectos y pruebas unitarias que constituirán la base para la aplicación de actividades de calidad como: revisiones de adherencia a procesos y productos, revisiones técnicas formales, revisiones de código y pruebas, estas últimas se desagregan en pruebas de liberación y de aceptación. A continuación, se describen las actividades de calidad. Revisiones de adherencia a procesos y productos se realizarán al finalizar cada fase que se establece en la metodología de desarrollo propuesta. Si en una fase se encuentra contenida más de una disciplina se ejecutará una actividad de aseguramiento de la calidad al finalizar cada una de ellas. Si por consiguiente el desarrollo del producto demora más de tres meses en una de las disciplinas pues se ejecutará una de estas actividades cada tres meses, en aras de garantizar la objetividad y avance del producto. Estas medidas se llevarán a cabo indistintamente por niveles, estos son: proyecto, entidad desarrolladora e institución. A partir de las definiciones estudiadas, se determina que el objetivo de las revisiones dentro del marco de trabajo propuesto será la evaluación de la adecuación a los procesos y productos de trabajo institucionalizados. Revisiones técnicas formales: estas actividades se proponen que se realicen a partir de las necesidades de las organizaciones. Es decir que se deben considerar para evaluar técnicamente los productos de trabajo que se definan como directrices para el desarrollo del software. Sin embargo, estudios publicados del Standish Group [30] exponen que las etapas del desarrollo de software en las cuales se introducen más defectos es en requisitos con una representación de un 50%, diseño con 30% y en código con un 20%. En la UCI se detectó en los análisis de tendencias del año 2014 que existían mayor número de defectos en los productos de trabajo correspondientes a la etapa de planificación. Teniendo en cuenta lo anterior se realizarán a la planificación con el fin de verificar el uso de las buenas prácticas a través del cronograma del proyecto y del método de estimación establecido. Los productos de trabajo que contengan los requisitos del cliente también serán objeto de esta actividad con el fin de comprobar el cumplimiento de la metodología y el uso de las buenas prácticas de la ingeniería de software. Además, serán evaluados mediante esta actividad, la arquitectura y el diseño de la base de datos en caso de tener. Pruebas de software: teniendo en cuenta lo anterior se propone como objetivo para la realización de las pruebas de software en el marco de trabajo propuesto, comprobar que el producto a desarrollar cumple con los requisitos establecidos por el cliente, teniendo en cuenta las recomendaciones de buenas prácticas propuestas por los modelos, estándares y guías más recomendados a nivel internacional. Se deberán realizar como actividades de verificación y validación. Las primeras deberán llevarse a cabo por niveles en dependencia de la organización. En el contexto de la UCI el primer nivel propuesto es
Marin Diaz, Trujillo Casañola y Buedo Hidalgo: Apuntes para gestionar actividades de calidad en proyectos… Revisiones Técnicas Formales: ✓ Listas de chequeo. ✓ Revisión documental. ✓ Entrevistas. ✓ Revisiones entre pares. ✓ Prototipos. ✓ Pruebas de concepto. Pruebas: ✓ Casos de pruebas. ✓ Listas de chequeo. ✓ Revisiones entre pares. ✓ Pruebas de aceptación. Herramientas Como herramientas para dar soporte al marco de trabajo, se propone utilizar una herramienta de gestión de proyectos que permita la planificación y seguimiento de las actividades de forma automatizada. Para la gestión documental la bibliografía consultada trata a nivel internacional varias herramientas como: EMC Documentum, el cual cuenta con una arquitectura de contenido unificada. Se basa en tecnologías orientadas en los servicios. La estabilidad y escalabilidad de Documentum permiten incorporar de manera transparente la administración de contenidos en su infraestructura de la información. Este producto está bajo licencia comercial por lo que no es factible para las empresas cubanas. Otra herramienta es, Nuxeo: es un sistema de administración de contenidos libre, basado en estándares abiertos y de escala empresarial para Windows y sistemas operativos similares a Unix. Está diseñado para usuarios que requieren un alto grado de modularidad y rendimiento escalable. Es utilizado como software de gestión documental para documentos, páginas web, registros, imágenes y desarrollo colaborativo de contenido. Otra herramienta de mayor referencia internacionalmente es el Alfresco, el cual tiene como principal característica que es 100% código abierto, lo que significa que los programadores pueden leer, modificar y redistribuir el código fuente, lo que permite que se mejore continuamente. Para la aplicación del marco de trabajo propuesto, se listan las características, que debe cumplir la herramienta de gestión documental que se utilice. Las mismas son: ✓ Software libre. ✓ Gestión del versionado de los productos. ✓ Permitir flujo de trabajo. ✓ Multiplataforma. ✓ Gestión de usuarios. Recursos Se proponen que se utilicen en dependencia de la estructura de la institución y los niveles con los que se cuenten. Coordinador de Calidad: Este rol se propone para el nivel de institución. Las principales responsabilidades son: ✓ Planear las evaluaciones e incluirlas en el Plan de Actividades de Calidad (Nivel de Institución). ✓ Asignar recursos humanos para el desarrollo de las evaluaciones. ✓ Verificar viabilidad de la evaluación enviando notificaciones a los revisores y a los revisados. ✓ Revisar el expediente de las actividades de calidad antes de archivarlos. ✓ Redactar solicitudes de mejora de procesos y productos. ✓ Realizar la evaluación periódica del desempeño de los revisores líderes. ✓ Recepcionar solicitudes de escalamiento. ✓ Enviar la notificación de escalamiento al nivel correspondiente. ✓ Aprobar los permisos solicitados por los niveles base. ✓ Realizar los Informes de Tendencias e informar a la Alta Gerencia (Nivel de institución) sobre las solicitudes de mejora, las evaluaciones de desempeño de los revisores y la tendencia de calidad. Encargado de calidad en el nivel: Este rol se propone si existe un nivel intermedio entre el equipo de proyecto y el nivel de institución (Nivel Intermedio). Las principales tareas de las que se debe encargar son: ✓ Planificar las actividades de calidad a nivel intermedio. ✓ Gestionar y asegurar todas las actividades relacionadas con el aseguramiento de la calidad en el nivel intermedio. ✓ Evaluar objetivamente procesos y productos a los proyectos del nivel intermedio.
Ingeniare. Revista chilena de ingeniería, vol. 27 Nº 2, 2019 ✓ Monitorear el cumplimiento de las acciones correctivas y el estado de los defectos resultantes de las actividades de calidad realizadas en el proyecto y al proyecto. ✓ Escalar defectos que no hayan podido resolverse a nivel de proyecto. ✓ Participar en el análisis y recolección de los datos para las tendencias. Equipo de proyecto: La definición de los roles dentro del equipo de proyecto varía en función de la metodología a utilizar, aunque existen roles comunes para muchas metodologías. A continuación, se definirán los roles y responsabilidades que intervienen en el marco de trabajo. Jefe de proyecto: ✓ Planificar las actividades de calidad del proyecto (Todos los niveles). ✓ Asignar recursos para le ejecución de las actividades de calidad en el proyecto. ✓ Participar en la elaboración de los planes de las actividades de calidad del proyecto. ✓ Realizar seguimiento a la ejecución de las actividades de calidad que se realizan en el proyecto y al proyecto. ✓ Generar y asignar acciones correctivas. ✓ Monitorear el cumplimiento de las acciones correctivas y el estado de los defectos detectados hasta su cierre. ✓ Participar en el análisis y recolección de los datos para las tendencias. ✓ Participar en las pruebas de aceptación. Encargado de calidad (administrador de calidad): ✓ Elaborar los planes de las actividades de calidad del proyecto. ✓ Participar en la ejecución de todas las actividades de calidad que se realicen en el proyecto. ✓ Guiar el diseño y ejecución de las actividades de calidad que se realicen en el proyecto. ✓ Participar en el análisis y recolección de los datos para las tendencias. ✓ Crear una cultura de calidad en el proyecto. En el caso de las pequeñas instituciones se recomienda conformar una bolsa de revisores y de expertos para afrontar la consecución de las actividades a nivel de institución.
Desarrollar actividades para detectar defectos durante el ciclo de vida de los proyectos de desarrollo de software es una práctica recomendada, sin embargo, la mayoría de las organizaciones tienden a dedicar el mayor esfuerzo en las etapas de pruebas. Las actividades de calidad como: revisiones de adherencia a procesos y productos, revisiones técnicas formales, revisiones de código y pruebas, son las más recomendadas por los expertos para detectar defectos a través de los métodos y técnicas como: revisiones entre pares, pruebas de conceptos, simulación, listas de chequeo, contabilidad de los defectos y pruebas unitarias. AGRADECIMIENTOS Le agradezco a mis tutores, a mi institución y sobre todo a la Revolución cubana por permitirme estudiar y superarme. REFERENCIAS [1] Echeverry, A., C. Cabrera, and L. Ayala, “Introducción a la calidad de software”. Scientia et Technica. Vol. 2 Nº 39, pp. 326-331. 2008. ISSN: 2344-7214, ISSN: 0122-1701. DOI: http://dx.doi. org/10.22517/23447214. [2] Senlle, A., ISO 9000-2000: calidad y excelencia: todo lo que se tiene que conocer para implantar y mantener un sistema de gestión de la calidad y avanzar por el camino de la excelencia. 2001: Gestión 2000. [3] Pressman, R.S., El proceso. Ingeniería del Software: Un Enfoque Práctico. Ojeda- Martín, R, 2010: pp. 17-36. [4] Radatz, J., A. Geraci and F. Katki, IEEE standard glossary of software engineering terminology. IEEE Std. 1990. 610121990 (121990): p. 3. [5] Romero López, Javier Álvaro. Principios de Contabilidad. México: Mc Craw-Hill, 2003. [6] Group, S., Chaos Manifesto. 2015. [7] Humphrey, Introducción al Proceso Software Personal, 1997. [8] Larman, UML y Patrones. Introducción al análisis y diseño orientado a objetos, 1999. Prentice Halll.