You are on page 1of 6

Red de Revistas Cientficas de Amrica Latina, el Caribe, Espaa y Portugal

Sistema de Informacin Cientfica

Gustavo Alberto Ruiz, Alejandro Pea, Carlos Arturo Castro, Angela Alaguna, Luz Mery Areiza, Rafael David
Rincn
Modelo de Evaluacin de Calidad de Software Basado en Lgica Difusa, Aplicada a Mtricas de Usabilidad de
Acuerdo con la Norma ISO/IEC 9126
Revista Avances en Sistemas e Informtica, vol. 3, nm. 2, diciembre, 2006, pp. 25-29,
Universidad Nacional de Colombia
Colombia
Disponible en: http://www.redalyc.org/articulo.oa?id=133114988005

Revista Avances en Sistemas e Informtica,


ISSN (Versin impresa): 1657-7663
avances@unalmed.edu.co
Universidad Nacional de Colombia
Colombia

Cmo citar?

Fascculo completo

Ms informacin del artculo

Pgina de la revista

www.redalyc.org
Proyecto acadmico sin fines de lucro, desarrollado bajo la iniciativa de acceso abierto

Modelo de Evaluacin de Calidad de Software


Basado en Lgica Difusa, Aplicada a Mtricas de
Usabilidad de Acuerdo con la Norma ISO/IEC 9126
Gustavo Alberto Ruiz, Alejandro Pea, Carlos Arturo Castro,
Angela Alaguna, Luz Mery Areiza y Rafael David Rincn
UNIVERSIDAD DE SAN BUENAVENTURA, Medelln.
gustavo.ruiz@usbmed.edu.co, juan.pena@usbmed.edu.co,carlos.castro@usbmed.edu.co,
carlsaga@epm.net.co, lmareiza@epm.net.co
Recibido para revisin May2006, aceptado Jun2006, versin final recibida Jun2006

Abstract: In this article it is developed and it analyze a computational model based on the concepts of the
Fuzzy Logic that it will allow the calculate the value of Usability to final users of software developments based
on the Norma ISO/IECE 9126-1:2.001, and based on the Fuzzy Model of Takagi Sugeno Kang. For this models
development it becomes necessary to keep in mind a series of attributes that they qualify the Usbility according
to the Norma, like they are: Understanding, Easiness of Learning, Attractiveness, Operability and Conformity.
Later on to adjust on the part of the developer final users application, it will be necessary to fix an Usability
value and by means of the use of a genetic algorithm to identify the most sensitive attributes, improving this way
the time of development and giving satisfaction to the final user.

INTRODUCCIN

En este artculo se desarrolla y se analiza un modelo computacional basado en la lgica borrosa, para el clculo
de la usabilidad del software de acuerdo con una serie
de criterios de calidad basados en la Norma ISO/IECE
9126-1:2.001. Este modelo surge como respuesta a la
necesidad de establecer criterios slidos de evaluacin del
software educativo en virtud del incremento en la generacin del mismo. Si bien la necesidad surge del campo
especfico del software educativo, la propuesta pretende
ser generalizada a la evaluacin del software en general.
Para ello se parte de la identificacin y evaluacin de
cinco atributos bsicos por parte del usuario final como
son: Comprensibilidad, Facilidad de Aprendizaje, Atractividad, Operabilidad y Conformidad.
De los atributos definidos en la Norma, el de usabilidad es especialmente problemtico por el alto nivel
de subjetividad que presenta, por lo cual se descarta al
momento de hacer testing1 de calidad. Ello conduce a la
no aceptacin por parte de los usuarios de aplicaciones
que cumplen con todos los requerimientos funcionales y
no funcionales, debido a las dificultades propias de su
uso.
De acuerdo con lo anterior, se desarrolla un modelo de evaluacin de calidad del software que permite a

