Вы находитесь на странице: 1из 17

TIA

Tecnología, Investigación y Academia

Estándares para la calidad de


software
Standards for Software Quality
Néstor Javier Acosta1 Luis Alfonso Espinel2 Jaime Leonardo García3

Para citar este artículo: Acosta, N. J.; Espinel, L. A.; García, J. L. (2017). Estándares para la calidad de
software. TIA, 5(1), pp. 75-84.

Resumen
Hoy en día los productos de software se han convertido en herramientas estratégicas
para el cumplimiento de los objetivos en las organizaciones; por lo tanto, el interés
Artículo por la calidad del software crece en la medida que los usuarios son más exigentes y
de investigación requieren productos que cumplan con sus necesidades. Los estándares o metodologías
definen criterios de desarrollo que tienen como objetivo principal producir software
Fecha de recepción: confiable de alta calidad. El presente documento describe diferentes modelos de
08-04-2015 evaluación de calidad de software, los cuales pueden ser utilizados como medio
Fecha de aceptación:
para auditar la calidad de los productos de software ya implementados en entornos
03-06-2017 productivos, así como de productos que se encuentran en proceso de desarrollo.
Palabras clave: calidad de software, estándares de calidad, metodología métrica,
ISSN: 2344-8288 normas ISO (International Organization for Standardization), CMMI, SPICE, SQuaRE.
Vol. 5 No. 1
Enero - junio 2017 Abstract
Bogotá-Colombia Nowadays software products have become strategic tools to get organization aims.
Therefore, interest in software quality is increasing as users are more demanding
and require products that meet their needs. Standards or methodologies defined
http://revistas.udistrital.edu.co/ojs/index.php/tia/issue/archive

development criteria whose main aim is to get high quality reliable software. This paper
describes different models of software quality evaluation, which can be used to audit
the software quality products already deployed in production environments, as well as
products that are in development.
Keywords: software quality, quality standards, metrics methodology, ISO rules,
Capability Maturity Model Integration, Software Process Improvement and Capability
Determination, Software Quality Requirements and Evaluation.

1
Ingeniero de Sistemas, Universidad Nacional Abierta y a Distancia. Especialista en Proyectos Informático, Universidad Distrital
Francisco José de Caldas. Correo electrónico: ing.nestoracosta@gmail.com
2
Ingeniero, Universidad Distrital Francisco José de Caldas. Especialista en Proyectos Informático, Universidad Distrital Francisco
José de Caldas. Correo electrónico: lespinel@gmail.com
3
Ingeniero Electrónico, Universidad Santo Tomás. Especialista en Proyectos Informático, Universidad Distrital Francisco José de
Caldas. Correo electrónico: ing.leotovar89@gmail.com

Publicación de la Facultad de Ingenieria


Tecnol.Investig.Academia TIA
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

INTRODUCCIÓN referido a la calidad interna y externa y el segundo


modelo referido a la calidad en uso; a continuación
La calidad del software hoy en día juega un se describe cada uno de ellos.
papel importante dentro de las empresas, por ISO/IEC 9126-1: hace referencia al modelo
esto es necesario tener un punto de comparación de calidad de un producto de software, en
y mirar si el producto entregado cumple con los primera instancia especifica las características
requerimientos y necesidades que tienen los del modelo que están divididas en seis tanto en
usuarios o clientes; para esto se parte de diferentes calidad interna como externa, además dentro de
estándares que se enfocan en la calidad del estas se dividen en otras categorías. La calidad
software. externa es aquella que es medible con el uso del
Así, se puede decir que los requisitos del producto, y la calidad interna realiza una revisión
software son la base para la medida de la calidad relacionada con los atributos del software (Figura
y que la carencia de los requisitos es una falta 1). Permite especificar y calificar la calidad de
de calidad; los estándares definen un conjunto un software desde diferentes puntos de vista, los
de criterios que sirven como guía para la entrega cuales se relacionan con los requerimientos, uso,
de un software, si no se tiene un estándar lo más adquisición, desarrollo, auditoria de software y
probable es que un entregable de software tenga mantenimiento.
muchas deficiencias.
Funcionalidad:
• Adecuación.
CONTENIDO • Exactitud.
• Interoperabilidad.
Estándares para la calidad del software • Seguridad de acceso.
• Cumplimiento funcional.
Un estándar es una serie de recomendaciones a
seguir para la entrega de un producto, dentro de la Fiabilidad:
calidad del software es una metodología para que • Madurez.
los entregables cumplan con las expectativas del • Tolerancia a fallos.
negocio. Dentro de los estándares más aplicados a • Capacidad de recuperación.
la calidad del software se encuentran los siguientes: • Cumplimiento de la fiabilidad.
ISO/IEC 9126, ISO/IEC 14598, ISO/IEC 25000,
IEEE 1061, CMMI, SPICE, los cuales serán descritos Usabilidad:
a continuación. • Capacidad para ser entendido.
• Capacidad para ser aprendido.
Norma ISO/IEC 9126 • Capacidad para ser operado.
Estándares para la calidad de software

