la calidad del software como eje temático de

Anuncio
te
le
)r.
)$
�$
LA CALIDAD DEL SOFTWARE COMO
EJE TEMÁTICO DE 1 NVESTIGACIÓN
;e
e.
'5
e
·o
a
a
n
CELIO
Gil
Ingeniero de Sistemas Universidad Distrital. Especialistc;i en Administración cte Empresas,
Oooente Investigador. Universidad Ubre.
a
s
y
s
;,
RESUMEN
PALABRAS CLAVE
e
El propósito de este artículo es contribuir con el
Aseguramiento de la Calidad en la Industria
Nacional del Software y resaltar como factor
diferenciador del Ingeniero de Sistemas
Unilibrista: La Capacidad de Implementación y
Gestíón del Aseguramiento d e la Calidad. La
Calidad del Software (SQA, Software Quality
la Calidad, Industria del Software,
Métricas. Metodologías, ISO, SQA, Factores de
Calidad, Modelo de Madurez.
�/
l.
s
e
4
es una actividad que se aplica a lo
largo de la cadena productiva de software. La SQA
comprende procedimientos para la aplicación
efectiva de métodos y herramientas. revisiones
técnicas formales. técnicas y estrategias de
prueba, procedi mientos de control, procedi­
mientos de garantía y mecanismos de medida
(métricas).
Assurence},
Para contribuir con la Gestión e Implementación del
Aseguramiento de la Calidad del Software, el programa
de Ingeniería de Sistemas ha desarrollado el Eje
Temático denominado: Calidad de Software. esto con
el fin de contribuir con el desarrollo de la Industria
del Software en Colombia.
Fecha de recepción dél artículo: 12 de diciembre de 2005.
Fecha de aceptación <1e1 artículo: 15 de marzo de 2006.
Aseguramiento de
ABSTRACT
The intention of this article is to contribute with the
Securing of the Quality in the National lndustry of
Software and to stand out like differentiating factor
of the Systems e n gineer Unilibrista: The Capacityof
lmplementation and Management of the Securing
of the Quality. The Quality of Software (SQA, Software
Quality Assurence) is an activity that is applied ali along
of the productive chain of software. The SQA includes/
understands procedures for the effective application
of methods and tools, formal technical revisions,
techníques and strategíes of test, control procedures.
procedures of guarantee and mechanísms of
measurement (metric).
In order to contribute with the Management and
lmplementation of the Securing of the Quality of
Software. the program of Engineenng of Systems has
Proponer y desarrollar proyectos que busquen
developed the denommated Thematic AxíS: Quality of
generar o aplicar conoomoento para el desarrollo
Software,
de nuevos pro ductos .
this w1th the purpose of contributmg w1th
the development m the National lndustry of Software
in Colombia.
Difundir e l trabajo realizado a través de seminarios.
congresos nacionale s
.
KEYS WORD
Securing of the Quality, Trains of Software. M et rlc
.
M et ho dolog i e s. ISO, SQA, Factors of Qualit y and
.
Model of Maturity.
Analizar ras metodologías existentes y elaborar o
proponer nuevos paradigmas que respondan a las
características de los productos de Software
actuales y futuros.
INTRODUCCIÓN
Proponer una metodología de Aseguramiento de
la calidad e n los procesos de desa r r oll o d e
software.
El presente articulo tiene como objetivo la apropiación
Contribuir con el desarrollo de la industria del
IS
Cl
y el desarrollo del conocimiento relacionados con el
Software en Colombia a través de las empresas
tema del aseguramiento de la caridad en la Industria
desarrolladoras de software. sensibilizándolas en
PI
del Software. Al abordar la Galidad dentro del contexto
los procesos de calidad de software y fortalecer
general omploca relacionar temáticas como: Procesos y
la calidad de los productos de software, de tal
forma que e r SQA s e convierta en un factor de
ventaja competitiva en la ondustroa del software.
IS
Metodologías, Gestión de Proyectos, Normas y
Estándares. Productos. Métricas y Factores de Calidad.
D entro del desarrollo de cada una de ras tem áticas
propuestas se formulan entre otras las soguoentes
preguntas de investigación: ¿Cómo obtener un
Software con calidad?, ¿Cómo evaluar la calidad del
Software?. ¿Cómo co nt ro lar la Madurez del Software?
Los crecientes cambios y perspectivas
Impulsan a
obtener como resultados esperados del presente
proyecto estudios comparativos de metodologías de
desarrollo, aplicación de las métricas de software y
poder evaluar el estado del arte del software en la
ciudad de Bogotá.
1. OBJETIVOS
1.1 General
Apropiar y desarrollar conocimientos relacionados con
el t e m a del Ase g ura mient o de la C ali dad en ra
Industria del Software que permita consolidar los
fundamen tos teóricos prácticos, la difusión del trabajo
realizado e incentivar la creación de métricas
aplocables en la Indust ria del Software Nacional.
1.2 Específicos
Le
re
2. CONTEXTO
té
lé
La calidad en el desarrollo y mantenimiento del
software se ha convertido hoy en día en uno de los
principales objetivos estratégicos de ras organizaciones
desarrolladoras de so ftware debido a q ue cada vez
más. los procesos principales de las organizaciones
pi
dependen
de
m
El aseguramiento de la Calidad de Software. implica
'ª'
.
básicamente
de
los
sistemas
información.
se
dt
ac
M
abordar. estudiar, investigar y relacionar temáticas
de
como: Procesos y metodolog ías, Gestión de proyectos,
fa•
Normas y Herramientas, Productos. Métricas y
Factores de Calidad. Ver Figura 1.
di:
Los Indicadores de p roce s o s ' permiten a una
orga nización de ingeniería del software tener una visión
profunda de la eficacia de un proceso ya existente.
Los indicadores de proyectos permiten al gestor de
proyectos del software : l·Evaluar el estado del proyecto
en curso: 2·Seguir ra pista de los riesgos potenciales;
3-Detectar las áreas de problemas antes de que se
2
de
un
De
ca
conviertan en críticas; 4-Ajustar el flujo y las tareas
Conformar una base de investigadores que estén
en
in
se
capacidad
de
formular
proyectos
de
1nvest1gac1ón y productos que tengan como base
la aplicación de ras diferentes métricas.
del trabajo; y S·Evaluar la habilidad del equipo del
P<oyectO en IJ(o de la Gahdad de los productos.
Para la industria del software las normas y e stándares
relevantes son:
'SI
wa fe . Un en foq u e pr
ac u co. 5 edi ci ón . Mc G raw Hill.
1 Rogcr P ressm a n. Ingenier ía del Soft
54
1\VAN(('t ll'lv1·.,h��1c1dn
eo
lngenietí.1. 2006 No. 4
'M
' El
Figura 1. Mapa Conceptual
.quen
Ante esta situación. se hace necesario pensar en
herramientas que permitan comprobar y verificar la
1rrollo
calidad de un producto de software, aplicable a un
Normas y
H errami en
t�
arios,
t
1rar o
determinado sector de la industria
o sector de la
comunidad. y de esta manera contribuir al desarrollo
y fortalecimiento de la ingeniería en el país.
Ascgar Ami� nto de
I• C•lidad
a las
Son · u. rr
\vare
Fact
OfCS de
i Udad
C
3. MARCO TEÓRICO
Antes de empezar hablar acerca de que podría ser la
:o de
calidad de los productos de software, se debe definir
o de
qué se entiende por calidad? ¿a qué es aplicable? y
¿de qué forma puede ser relacionada con productos
del
1
esas
s en
ISO 9001. Este estándar describe el sistema de
calidad utilizado para mantener el desarrollo de un
producto que implique diseño.
ecer
ISO 9003. Este es un documento específico que
tal
interpreta el ISO 9001 para el desarrollador de
e
r de
ire.
software.
de software?
Según el diccionario, calidad' se puede definir como:
"una característica o atributo de una cosa".
Uno de los principales objetivos de dar calidad a los
productos es minimizar las diferencias entre unidades
producidas. Estas diferencias tienen diversos
Los ingenieros de software afrontan la calidad (Y
orígenes y. por tanto. distintas y amplias formas de
realizan garantía de calidad) aplicando métodos
corregirlos, dependiendo de l a naturaleza del
técnicos sólidos y medidas. realizando revisiones
p ro duct o. Lo primordial es tener en cuenta el
técnicas formales y llevando a cabo pruebas de
concepto de brindar calidad a l o que s e está
los
software bien planificadas. El instituto de Ingeniería
realizando.
lnes
del Software [SE1]2 recomienda un conjunto de
vez
actividades de SQA que se enfrentan con la
>nes
planificación de garantía de calidad. supervisión,
del
?
de
que serán utilizados por otras personas.
McCall y sus colegas3 propusieron una serie de
3.1 Calidad en los productos Software
factores de calidad como los primeros pasos hacia el
icas
desarrollo de métricas de la calidad del software. Estos
tos.
factores evalúan el software desde tres puntos de vista
y
distintos: 1· Operación del producto (utilizándolo)
2- Revisión del producto (cambiándolo) 3· Transición
Jna
:;ión
�te.
de
produce productos
mantenimiento de registros. análisis e informes.
ilica
IS
De este modo. el brindar calidad es una actividad
esencial para un negocio que
del producto (modificándolo para que funcione en
un entorno diferente).
La calidad de Software tiene diferentes significados
para distintos grupos. Hasta e l momento puede
dilucidarse algunos de los atributos que hacen
comparable un producto de otro. Quizás podemos
considerar formas. colores. tamaños. manejabilidad.
entre otro s. Estas características pueden ser
físicamente mensurables y, por ello, fácilmente
De otra parte. el software es un producto con unas
comparables. Observando desde esa perspectiva,
características muy específicas:
¿De qué manera puede ser aplicada la calidad a los
?cto
Se desarrolla. no se fabrica en el sentido clásico
les:
del término.
se
gas
Se trata de un producto lógico, sin existencia física.
del
No se degrada con el uso.
Es extraordinariamente flexible.
productos de software? ¿Cómo controlar la variación
entre un producto de este tipo? Así como existen
medidas para atributos físicos, para el software
también existen medidas que pueden hacerlo
comparables. tales como puntos de función, líneas
de código y otras.
res
2
3
SEi. S oftware Eng
¡ neer l ng lnstltut e.
McCélll. J. A.. y J. P. cavano. <<A
ftamework for the Measurement ot Software Quality>>. /JCM Software Quahty Assurance.
• El American Heritage Oictionary.
AVANCE� lnVP<;1tgación en lng�nieria • 2006 No. -1
SS
La principal meta de un equipo desarrollador de
software debería ser siempre producir software
y con las características 1mplíc1tas que se esperan de
todo software desarrollado profesionalmente·.
catalogado como de alta calidad. Pero, para ello se
deben tener en cuenta algunas ideas previas
·
Los productos de software son realizados por personas
para personas. Así. las personas desa rrolladoras deben
de
DE INVESTIGACIÓN
Desde la década del 70. este tema ha sido motivo de
tener en cuenta claramente que son otras personas
preocupación
las que utilizarán sus productos, los que pueden estar
inves tigadores y c om erc 1 a llzadores de software,
sujetos a fallos constantes. A pesar de los avances
actuales en Inteligencia Artificial, los asistentes software
para el desa r ro l lo de software no son demasiado
confiables como para que la mano humana no
intervenga en este proceso. El desarrollo de productos
software es una actividad sujeta a muchos factores
que la pueden hacer poco confiable.
espe cialistas .
ingenieros ,
quienes han realizado cantidad de investigaciones al
respecto sobre los sig uientes objetivos:
La
la
cie
En
cal
¿Cómo obtener un Software con calidad?
err
¿Cómo evaluar la calidad del Software?
COI
¿Cómo controlar la Madurez del Software?
La
Los principales problemas se refieren precisamente
fre
Ingenieros Eléctricos y
a la aplicación inadecuada de las técnicas de
ap
Electrónicos (IEEE)'. es el grado en que un sistema.
Ingeniería de S oftware y a la no ut1hzac1ón de los roles
en
apropiados para el desarrollo de las tareas de la
ap
especificados y las necesidades del cliente. En la
empresa de software.
CIY
definición de la Norma IS0.9000 de la Organización
La mayoría de los productos desarrollados no han
Para e l
Instituto
de
componente o proceso cumple con los requisitos
Internacional para la Estandarización (IS0)6, la calidad
do software es el grado (pobre, bueno o excelente)
en que un conjunto de características inherentes del
software cumplen con los requisitos del sistema.
empleado técnicas adecuadas de análisis y diseño.
además no se cuenta con la documentación técnica
de los productos de la empresa; lo cual dificulta
software.
con los re quisitos funcionales y de rendimiento
Además, no está formalizado el proceso de desarrollo
desarrollo explícitamente documentados, y con las
características implícitas que se espera de todo
software desarrollado profesionalmente. No hay duda
que esta definición puede ser ampliada y nos sirve
para hacer hincapié en tres puntos importantes:
Los requis itos del software son la base de las
medidas de la calidad. La falta de concordancia
ha
5.
Lo�
considerablemente el desarrollo de proyectos de
La calidad del software se define como: Concordancia
explícitamente establecidos. con los estándares de
•
de software. ya que no existen procedimientos ni
métricas que permitan planificar y controlar estos
•
procesos.
De otra parte. el proceso de prueba de los productos
es de baja calidad así como el análisis preliminar de
nuevos requerimien tos.
La principa l causa de que todo esto suceda es la falta
81
GL
de industnahzación de la producción de software, es
2C
Pll
Los estánda res especificados definen un conjunto
decir, la tendencia a no usar procedimientos estándares
a la hora de producir software que permitan planificar y
de criterios de desarrollo que guían la forma en
controlar adecuadamente un proyecto de software.
20
¿Estado Actual del aseguramiento de la Calidad del
so
con los requisitos es una falta de calidad.
que se aplica la ingeniería de software. Sino se
siguen esos criterios. casi siempre habrá falta de
calidad.
Segun. Roger S. Pressman' define la cali dad como la
·concordancia con los requerimientos funcionales y
Con respecto a la mnovac1ón. Colombia ocupa el puesto
53 a nivel mundial y el sexto en América Launa.
de ren d1m1ento explícitamente establecidos. con los
La producción de software local presenta un
crecimiento promisorio, a pesar de la volatilidad de
ANSI/IEEE Std 729·1983. IEEE Standaod Glossary 01 Soltware Eng,neermg Termonology. IEEE lnc.
http:/www.iso.org
Ro&e1 Pressman. lngenieria del Sofu,•are. Un enfoque pr6clleo. 5 odlc16n. McGraw Hill.
1\VAN(f\
ln11C"'ilig..1ndn PO lngeoie1(J 2006 No. 4
•
PR
Software en Colombia?
estándares de desarrollo explícitamente documentados
" ISO 9000-3:1997.
Sf1
Es
4. PROBLEMAS O PREGUNTAS
para
la i
de
IN
hit
hit
e
I�
. (
'º (
de
las empresas del sector; esto tiende a cubrir la
•
demanda nacional.
Este desarrollo se ha logrado gracias a las d1f1cu1tades
de la adecuación del software importado, e l
mantenimiento y el soporte de los programas
•
)$,
·
e.
al
La aplicación de programas de calidad ha contribuido a
la profesion a lización .. de las empresas y a la con
cientízacion hacia la búsqueda de nuevos mercados.
•
"
En la parle de implementación de programas de
Base de datos para la catalogac1on de las Normas
y Estándares para la auditoria de la C ahdad en
Software .
.
de
Instructivos sobre técnicas a utilizar en el proceso
de desarrollo de software.
•
Co nf orm ación de u na Base de datos sobre
métricas en la Calidad d e Software.
Parámetros de evaluación del Estado del Software
en Bogotá.
calidad solo un 25% tiene certificación IS09000". sin
embargo los resultados siguen siendo baios
comparados con otros sectores i ndustr i al es.
1te
je
es
la
Las empresas colombianas están en desventajas
frente a niveles de competitividad basados en la
apl1cac16n de programas de calidad. Mientras que
en Estados Unidos cuenta con 1700 empresas que
aplican programas como el modelo CMM' y el modelo
CMMI' en Colombia solo hay cinco empresas que
han aplicado estos modelos.
CONCLUSIONES
La garantía de calidad del software es una actividad
que se aplica en todo el proceso del desarrollo de
software. La SQA comprende proced1m1entos para
la aplicación efectiva de métodos y herramientas.
revisiones técnicas formales y estrategias de prueba.
•
:in
'º·
vertiginoso en la última década. razón por l a cual
este sector h a contribuido al fortalecimiento de la
ca
5. RESULTADOS ESPERADOS
ta
Los siguientes son los resultados esperados:
je
110
íll
os
Estudios com parativos de:
economía
nacional.
Ante
esta
situación
la
Universidad L ib re a través del programa d e
Ingeniería de Sistemas h a propuesto dentro de l a
Metodologías de desarrollo de Software.
-
La Industria del Software ha tenido un crecimiento
Aplicación de las métricas de Software.
Productos de Software de aplicación espec1f1ca
desarrollados con Estánda re s de Cahd ad
.
línea de Ingeniería de Softwa re la creación del Eje
Temático denominado: Calidad de Software. para
contribuir al engrandecimiento de este sector de
'ª economía además de ser un factor d1ferenc1ador
del programa.
.
BIBLIOGRAFÍA
Ita
es
es
ry
Guías Ge n eral es de Desarrollo de Software ASOCIACIÓN COLOMBIANA DE INGENIEROS DE SISTEMAS. ACI S
.
PIATIINI, M.G y G arcía F.O.
"
Calida d en el desarrollo y mantenimiento de Software·. Editorial RAMA. 2003
PRESSMAN, Roger, "Ingeniería del Software un Enfoque Práctico". Tercera edic ión. Madrid. Me GRaw Hill.
2003.
tel
SOMERVILLE. lan. "Ingeniería de Soft w are . México. Pearson Educación, 2003.
;to
INFOGRAFÍA
JO
je
.
2002.
·
http://www.ac1s.gov.co
tittp:f/www.fedesoft.org.co
ISO. lnternat 1ona Orga.nization for Standard11.at1on. nttp;//www.lso.ch.
CMM Capabihty Maturity Moclel.
1 CMMI Capeb1hty Maturity Model lntegrated.
Descargar