Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Calidad Del Software
Calidad Del Software
19/10/01
13:30
Pgina 54
Calidad
del software (I)
Los primeros aos de la era informtica se vieron
marcados por el desafo del desarrollo del hardware de
los ordenadores. Este desafo se ha visto superado por
los vertiginosos avances de la microelectrnica. Hoy en
da el principal problema al que nos enfrentamos es la
llamada crisis del software. La causa principal de esta
crisis es el aumento de la complejidad de las
aplicaciones sin la adopcin de los procesos adecuados
de desarrollo que contribuiran a obtener un producto
de mayor calidad y menor coste. En este artculo se van
a presentar cules son esas claves para conseguir un
software de mayor calidad.
54 anales
de mecnica y electricidad
Introduccin
a aparicin en la prensa de
frases como El desarrollo
del software se ha convertido
en un tema crtico para las
modernas organizaciones, y
por tanto para toda la sociedad (Fitzgerald & OKane,
1999) o Que el desarrollo del
software sea un xito implica
mucho ms que escribir cdigo. La mayora de las organizaciones de desarrollo del
software comprenden ahora
que el xito de los procesos
depende de la organizacin y
estructura de la empresa, el
control de proyectos y los procedimientos y estndares software (Dutta, Lee, & Van
Wassenhove, 1999) ponen de
relieve la importancia que actualmente se le da al desarrollo del software.
19/10/01
13:30
Pgina 55
CALIDAD
TABLA 1. FCTORES
Aspecto
que trata
Operacin
del Producto
Revisin
del producto
Transicin
del producto
Factor
Calidad
DE
CALIDAD
DE
DEL
SOFTWARE (I)
MCCALL
Relacionado con
Correccin
Fiabilidad
Eficiencia
Cantidad de recursos de computadora y de cdigo requeridos por un programa para llevar a cabo sus funciones
Integridad
Grado en que puede controlarse el acceso al software o a los datos, por personal
no autorizado
Facilidad
de uso
Esfuerzo requerido para aprender un programa, trabajar con l, preparar su entrada e interpretar su salida
Facilidad de
mantenimiento
Flexibilidad
Facilidad
de prueba
Esfuerzo requerido para probar un programa de forma que se asegure que realiza
la funcin requerida
Portabilidad
Reusabilidad
Facilidad de
interoperacin
anales
de mecnica y electricidad
55
CALIDAD
19/10/01
13:30
Pgina 56
SOFTWARE (I)
DEL
TABLA 2. MTRICAS
PROPUESTAS POR
Mtrica
MCCALL
Relacionado con
Facilidad de auditora La facilidad con que se puede comprobar la conformidad con los estndares
Exactitud
Normalizacin de las
comunicaciones
El grado en que se usa el ancho de banda, los protocolos y las interfaces estndar
Completitud
Concisin
Consistencia
Estandarizacin
en los datos
Tolerancia de errores El dao que se produce cuando el programa detecta una situacin erronea
Eficiencia en la
ejecucin
Facilidad de
expansin
Generalidad
Independencia del
hardware
Instrumentacin
El grado en que el programa muestra su propio funcionamiento e identifica errores que aparecen
Modularidad
Autodocumentacin
Simplicidad
Independencia del
sistema de software
Facilidad de traza
Formacin
56 anales
de mecnica y electricidad
Factores de Calidad
egn (Pressman, 1995),
basndose en los estudios
de (McCall, 1977), los factores que afectan a la calidad
del software se centran en
tres aspectos importantes de
un producto software: sus caractersticas operativas, su capacidad de soportar los cambios (revisin del producto) y
su adaptabilidad a nuevos entornos (o transicin del producto). En la Tabla 1 se muestran los factores de calidad
definidos por McCall. Estos
factores de calidad de McCall,
a pesar de haberse def inido
hace mucho tiempo, conservan en gran medida su vigencia (salvo para el caso de la
programacin orientada a objetos).
19/10/01
13:30
Pgina 57
CALIDAD
de calidad se muestran en la
Tabla 2.
Garanta de Calidad
a garanta de calidad del
software comprende una
gran variedad de tareas, asociadas a siete actividades principales:
Mtodos y herramientas
de anlisis, diseo y
codificacin
La calidad del software debe estar diseada para el producto o sistema, no es algo impuesto a posteriori. Por esta
razn, la garanta de calidad
del software comienza realmente con un conjunto de herramientas y mtodos tcnicos
que ayudan al analista a conseguir una especificacin y un diseo de alta calidad.
En un proceso de desarrollo software, existen una serie
de fases que vienen determinadas por las tareas bsicas
que hay que realizar para obtener el producto software.
Se definen distintos ciclos de
vida de acuerdo a la evolucin
del software a lo largo de dichas fases. Las fases ms tpicas son:
Requisitos del Sistema:
tambin llamada anlisis de requisitos, especificacin o dise1
DEL
SOFTWARE (I)
prende tres actividades principales: obtencin, anlisis y validacin. La mayor parte de las
normas y autores asumen que
el proceso de obtencin de los
requisitos, su anlisis y validacin es iterativo por naturaleza, ya que se reconoce que es
prcticamente imposible obtener todos los requisitos y que
stos sean correctos sin tener
que volver atrs en algn momento del proceso. Las actividades son:
Obtencin (Elicitation 1 )
de Requisitos: los clientes,
compradores o usuarios del
sistema a desarrollar descubren, revelan, ar ticulan y
entienden sus propios requisitos. Los requisitos se obtienen con entrevistas,
cuestionarios, reuniones de
las distintas partes implicadas y diversas tcnicas cuyo
resultado deben ser los requisitos orientados al cliente o tambin llamados requisitos - C, que sern analizados en la siguiente actividad.
Anlisis de requisitos: se debe razonar sobre los requisitos-C para comprender mejor el problema, detectar
conflictos o inconsistencias,
combinar requisitos relacionados e identificar nuevos
requisitos, normalmente
mediante la construccin de
modelos, en la que podran
participar aquellos clientes y
usuarios con los conoci-
El trmino en ingls elicitatin se utiliza en la obtencin de requisitos para definir la actividad realizada por el analista con
el fin de proteger la informacin que de las necesidades del sistema tienen los usuarios finales, los expertos y los clientes.
Adems, esta actividad debe ser capaz de mostrar el conocimiento tcito, aquello que los usuarios no comentan por olvidarlo
o considerarlo obvio.
anales
de mecnica y electricidad
57
CALIDAD
DEL
19/10/01
13:30
SOFTWARE (I)
Pgina 58
58 anales
de mecnica y electricidad
Revisiones del
software que se
aplican durante
cada paso del
desarrollo del
mismo
Una vez que se ha creado
una especificacin y un diseo
de un software, debe garantizarse su calidad. Las revisiones del software son un filtro
para el proceso de ingeniera
del software y se aplican en
varios momentos del desarrollo. Sirven para detectar fallos
19/10/01
13:30
Pgina 59
CALIDAD
Estrategia de prueba
DEL
SOFTWARE (I)
Procedimiento que
asegure un ajuste a
los estndares de
desarrollo del software
Debido a la importancia de
las pruebas para la calidad y a
Gestin de
configuraciones de
software (control de la
documentacin del
software y de los
cambios realizados)
anales
de mecnica y electricidad
59
CALIDAD
DEL
19/10/01
13:30
Pgina 60
SOFTWARE (I)
Mecanismos de medida
La medicin es una actividad fundamental para cualquier disciplina de ingeniera.
Un objetivo importante de la
garanta de calidad es seguir la
pista a la calidad del software
y evaluar el impacto de los
cambios de metodologa y de
procedimiento que intentan
mejorar la calidad del software. Para conseguirlo, se deben
recolectar mtricas del software, como se ver ms adelante.
Registro y realizacin
de informes
Son procedimientos para la
recoleccin y divulgacin de
informacin de la garanta de
calidad del software. Los resultados de las revisiones, auditoras, control de cambios,
prueba y otras actividades de
Conclusiones
n esta primera par te del
artculo se han pesentado
los factores que afectan a la
calidad del software y cules
son las tareas que hay que realizar para garantizarla. En la
segunda parte del artculo se
estudiarn con cierto detalle
dos de estas tareas: los estndares y modelos de referencia y
los mecanismos de medida.
Tambin se presentarn las restricciones que tiene algunas de
estas tcnicas y su uso en la actualidad. Finalmente, se presentarn las conclusiones generales del artculo. a
Bibliografa
Belin, M. d. L. (1998). La gestion de configuration: points
de repre. Revue de l'Electricit et de l'Electronique,
6(Juin), 58-61.
IEEE. (1990). IEEE Standard Glossary of Software Engineering Terminology. IEEE/ANSI Standard 610.12-1990 : IEEE.
Durn Toro, A., Bernrdez Jimnez, B., Corchuelo Gil, R., &
Toro Bonilla, M. (2000). Ingeniera de Requisitos y Tecnologa de Objetos. Novtica, Ene/Feb, 15-20.
60 anales
de mecnica y electricidad