La norma ISO/IEC 9126, tiene como fin cuantificar • Capacidad de atracción.


Acosta N. J. Espinel L.A. García J. L.

los productos de software, esta norma nos indica • Cumplimiento de la usabilidad.


las características de la calidad del software y fue
elaborado para cubrir las necesidades de error que Eficiencia:
genera. La norma fue diseñada en los siguientes • Comportamiento temporal.
factores: calidad de proceso, calidad del producto, • Utilización de recursos.
calidad del software y calidad de uso. Por otro • Cumplimiento de la eficiencia.
lado, presenta dos modelos de calidad, el primero

76
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

Mantenibilidad: ISO/IEC TR 9126-2:2003 (métricas externas):


• Capacidad para ser analizado. suministra unos parámetros que hacen posible la
• Capacidad para ser cambiado. medición a través de los seis atributos que tiene
• Estabilidad. la norma; los parámetros externos hacen posible
• Capacidad para ser probado. cuantificar el comportamiento de un sistema
• Cumplimiento de la mantenibilidad. basada en un PC a través de software. Estos
parámetros proporcionan a los verificadores,
Portabilidad: usuarios, desarrolladores y evaluadores la
• Adaptabilidad. capacidad para evaluar la calidad del software
• Instalabilidad. durante su funcionamiento. Los parámetros los
• Coexistencia. pueden definir los evaluadores o el área usuaria,
• Capacidad para reemplazar. con el fin de obtener unos parámetros básicos y así
aplicarlos a los productos, basados en el modelo
estándar de calidad.
Estándares para la calidad de software
Acosta N. J. Espinel L.A. García J. L.

Figura 1. Modelo de calidad


Fuente: [1]

77
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

ISO/IEC TR 9126-3:2003 (métricas internas): • Evaluación del diseño y definición del plan de
el fundamento de esta métrica es lograr que la evaluación.
calidad externa y la calidad de uso pretendida, • Ejecución del plan de evaluación.
esta métrica hace posible evaluar la calidad del • Evaluación de la conclusión.
software relacionado con los inconvenientes
presentados antes de su puesta en producción. Este La Norma ISO/IEC 14598 define el proceso
tipo de métrica utiliza número de elementos de para evaluar un producto de software, el mismo
construcciones de software, donde se visualizan consta de seis partes:
las sentencias de código fuente, gráficos, flujo de
datos, estado de procesos, entre otros. • ISO/IEC 14598-1 (visión general): suministra
ISO/IEC TR 9126-4:2004 (calidad en uso): las una visión general de las otras cinco partes a
métricas de calidad en uso calculan los efectos de continuación mencionadas y explica la relación
uso del software en un determinado campo de uso; entre la evaluación del producto software y el
estas métricas evalúan si el producto cumple con modelo de calidad definido en la norma ISO/IEC
las necesidades del usuario. La calidad de uso se 9126.
ve reflejada en un escenario real. A continuación • ISO/IEC 14598-2 (planeamiento y gestión):
se nombran algunos atributos que se deben tener está compuesto por guías y requisitos para
en cuenta para la calidad en uso: determinar las funciones de soporte como lo es
la planificación y gestión de la evaluación del
• Efectividad. producto.
• Productividad. • ISO/IEC 14598-3 (proceso para desenvolvedores):
• Seguridad física. determina los requisitos y guías para la evaluación
• Satisfacción. del producto software cuando esta es llevada a
cabo en paralelo con el desarrollo por parte del
SO/IEC 14598 desarrollador.
La ISO/IEC 14598 es utilizada actualmente como • ISO/IEC 14598-4 (proceso para adquirientes):
una metodología para evaluar el productor suministra las guías y requisitos para llevar a
de software. La norma establece una serie de cabo la evaluación del producto de software
etapas e involucra el marco de trabajo donde se mostrándole a los compradores que desean
manipula el software y se evalúa la calidad del adquirir o utilizar el producto existente.
producto, definiendo dentro de esto las siguientes • ISO/IEC 14598-5 (proceso para avaladores):
características primordiales en los procesos de determina las guías y requisitos para la evaluación
evaluación: del producto software cuando la evaluación es
realizada por evaluadores independientes.
• Repetitividad. • ISO/IEC 14598-6 (documentación de módulos):
Estándares para la calidad de software

• Reproducibilidad. suministra las guías para la documentación del


Acosta N. J. Espinel L.A. García J. L.

• Imparcialidad. módulo de evaluación.


• Objetividad.
La evaluación de los productos de software va
Sin embargo, es necesario hacer énfasis en lo relacionada con las necesidades que tengan los
siguiente: usuarios finales o proveedor; así, normalmente
una evaluación de software está compuesta por lo
• Análisis de los requisitos de evaluación. siguiente:
• Evaluación de las especificaciones.

78
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

• Definición de perfiles de calidad de referencia • Si el software se ajusta a sus requisitos explícitos,