partir de la subjetividad de varios atributos identificados, calcular un valor de usabilidad confiable. Para el
desarrollo de este modelo se utilizaron conceptos propios de la lgica borrosa, y en especial el modelo borroso
del tipo Takagi Sugeno Kang, el cual a partir de una
serie de valores de pertenencia permite el clculo de un
valor para una variable de salida o variable a controlar
de manera analtica a partir de la aplicacin de criterios
estandarizados en la evaluacin de la calidad del software.
Una vez que se obtiene el modelo, se hicieron una
serie de encuestas a cada uno de los usuarios finales de
una determinada aplicacin y de acuerdo con un valor
de usabilidad preestablecido se estimaron una serie de
parmetros que permitieron identificar por parte de ese
usuario los atributos en los cuales la empresa desarrolladora se debera ajustar a las normas de la ingeniera
del software y de esta manera mejorar la aplicacin de
usuario final, disminuyendo as el tiempo de desarrollo
por parte de la empresa encargada del mismo.
En este artculo se plantea una caracterizacin general en torno a la evaluacin del software y cada uno
de los factores que afectan la misma. Posteriormente se
hace un anlisis de la usabilidad para luego proponer un
modelo de tipo borroso que permita ajustar el valor de
usabilidad a una serie de factores identificados por parte

1
Proceso a travs del cual se obtienen indicadores de calidad con respecto a las caractersticas de un producto evaluado,
normalmente se realiza por medio de una lista de chequeo.

Av. Sist Inf., Vol. 3 No. 2 pp. 2529, Medelln, Diciembre 2006, ISSN 16577663

26

G. Ruiz et al. / Avances en Sistemas e Informtica 3 (2) 2006 25 29

del usuario final de la aplicacin.


2 IDENTIFICACIN DE CONCEPTOS ADMINISTRATIVOS DE LA CALIDAD DEL SOFTWARE
La Calidad se determina en funcin de las caractersticas que hacen competitivo un producto al satisfacer
las necesidades implcitas y explicitas de los usuarios finales. Esto significa, una responsabilidad hacia el cliente
al suministrar las especificaciones correctas. En esencia,
se definir la calidad como: satisfaccin de las necesidades y cumplimiento de las especificaciones y fabricacin para cumplir con el propsito del cliente. Entre
otras los requisitos de calidad hacen referencia al conjunto de requisitos expresados en forma cuantitativa o
cualitativa respecto a las caractersticas de unos productos. Para hacer posible su realizacin y examen; los requisitos pueden ser convenidos y basados a partir de las
necesidades del mercado interno de una organizacin o
de la sociedad, esto incluye lgicamente requisitos jurisdiccionales y reglamentarios.
Un aspecto fundamental en la calidad, es la de la
gestin, la cual contempla la planificacin (describe las
operaciones que establecen los objetivos y los requisitos de calidad del producto, para el sistema de aseguramiento de la calidad); el control de calidad (con
el conjunto de acciones y tcnicas operacionales que se
usan para cumplir con los requisitos de calidad); el aseguramiento de la calidad (centrado en todas las actividades planificadas y sistemticas implementadas dentro
del sistema de calidad y evidenciadas como necesarias
para asegurar los requisitos de calidad) y El sistema de
calidad (compuesto por la estructura organizacional, los
procedimientos, procesos y recursos necesarios para implementar la administracin de la calidad).
En el caso de la calidad de software, est se define como: "La concordancia con los requerimientos funcionales y de rendimiento explcitamente establecidos,
con los estndares de desarrollo explcitamente documentados y con las caractersticas implcitas que se espera de todo software desarrollado profesionalmente"
[Anderson (1992)].
El estndar de la IEEE para la calidad de software
[Pressman (2001)] define el trmino calidad del software
como:

Las caractersticas del software que determinan el


grado en el cual dicho software en uso, cumple con
las expectativas del cliente
Para Pressman (2001), se hace necesario medir el
software para indicar la calidad del producto, evaluar la
productividad de la gente que lo desarrolla, evaluar los
beneficios (en trminos de productividad y de calidad)
derivados del uso de nuevos mtodos y herramientas de
ingeniera del software, establecer una lnea base para
estimacin, y ayudar a justificar el uso de nuevas herramientas o de formacin adicional.
Las mtricas para la evaluacin del software se
pueden catalogar en mtricas de productividad (enfocadas al rendimiento) de Calidad (enfocadas al nivel de
ajuste a los requisitos explcitos e implcitos del cliente)
y Mtricas Tcnicas (orientadas a caractersticas como
complejidad, y grado de modularidad, ms que en el proceso de desarrollo)
Las mtricas mencionadas, puede tener otra clasificacin: orientadas al tamao, la funcin y a la persona.
Las mtricas orientadas a la persona facilitan informacin sobre la manera como la gente desarrolla software,
adems de la efectividad de las herramientas y mtodos
utilizados. stas son subjetivas pues dependen de las
percepciones, opiniones y juicios de las personas, pueden
ser cuantitativas o cualitativas, como se puede observar
de las de medidas subjetivas utilizadas en un Test de
usabilidad tpico [IEEE (1983)]:
Facilidad de uso del producto
Facilidad de aprender el producto
Facilidad de hacer una determinada tarea
Facilidad de instalar el producto
Facilidad de encontrar informacin en el manual
Facilidad de comprender la informacin
Utilidad de los ejemplos de ayuda
3

