




























































































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
La evaluación de calidad de un producto de software aplicando estándares ISO/IEC 9126 y IRAM-ISO/IEC 14598. Se explican las características de calidad, el proceso de evaluación y la necesidad de mejorar la calidad en una organización desarrolladora de software. Se incluyen figuras y tablas para facilitar la comprensión.
Qué aprenderás
Tipo: Ejercicios
1 / 132
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!
La presente tesina es un trabajo de investigación aplicada sobre la Evaluación de Calidad de un Producto de Software. El trabajo para mejorar la calidad del software se fue fortaleciendo a medida que el uso de éste se fue integrando a la vida de las personas, ya que el software de alta calidad proporciona beneficios a la organización que lo produce y a la comunidad de usuarios finales. Además el uso de normas y estándares para lograr mayor competitividad es cada vez más habitual en las PyMEs desarrolladoras de software. El objetivo de la tesina es analizar los estándares relacionados a la calidad para los productos de software: ISO/IEC 9126 - Calidad del Producto, y para la evaluación de un producto de software: IRAM-ISO/IEC 14598 – Evaluación del Producto de Software. Realizar una evaluación de calidad sobre un producto de software concreto según los estándares mencionados, en particular evaluar las características funcionalidad y confiabilidad del producto, según las métricas definidas por estos estándares, y así detectar las debilidades del mismo para alimentar un proceso de mejora continua. Se realiza además una presentación general sobre la familia de la norma ISO/IEC 25000, y se mencionan las ventajas y desventajas de los estándares estudiados.
Evaluación, Calidad, Mejora Continua, Producto, Software, ISO/IEC 9126, IRAM-ISO/IEC 14598, ISO/IEC 25000
Se ha incursionado en la evaluación de calidad a través de un estándar aplicándolo en un caso real y sacando provecho de los resultados de esa aplicación.
Se adquirieron los conocimientos necesarios para fomentar y realizar la práctica de la evaluación de calidad de los productos de software, comprendiendo la importancia y la ventaja que supone la continua mejora de la calidad de éstos productos.
Estudio del concepto de calidad y su aplicación en productos de software.
Investigación sobre las normas de calidad ISO/IEC 9126 – Calidad del Producto e IRAM-ISO/IEC 14598 – Evaluación del Producto de Software.
Presentación de la familia de normas ISO/IEC 25000.
Realización de una evaluación de calidad sobre un producto de software concreto aplicando las normas ISO/IEC 9126 e IRAM-ISO/IEC 14598.
Utilización de los resultados de la evaluación para determinar las debilidades y fortalezas del producto evaluado, y en base a estos resultados definir los aspectos a mejorar sobre dicho producto.
Investigación detallada y aplicada de la familia de la norma ISO/IEC 25000 – SQuaRE, que gradualmente reemplaza a las normas ISO/IEC 9126 e IRAM-ISO/IEC
Tabla 8.6 – Pedidos de soportes de usuarios, por fallas en la interacción con el Adm. de Pasivos ................................................................................................................................................... 109 Tabla 8.7 – Elementos de Datos para la Métrica Int de Datos basado en los Intentos del Usuario
Capítulo 1: Introducción
CAPITULO 1.- INTRODUCCION
El trabajo para mejorar la calidad del software se fue fortaleciendo a medida que el uso del software se fue integrando a la vida de las personas. En la década de 1990, las principales corporaciones reconocieron que cada año se desperdiciaban miles de millones de dólares en software que no tenía las características ni la funcionalidad que se habían prometido [R. Pressman, [A]]. Es decir no cumplían con las expectativas del cliente. El motivo por el que no se llegaba a satisfacer dichas expectativas está relacionado con errores en la obtención de los requerimientos y errores en la implementación de los mismos, entre otros. Asociado a la satisfacción de las expectativas se introduce el concepto de calidad. El estándar internacional ISO 8402 [X] define a la Calidad como ”La totalidad de características de una entidad que influyen en la capacidad para satisfacer necesidades explícitas o implícitas”. El software de alta calidad proporciona beneficios a la organización que lo produce y a la comunidad de usuarios finales. La organización que elabora el software obtiene valor agregado porque el software de alta calidad requiere un menor esfuerzo de mantenimiento, menos errores que corregir y poca asistencia al cliente. Esto permite que los ingenieros de software dediquen más tiempo a crear nuevas aplicaciones y menos a repetir trabajos mal hechos. La comunidad de usuarios obtiene valor agregado porque la aplicación provee una capacidad útil en forma tal que agiliza algún proceso de negocios. El resultado final es 1) mayores utilidades por el producto de software, 2) más rentabilidad cuando una aplicación apoya un proceso de negocios y 3) mejor disponibilidad de información, que es crucial para el negocio [R. Pressman, [A]]. El uso de normas y estándares para lograr mayor competitividad es cada vez más habitual en las PyMEs desarrolladoras de software, ya sea para la obtención de una certificación o simplemente lograr una mejora en el desarrollo del software a través del uso de buenas prácticas. La incorporación de mejores prácticas en organizaciones desarrolladoras de software, tanto a nivel de realización de un producto, definición del proceso, o gestión, dejó de ser una aspiración para ser una necesidad de modo de aumentar la competitividad de la misma con el objetivo de lograr una mejora a través del uso de ellas [Pesado, Esponda, Pasini, Boracchia, Díaz, Estevez, [B]]. Entre las normas asociadas a la calidad del producto de software se encuentra la norma ISO/IEC 9126 - Calidad del Producto, compuesta por cuatro partes. La primera, el modelo, define que la calidad del producto se basa en la medición de seis características relacionadas a la calidad interna y externa, y cuatro a la calidad en el uso y el contexto en el cual es utilizado el software. Las partes 2, 3 y 4 de la norma, definen las métricas que se deben utilizar para evaluar cada uno de los atributos del producto que conforman las características. El proceso de evaluación del producto se debe llevar a cabo según los requisitos de IRAM-ISO/IEC 14598 - Evaluación del Producto de Software. Esta presenta seis partes: la primera describe el proceso de evaluación, las partes 2 y 6 presentan la gestión de las evaluaciones y las partes 3, 4 y 5 proporcionan las directrices según el punto de vista desde el cual se quiera realizar la evaluación: desde el punto de vista de los desarrolladores, de los compradores y de los evaluadores [Pesado, Esponda, Pasini, Boracchia, Díaz, Estevez, [B]].
Capítulo 1: Introducción
El objetivo de la tesina es: Analizar los estándares relacionados a la calidad para los productos de software: ISO/IEC 9126 - Calidad del Producto, y para la evaluación de un producto de software: IRAM-ISO/IEC 14598 – Evaluación del Producto de Software. Realizar una evaluación de calidad sobre un producto de software concreto según los estándares mencionados, en particular evaluar las características funcionalidad y confiabilidad del producto, según las métricas definidas por estos estándares, y así detectar las debilidades del mismo para alimentar un proceso de mejora continua.
En el Capítulo 2.- Conceptos de Calidad en el Software se presentan un conjunto de definiciones de calidad, se describen la norma ISO/IEC 9126 - Calidad del Producto y la norma IRAM-ISO/IEC 14598 – Evaluación del Producto de Software. La descripción del producto en estudio se describirá en el Capítulo 3.- Descripción del Producto a Evaluar, junto con su dimensionamiento y el de la organización que lo desarrolla y mantiene (proveedor). Con la descripción de los estándares que se usarán y la descripción del producto, inicia el proceso de evaluación, que abarca desde los capítulos 4 al 9, respetando la estructura que propone la norma IRAM-ISO/IEC 14598 – Evaluación del Producto de Software para éste proceso. En el Capítulo 4.- Requerimientos de la Evaluación, se especifican los requerimientos de la evaluación de calidad sobre el producto. El propósito de la creación de los requerimientos de la evaluación es definir los objetivos de la misma, y la cobertura de la evaluación, es decir, el comportamiento del producto y las características de calidad del producto que se someten a evaluación, en este caso la funcionalidad y la confiabilidad. Entre los requerimientos de la evaluación también se definen el modelo de calidad a ser utilizado, el grado de rigurosidad de la misma, y la confidencialidad de los elementos de la evaluación. En el capítulo siguiente, Capítulo 5. - Especificación de la Evaluación, se define el alcance de la evaluación, y seleccionaran las métricas y criterios de evaluación de las mismas, con el fin de satisfacer los objetivos de la evaluación. Especificada la evaluación, comienza el diseño de ésta. Este paso del proceso de evaluación está subdividido en dos capítulos. Por un lado el Capítulo 6.- Módulo de Evaluación define los métodos de evaluación aplicables para evaluar la calidad del producto de software, el procedimiento básico de evaluación y el formato para informar las mediciones resultantes de la aplicación de los métodos. Luego, el Capítulo 7 .- Plan de Evaluación es el culmen del diseño de la evaluación. En él se describen los métodos, herramientas y la organización de las acciones del evaluador. El Capítulo 8.- Ejecución de la Evaluación presentará los resultados generales de la ejecución del plan de evaluación, la descripción detallada y los registros de las pruebas realizadas se encuentran en los Apéndices A – Planes de Prueba y B – Evidencia de Ejecución de las Pruebas que se presentan solo en formato digital debido al alto volumen de la información. Los resultados y las conclusiones de la evaluación se describen en el Capítulo 9.- Reporte de Evaluación. En el Capítulo 10.- Conclusión se presenta la conclusión final del presente trabajo.
Capítulo 2: Conceptos de Calidad en el Software
Figura 2.1 – Calidad realizada, programada, y necesaria
El trabajo para mejorar la calidad del software comenzó luego de que éste empezó a integrarse cada vez más en la vida de las personas. En la década de 1990, las principales corporaciones reconocieron que cada año se desperdiciaban miles de millones de dólares en software que no tenía las características ni la funcionalidad que se habían prometido. La importancia de la calidad en el software radica en lograr un producto útil. Un producto útil entrega contenido, funciones y características que el usuario final desea; sin embargo, de igual importancia es que entrega estos activos en forma confiable y libre de errores. Un producto útil siempre satisface los requerimientos establecidos en forma explícita por los participantes. Además, satisface el conjunto de requerimientos implícitamente definidos (por ejemplo, la facilidad de uso) con los que se espera que cuente el software de alta calidad [R. Pressman, [A]]. En [Antonelli Leandro, [D]] se menciona que “Los requerimientos son importantes en el desarrollo del software puesto que determinan la calidad” y se cita que “Fallamos más a menudo porque resolvemos el problema incorrecto, que porque obtenemos una solución inadecuada del problema correcto”. El desarrollo de artefactos de software con niveles aceptables de calidad se presenta como una necesidad que, cada vez más, debe ser tenida en cuenta tanto por las empresas generadoras de sistemas de información como por los clientes y usuarios de los mismos. La competitividad del mercado mundial de la primera década del siglo XXI, indica que producir sin la correspondiente calidad asociada redunda en proyectos destinados, seguramente, al fracaso. La calidad se presenta “por comparación” entre productos desarrollados y su especificación [Pesado, Bertone, Pasini, Esponda, Martorelli, [E]]. El correcto funcionamiento del software es indispensable para el éxito de los negocios e incluso para la seguridad humana, de acuerdo donde el mismo se encuentre involucrado, por tanto se vuelve importante la realización de una evaluación de calidad sobre el producto de software. Esta evaluación se lleva a cabo definiendo características de calidad del producto de acuerdo al propósito de uso del mismo. En lo que a producto de software respecta, la norma IRAM-ISO/IEC 9126-1 – Modelo de Calidad toma la definición de calidad de la norma ISO 8402 [X] quien la define como “La totalidad de características de una entidad que influyen en la capacidad para satisfacer necesidades explícitas o implícitas”, y aclara que para la norma IRAM- ISO/IEC 14598 – Evaluación del Producto de Software la entidad es un producto de software. El software de alta calidad proporciona beneficios a la organización que lo produce y a la comunidad de usuarios finales. La organización que elabora el software obtiene valor agregado porque el software de alta calidad requiere un menor esfuerzo de mantenimiento, menos errores que corregir y poca asistencia al cliente. Esto permite que los ingenieros de software dediquen más tiempo a crear nuevas aplicaciones y menos a repetir trabajos mal hechos. La comunidad de usuarios obtiene valor agregado porque la aplicación provee una capacidad útil en forma tal que agiliza algún proceso de negocios. El resultado final es 1) mayores utilidades por el producto de software, 2) más rentabilidad cuando una aplicación apoya un
Capítulo 2: Conceptos de Calidad en el Software
proceso de negocios y 3) mejor disponibilidad de información, que es crucial para el negocio [R. Pressman, [A]]. Un producto de software con deficiente calidad provocará principalmente desconfianza y malestar en el cliente y/o usuario, traduciéndose esto en costos para la empresa que desarrolló el producto, dado que tendrá que invertir tiempo en re-trabajo para solucionar los inconvenientes del software y puede hasta llegar a perder clientes. Además, según el contexto de uso del producto, los riesgos de inconvenientes en el mismo pueden llegar a ser graves e incluso catastróficos. Por otro lado producir software de calidad conlleva a beneficios tanto para el usuario como para el proveedor, dado que el usuario se verá conforme y confiado en el producto, ya que a mayor nivel de calidad será mayor el nivel de confianza del usuario en éste, y el proveedor irá afianzando su expertise en el desarrollo, hará crecer el producto mejorándolo continuamente y se verá beneficiado económicamente porque la inversión en su producto será no tanto en re-trabajo para solucionar inconvenientes (los cuales siempre existirán) sino para expandir el producto y su mercado.
El producto es un bien tangible que es el resultado de un proceso. Aunque el software tiene aspectos intangibles, un producto software es sin embargo un bien en sí mismo e incluye sus documentos asociados [Hatton, [F]]. El proceso se define como el conjunto de actividades, métodos, prácticas y transformaciones usadas para desarrollar y mantener los productos de software y sus productos de trabajo asociados. La calidad del Software se divide en la calidad del producto obtenido y la calidad del proceso de desarrollo. Las mismas son dependientes ya que para lograr calidad en un producto debe haber calidad en su proceso de desarrollo. Las metas que se establezcan para la calidad del producto van a determinar los objetivos del proceso de desarrollo, ya que la calidad del primero va a depender, entre otros aspectos, de la calidad del mencionado proceso. Los requerimientos de calidad más significativos del proceso de software son: Que produzca los resultados esperados Que los resultados estén basados en una correcta definición. Que los resultados sean mejorados en función de los objetivos de negocio.
Primero, se presentan ciertos conceptos relacionados con las métricas, tomados de la norma IRAM-ISO/IEC 14598-1 – Descripción General: Un atributo se define como una propiedad física o abstracta medible perteneciente a una entidad (ésta puede ser, por ejemplo, el producto de software, o alguno de sus componentes o artefactos). Los atributos pueden ser internos cuando describen a la entidad basada en sí misma, sin influencia con el entorno (por ejemplo el tamaño en líneas de código), en cambio, un atributo externo es una propiedad de la entidad en relación a su entorno (por ejemplo la mantenibilidad), esto incluye propiedades medibles en ejecución (por ejemplo el tiempo de respuesta). Finalmente, un atributo es de calidad en uso cuando refiere a una propiedad de la entidad relacionada a las características de eficacia, productividad, satisfacción o seguridad en un contexto de uso especificado. Los atributos se miden por medio de métricas, una métrica es un método de medición y su escala. La medición se define como el uso de un procedimiento para asignar un valor (puede ser un número o una categoría) de una escala a un atributo de una entidad, y la escala es un conjunto de valores con propiedades definidas, es el universo donde se encuentra el conjunto de posibles resultados de la métrica. La medida se define como un número o categoría asignado a un atributo de una entidad por medio de una medición.
Capítulo 2: Conceptos de Calidad en el Software
La Calidad Interna se define como la totalidad de los atributos de un producto que determinan su habilidad para satisfacer los requerimientos y necesidades especificados explícita e implícitamente, en un determinado contexto de uso. Se define/mide/logra cuando el software es implementado, utilizando métricas internas. La Calidad Externa se define como el grado en que un producto satisface los requerimientos y necesidades especificados explícita e implícitamente en un determinado contexto de uso. Se mide cuando el software es ejecutado, en un ambiente simulado, utilizando métricas externas. La Calidad En Uso es la capacidad del producto de software de permitir que los usuarios logren sus objetivos con eficacia, productividad, satisfacción y seguridad, en los contextos de uso correspondientes. Esta calidad es el objetivo general de calidad desde la perspectiva del usuario. En cuanto a los requerimientos de las diferentes calidades la norma IRAM-ISO/IEC 9126- 1 – Modelo de Calidad define a los requerimientos de Calidad Interna, como los que se utilizan para especificar las propiedades de los productos intermedios (modelos estáticos, dinámicos, código fuente, documentación, etc.), y pueden ser usados como objetivos de validación en las etapas del desarrollo. También pueden ser usados para definir estrategias de desarrollo y criterios de evaluación durante el mismo. Estos requerimientos deberán explicitarse cuantitativamente utilizando métricas internas. Por otro lado están los requerimientos de Calidad Externa, que especifican el nivel requerido de dicha calidad. Entre ellos se incluyen requerimientos derivados de las necesidades de calidad del usuario, incluyendo requerimientos de Calidad en Uso. Cuando los requerimientos de calidad externa son usados como objetivo de las validaciones de varias etapas del desarrollo, deberán indicarse cuantitativamente en la especificación de requerimientos de calidad, utilizando métricas externas, y deben transformarse en requerimientos de calidad internos, y utilizarse como criterios cuando se evalúa el producto. El propósito principal de las métricas internas es que se logre el nivel requerido de calidad externa y de calidad en uso.
La norma de calidad ISO/IEC 9126 – Calidad del Producto, cuyo nombre completo es ISO/IEC 9126 – Ingeniería de Software. Calidad del Producto, fue iniciada con su primera versión en 1991 y actualizada por última vez, hasta el momento, en 2004. Esta norma define un modelo de calidad que provee la base para especificar requerimientos de calidad y evaluar la misma, junto con las métricas para realizar las mediciones durante la evaluación; Por otro lado, la norma IRAM-ISO/IEC 14598 – Evaluación del Producto de Software, cuyo nombre completo es IRAM- ISO/IEC 14598 – Tecnología de la Información. Ingeniería de Software. Evaluación del Producto de Software, fue iniciada con su primera versión en 1999 y actualizada por última vez, hasta el momento, en 2001. Esta norma define un proceso de evaluación de la calidad, proveyendo de requisitos y guías para la evaluación del producto de software. El uso de normas y estándares para lograr mayor competitividad es cada vez más habitual en las PyMEs desarrolladoras de software, ya sea para la obtención de una certificación o simplemente lograr una mejora en el desarrollo del software a través del uso de buenas prácticas. La incorporación de mejores prácticas en organizaciones desarrolladoras de software, tanto a nivel de realización de un producto, definición del proceso, o gestión, dejó de ser una aspiración para ser una necesidad de modo de aumentar la competitividad de la misma con el objetivo de lograr una mejora a través del uso de ellas [Pesado, Esponda, Pasini, Boracchia, Díaz, Estevez, [B]].
En la norma IRAM-ISO/IEC 9126-1 – Modelo de Calidad se explica que la ISO (International Organization for Standarization) y la IEC (International Electrotechnical Commission) forman el sistema especializado para la normalización y estandarización a nivel
Capítulo 2: Conceptos de Calidad en el Software
mundial. Los organismos nacionales miembros de ISO e IEC participan en el desarrollo de las normas internacionales a través de comités técnicos especializados por la organización respectiva, para hacer frente a campos particulares de la actividad técnica. La IRAM es el Instituto Argentino de Normalización y Certificación, representante argentino de ISO e IEC entre otros. La norma ISO/IEC 9126 – Calidad del Producto consta de cuatro partes, pero IRAM solo tradujo la primera, aunque igualmente es el representante en nuestro país del resto de las partes. Esta norma define características de calidad y directrices para su uso, definiendo además la especificación de un modelo de calidad y ejemplificando métricas. Las partes de la norma se describen en la Tabla 2.1:
IRAM-ISO/IEC 9126-1: Modelo de Calidad [L]
Describe un modelo de calidad para el producto de software. Un modelo de calidad es un conjunto de características y sus relaciones, que proveen la base para especificar requerimientos de calidad y evaluar la misma. Su nombre completo es IRAM-ISO/IEC 9126-1. Tecnología de la Información. Ingeniería de Software. Calidad del Producto. Parte 1
Provee las métricas de calidad en uso para medir atributos de las características de calidad en uso dadas en la parte 9126-1 y explica cómo aplicarlas. Su nombre completo es IRAM-ISO/IEC 9126-4. Ingeniería de Software. Calidad del Producto. Parte 4 – Métricas de Calidad en Uso. Tabla 2.1 – Partes de la Norma ISO/IEC 9126
La norma IRAM-ISO/IEC 14598 - Evaluación del Producto de Software define métodos para la medición y evaluación del producto de software. Brinda las pautas para realizar el proceso de evaluación teniendo en consideración los posibles actores que se pueden tener como son los desarrolladores, los evaluadores, o compradores, aplicando lo especificado en la norma ISO/IEC 9126 – Calidad del Producto. Proporciona una visión general sobre el proceso de evaluación de un producto de software, así como orientación en la evaluación y sus requisitos. En éste caso IRAM tradujo todas las partes de la norma, las cuales se describen en la Tabla 2.2:
IRAM-ISO/IEC 14598-1: Descripción General [P]
Provee una visión general de las otras cinco partes y explica la relación entre la evaluación del producto de software y el modelo de calidad definido en la norma IRAM-ISO/IEC 9126-1 – Modelo de Calidad. Su nombre completo es IRAM-ISO/IEC 14598-1. Tecnología de la información. Ingeniería de Software. Evaluación del Producto de Software. Parte 1 - Descripción General. IRAM-ISO/IEC 14598-2: Planificación y Gestión [Q]
Contiene requisitos y guías para las funciones de soporte a la evaluación, tales como la planificación y gestión de la evaluación del producto del software.