de software. pero falla en obtener los implícitos, la calidad
• Evaluación de acuerdo con los modelos de del software queda en entredicho.
calidad predefinidos. • Los estándares específicos definen un conjunto
• Certificación de la calidad del software de de criterios de desarrollo que guían la forma en
acuerdo a los modelos de calidad y normas. que se aplica la ingeniería del software.
• Las comparaciones entre productos.
• La reingeniería del software. Estas son características que se deben tener
• Servicio de monitoreo de calidad del producto. en cuenta para desarrollar un software, para ello
es importante guiarse por un estándar, donde se
Norma ISO/IEC 25000 (SQuaRE) mantendrán unos parámetros de métricas que el
Algunas características que se espera de todo software deberá alcanzar al momento de evaluarlo,
software desarrollado son: en esta oportunidad hablaremos de la norma ISO
25000.
• Golpe estratégico; oportunidad de ventaja ISO 25000:2005 (SQuaRE, del inglés Software
competitiva. Quality Requirements and Evaluation): son una
• Los requisitos del software son la base de las serie de normas que se basan en ISO 9126 y en
medidas de calidad. ISO 14598 (evaluación del software); cuenta
• Afecta la organización en general (directivos, con los siguientes pasos: recopilar los datos,
trabajadores, clientes). preparación de los datos y análisis de los datos.
• Planificación, diseño de objetivos, coordinación, Algunos aspectos importantes de la ISO 25000
formación, adaptación de toda la organización. (Figura 2) son:
Estándares para la calidad de software
Acosta N. J. Espinel L.A. García J. L.

Figura 2. Aspectos norma ISO 25000


Fuente: elaboración propia.

79
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

Su objetivo: internacionales, llamados Requisitos y Evaluación


de Calidad de Productos de Software (SQuaRE, por
Guiar el desarrollo de los productos de software sus siglas en inglés).
con la especificación y evaluación de requisitos de
calidad. Establece criterios para la especificación Quién la desarrolló:
de requisitos de calidad de productos software, sus
métricas y su evaluación. La norma ISO 25000 ha sido desarrollada por el
subcomité SC 7 (ingeniería de software y sistemas)
Qué establece la norma: del comité técnico conjunto ISO/IEC J. El estándar
de calidad ISO 25000 maneja divisiones llamadas
• La calidad del software está compuesta por modelos N, cada división se encarga de aspectos
características de calidad, las cuales a su vez se diferentes en calidad del software (Tabla 1).
componen de subcaracterísticas. Las definiciones de cada uno de los modelos N
• Las medidas de calidad software indican las se presentan a continuación:
características y su las subcaracterísticas de
calidad del producto. • Los modelos que forman esta división se
definen como los modelos comunes, términos
Beneficios de la norma: y referencias a los que se refieren en las demás
divisiones de SQuaRE. El modelo también posee
• Mayor eficiencia en los requerimientos del unos requerimientos y guías para un grupo de
software. evaluación, el cual es responsable de la gestión
• Mejora la calidad del producto. de las especificaciones de los requerimientos de
• Propone una calidad final a través de las calidad del producto de software y la evaluación
evaluaciones internas. de la calidad del mismo.
• Esta segmentación N presenta un modelo
Beneficios para la organización: detallado de calidad incluyendo características
de la calidad de software interno, externo y
• Alinea los objetivos del software con las de la calidad de software en uso; además,
necesidades reales que se le demandan. las características de calidad de software
• Evita ineficiencias y maximiza la rentabilidad y internas y externas están descompuestas en
calidad del producto de software; por otro lado, subcaracterísticas.
certificar el software aumenta la satisfacción del • Incluyen un modelo de referencia de medición de
cliente y mejora la imagen de la empresa.  la calidad del producto de software, definiciones
• Cumplir los requisitos contractuales y demostrar matemáticas de las medidas de calidad.
a los clientes que la calidad del software es • Los estándares de este modelo ayudan a
Estándares para la calidad de software

primordial. especificar los requisitos de calidad. Estos


Acosta N. J. Espinel L.A. García J. L.

• El proceso de evaluaciones periódicas ayuda a requisitos pueden ser usados en el proceso de


supervisar continuamente el rendimiento y la especificación de requisitos de calidad para un
mejora. producto software que va a ser desarrollado o
como entrada para un proceso de evaluación.
Qué hace: • Estos estándares proporcionan requisitos,
recomendaciones y guías para la evaluación de
Refiere a calidad del producto, proporciona una un producto software, tanto si la llevan a cabo
guía para el uso de las nuevas series de estándares evaluadores, como clientes o desarrolladores [2].

80
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

Tabla 1. Divisiones de ISO 25000

ISO/IEC 25000 (SQuaRE)