ANLISIS DEL CRITERIO DE USABILIDAD

La Norma ISO/IECE 9126-1:2.00 categoriza los atributos de calidad del software en seis caractersticas: funcionalidad, confiabilidad, usabilidad, eficiencia, mantenibilidad y portabilidad, las cuales se subdividen en sub La totalidad de rasgos y caractersticas de un pro- caractersticas [IEEE (1983)].
ducto de software que se refieren a su habilidad para
Funcionalidad: La capacidad que tiene un prosatisfacer necesidades especficas.
ducto de software para proveer funciones que satisfacen necesidades establecidas e implcitas, cuando
El grado en el cual el software posee una combiel software es usado bajo condiciones especficas.
nacin deseada de atributos.
Esta compuesta por las siguientes subcaractersticas: apropiabilidad, exactitud, interoperabilidad y
El grado en el cual un usuario o cliente percibe que
cumplimiento con la funcionalidad.
el software cumple con sus expectativas.

27

G. Ruiz et al. / Avances en Sistemas e Informtica 3 (2) 2006 25 29

Confiabilidad: La capacidad que tiene un producto


de software para mantener su nivel de desempeo
cuando ste es usado en condiciones especficas.
Esta compuesta por las siguientes subcaractersticas: madurez, tolerancia a fallas, recuperabilidad y
cumplimiento con la confiabilidad.

mtricas de usabilidad como son: Comprensibilidad, Facilidad de Aprendizaje, Atractividad, Operabilidad y


Conformidad con la Usabilidad. Cada uno de estos atributos estar definido por una variable lingstica con la
siguiente estructura de cualidades como se muestra en la
Tabla 1.

Usabilidad: La capacidad que tiene un producto de Tabla 1: Estructura de cualidades para las variables
software para ser entendible, aprendido, utilizable y lingsticas del modelo
atractivo al usuario cuando ste es usado en condiVariable X a1
a1
< b1
X c1
ciones especficas. Esta compuesta por las siguientes
Ling.
X
<
b
X
<
c
subcaractersticas: comprensibilidad, facilidad de
1
1
aprendizaje, operabilidad, atractivo y cumplimiento
Mala
1
0
0
(b1 X)
con la usabilidad.
(b1 a1 )
Regular 0
0
Eficiencia: La capacidad que tiene un producto
(Xa1 )

(c1 X)

(b1 a1 )
(c1 b1 )
de software para proveer el desempeo apropiado
Buena
0
0
1
relacionado a la cantidad de recursos usados, bajo
(Xb1 )
condiciones determinadas. Esta compuesta por las
(c1 b1 )
siguientes subcaractersticas: comportamiento en el
Estas cualidades y valores, estn de acuerdo con la
tiempo, utilizacin de recursos, cumplimiento con la
Norma,
la cual define estos valores pero de manera deeficiencia.
terminstica. Para el caso especifico del modelo borroso,
Facilidad de Mantenimiento: La capacidad que estos conjuntos fueron definidos mediante un conjunto de
tiene un producto de software para ser modificado. cualidades y utilizando un factor de ponderacin inicial
Modificaciones pueden incluir correcciones, mejoras de acuerdo con la importancia que cada usuario final o
o adaptacin del software a los cambios de entorno, empresa le de cada uno de los atributos de la aplicacin.
requisitos y especificaciones funcionales. Esta com- Es de anotar que si una cualidad no es importante para
puesta por las siguientes subcaractersticas: traza- el usuario final o empresa, entonces el intervalo de los
bilidad, facilidad de cambio, estabilidad, facilidad conjuntos Malo y Regular disminuye dando una mayor
de ensayo, cumplimiento con la facilidad de man- posibilidad a que los conjuntos Bueno y Excelente sean
tenimiento.
incluidos para el clculo de la usabilidad.

Portabilidad: La capacidad que tiene un producto


de software para ser transferido de un ambiente a
otro. Est compuesta por las siguientes subcaractersticas: adaptabilidad, instalabilidad, coexistencia, reemplazabilidad, cumplimiento con la portabilidad.
4

