Está en la página 1de 6

Scientia et Technica Ao XIV, No 39, Septiembre de 2008. Universidad Tecnolgica de Pereira.

ISSN 0122-1701 326

INTRODUCCIN A LA CALIDAD DE SOFTWARE

Introduction to software quality

RESUMEN ANA MARIA LPEZ


La creciente preocupacin por la calidad en la industria del software tiene como ECHEVERRY
objetivo principal el desarrollo sistemtico de productos y servicios de mejor Ingeniera Electricista.
calidad y el cumplimiento de las necesidades y expectativas de los clientes. En el Profesora Asistente,
presente artculo se hace una introduccin a la calidad y al modelo de calidad Universidad Tecnolgica de Pereira.
adoptado por Colciencias, CMMI. Pretendemos unir esfuerzos con esta iniciativa anamayi@utp.edu.co
y motivar a la comunidad acadmica a trabajar en calidad con las empresas
desarrolladoras de software para mejorar la competitividad y la calidad global de CESAR CABRERA
esta industria. Ingeniero de Sistemas y
Computacin.
PALABRAS CLAVES: Calidad, calidad de software, industria de software, Profesor Auxiliar,
CMMI, niveles CMMI. Universidad Tecnolgica de Pereira.
cace@utp.edu.co
ABSTRACT
The growing concern for quality in the software industry have as its main LUZ ESTELA VALENCIA
objective the systematic development of products and services of better quality AYALA
and fulfilling the needs and expectations from customers. This article provides Ingeniera Industrial
an introduction to quality and the quality model adopted by Colciencias, CMMI. Candidata a M. Sc. en Investigacin
We seek to join forces with this initiative and motivate the academic community de Operaciones y Estadstica.
to work out quality in software development companies to improve Profesora Asistente,
competitiveness and overall quality of this industry. Universidad Tecnolgica de Pereira.
levayala@utp.edu.co
KEYWORDS: Quality, software quality, software industry, CMMI, CMMI
levels.

1. INTRODUCCIN inherentes a algo, que permiten juzgar su valor.


Esta definicin esta orientada al mercado1.
En un mundo globalizado, en donde las organizaciones se
ven enfrentadas a competencia de nivel mundial, la La International Standards Organization, ISO en
calidad se convierte en un importante punto la norma 8402:1994, la define como la Totalidad
diferenciador, adems de aumentar la satisfaccin general de propiedades y caractersticas de un producto,
del cliente, disminuir costos y optimizar los recursos. Los proceso o servicio que le confiere su aptitud para
productos o servicios que ostentan certificados de calidad satisfacer unas necesidades expresadas o
son preferidos por los compradores porque trasmiten implcitas. En la actualizacin de la Norma ISO, la
seguridad y confianza. Esto tambin constituye un un 9000:2000, la definicin qued Grado en el que un
atributo de valor para las estrategias de comercializacin conjunto de caractersticas inherentes cumple con los
en el exterior. requisitos. En esta definicin se hace especial
nfasis en cumplir los requerimientos de los
Si bien la industria del software es nueva, ha tenido que consumidores2.
madurar rpidamente, tal como lo exigen los avances
tecnolgicos y su alta participacin al interior de las En las definiciones siguientes, el concepto se extiende
empresas. Esta industria comparte con las dems para abarcar las caractersticas que influyen en la calidad
industrias el inters por la calidad y la competitividad. hacia el interior de las empresas o hacia el consumidor.

2. DEFINICIN DE LA CALIDAD
1
Real academia de la Lengua; bsqueda por calidad en
Pero, para empezar, Qu es la calidad? A continuacin
presentamos algunas definiciones: http://buscon.rae.es/draeI/html/cabecera.htm, visitada en Mayo de 2008
La Real Academia Espaola, define la calidad, 2
Sistemas de gestin de calidad Conceptos y vocabulario
como: Propiedad o conjunto de propiedades (Traduccin certificada), ISO 9000:2000, ISO 2000.
Fecha de Recepcin: 5 de Junio de 2008.
Fecha de Aceptacin: 27 de Julio de 2008.
327 Scientia et Technica Ao XIV, No 39, Septiembre de 2008. Universidad Tecnolgica de Pereira.