Modelos N Modelos Nombres
A: ISO 25000 Guía de SQUARE
Administración de calidad ISO 25001 Planeación y gestión
ISO 2500n
B: Calidad del modelo
ISO 25010
Modelo de calidad 2501n
Calidad de las métricas,
Modelo de referencia de
ISO 25020
C. las métricas
ISO 25021
Medidas de Calidad 2502n Primitivas de medición
ISO 25022
Medidas de calidad
interna
Medidas de calidad
externa
D: ISO 25023
Medidas de calidad de
Requerimientos de calidad ISO 25024
uso
2503n ISO 25030
Requerimientos de cali-
dad
Visión General de
ISO 25040 evaluación de calidad
E: ISO 25041 Módulo de evaluación
Evaluación de calidad ISO 25042 Proceso para
2504n ISO 25043 desarrolladores
ISO 25044 Proceso para adquirientes
Proceso de evaluadores
Fuente: elaboración propia.

EEE
El estándar IEEE 1061-1992 (Tabla 2): es un • Validar el control del sistema.
estándar para una metodología de métricas Este estándar se divide por niveles jerárquicos
y calidad del software, este estándar cubre los cuales se describen a continuación:
tres grupos (medidas, procesos y objetivos),
suministra una metodología para establecer • El primer nivel de la jerarquía del marco
requerimientos de calidad e identificar, métricas de calidad de software comienza con
implementar, analizar y validar métricas de el establecimiento de la calidad las necesidades
calidad de productos y procesos software. La por la asignación de diferentes atributos de
metodología es adaptable a todo el software en calidad, los cuales se utilizan para describir
Estándares para la calidad de software

todas las fases de cualquier estructura de ciclo la calidad del sistema entidad X. Todos los
Acosta N. J. Espinel L.A. García J. L.

de vida, el objetivo de este estándar es: atributos que definen los requisitos de calidad
acordados entre el equipo del proyecto.
• Alcanzar las metas de calidad. • En el segundo nivel de la jerarquía son los
• Establecer requisitos de calidad. subfactores de calidad que representan
• Establecer criterios. atributos de software orientados a indicar la
• Evaluar nivel de calidad. calidad; estos pueden ser obtenidos por la
• Detectar anomalías. descomposición de cada factor de calidad
• Supervisar cambios. en el software medible atributos. Sus factores

81
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

de calidad son tributos independientes de Norma ISO/IEC 15504 (SPICE)


software y, por lo tanto, pueden corresponder En 1993 la ISO aprobó un proyecto para el
a más de un factor de calidad. Los subfactores desarrollo de un modelo, base de un futuro estándar
de calidad son atributos concretos de software internacional, que permitiera evaluar la capacidad
que son más significativas de los factores de y madurez de los procesos de software de las
calidad al personal técnico, como analistas, organizaciones. Este trabajo recibió el nombre de
diseñadores, programadores y mantenedores. SPICE (por el inglés Software Process Improvement
and Capability Determination). En 1998 tras las
En el tercer nivel de la jerarquía los subfactores primeras evaluaciones, el trabajo pasó a la fase
de calidad se descomponen en las métricas de informe técnico ISO/IEC TR (Technical Report)
utilizadas para medir el sistema de productos y 15504.
procesos durante el ciclo de vida de desarrollo. SPICE “es un estándar internacional que es
La carencia de los requisitos es una falta de aplicable a cualquier organización que quiera
calidad, los estándares definen un conjunto de conocer y mejorar la capacidad de sus procesos”.
criterios que sirven como guía para la entrega de Además, SPICE “No pretende fijar la manera de
un software [4]. realizar los procesos dentro de la organización,
sino que valora su capacidad y ayuda a proponer
mejoras que aumenten esta capacidad” (European
Software Institute ESI, 2011).

Tabla 2. Estándares IEEE

Estándar IEEE de calidad del software Definición


Software de verificación y validación de proce-
IEEE 1012-1998, sos determina si los productos de desarrollo de
Standard for Software Verification and una determinada actividad se ajustan a los requi-
Validation sitos de dicha actividad y si el software satisface
sus usos y necesidades de los usuarios previstos.
La norma proporciona las definiciones y re-
IEEE 1028-1997, quisitos uniformes para la revisión y auditoría
Standard for Software Reviews procesos. No establece la necesidad de realizar
revisiones o auditorías específicas
Una metodología para establecer los requisitos
de calidad y definición, ejecución, análisis y
IEEE 1061-1998,
validación de los procesos y de software del
Standard for a Software Quality Metrics
producto, se definen métricas de calidad. La
Methodology
metodología abarca todo el ciclo de vida del
software. [3]
Estándares para la calidad de software

Se establecen los requisitos de calidad para los


IEEE 1465-1998,
Acosta N. J. Espinel L.A. García J. L.

paquetes de software y las instrucciones sobre


Standard - Adoption of International Stan-
cómo probar un paquete de software en contra
dard ISO/IEC 12119: 1994(E)
de estos requisitos.
Este estándar ayuda a determinar el contenido y
la elaboración de los planes de aseguramiento
IEEE 730-2002,
de calidad de software y proporciona un están-
Standard for Software Quality Assurance
dar contra el cual estos planes pueden ser prepa-
Plans
rados y evaluados. Se dirige hacia el desarrollo y
mantenimiento de software.
Fuente: elaboración propia.

75
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

Componentes (dimensión del proceso) se ubica el proceso a


