1. Introducción
Los computadoras están siendo usadas en una amplia y creciente variedad de áreas de
aplicación y su operación correcta es a menudo crítica para el éxito de los negocios y la
seguridad humana
Hoy en día programas altamente complejos controlan aspectos fundamentales de
nuestras vidas, desde cuestiones mínimas como el funcionamiento de nuestro teléfono
móvil hasta situaciones esenciales, como las constantes vitales de un enfermo
Desarrollar o seleccionar productos de software de alta calidad es por lo tanto un asunto
de primera importancia
La calidad en el desarrollo y el mantenimiento del software se ha convertido hoy en día en
uno de los principales objetivos estratégicos de las organizaciones, debido a que cada vez
más, los procesos principales de las organizaciones y su supervivencia dependen de los
sistemas informáticos para su buen funcionamiento
en la industria, normas internacionales hablan acerca de que la especificación de gran
amplitud y la evaluación de los productos de software son un factor clave para asegurar la
calidad adecuada del software (ISO/IEC 9126-1:2001)
El objetivo primordial de la ingeniería de software es producir un sistema, aplicación o
producto de software de alta calidad
Para lograr este objetivo, los ingenieros del software deben aplicar métodos efectivos
junto con herramientas modernas dentro del contexto de un proceso maduro de
desarrollo de software
Existen estudios y estadísticas que representan con claridad la problemática del desarrollo
de software
“Sólo el 51% de los proyectos de software tienen éxito” Standish Group, CHAOS Report,
2004
2. Definición de Calidad
“Es la totalidad de las características de una entidad que dan soporte a su capacidad de
satisfacer necesidades manifiestas e implícitas” ISO 8402:1994
“Concordancia con los requisitos funcionales y de rendimiento explícitamente
establecidos, con los estándares de desarrollo 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” [Pressman 98]
• Los requisitos (requerimientos) de software se deben cumplir, en caso
contrario, indican claramente la falta de calidad
• Los estándares definen un conjunto de criterios de desarrollo que deben
seguirse de manera explícita
• Las características implícitas de calidad, a menudo no mencionadas,
también deben ser cumplidas
Según la norma IEEE 1601 la calidad de un producto de software se define como el grado
en que posee una combinación adecuada de determinadas características como son el
rendimiento, la fiabilidad o la seguridad
3. Evolución de las Propuestas de Calidad
MacCall y otros en 1977, y Cavano y MacCall en 1978, fueron de los primeros que
ofrecieron propuestas en este sentido
Según los autores, la calidad puede llegar a cuantificarse tan sólo mediante el análisis de
un conjunto de factores
Estos factores se agrupan de acuerdo con las características operativas del software, su
capacidad para aceptar cambios y su adaptabilidad a nuevos entornos
Los factores que considera esta propuesta están organizados según 3 grupos:
• Factores de Revisión
• Factores de Transición
• Factores de Operación
Los Factores de Revisión incluyen:
• Flexibilidad
• Mantenibilidad
• Contestación
Los Factores de Transición incluyen:
• Portabilidad
• Reusabilidad
• Interoperabilidad
Los factores de Operación incluyen:
• Eficiencia
• Integridad
• Usabilidad
4. • Fiabilidad
• Corrección
Más adelante, Gilb (1998), Keller y otros (1995) y Olsina (1999), profundizaron en el
problema y llegaron a la conclusión de que no es posible determinar un conjunto de
atributos universalmente válido, por lo que sus marcos estaban basados en la creación de
catálogos ad hoc que en algunas ocasiones se obtenían como concreciones de normas
internacionales
Frølud y Koistinen, Franch (en 1998) y Burgués y Franch (2000), entre otros, son los
abanderados de una tercera generación de marcos de calidad en los que el objetivo ha
sido proporcionar estos lenguajes
Existen también hoy en día propuestas para una posible cuarta generación orientada
principalmente a la calidad en aplicaciones en servicios web utilizados en portales y
comercio electrónico, tales como la de Ruiz-Cortés (2000) y Corchuelo y otros (2002)