lunes, 20 de julio de 2009

CALIDAD DEL SOFTWARE


CALIDAD DEL SOFTWARE

Ana María Mercedez Maigua Soliz
Facultad de Ciencias y Tecnología, Ingeniería Informática,
Universidad Autónoma Juan Misael Saracho
Tarija-Bolivia
ana_airam_abr@hotmail.com

Resumen
Este artículo describe la investigación de la Calidad del Software.
La ingeniería del Software es una disciplina que integra procesos, métodos y herramientas para el desarrollo de software de computadora, la calidad es la base de todo ello. Dado al mayor crecimiento que están experimentando la sociedad, las empresas, el incremento en la competencia, es necesario que las empresas, organizaciones se esfuercen por ofrecer un mejor producto.
La calidad del producto no solo se mide al terminarlo. La complejidad de problemas que buscan soluciones en el software ha aumentado considerablemente.
Las organizaciones buscan normas, estándares o modelos que ayuden a conseguir su meta de calidad, ya que estas desean entregar un software confiable, a tiempo, que cumpla con las expectativas del cliente. Además se debe tomar en cuenta las consecuencias que podrían ocurrir por un defecto en el producto.
A través de este artículo se detallan diferentes conceptos que son necesarios conocer a la hora de introducirse en el tema. En relación al tema se expone la calidad de software, los factores que determinan la calidad, control, la gestión de calidad, aseguramiento, estándares, entre otros elementos a conocer.
Palabras clave
Informática, calidad, calidad de software, gestión de calidad, aseguramiento de calidad, control de calidad.

1. INTRODUCCION
Nuestro entorno cada vez más globalizado continua demandando cambios. La velocidad exponencial con que nacen, compiten y mueren nuestras ideas, nos lleva a plantearnos la necesidad de gestionar las organizaciones de forma muy distinta a como históricamente lo hacíamos hace muy poco tiempo. Consecuencia de lo anterior es que se reconoce la necesidad de lograr que el personal que conforma a las organizaciones, acepte invertir todo su talento en la organización, con un alto nivel de participación y requiriendo de la alta dirección correspondencia hacia ese esfuerzo. En esta línea han surgido una serie de modelos de gestión que reconocen el valor del conocimiento y pretenden promoverlo, estructurarlo y hacerlo operativo o valido para las organizaciones y la sociedad. [1]
Todas las metodologías y herramientas tienen un único fin producir software de gran calidad. [2]. Uno de los problemas que se afrontan actualmente en la esfera de la computación es la calidad del software. Desde la década del 70, este tema ha sido motivo de preocupación para especialistas, ingenieros, investigadores y comercializadores de software, los cuales han realizado gran cantidad de investigaciones al respecto con dos objetivos fundamentales:
1. ¿Cómo obtener un software con calidad?
2. ¿Cómo evaluar la calidad del software?
Ambas interrogantes conllevan amplias respuestas, pero están estrechamente ligadas con el concepto de la calidad del software, que es el resultado de la primera y la fuente de la segunda. [3]

2. CALIDAD
Es la aptitud de un producto o servicio para satisfacer las necesidades del usuario. Es la cualidad de todos los productos, no solamente de equipos sino también de programas.
En el desarrollo de software, la calidad de diseño acompaña a la calidad de los requisitos, especificaciones y diseño del sistema. La calidad de concordancia es un aspecto centrado principalmente en la implementación [4].

3. ¿QUE ES LA CALIDAD DE SOFTWARE?
Estas son algunas definiciones:
– “Concordancia con los requisitos funcionales y de rendimiento explícitamente establecidos con los estándares de desarrollo explícitamente documentados y con las características implícitas que se espera de todo software desarrollado profesionalmente” R.S. Pressman (1992).
– “El conjunto de características de una entidad que le confieren su aptitud para satisfacer las necesidades expresadas y las implícitas” ISO 8402 (UNE 66-001-92). [2]
La calidad del software es medible y varía de un sistema a otro o de un programa a otro. La calidad del software puede medirse después de elaborado el producto. Pero esto puede resultar muy costoso si se detectan problemas derivados de imperfecciones en el diseño, por lo que es imprescindible tener en cuenta tanto la obtención de la calidad como su control durante todas las etapas del ciclo de vida del software. [3]

4. FACTORES QUE DETERMINAN LA CALIDAD
Existen dos tipos de factores:
•Factores que pueden ser medidos directamente (errores/KLDC/unidad de tiempo).
•Factores que solo pueden ser medidos indirectamente (la facilidad de uso o de mantenimiento).
En ambos casos se puede medir la calidad, debemos comparar el software (documentos, programas, etc.) con alguna referencia y llegar a una indicación de calidad [5].