evaluar junto con las actividades que se ejecutan en
SPICE inicialmente fue estructurado en nueve el proceso, en el eje Y (dimensión de la capacidad)
apartados (Figura 3). El contenido de estos el nivel de capacidad o madurez de los procesos
documentos permite implementar paso a paso el junto con los atributos de cada nivel [6].
modelo con su correspondiente evaluación [5].
Dimensión procesos
Sin embargo, con el transcurso del tiempo, Los procesos de desarrollo software evaluados
luego de diferentes debates y votaciones con con la ISO 15504 se encuentran en la norma ISO/
el objetivo de reducir el tamaño del estándar y IEC 12207; esta norma contiene tres categorías
consolidarlo, se decide dividir en cinco partes tal de procesos (principales, soporte, organización),
como muestra la Tabla 3. los cuales contienen una serie de procesos
que soportan el ciclo completo de un proyecto
Dimensiones software, desde la definición de un proyecto hasta
la entrega y cierre del mismo.
Para la evaluación de la capacidad de los
procesos, SPICE desarrolla un modelo de dos Procesos principales:
dimensiones. Dimensión del proceso y dimensión Principales promotores que ayudan a mejorar
de la capacidad, a esto se denomina arquitectura las funciones dentro del ciclo de vida de un
del modelo de referencia (Figura 4). En el eje X proyecto de software.
Estándares para la calidad de software
Acosta N. J. Espinel L.A. García J. L.

Figura 3. Estructura inicial SPICE ISO/IEC 15504


Fuente: elaboración propia.

76
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

Tabla 3. Estructura actual SPICE ISO/IEC 15504

Componentes
Estándar Actual (2015)
2015 2003
1 ISO/IEC 33001:2015
1 Concepts and terminology
9
ISO/IEC 33002:2015
2 2
Requirements for performing process assessment
3 ISO/IEC 15504-3:2004
3 4 Guidance on performing an assessment

6
4 7 ISO/IEC 15504-4:2004
8 Guidance on use for process improvement and process
capability determination
5 5 ISO/IEC 15504-5:2012
An exemplar software life cycle process assessment model

Fuente: elaboración propia.


Estándares para la calidad de software
Acosta N. J. Espinel L.A. García J. L.

Figura 4. Arquitectura de modelo de referencia


Fuente: elaboración propia

77
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

• Adquisición, que define las actividades del forma una de las partes evalúe el estado de los
contratante. La empresa que adquiere un producto productos producidos y las actividades realizadas
o servicio. por la otra parte.
• Suministro, que define las actividades del • Auditoría, que define las actividades para
proveedor. La empresa que ofrece el producto o verificar/validar el cumplimiento de los
servicio. requerimientos, planes y contratos. Este proceso
• Desarrollo, que define las actividades de los puede ser usado por cualquiera de las dos partes,
desarrolladores. La organización que define y donde una parte (auditora) audita los productos
desarrolla el software. o actividades de la otra parte (auditada).
• Operación, que define las actividades de los • Resolución de problemas, que define un
operadores. La organización que presta el servicio proceso para analizar y resolver los problemas
de operar los sistemas de información en el (incluyendo inconformidades), sin importar
ambiente de los usuarios. su naturaleza u origen, que sean descubiertos
• Mantenimiento, que define las actividades de la durante la ejecución de alguno de los procesos.
organización que presta el servicio de mantener el
software, conservándolo actualizado y utilizable. Procesos de la organización:
Se refiere a la gestión y al apoyo en general para
Procesos de soporte: todo el ambiente de desarrollo. Se conforma de
Estas son las actividades que soportan y coordinan cuatro procesos.
el desarrollo y el ciclo de vida de las actividades
primarias. Un proceso de soporte apoya otros procesos • Gestión. El objetivo de este proceso es la de
que llevan a cabo una función especializada. proporcionar administración a todos los demás
procesos del proyecto, incluyendo administración
• Documentación, que define las actividades del producto y administración del proyecto.
requeridas para consignar toda la información • Infraestructura. Establece y mantiene el
producida por los procesos del ciclo de vida. hardware, software, herramientas, técnicas
• Gestión de la configuración, que incluye y estándares; necesaria para la ejecución de
actividades de identificación, control, estadística y los otros procesos. Cualquier estándar que sea
evaluación de las configuraciones, así como las de utilizado en un proyecto o por una organización
la administración de versiones. se vuelve parte de la infraestructura.
• Aseguramiento de calidad, que define las • Mejora. Define las actividades que una
actividades para asegurar de forma objetiva que los organización realiza para establecer, medir,
productos de software cumplen los requerimientos controlar y mejorar los procesos de su ciclo de
especificados y si están alineados a los planes vida.
establecidos. Las revisiones conjuntas, auditorías, • Recursos humanos. Define las actividades para
Estándares para la calidad de software

verificación y validación. proveer e personal capacitado adecuado.


Acosta N. J. Espinel L.A. García J. L.

