ACTIVIDAD 1: INVESTIGACIÓN Y CUADRO COMPARATIVO DE NORMAS Y MODELOS REFERENTES A LA CALIDAD DE SOFTWARE ESNEIDER GARCÍA MENESES UNIVERSIDAD DE SANTANDER CAMPUS VIRTUAL MAESTRÍA EN GESTIÓN DE LA TECNOLOGÍA EDUCATIVA SANTIAGO DE CALI 2016 1 ACTIVIDAD 1: INVESTIGACIÓN Y CUADRO COMPARATIVO DE NORMAS Y MODELOS REFERENTES A LA CALIDAD DE SOFTWARE ESNEIDER GARCÍA MENESES Módulo Evaluación de Aprendizajes Mediadas por Profesora LINA MARIE MEJÍA PAEZ Magíster en Pedagogía UNIVERSIDAD DE SANTANDER CAMPUS VIRTUAL MAESTRÍA EN GESTIÓN DE LA TECNOLOGÍA EDUCATIVA SANTIAGO DE CALI 2016 2 ÍNDICE Pág. 1. ACTIVIDAD 1.1: INVESTIGACIÓN 4 2. SOLUCIÓN DE LA ACTIVIDAD 1.1 5 2.1. CALIDAD DE SOFTWARE 5 2.2. ORGANISMOS DE ESTANDARIZACIÓN 7 2.2.1. ISO: Organización Internacional de Normalización 7 2.2.2. IEEE: Instituto de Ingeniería Eléctrica y Electrónica 8 2.2.3. IEC: Comisión Electrotécnica Internacional 8 2.2.4. ANSI: Instituto Nacional Estadounidense de Estándares 8 2.2.5. ICONTEC: Instituto Colombiano de Normas Técnicas y Certificación 9 2.2.6. ITU: Unión Internacional de Telecomunicaciones 9 2.3. NORMAS REFERENTES A LA CALIDAD DEL SOFTWARE 9 3. ACTIVIDAD 1.2: CUADRO COMPARATIVO 3.1. 12 SOLUCIÓN DE LA ACTIVIDAD 1.1 12 3.1.1. CALIDAD DE SOFTWARE 12 4. CONCLUSIONES 15 REFERENCIAS BIBLIOGRÁFICAS 16 3 1. ACTIVIDAD 1.1: INVESTIGACIÓN A partir del material propuesto como documento de referencia y complementario en el capítulo I del LEM, analice la información y elabore una investigación. Describa las organizaciones que han formulado normas y modelos referentes a la calidad de software tanto para los procesos de desarrollo como para el producto final, indicando la forma de trabajo establecida (comités, grupos de trabajo, etc). Se entregará vía tablero de anotaciones y bajo la siguiente nomenclatura que definirá claramente el contenido de la información: Nombre_Apellido_Investigación_Actividad1.1.doc 4 2. SOLUCIÓN DE LA ACTIVIDAD 1.1 2.1. CALIDAD DE SOFTWARE En la industria del software en el momento de elegir un producto sobre aplicaciones informáticas la calidad del software se ha convertido en un factor muy importante que incide en los clientes a la hora de adquirirlo. La IEEE (1990) en su norma IEEE.Std.610-1990 define la calidad del software como el grado con el que un sistema, componente o proceso cumple con los requisitos especificados y las necesidades o expectativas del cliente o usuario. Según Mollineda , R., & Vos, T. (2003) en el artículo de la revista Actualidad TIC define el concepto de calidad de software como “un conjunto de procesos interrelacionados de ingeniería y gestión del software que cooperan dentro del ciclo de vida de un software para construir un producto de software de calidad”. 5 Figura 1. Esquema de la calidad en tecnología informática En tecnología informática los dispositivos electrónicos lo conforman dos grandes componentes, el hardware que hace referencia a la tecnología dura y el software que es la parte intangible la cual se denomina tecnología blanda. Para esta investigación solo se abordará la calidad en los procesos y en los productos finales de software. En la figura 1 se muestra un esquema que representa el concepto de la calidad sobre las aplicaciones tecnológicas y sus normas. Para evaluar la calidad en los niveles de proceso existen normas que dan especificaciones sobre la gestión de la calidad y el aseguramiento de la calidad en cada uno de los niveles de proceso de desarrollo del software, para ello se presentan lineamientos en la aplicación por parte de las empresas que diseñan y construyen programas en cuanto al desarrollo, suministro y mantenimiento del software. En el producto final del software hay normas que definen la evaluación del software durante cada una de las etapas del ciclo de vida del producto, desde que inicia la idea de desarrollar el software hasta que se termina con la vida útil del mismo. En cuanto a la calidad de software y al aseguramiento de la calidad de software en Colombia se están revisando las normas internacionales para apropiarlas y adaptarlas como Normas Técnicas Colombianas ICONTEC, para garantizar los intereses del sector de la producción de software y así tener retroalimentación de los procesos de evaluación de la calidad del producto para conocer la satisfacción del cliente como un indicador que parametriza el ciclo de vida de la aplicación del software. 6 En la figura 2 se listan algunos de los organismos de estandarización que han formulado normas y modelos referentes a la gestión de calidad. ORGANISMOS DE ESTANDARIZACIÓN igura 1. Pruebas de evaluación masivas en Colombia ISO ANSI IEEE ICONTEC INTERNATIONAL ORGANIZATION FOR STANDARDIZATION AMERICAN NATIONALINSTITUTE STANDARDS OF INSTITUTE ELECTRICAL AND ELECTRONICS ENGINEERS INSTITUTO COLOMBIANO DE NORMAS TÉCNICAS Y CERTIFICA IEC ITU AMN COPANT INTERNATIONAL ELECTROTECHNICAL COMMISSION INTERNATIONAL TELECOMMUNICATIONS ASOCIACIÓN UNIÓN MERCOSUR COMISIÓN DE NORMALIZACIÓN PANAMERICANA DE NORMAS TÉCNICAS AENOR AFNOR APEC CENELEC OCIACIÓN ESPAÑOLA DE NORMALIZACIÓN ASSOCIATION Y CERTIFICACIÓN FRANÇAISE DE NORMALISATION ASIA PACIFICEUROPEAN ECONOMICCOMMITTEE COOPERATION FOR ELECTROTECHNICAL STANDARDI CENT BSI COMMITTEE FOR STANDARDIZATION BRITISH STANDARD EUROPEAN INSTITUTION Figura 2. Organismos de estandarización 2.2. ORGANISMOS DE ESTANDARIZACIÓN En el mundo existen muchas organizaciones que se dedican a la estandarización de normas para la evaluación de la gestión de la calidad y del producto en su etapa terminada, a continuación describiremos algunas de las organizaciones más conocidas en Colombia. 2.2.1. ISO: Organización Internacional de Normalización Es una organización para la creación de estándares internacionales compuesta por diversas organizaciones nacionales de estandarización fue fundada el 23 de febrero de 1947. Su sede se encuentra en Ginebra - Suiza, este organismo se encarga de promover el desarrollo de normas internacionales de fabricación en productos y servicios en el comercio y comunicación 7 exceptuando a las empresas eléctricas y electrónicas, ella busca estandarizar las normas de productos y seguridad para las organizaciones tanto públicas como privadas a nivel internacional. 2.2.2. IEEE: Instituto de Ingeniería Eléctrica y Electrónica Es una asociación mundial de ingenieros dedicada a la estandarización y el desarrollo en áreas técnicas fue fundada en 1963. Su sede se encuentra en Nueva York – EEUU, este organismo se dedica a la estandarización y el desarrollo en áreas técnicas y según la IEEE se encarga de promover la creatividad, el desarrollo y la integración, compartir y aplicar los avances en las tecnologías de la información, electrónica y ciencias en general para beneficio de la humanidad y de los mismos profesionales. 2.2.3. IEC: Comisión Electrotécnica Internacional Es una organización de normalización en los campos: eléctrico, electrónico y tecnologías relacionadas fue fundada en 1906. Este organismo se encarga de promover entre sus miembros la cooperación internacional en todas las áreas de la normalización electrotécnica y uno de sus objetivos es asegurar e implementar la calidad de producto y servicios mediante sus normas las cuales normalizan la amplia esfera de la electrotécnica, desde el área de potencia eléctrica hasta las áreas de electrónica, comunicaciones, conversión de la energía nuclear y la transformación de la energía solar o eólica en energía eléctrica. 2.2.4. ANSI: Instituto Nacional Estadounidense de Estándares Es un organismo que supervisa el desarrollo de estándares para productos, servicios, procesos y sistemas en los Estados Unidos, fue fundada en 1966. Su sede se encuentra en Washington D.C – EEUU, este organismo se encarga de coordinar los estándares del país estadounidense con estándares internacionales, de tal modo que los productos de dicho país puedan usarse en todo el 8 mundo, también acredita a organizaciones que realizan certificaciones de productos o de personal de acuerdo con los requisitos definidos en los estándares internacionales. 2.2.5. ICONTEC: Instituto Colombiano de Normas Técnicas y Certificación Es un organismo nacional de normalización de Colombia que se destaca por la reproducción de normas técnicas y la certificación de normas de calidad para empresas y actividades profesionales, fue fundada el 10 de mayo de 1963. Este organismo trabaja para fomentar la normalización, la certificación, la metrología y la gestión de la calidad en Colombia. Las normas técnicas desarrolladas por ICONTEC son el resultado consolidado de investigaciones científicas y tecnológicas que recogen experiencias nacionales e internacionales con el fin de alcanzar una economía óptima de conjunto, el mejoramiento de la calidad y también facilitar las relaciones cliente-proveedor, en el ámbito empresarial nacional o internacional. 2.2.6. ITU: Unión Internacional de Telecomunicaciones Es un organismo especializado en telecomunicaciones de la Organización de las Naciones Unidas (ONU), encargado de regular las telecomunicaciones a nivel internacional entre las distintas administraciones y empresas operadoras, fue fundada el 17 de mayo de 1865. Su sede se encuentra en Ginebra – Suiza, este organismo se encarga de desarrollar estándares que facilitan la interconexión eficaz de las infraestructuras de comunicación nacionales con las redes globales, permitiendo un perfecto intercambio de información y uno de sus objetivos es trabajar para integrar nuevas tecnologías en la red de telecomunicaciones global, para fomentar el desarrollo de nuevas aplicaciones tales como Internet, el correo electrónico y los servicios multimedia. 2.3. NORMAS REFERENTES A LA CALIDAD DEL SOFTWARE 9 Con el objetivo de construir un producto de software de calidad la aplicación de software debe realizar el ciclo de vida de un software, el cual es el período de tiempo que inicia con la idea de un software y que termina con la vida útil del mismo. En el transcurso de este tiempo existen un conjunto de etapas o procesos denominados procesos del ciclo de vida. En la figura 3 se observan las etapas del ciclo de vida de la gestión de la configuración del software. Figura 3. Etapas del Ciclo de vida del Software Para cada una de las etapas del ciclo de vida del software existen una estandarización de normas a tener en cuenta, a continuación en la figura 4 se describen algunas normas para cada fase. 10 Figura 4. Estándares de las Etapas del Ciclo de vida del Software En el año 2001aparecen dos estándares, uno que hace referencia a la calidad del software la ISO/IEC 9126 y el estándar para la evaluación de productos software que es la ISO/IEC 14598. En la figura 4 se ilustra la clasificación de los estándares de la Norma ISO referentes al aseguramiento de la calidad en la gestión interna y en la gestión externa. 11 Figura 5. Estándares de la Norma ISO en la calidad del Software 3. ACTIVIDAD 1.2: CUADRO COMPARATIVO 12 A partir del material propuesto como documento de referencia y complementario igualmente del capítulo I, analice la información y elabore un cuadro comparativo. Donde muestre las principales diferencias en cuanto a las normas y/o modelos que se tienen para la calidad en los procesos de desarrollo como para el producto final. Se entregará vía tablero de anotaciones y bajo la siguiente nomenclatura que definirá claramente el contenido de la información: Nombre_Apellido_cuadrocomparativo_Actividad.1.2.doc 3.1. SOLUCIÓN DE LA ACTIVIDAD 1.2 3.1.1. CALIDAD DE SOFTWARE En la tabla 1 se describen las principales diferencias en cuanto a las normas y/o modelos que se tienen para la calidad en los procesos de desarrollo como para el producto final, para ello se hace un cuadro comparativo sobre los modelos de cascada, espiral, incremental y construcción de prototipos en donde se hace una comparación de acuerdo a sus procesos, fases, características diagramas, ventajas y desventajas que se presentan en cada uno de los modelos anteriormente mencionados. CUADRO COMPARATIVO DE LOS MODELOS DE PROCESOS DE SOFTWARE MODELOS CASCADA ESPIRAL INCREMENTAL CONSTRUCCIÓN DE PROTOTIPOS 13 PROCESO Secuencia de una serie de fases 1.Análisis y definición de requerimiento FAS E S 2.Diseño del Sistema y del Software 3.Implementación y prueba del sistema 1.Planificación y definición de objetivos Módulos y en cada uno se va incrementando funcionalidades No es secuencial, construcción de simulaciones 1.Definir esbozo de requerimientos 1.Análisis previo de los requisitos tanto del sistema como del 2.Asignar requerimientos cliente 2.Evaluación y a los incrementos reducción de riesgos 3.Diseñar la arquitectura 2.Arquitectura del sistema D I AG R A M AS CAR AC T E R I S TI C AS 3.Ingeniería, desarrollo y del sistema 3.Diseño del software validación 4.Integración y prueba 4.Desarrollar incrementos 4.Diseño rápido de un del sistema 4.Evaluación por el del sistema prototipo Es el modelo que más Presenta la definición Los ciclos se repiten las Incluye un elemento que se utiliza de los objetivos de veces que sean los otros modelos no calidad y análisis de necesarias para obtener tienen, que consiste El proceso de riesgo un producto completo diseñar un prototipo desarrollo de software inicial que se mostrará al es una sucesión de Si la última fase la Los usuarios disponen etapas que producen evaluación por el antes el software aunque cliente para que evalúe el trabajo realizado. productos intermedios cliente es afirmativa el este no esté completo, modelo continua con por lo que los estos El prototipo es una Se deben desarrollar el ciclo de vida pueden sugerir mejoras versión reducida del todas las fases para programa completo que que el proyecto tenga Hay un análisis y Cuando se detecta un se muestra al cliente para éxito propuestas de posibles error grave solo se saber si es necesario Se representa en Se representa en forma Se representa de forma Se representan los cascada de forma de espiral, la cual va escalonada cada una de aspectos del software lineal secuencial de de adentro hacia afuera las secuencias lineales que serán visibles para el una fase a otra. usuario/cliente enfoques de entrada y formatos de MODELOS D E S VE N T V E N TAJ A AJ AS S Etapas ciclo de vida CASCADA Es el modelo más sencillo de utilizar Se facilita la gestión del desarrollo Es con de Se compatible coloca en duda su eficacia dado el alto número de inconvenientes que presenta ESPIRAL El análisis de riesgos permite hacernos una idea detallada de cuáles son los errores que tiene, o podría Su utilización en pequeños sistemas, genera mucho tiempo en el desarrollo del sistema INCREMENTAL Es un modelo Completamente interactivo Con cada incremento hay una entrega de un Los módulos son parciales y no representan En ocasiones los incrementos deben ser CONSTRUCCIÓN DE PROTOTIPOS Son una herramienta muy eficaz para imaginar el software completo de una forma rápida y sencilla La rapidez con la que se diseñan y construyen los prototipos pueden llevar a errores que no sean detectados en la fase de Tabla 1: Cuadro comparativo sobre los modelos de procesos de Software CONCLUSIONES 14 1. Para construir un producto de software de calidad se debe realizar cada una de las etapas que conforman el ciclo de vida de un software. 2. Es importante la retroalimentación de los clientes o usuarios en la evaluación de las aplicaciones de software. 3. Las normas y estándares permiten evaluar la calidad de un producto tanto en su etapa de proceso como en la etapa final del producto. 4. El modelo en espiral permite realizar un análisis de riesgos que nos da una idea detallada de cuáles son los errores que tiene o podría tener la aplicación del programa durante su funcionamiento. 15 REFERENCIAS BIBLIOGRÁFICAS 1. Libro Electrónico Multimedial: Evaluación de aprendizajes, Mediados por TIC, Capítulo 1: Evaluación para la Educación. 2. Calidad y Testeo del Software. Actualidad TIC. Universidad Politécnica de Valencia. p (12-16). Mollineda , R., & Vos, T. (2003). 3. IEEE 610-1990. Instituto de Ingenieros Eléctricos y Electrónicos. (IEEE Computer Dictionary. Software Engineering Terms. 1990) 4. Rey, A. Evaluación de la Calidad de la Tecnología Educativa. Capítulo I. Calidad y Estándares: Universidad de Santander. Disponible en: http://aulavirtual.eaie.cvudes.edu.co/publico/lems/L.000.008.MG/librov2.htmlInternacion ales. 5. https://es.wikipedia.org/wiki/Institute_of_Electrical_and_Electronics_Engineers 6. https://es.wikipedia.org/wiki/British_Standards_Institution 16