5. ¿COMO OBTENER UN SOFTWARE DE CALIDAD?
La obtención de un software con calidad implica la utilización de metodologías o procedimientos estándares para el análisis, diseño, programación y prueba del software que permitan uniformar la filosofía de trabajo, en aras de lograr una mayor confiabilidad, mantenibilidad y facilidad de prueba, a la vez que eleven la productividad, tanto para la labor de desarrollo como para el control de la calidad del software. La política establecida debe estar sustentada sobre tres principios básicos:
El principio tecnológico define las técnicas a utilizar en el proceso de desarrollo del software.
El principio administrativo contempla las funciones de planificación y control del desarrollo del software, así como la organización del ambiente o centro de ingeniería de software.
El principio ergonómico define la interfaz entre el usuario y el ambiente automatizado.
La adopción de una buena política contribuye en gran medida a lograr la calidad del software, pero no la asegura [3].

6. LA GESTIÓN DE LA CALIDAD
Dentro de la gestión de la calidad se observa:
Gestión de la calidad de software (ISO 9000): Conjunto de actividades de la función general de la dirección que determina la calidad, los objetivos y las responsabilidades y se implanta por medios tales como la planificación de la calidad, el control de la calidad, el aseguramiento (garantía) de la calidad y la mejora de la calidad, en el marco del sistema de calidad
Política de calidad (ISO 9000): Directrices y objetivos generales de una organización, relativos a la calidad, tal como se expresan formalmente por la alta dirección.
La gestión de la calidad se aplica normalmente a nivel de empresa. También puede haber una gestión de calidad dentro de la gestión de cada proyecto [6].

7. EL ASEGURAMIENTO DE LA CALIDAD
Ante todo se debe conocer:
· Aseguramiento de la calidad: “Conjunto de acciones planificadas y sistemáticas necesarias para proporcionar la confianza adecuada de que un producto o servicio satisfará los requerimientos dados sobre calidad”.
· Aseguramiento de la calidad de software: Conjunto de actividades planificadas y sistemáticas necesarias para aportar la confianza en que el producto (software) satisfará los requisitos dados de calidad.
Hay quienes prefieren decir garantía de calidad en vez de aseguramiento [6].
El aseguramiento de calidad del software se diseña para cada aplicación antes de comenzar a desarrollarla y no después [2].
La garantía, puede confundir con garantía de productos, mientras que el aseguramiento pretende dar confianza en que el producto tiene calidad [6].
Aseguramiento de calidad se enfoca en identificar y evaluar los defectos que puedan afectar al software. Si los errores se pueden identificar de forma temprana en el proceso de software, las características del diseño de software se pueden especificar de modo que eliminarán o controlarán los peligros potenciales, al corregir los errores mucho antes en cada etapa es decir durante el proceso, ahorrando esfuerzos, tiempo y recursos [7].

8. EL CONTROL DE LA CALIDAD
Se debe conocer:
· Control de calidad: “Conjunto de técnicas y actividades de carácter operativo, utilizadas para verificar los requerimientos relativos a la calidad del producto o servicio”.
· Control de la calidad del software: Técnicas y actividades de carácter operativo, utilizadas para verificar los requisitos relativos a la calidad, centradas en mantener bajo control el proceso de desarrollo y eliminar las causas de los defectos en las diferentes fases del ciclo de vida.
El control de la calidad del software está centrado en dos objetivos fundamentales:
· Mantener bajo control un proceso.
· Eliminar las causas de los defectos en las diferentes fases del ciclo de vida [6].

9. ESTANDARES DE CALIDAD
• ISO/IEC JTC1-SC7
Ø Ingeniería de Software y de Sistemas.
• IEEE – CS
Ø ISO 9126 – Calidad del producto.
Ø ISO 14598 – Evaluación de productos de software.
Ø ISO 12119 – Requerimientos de Calidad y Testing de COTS.
Ø ISO 15939 – Proceso de medición de software [6].

10. CONCLUSIONES
Para lograr el éxito en la producción de software es hacerlo con calidad y demostrar su buena calidad. Esto es posible con la implantación de un Sistema para el Aseguramiento de la Calidad del Software que cumpla con todos los requisitos preestablecidos.
Las medidas de calidad requieren de identificar los requisitos del software. La falta de concordancia con los requisitos es una falta de calidad.
Los estándares definen un conjunto de criterios de desarrollo que guían la forma en que se aplica la ingeniería del software. Si no se sigue ninguna metodología siempre habrá falta de calidad.

Bibliografía o Referencias
[1] Extraído de:
http://www.buscarportal.com/articulos/iso_9001_2000_gestion_calidad.html
[2] Fuente:
Juan Manuel Cueva Lovelle
[3] Fuente:
Oscar M. Fernández Carrasco (Investigador Agregado. Centro de Desarrollo Informático. SOFTCAL, SIME), Delba García León (Especialista en Sistemas de Computación) y Alfa Beltrán Benavides (Aspirante a Investigador)
[4] Extraído de:
http://es.wikipedia.org/wiki/Calidad_de_software
[5] Fuente:
Universidad de Morón - Facultad de Informática, Ciencias De la Comunicación y Técnicas Especiales
Herramientas de Software
[6] Fuente:
Darcy Javier Noriega Quintana-informatico@sirenishotels.co.cu
[7] Extraído de:
http://www.qualitrain.com.mx/index.php/Procesos-de-software/Aseguramiento-de-la-calidad-de-software.html