Para Deming la calidad esta ms relacionada con los La calidad en las empresas ha evolucionado, si lo
procesos internos de la empresas, orientada hacia la analizamos desde los inicios de los procesos de
produccin y para Juran con las necesidades y exigencias industrializacin a mediados del siglo XIX hasta cerca de
de los consumidores. 1940, la calidad se relacionaba con la inspeccin en los
productos con el propsito de detectar errores, de sta
Edwards Deming, la comenta en su libro "Out of the fecha hasta los aos 80`s el control de calidad se
Crisis", publicado en 1982: El control de calidad convirti en un ejercicio de control estadstico cuyo
no significa alcanzar la perfeccin. Significa propsito era impedir que el producto defectuoso llegara
conseguir una eficiente produccin con la calidad al cliente y a partir de los 80`s se inician procesos de
que espera obtener en el mercado. 3 gestin de calidad total, que busca garantizar la calidad
por medio de la planificacin y la creacin de modelos de
Joseph Juran. En 1986, escribi La triloga de calidad de forma permanente. Esta evolucin se ilustra en
Juran, esta triloga es Planificacin de la Calidad, la figura 1.
Control de Calidad y Mejora de la Calidad. Se
ampla el enfoque de la calidad ms all del
producto y la satisfaccin del cliente hacia lo que
significa calidad en los procesos y el papel de la
mejora de procesos en la calidad final de la
produccin en general: producto, satisfaccin del
cliente y procesos involucrados. La Planificacin de
la Calidad, se defini como el "rendimiento del
producto que da como resultado la satisfaccin del
cliente; libertad de deficiencias en el producto, que
evita la falta de satisfaccin del cliente". El Control
de la Calidad se entiende como un proceso que
debe seguir toda empresa para asegurarse que sus
productos o servicios mantengan un nivel mnimo de
Calidad, el cual es definido por la propia empresa,
de acuerdo a las caractersticas de lo que genera, de
las caractersticas de sus clientes y de los objetivos
de eficiencia que se hayan planteado y que deban
alcanzar con regularidad. La Mejora de la Calidad Figura 1. Evolucin de calidad
es el proceso de elevarse a niveles de rendimiento
sin precedente. Un programa de este tipo incluye 3 CALIDAD DE SOFTWARE
demostrar las necesidades de las mejoras, identificar
proyectos especficos para la mejora, organizar el
apoyo para los proyectos, diagnosticar las causas, En la industria del software se pueden evidenciar
dar remedios para las causas, demostrar que los necesidades de satisfaccin del cliente de productos o
remedios son efectivos bajo las condiciones de servicios de software, de reduccin de recursos invertidos
operacin y proporcionar el control para mantener en proyectos de software y de la efectiva asignacin de
las mejoras.4 recursos humanos. Si hablamos de la calidad del
software, una de las primeras definiciones aseguraba que
De lo anterior se observa que todas las definiciones la calidad de un programa o sistema se evaluaba de
incluyen la participacin del cliente y que en el contexto acuerdo al nmero de defectos por cada mil lneas de
actual, la calidad persigue, grosso modo, los siguientes cdigo. (KLOC: Kilo Lines Of Code). 5
objetivos:
La definicin de la calidad del software segn la IEEE,
9 Satisfaccin de los consumidores. Std. 610-1990, es el grado con el que un sistema,
9 Eficiencia en la utilizacin de los recursos humanos componente o proceso cumple los requerimientos
9 Reduccin en el costo de las operaciones. especificados y las necesidades o expectativas del cliente
o usuario6.
2.1 Evolucin de la calidad

3 5
Deming, Edwards, Out of the Crisis, Cambridge University Press, Pressman, Roger, Ingeniera de Software 3 Ed., McGraw Hill,
1986. 1993.
4 6
Juran, Joseph, Jurans Quality Handbook, Ed. McGraw Hill, Standard Glossary of Software Engineering Terminology, IEEE
1998 STD 610-1990, IEEE 1990
Scientia et Technica Ao XIV, No 39, Septiembre de 2008. Universidad Tecnolgica de Pereira. 328

En el libro Ingeniera del Software de Pressman, 1998, se entrenamiento, experiencia, controles, documentacin,
afirma que la calidad es la Concordancia del software soporte y finalizacin. Es importante resaltar que en el
producido con los requerimientos explcitamente proceso de mejora continua se realizan actividades
establecidos, con los estndares de desarrollo prefijados y tcnicas (aplicacin de la ingeniera del software),
con los requerimientos implcitos no establecidos organizativas (aplicacin de modelos de proceso o
formalmente, que desea el usuario7 planes) y humanas (formacin del personal y
motivacin).
El profesor Vidal Alonso Secades, de la Facultad de
Informtica de la Universidad Pontificia de Salamanca, En la actualidad, segn Secades9, la construccin de
afirma 8 que las definiciones de calidad estn orientadas a software presenta dificultades tales como insuficiencia en
las facilidades que ofrece el software una vez est la especificacin de requisitos, diseo poco profundo,
terminado, ste debe contener las siguientes capacidades: mala gestin de la configuracin, poca flexibilidad para
Fiabilidad: Capacidad de operar sin errores. la incorporacin de cambios, prolongado tiempo de
Modificable: Capacidad de hacer los cambios duracin y aumento en los costos. Si bien es preciso
necesarios de una forma sencilla. aclarar que la demanda de software y la complejidad del
Comprensible: Capacidad de comprender el software producto en s, parecen crecer a mayor velocidad que las
operativo, de cara a un cambio o arreglo. metodologas, el personal capacitado y las herramientas
Rendimiento: Velocidad y compacidad del software. para automatizar la produccin. A pesar de la
Utilizable: Capacidad de uso sencillo del software. incorporacin de herramientas CASE (del ingls
Probable: Capacidad de construir y ejecutar Computer Assisted Software Engineering o Ingeniera de
fcilmente casos de prueba. Software Asistido por Computadora), la produccin de
Portable: Capacidad de mover el software fcilmente software contina siendo una actividad con alta
participacin de recursos humanos, cien por cien
de un entorno de trabajo a otro.
intelectual y en cierto sentido, sin insumos ni materias
primas.10
3.1 Aplicacin de la calidad en software
En el desarrollo de software, el control de la calidad es Es por ello que se hace necesaria la adopcin de un
realizado por el mismo desarrollador, que dispone de estndar de calidad, basado en la experiencia de otras
poco tiempo, cuando lo tiene. En otros casos, est ligado industrias con ms tiempo de madurez, aunque basado en
a las etapas del ciclo de vida del desarrollo del software o las caractersticas particulares del software como
bajo un conjunto de rgidos patrones (listas de chequeo o producto y como servicio. En este artculo se hace
check list en ingls) cuya revisin suele consumir referencia al diseado por la Universidad Carnegie
demasiado tiempo. Mellon (EUA) en el Instituto de Ingeniera de Software
SEI (por sus siglas en ingls Software Engineering
La garanta de calidad se inicia con las acciones que se Institute), llamado Capability Maturity Model
realizan durante la planificacin como el conjunto de Integration, mejor conocido como CMMI, orientado a
procedimientos, tcnicas y herramientas durante el ciclo mejora de procesos en diferentes niveles de madurez de
de vida, las actividades de auditoria tales como revisiones la empresa. Este modelo fue el adoptado por
tcnicas o inspecciones, optimizando los criterios de Colciencias11, para el fortalecimiento de la Capacidad
correctitud y completitud y las funciones de informacin Nacional en Calidad de Software, por ser el principal
de la gestin, ms orientadas a la documentacin y al referente internacional de calidad exigido por las
desarrollo de pruebas. compaas que contratan software a nivel mundial.

La calidad total depende de la calidad con la cual se lleve 3.2 CMMI


a cabo todo el proceso - las cinco etapas del ciclo de vida
de un desarrollo de software (anlisis, diseo, ste es un modelo para la mejora de procesos que
implementacin, pruebas e implantacin)- y cada proporciona a las organizaciones los elementos esenciales
subproceso o fase o etapa del proyecto, adicionalmente, para procesos de desarrollo y mantenimiento de software.
es indispensable contar con los siguientes componentes: Durante los 90, SEI desarroll modelos para la mejora y
claridad, involucracin, planeamiento, estndares,

9
Ibid
7
Pressman, Roger, Ingeniera de Software 3 Ed., McGraw Hill, 10
Calidad Total en Informtica,
1993.
8 http://www.inei.gob.pe/biblioineipub/bancopub/inf/Lib5042/cap15.htm,
Secades, Vidal. Gestin del Conocimiento: Modelos de
transferencia del conocimiento y Calidad en los Medios de Visitada en Abril de 2008
11
Comunicacin, Organizaciones y empresas en Curso nivelatorio de Colciencias, Convenio Interadministrativo de Cooperacin No. 055-
Doctorado, Universidad Pontificia de Salamanca, Espaa, 2007. 2005 SENA No. 030-2005, Colciencias, Agosto de 2005.
329 Scientia et Technica Ao XIV, No 39, Septiembre de 2008. Universidad Tecnolgica de Pereira.

medicin de la madurez (CMM o Capability Maturity 1. Inicial.


Model) especficos para varias reas: 2. Gestionado.
3. Definido.
CMM-SW: CMM for software 4. Gestionado cuantitativamente.
P-CMM: People CMM. 5. Optimizando o en Optimizacin Continua.
SA-CMM: Software Acquisition CMM.
SSE-CMM: Security Systems Engineering CMM. Inicial o Nivel 1 CMMI. En los procesos de una
T-CMM: Trusted CMM empresa en ste nivel, la transicin desde las entradas
SE-CMM: Systems Engineering CMM. hasta las salidas est mal definida y descontrolada,
IPD-CMM: Integrated Product Development CMM. provocando que proyectos similares puedan tener una
gran variacin en cuanto a su productividad y en su
calidad debido a la ausencia de una estructura y control
Luego del uso y aplicacin individual de stos modelos adecuados. Las empresas en este nivel deben comenzar
de madurez, SEI desarroll CMMI para facilitar y por definir y recoger datos, estableciendo una serie de
simplificar la adopcin de forma simultnea de CMM- medidas de lneas base. El objetivo principal es
SW (CMM for Software), SE-CMM(Systems proporcionar un punto de partida para medir, a travs de
Engineering Capability Maturity Model) e IPD- comparacin, las mejoras segn se incremente la
CMM(Integrated Product Development)12 y de ah la madurez
palabra Integracin en la sigla. Antes de CMMI el
modelo ms comn era CMM-SW y se puede ver CMMI
como la evolucin de ste ltimo. Gestionado o Nivel 2 CMMI. En este nivel la
caracterstica de los procesos es ser intuitivos,
coexistiendo unos costos y calidad altamente variables,
junto con un razonable control de la planificacin y con
unos mtodos o procedimientos informales efectuados en
el mismo instante. De esta forma, se identifican las
entradas y las salidas del proceso, las restricciones, como
presupuesto o calendario y los recursos utilizados para
obtener el producto final.

En la definicin de CMM, ste nivel de madurez se


denomina repetible. El proceso es repetible en el sentido
de que las mismas entradas producen las mismas salidas,
pero todava no es posible observar cmo se generan las
salidas.

Definido o Nivel 3 CMMI. ste pasa a ser un nivel


Figura 2. Niveles de madurez del Modelo CMMI cualitativo, donde se comienza a gestionar correctamente
tanto los costos como la planificacin dentro de unos
ste modelo presenta una estructura de cinco niveles de lmites razonables. Ahora s se conoce la forma de
madurez, en los cuales una organizacin puede construccin del sistema, ya que se conocen las
determinar su madurez en la produccin de software en actividades intermedias y cules son las entradas y
funcin de la consecucin de los objetivos establecidos salidas para las mismas. Por tanto, es posible examinar y
en cada nivel. medir estas actividades, dado que los productos
intermedios estn bien definidos.
Segn el nivel de madurez en que se encuentre la
empresa, las medidas se enfocarn ms al grupo de Esta definicin afecta tanto a los procesos de
objetivos del nivel correspondiente, para que mejore la administracin como a los de ingeniera, que estn
capacidad de producir software y pueda avanzar hacia el documentados de una forma estndar dentro del proceso
siguiente nivel. de software de la organizacin. De esta forma, todos los
proyectos utilizan en el desarrollo y mantenimiento del
Los niveles de madurez de una organizacin en CMMI software una versin del proceso documentada.
son:
Gestionado cuantitativamente o Nivel 4 CMMI. A
diferencia del nivel anterior, este cuarto nivel pasa a ser
12
CMMI Transition Plan, un nivel cuantitativo. Ahora se tienen medidas detalladas
http://www.sei.cmu.edu/cmmi/background/trans-plan.html, visitada en del proceso del software y de la calidad del producto,
Mayo de 2008
Scientia et Technica Ao XIV, No 39, Septiembre de 2008. Universidad Tecnolgica de Pereira. 330

habilitando la presencia de un cierto control estadstico de los estndares y de los modelos y propuestas que se
sobre la calidad del producto. han venido desarrollando en el mundo, Colombia ha
adoptado el modelo CMMI que hemos ilustrado en ste
Una vez definido el proceso, se le aade la gestin del artculo.
mismo.
El desarrollo de estndares y modelos de calidad en el
Optimizado o Nivel 5 CMMI. En este ltimo nivel de mundo ya lleva varios aos de desarrollo y lo que
optimizacin continua, las bases cuantitativas se utilizan nosotros vemos en Colombia es la necesidad imperiosa
para una inversin continua de capital en el proceso de de que la academia incluya el anlisis de la calidad en sus
automatizacin y mejora de manera que la organizacin programas y permita que los estudiantes valoren y
alcanza el nivel superior de la madurez de procesos. practiquen los procesos de implementacin de modelos
de calidad en su formacin. La adopcin de un modelo de
calidad por parte del Estado colombiano es un importante
Las medidas en este nivel, se utilizan para mejorar el indicador de que sta nueva habilidad ya no es opcional
proceso, quitando o aadiendo actividades e incluso sino obligatoria.
cambiando su estructura en funcin de las medidas
obtenidas. Resumiendo se trata de aportar nuevos CMMI es un modelo de calidad basado en procesos, que
aspectos, ideas y tecnologas que permitan mejorar el ayuda a recorrer el camino hacia la optimizacin de los
proceso del software. mismos y se desarrolla en un contexto internacional que
permite a las empresas nacionales adquirir un importante
En el objetivo de determinar la madurez de una factor de competitividad, eficiencia y diferenciacin. Lo
organizacin en los niveles mencionados, se considera la anterior, de vital importancia cuando se tiene el inters
calificacin de la capacidad de los procesos en niveles particular de exportar productos o servicios.
con nombres y caractersticas muy similares al nivel de
madurez de la organizacin (Incompleto, Ejecutado,
Gestionado, Definido, Gestionado Cuantitativamente y 5. BIBLIOGRAFA
Optimizado), adicionando un nivel de capacidad
incompleto o nivel 0, en el que un proceso no consigue
sus objetivos o no se [1] Real academia de la Lengua; bsqueda por calidad
termina.13 en http://buscon.rae.es/draeI/html/cabecera.htm,
visitada en Mayo de 2008

[2] Sistemas de gestin de calidad Conceptos y


vocabulario (Traduccin certificada), ISO 9000:2000,
ISO 2000.

[3] Deming, Edwards, Out of the Crisis, Cambridge


University Press, 1986.

[4] Juran, Joseph, Jurans Quality Handbook, Ed.


McGraw Hill, 1998

[5] Pressman, Roger, Ingeniera de Software 3 Ed.,


McGraw Hill, 1993.
Figura 3. Niveles de Capacidad del modelo CMMI
4. CONCLUSIONES
[6] Standard Glossary of Software Engineering
Terminology, IEEE STD 610-1990, IEEE 1990.
Lo que hemos visto en ste artculo son unas bases
simplificadas del concepto de calidad y cmo se aplica al
[7] Secades, Vidal. Gestin del Conocimiento:
Software. De ello nos viene a la cabeza la idea de
Modelos de transferencia del conocimiento y Calidad
evolucin de la necesidad de diferenciacin de las
en los Medios de Comunicacin, Organizaciones y
industrias y cmo sta necesidad lleva al desarrollo de
empresas en Curso nivelatorio de Doctorado,
estndares de calidad a travs de los aos. El estadio
Universidad Pontificia de Salamanca, Espaa, 2007.
actual de la industria del software requiere la aplicacin
[8] Calidad Total en Informtica,
13
Sinopsis de de los modelos CMM y CMMI, http://www.inei.gob.pe/biblioineipub/bancopub/inf/Lib
5042/cap15.htm, Visitada en Abril de 2008
http://www.navegapolis.net/content/view/330/60/ visitado en Mayo de
2008
331 Scientia et Technica Ao XIV, No 39, Septiembre de 2008. Universidad Tecnolgica de Pereira.

[9] Colciencias, Convenio Interadministrativo de


Cooperacin No. 055-2005 SENA No. 030-2005,
Colciencias, Agosto de 2005.

[10] CMMI Transition Plan,


http://www.sei.cmu.edu/cmmi/background/trans-
plan.html, visitada en Mayo de 2008

[11] Sinopsis de de los modelos CMM y CMMI,


http://www.navegapolis.net/content/view/330/60/
visitado en Mayo de 2008

[12] CMMI. Calidad. Ingeniera del Software,


http://www.ingenierosoftware.com/calidad/cmm-
cmmi.php, visitada en Mayo de 2008

También podría gustarte