Los valores asociados con cada una de las variables


lingsticas, estarn determinadas por la representacin
analtica de las mismas como se muestra en la Tabla
2. Por su parte la Figura 1 muestra una representacin
grfica de las ecuaciones definidas en la Tabla 2.

MODELO BORROSO PARA LA EVALUACIN


DEL SOFTWARE UTILIZANDO MTRICAS DE
USABILIDAD

El primer desarrollo del modelo Takagi Sugeno Kang,


para la evaluacin de software utilizando mtricas de
usabilidad constar de tres partes fundamentales:
1. Definicin de las variables lingsticas del Modelo.
2. Estructura del modelo Takagi Sugeno Kang TSK
3. Ajuste por Evolucin y Autoadaptacin.
4.1 Definicin de las Variables Lingsticas del Modelo
Las variables lingsticas que se utilizan en el modelo,
estarn determinadas por cada uno de los atributos considerados por la Norma ISO/IEC 9126-1 del 2001, para

Figura 1: Representacin grfica de las variables lingsticas


Tabla 2: Definicin analtica de las variables lingsticas
0
45
60
75

Rango
60
75
90
100

Variable
Mala
Regular
Buena
Excelente

28

G. Ruiz et al. / Avances en Sistemas e Informtica 3 (2) 2006 25 29

Cada una de las subcaractertsticas consideradas en


el modelo poseer una estructura similar a la mostrada
en la Figura 1 y en la Tabla 2.
La conformacin de los conjuntos borrosos asociados con cada una de las subcaractersticas, estarn determinados por una serie de encuestas realizadas a los
usuarios potenciales de una aplicacin cualquiera, este
valor estar dado entre [0, 100%] y quedara definido por
el nmero de puntos que se le asigne a cada encuesta
que evala cada subcaracterstica o atributo, por ejemplo para el caso de comprensibilidad la encuesta ser de
17 preguntas, cada una con un puntaje de 10 puntos, lo
que arrojar un intervalo de valores entre [0, 1700]. De
igual manera se har para cada una de las otras variables
del modelo.
De acuerdo con la importancia que cada organizacin d a cada una de los atributos de entrada al modelo, los conjuntos borrosos sufrirn un desplazamiento
tanto a la derecha, en el caso de mucha importancia,
as como a la izquierda en el caso de que se le de poca
importancia a la variable.
El movimiento de cada una de los conjuntos borrosos se describe a continuacin:
Lista numerada

IF x1 is C1l and and xn Cnl


T HEN y l = cl0 + cl1 x1 + + clnn xn

(2)

Donde,
son los conjuntos Borrosos,
son
constantes de la combinacin lineal de salida, l =
1, 2, , M .
Aqu la parte IF de las reglas, es similar a los sistemas Fuzzy convencionales, pero la parte THEN es una
combinacin lineal de las variables de entrada al sistema.
Es de anotar que x = (x1 , x2 , , xn )T U Rn , mientras que la salida del sistema estar dada por y l V R
y se describe en la ecuacin (3) [Nielsen (1990)]:
Cil

cli

PM l l
yw
(3)
y l = Pl=1
M
l
l=1 w
Donde los pesos de la Combinacin Lineal para la
salida estn dados por la ecuacin (4) [Nielsen (1990)]:
wl =

n
Y

uCil (xi )

(4)

i=1

Para el desarrollo del modelo Fuzzy-Usability, es


necesario inicialmente determinar las variables de entrada y salida a considerar del sistema, para luego reali1. Se asigna un valor de importancia a cada una de zar una identificacin del sistema teniendo en cuenta la
las caractersticas a evaluar y se calcula el promedio siguiente estructura:
ponderado por porcentaje.
u = f (c, f a, a, o, co)
(5)
2. Se identifica cual es el mayor y menor peso dentro
Donde: u es el valor de usabilidad para el software, c
del conjunto de entrada.
es la comprensibilidad de la aplicacin, f a es la facilidad
de Aprendizaje, a es la atractibilidad, o es la operabili3. Teniendo dichos pesos, es posible definir un inter- dad y co es la conformidad.
valo entre el mayor peso (b) y el menor peso (a) y
Ahora, si la salida depende de los valores de entrada
para este se halla el valor medio (m).
al sistema, se obtiene la funcin de TSK Fuzzy. Especficamente, un TSK Dinmico es construido a partir de (5)
4. Se verifica cuales pesos de los definidos en el tem y de acuerdo con la estructura de las siguientes reglas:
1, estn por encima y cuales por debajo del valor
medio hallado en el tem 3.
IF c is C p and f is F p and a is Ap