• Verificación, que define las actividades (para el


cliente o proveedor) para verificar los productos y Dimensión de capacidad
servicios de software. Niveles de capacidad o madurez de los procesos
• Validación, que define las actividades (para el (Figura 5):
cliente o proveedor) para validar los productos de Desde la dimensión de capacidad del modelo,
software del proyecto de software. se define una escala de seis niveles para determinar
• Revisión conjunta. Proceso para revisiones tanto la capacidad o nivel de madurez de cualquier
técnicas como administrativas, para que de esta proceso.

78
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

Figura 5. Niveles de capacidad o madurez


Fuente: [7]

•   Nivel 0: incompleto. La organización no tiene la capacidad del proceso y predecir su


una implementación efectiva de los procesos. comportamiento.
• Nivel 1: realizado (se realizan). Se alcanza el • Nivel 5: en optimización (mejora continua
propósito de los procesos en términos generales. innovación, experiencia). La realización de los
Los procesos se realizan cuando es necesario, procesos se optimizan de forma continuada, de
pero no se hace de una forma planificada ni se cara a su contribución a alcanzar los objetivos
realiza ningún seguimiento. del negocio de la organización. Se establecen
• Nivel 2: gestionado (planificado). Se obtienen objetivos cuantitativos de eficacia y eficiencia
los productos del proceso, pero esta vez, de en la realización de los procesos, basados en los
acuerdo con una planificación y realizándose un objetivos de negocio de la organización. Se lleva
seguimiento. Estos productos se ajustan a unos a cabo un monitoreo continuo de los procesos
estándares y a unas especificaciones prefijadas. y se analizan los datos obtenidos, esto permite
También se tiene definidos plazos y recursos. que los procesos estándar definidos dentro de
• Nivel 3: establecido (definidos desplegados). Los la organización cambien dinámicamente, para
procesos se realizan y se gestionan utilizando adaptarse de forma efectiva a los actuales y
procedimientos definidos. Cada implementación futuros objetivos de la empresa.
Estándares para la calidad de software

de un proceso se hace utilizando procedimientos


Acosta N. J. Espinel L.A. García J. L.

creados según un estándar y documentados. Atributos de los procesos [8]:


• Nivel 4: predecible (medidos analizados).
Se recogen medidas detalladas del nivel de Un atributo del proceso representa una
realización de los procesos y se analizan; característica medible de cualquier proceso.
esto permite mantener los procesos dentro de Los atributos de capacidad del proceso son los
unos límites predefinidos, así como disponer elementos básicos del esquema de evaluación.
de una mejor posición para poder cuantificar Estos atributos se evalúan entre un rango de cuatro
puntos que se presentan a continuación.

79
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

N (Not): no conseguido. No se evidencia que se a DES.7). En el eje Y del modelo de referencia se


consiga el atributo definido. ubican los cinco niveles de capacidad (1 a 5) junto
P (Partially): conseguido parcialmente. Se ha con los atributos asociados a cada nivel (1.1 a 5.2),
conseguido algo del atributo definido como se muestra en la Tabla 4.
L (Largely): bastante conseguido. Se ha En la intersección de estos dos ejes se ubica el
conseguido significativamente el atributo definido. atributo del proceso (F, L, P, N), el cual permite
F (Fully): conseguido completamente. Se ha evaluar la madurez de cada una de las actividades
conseguido completamente el atributo definido. del proceso.

Ejemplo evaluación del proceso CMMI (Capability maturity model integration)

El siguiente es un ejemplo de la evaluación del Es un modelo para la mejora y evaluación de