(b a)
and o is Op and co is COp (6)
m=
+a
(1)
2
T HEN up = ap1 c + ap2 f + ap3 a + ap4 0 + ap5 co

Donde, C p , F p , Ap , Op , COp son los conjuntos difu5. Los conjuntos borrosos en los cuales las subcaracsos
de
entrada al sistema. ap1 , ap2 , ap3 , ap4 , ap5 son las constersticas tengan pesos por encima del valor medio,
tantes del Sistema. p = 1, 2, , N es el nmero de
se desplazan [ (ba)
2 ] unidades a la derecha del eje "x"
reglas
del sistema.
y los que tengan pesos por debajo del valor medio,
(ba)
se desplazan 2 unidades a la izquierda del eje x.
4.3 Ajuste por Evolucin y Autoadaptacin
4.2 Estructura del Modelo Takagi Sugeno Kang para la Para ajustar la aplicacin desarrollada, se fija un valor
de usabilidad U cualquiera dependiendo de la empresa y
Obtencin del Valor de Usabilidad
luego se evala el modelo por cada uno de las personas
El Sistema TSK Fuzzy tiene una estructura que se mo- que van a utilizar la aplicacin. A partir de este valor utidela partir de la definicin de un conjunto de reglas de lizamos un algoritmo de tipo gentico (representacin binaria) que permita ajustar los valores de ap1 , ap2 , ap3 , ap4 , ap5
la siguiente manera [Nielsen (1990)]:

G. Ruiz et al. / Avances en Sistemas e Informtica 3 (2) 2006 25 29

al valor de usabilidad fijado de la siguiente manera [Takagi y Sugeno (1985)]:


ap1

ap2

ap3

ap4

ap5

Figura 2. Estructura del individuo a evolucionar


Los valores ms altos obtenidos de esta estimacin,
ayudarn a identificar los factores que ms afectan la
aplicacin desarrollada y se genera un proceso de realimentacin por parte del usuario final a la empresa
desarrolladora, para generar un ajuste significativo del
aplicativo al hacer nfasis de manera particular en un
atributo en particular y para las necesidades especificas
de un usuario final.
5

CONCLUSIONES

29

4. La fijacin de un valor de usabilidad del sistema


y el ajuste de los pesos utilizando tcnicas evolutivas, permite ajustar la funcin de salida del TSK
generando de esta manera un modelo ajustable de
tipo adaptativo a las necesidades del cliente, lo que
permite adems mejorar el ciclo de vida de producto y llegar hasta el desarrollo de un sistema PLM
(Product LifeCycle Management) para el desarrollo
de software.
5. A pesar del componente altamente cualitativo del
modelo, los resultados obtenidos se ajustaron a las
necesidades de los usuarios finales al estimar a partir de valores cualitativos un valor cuantitativo para
la variable de salida por medio del control TSK.
REFERENCIAS

1. La definicin de cada una de las variables lingsti- Anderson, R. (1992), Social impacts of computing: Codes of
professional ethics, Social Science Computing Review
cas del modelo y de cada uno de los conjuntos bo10(2), 453469.
rrosos, se ajustaron de manera general a la Norma
con algunas modificaciones, dadas especficamente
por el carcter cualitativo de los atributos que con- IEEE (1983), IEEE Glossary of Software Engineering Terminology, Institute of Electrical and Electronics engineers,
forman el modelo.
USA. Product Standard.

2. El modelo permiti mediante un proceso de evolucin, identificar los factores ms sensibles dentro de Nielsen, J. (1990), Ten usability heuristics, En lnea:
<http://www.useit.com/papers/heuristic/
la usabilidad de una aplicacin para un usuario final
/heuristic_list.html>.
determinado.
3. La identificacin de los factores que afectan la Pressman, R. (2001), Ingeniera del Software, un enfoque
usabilidad, permiten a la empresas desarrolladoprctico, 5a edn, Mexico McGraw Hill.
ras centrarse en los aspectos ms relevantes de la
aplicacin, disminuyendo de manera significativa el Takagi, T. y Sugeno, M. (1985), Fuzzy identification of systiempo de desarrollo en las mejoras que requiere un
tems and its applications to moeling and control, IEEE
trans Systems, Man and Cybernetics 15(1), 116132.
sistema.