proceso de “desarrollo” utilizando una arquitectura procesos para el desarrollo, mantenimiento y
de modelo de referencia. Este proceso contiene operación de sistemas de software; la versión
siete actividades a realizar las cuales se describen actual de CMMI es la versión 1.3, que fue liberada
a continuación. el 1 de noviembre de 2010.
Para comprender que es el CMMI es necesario
• DES.1 Requerimientos y diseño del sistema. revisar el concepto de CMM. Las siglas CMM
• DES.2 Requerimientos de software. vienen del inglés Capability Maturity Model,
• DES.3 Diseño del software. que en español significa modelo de capacidad
• DES.4 Implementación del diseño. de madurez del software, se trata de un modelo
• DES.5 Integración y pruebas de software. para la evaluación y mejora de los procesos de
• DES.6 Integración y pruebas del sistema. una organización. Fue desarrollado inicialmente
• DES.7 Mantenimiento del software y el sistema. para los procesos relacionados al software por
la Universidad Carnegie Mellon para el SEI (del
En el eje X del modelo de referencia se ubican los inglés Software Engineering Institute).
procesos con sus actividades relacionadas (DES.1

Tabla 4. Modelo de referencia (evaluación del proceso de desarrollo)

5 5.2 N N N N N N P
5.1 N N N N N N P
4 4.2 N N L N N P L
4.1 N P P N P P L
Estándares para la calidad de software
Acosta N. J. Espinel L.A. García J. L.

3 3.2 P L P N L L F
3.1 L F L P F L F
2 2.2 L F F L F F F
2.1 F F F L F F F
1 1.1 F F F F F F F
DES.1 DES.2 DES.3 DES.4 DES.5 DES.6 DES.7

Fuente: elaboración propia.

80
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

El modelo CMM indica que deben existir áreas no se tiene una visión clara del proyecto, solo se
o procesos clave dentro de la organización que puede tener una visión clara de las cosas cuando
deberán realizar alguna función específica, estas se empieza el proyecto y cuando se logra acabar,
áreas son denominadas áreas clave de proceso o pero no es posible conocer de manera adecuada el
KPA (del inglés Key Process Area). estado del proyecto en sus procesos intermedios.
El modelo define un conjunto de buenas Debido a lo anterior, en algunas ocasiones
prácticas para cada una de las áreas, se puede aparecen individuos que se responsabilizan del
identificar el nivel de madurez de una organización proyecto y lo logran sacar adelante, aunque en
dependiendo de que tanto se ajusten estas buenas general este tipo de proyectos sufrirá demoras y
prácticas a cada una de las áreas. probablemente no se culminará.
La diferencia entre el CMM y el modelo Repetible:  en este nivel se ubican las
CMMI es básicamente que el primero se enfoca organizaciones en las que hay planificación
en las organizaciones o áreas de tecnologías de y seguimiento de proyectos, además de estar
información, mientras que el modelo CMMI, implementada la gestión de los mismos; sin
como su nombre lo indica, es un modelo integrado embargo, existe alta probabilidad de no cumplir
y mejorado que se puede aplicar a un amplio con los objetivos del proyecto.
número de organizaciones de diferentes sectores. Se logra en la Figura 7 que ya hay diferencias
El modelo CMM define cinco niveles de entre el nivel inicial y el nivel repetible, en el
madurez de los que se habla a continuación. segundo nivel se puede observar que se definen
Inicial: no es necesario hacer ningún esfuerzo puntos de control en cada etapa principal del
para llegar al nivel inicial, en este nivel las proyecto, esto permite tener un mejor control
organizaciones no disponen de un ambiente sobre el proyecto. Hay que tener en cuenta que
adecuado para el desarrollo de software, se denota cada etapa es aún una caja negra, no se sabe con
la falta de planificación. Los procesos varían según precisión cómo se está implementando el proyecto
el recurso humano, el éxito de los proyectos en dentro de cada etapa.
un alto grado tienen fundamento en el esfuerzo Los procesos que hay que implantar para
personal, es común que se produzcan fracasos, alcanzar este nivel son:
retrasos y sobrecostos. El resultado de los proyectos
es impredecible y no hay un control adecuado. • Gestión de requisitos.
Como lo muestra la Figura 6, el resultado de • Planificación de proyectos.
los proyectos es impredecible y no hay un control • Seguimiento y control de proyectos.
adecuado. • Gestión de proveedores.
No hay una definición formal de funciones, • Aseguramiento de la calidad.
así como hay carencia de control en los procesos; • Gestión de la configuración.
Estándares para la calidad de software
Acosta N. J. Espinel L.A. García J. L.

Figura 6. Nivel de madurez 1 CMMI


Fuente: [9]

81
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

Figura 7. Nivel de madurez 2 CMMI


Fuente: [9]

Definido: en este nivel están definidos y • Desarrollo de requisitos.


establecidos un conjunto de procesos estándar • Solución técnica.
con objetivos bien definidos. Existe un sistema de • Integración del producto.
gestión de los proyectos. Una diferencia crítica • Verificación.
entre los niveles 2 y 3 de madurez es el alcance • Validación.
de los estándares, descripciones de los procesos • Desarrollo y mejora de los procesos de la
y procedimientos. En el nivel 2 pueden variar organización.
entre las distintas instancias de los procesos, entre • Definición de los procesos de la organización.
diferentes proyectos; a nivel 3 los procesos son • Planificación de la formación.
globales dentro de la organización (Figura 8). • Gestión de riesgos.
Los procesos comunes para desarrollo y • Análisis y resolución de toma de decisiones.
mantenimiento del software están documentados
y almacenados en medios accesibles a los equipos Gestionado:  en este nivel las organizaciones
de desarrollo. El recurso humano se ha capacitado tienen un conjunto de métricas significativas de
para comprender los procesos; cada uno de los calidad y productividad, estas se utilizan de modo
procesos es transparente para todos. sistemático para la toma de decisiones y la gestión
Los procesos que hay que implantar para de riesgos. El software resultante es de alta calidad
alcanzar este nivel son: (Figura 9).

Figura 8. Nivel de madurez 3 CMMI


Fuente: [9]
Estándares para la calidad de software
Acosta N. J. Espinel L.A. García J. L.

Figura 9. Nivel de madurez 4 CMMI


Fuente: [9]

82
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

La principal diferencia con el nivel “definido” Como se muestra en el texto a partir del segundo
es la medición y control de los procesos por nivel del modelo CMM se debe contar con áreas
medio de métricas que se han establecido con específicas que permitirán tener un mayor control
criterios cuantitativos formalmente definidos. A del proyecto de software.
medida que transcurre el proyecto estos controles
facilitan mejor información sobre la calidad y
estado del proyecto, permitiendo compararlo con CONCLUSIONES
otros proyectos similares e identificar cualquier
desviación oportunamente para poder corregirlo. Para generar un producto de software con calidad,
es necesario definir un estándar como marco de
Los procesos que hay que implantar para referencia, con el fin de evaluar el estado del
alcanzar este nivel son: producto o proceso, realizar los ajustes necesarios,
para luego obtener los resultados esperados
• Gestión cuantitativa de proyectos. partiendo de las necesidades del usuario.
• Mejora de los procesos de la organización. Hoy en día existen diferentes normativas de
calidad de software, algunas enfocadas a calidad
Optimizado:  la organización está enfocada en en los procesos como ISO 15504 (SPICE) y CMMI
la mejora continua de los procesos. Se utilizan las (Capability Maturity Model Integration), y otros
métricas para tal objetivo y se gestiona el proceso enfocados a la calidad del producto como ISO
de innovación (Figura 10). 9126 (software engineering–product quality),
ISO 14598 (software producto evaluation),
En este nivel cada proceso se analiza y controla IEEE 1061 e ISO 25000 (product quality and
permanentemente con el objetivo de ser mejorado evaluation). La evaluación de estos estándares
en todo momento, los controles permiten un en las organizaciones permite dar un punto
mejoramiento continuo y se tienen implementadas de referencia del estado actual, teniendo la
todas las áreas clave de proceso recomendadas por posibilidad de verificar las fortalezas y debilidades
el modelo. para luego realizar un plan de acción que permita
la generación de productos de software calidad.
Los procesos a implantar para alcanzar este El estándar ISO/IEC 9126 permite definir un
nivel son: modelo de calidad, para cualquier organización,
partiendo de las seis características que indican la
• Innovación organizacional. calidad en el ciclo de vida del software. El modelo
• Análisis y resolución de las causas. de calidad que se define dará como resultado el
grado de calidad de cada producto de software
que se tenga o adquiera.
Estándares para la calidad de software
Acosta N. J. Espinel L.A. García J. L.

Figura 10. Nivel de madurez 5 CMMI


Fuente: [9]

TIA 83
ISSN: 2344-8288 • Vol. 5 No. 1 • Enero - Junio 2017 • Bogotá-Colombia

La segmentación de la norma ISO/IEC 25000, [3] IEEE-SA. (s.f.). 1061-1998 - IEEE Standard
es la evolución de la norma para darle importancia for a Software Quality Metrics Methodolo-
a cada fase de calidad de software, teniendo en gy. Recuperado de: https://standards.ieee.
cuenta modelos, requisitos, métricas, gestión org/findstds/standard/1061-1998.html
y evaluación de la calidad del software, esto [4] Acceso público. (s.f.). Estánda-
conlleva a que las herramientas desarrolladas bajo res IEEE 1061-1992. Recuperado
la norma sean más potentes y eficientes en la parte de: https://prezi.com/prieimhzzmz-/
productiva. estandares-ieee-1061-1992/
El estándar SPICE (ISO 15504) presenta un [5] Ingeniería del software. (S.f.). Modelo de
modelo que permite evaluar la madurez de calidad SPICE. Recuperado de: http://
cada uno de los procesos del ciclo de vida del software-ufps.blogspot.com/search/la-
software indicados en la norma ISO/IEC 12207. bel/CLASE%2014%3A%20Modelo%20
De esta manera una organización que desarrolla e de%20Calidad%20SPICE
implementa software puede ser auditada tomando [6] Kobayashi, A. (s.f.). ISO/IEC 15504 - Intro-
como base esta norma para certificar la madurez ducción a la norma de evaluación de pro-
de los procesos de software y por lo tanto medir cesos de software. Recuperado de: http://
la calidad de la ejecución del trabajo que se está es.slideshare.net/quasarprocess/isoiec-
realizando. 15504-introduccin-a-la-norma-de-evalua-
cin-de-procesos-de-software
[7] Grajales, A. (2014). MoProSoft con
REFERENCIAS ISO 15504, ISO 9001:2000. Recupe-
rado de: http://abnergrajales.blogspot.
[1] Mginformatica.com.ar. (s.f.). Modelo de com/2014/02/moprosoft-con-iso-15504-
calidad. Recuperado de: http://www.mgin- iso-90012000.html
formatica.com.ar/modelo-de-calidad.htm [8] Bejarano, J. (2013). Modelo SPICE. Re-
[2] ISO 25000. (s.f.). La familia de nor- cuperado de: http://es.slideshare.net/
mas ISO/IEC 25000. Recuperado jsx2060/modelo-spice-34978417
de: http://iso25000.com/index.php/ [9] Calidadysoftware.com (s.f.). Introducción
normas-iso-25000 al CMMI-CMM. Recuperado de: http://
www.calidadysoftware.com/otros/intro-
duccion_cmmi.php
Estándares para la calidad de software
Acosta N. J. Espinel L.A. García J. L.

TIA 84

Вам также может понравиться