You are on page 1of 11

Considerando el Usuario en el Proceso de Desarrollo de Aplicaciones con

Interfaces Gráficas

Miguel Argollo Jr.


Carlos José Maria Olguín
Fundação Centro Tecnológico para Informática - CTI
Instituto de Computação - IC
Rod. Dom Pedro I (SP-65) Km 143,6
CEP 13081-970, Caixa Postal 6162
Campinas - SP, Brasil
Fone: +55 19 240-1030 Fax: +55 19 240-1464
e-mail: {miguel, olguin}@ic.cti.br
BRASIL

RESUMEN
Hoy en dia, los computadores están presentes en todos los escritorios y son considerados
bienes de consumo. A partir de esta gran proliferación y uso de computadores personales
(PC) es natural que la definición y el proceso de desarrollo de sistemas hayan adquirido
otra dimensión. Consideraciones tanto en relación a la presentación del producto como a
las necesidades y deseos de los usuarios, pasan a tener un papel central en el desarrollo
de aplicaciones con interfaces gráficas [1, 2]. En este artículo presentamos algunas
técnicas simples y eficaces de la Ingeniería de Usabilidad [3], para la obtención de
interfaces gráficas de buena calidad. Estas técnicas están siendo utilizadas con resultados
satisfactorios por el Grupo de Interfaces Gráficas del Instituto de Computação de la
Fundação Centro Tecnológico para Informática.

1. Introdução
Hace mucho que las pantallas con fondo obscuro y letras verdes fueron dejadas de lado.
Los sistemas basados en caracteres, que exigian entre otras cosas memorización de comandos, no
pueden ser comparados a aplicaciones con interfaces gráficas intuitivas y atrayentes. Mucho
cambió en diez años. Hoy, los computadores están en todos los escritorios y son considerados
bienes de consumo. A partir de esta gran proliferación y uso de PCs es natural que la definición y
el proceso de desarrollo de sistemas hayan adquirido una dimensión mayor de forma a atender
nuevos mercados, compuestos por fajas más amplias y diversificadas de usuarios.
La preocupación que siempre estubo presente, entre las personas que desarrollan
aplicaciones, de eficiencia y funcionalidad continúa. Lo que es reciente son las consideraciones
tanto en relación a la presentación del producto como a las necesidades y deseos de los usuarios,
que pasan a tener un papel central en el desarrollo de interfaces gráficas. De esta forma, las
exigencias actuales en relación a lo que se considera un buen sistema, determinan nuevos
critérios, como por ejemplo, la Usabilidad de la aplicación.

2. Interface Hombre-Computador
La comunicación entre el usuario y la computadora se realiza a través de una interface, la
cual es responsable por el buen éxito de la interacción y por la fuerza del diálogo. Paul Heckel [4]
sugiere que, para proyectar buenas interfaces con usuarios, se debe pensar más en comunicación
que en computación.

Lo que parece consenso, entre proyectistas de interfaces e investigadores de factores


humanos, es que una buena interface debe ser transparente para quien utiliza la aplicación,
capacitando y auxiliando al usuario para que este tenga fácil acceso a las funcionalidades del
producto. Pero, cómo proyectar una interface que atienda estas características? Cómo verificar
que la interface desarrollada alcanzó los objetivos?

La representación del conocimiento y de la información, en este nuevo estilo de


interacción, es realizada de forma a llevar el mundo del usuario para dentro del computador.
Brenda Laurel [5] considera esencial que cada sistema se base en metáforas del mundo real, de
modo a construir escenas familiares e intuitivas, que faciliten la interacción y la comunicación
usuario-sistema. En este enfoque, centrado en el usuario, hay una ampliación del concepto
tradicional de desarrollo de sistemas que trasciende los requisitos funcionales de la aplicación,
incluyendo factores subjetivos. Por ejemplo, la manera como el usuario estructura sus trabajos, su
experiencia con computadores, su conocimiento sobre el dominio de la aplicación, entre outros.

Alan Kay [6], en la época en que desarrollaba la interface del Macintosh, destacaba la
inadecuación y la incompatibilidad entre el desarrollo de buenos sistemas con interfaces gráficas
y los métodos tradicionales. Browne [7] propone una nueva postura para que los usuarios
aprueben los productos: “Es ingenua la postura de que el proceso de proyecto de la interface con
el usuario no es necesário, pudiendo ser realizado simplemente durante la finalización total del
proyecto...”.

El impacto financiero y la importancia de las interfaces gráficas, mostrados por varios


trabajos de investigación, justifican la atención que debe ser dada a su elaboración y proyecto.
Varios estudios cuantitativos nos dán argumentos objetivos sobre el papel y el lugar de las
interfaces gráficas en el proceso de desarrollo y justifican la necesidad de utilizar métodos
modernos, para disminuir el costo total del sistema y aumentar la productividad de la industria de
software.

Sin embargo, existen muchas dificultades en relación al uso de nuevas metodologias para
desarrollar una buena interface. Debora Hix [8] resume muy bien esta cuestión cuando afirma
que “Una buena interface es como el teléfono o como la luz eléctrica; cuando funciona nadie la
nota. Una buena interface parece algo obvio, pero lo que no parece ser tan obvio es como
desarrollar una interface que tenga un alto grado de usabilidad”.

3. Usabilidad
Cuando hablamos de Usabilidad estamos interesados en cuestiones relacionadas a cuán
bien los usuarios pueden utilizar las funcionalidades de la aplicación. Nielsen [3] relaciona el
concepto de Usabilidad a cinco atributos que pueden ser medidos, ellos son:

• facilidad de aprendizaje;
• eficiencia de uso;
• facilidad de memorización;
• baja tasa de errores y
• satisfacción subjetiva.

Con esta asociación, el concepto se vuelve más concreto y posibilita medir la facilidad de
uso de la funcionalidad del sistema.

Logicamente, dependiendo del proyecto y de los usuarios típicos, estas características


pueden ser conflictivas y como tienen importancia variable, cabe al especialista dar prioridades a
los aspectos de Usabilidad más importantes, considerando el dominio del sistema que se está
desarrollando. Lo que es consenso es que el concepto de Usabilidad es el parámetro central para
desarrollar buenas aplicaciones y para verificar la calidad de la interface. Pero, cómo desarrollar
esta buena interface?

4. Ingeniería de Usabilidad
La respuesta a esta pregunta esta dada por la Ingeniería de Usabilidad. Las bases para la
Ingeniería de Usabilidad fueron establecidas por Nielsen [3], que propuso una metodología para
la obtención de un producto con un alto grado de Usabilidad. Nielsen se concentra en el proceso
de desarrollo, el cual puede ser sintetizado en una lista de once pasos que, independientemente
del tipo de interface considerado, aumenta la Usabilidad de la aplicación. Los pasos son:

• Conocer al usuario - Fase básica y esencial, para identificación de las características


individuales de los usuarios, del análisis de las tareas y de los objetivos.

• Analizar productos de la competencia - Análisis comparativa de diversos productos


disponibles, para reflexión de los enfoques considerados y desarrollo de nuevas
propuestas.

• Especificar las metas de Usabilidad - Determinación de los pesos de los atributos de


Usabilidad, en función del proyecto, de los objetivos de la interface y de las métricas de
Usabilidad.

• Realizar el proyecto paralelo - Exploración de las diversas alternativas de proyecto, a


través del trabajo independiente de varios proyectistas, para generación de varias
soluciones.

• Ejecutar el proyecto participativo - Presentación de las diversas opciones de proyecto


para una muestra representativa de usuarios, para selección de las alternativas adecuadas.

• Efectuar el proyecto coordinado para la interface total - Aplicación de argumentos


de consistencia para todo el conjunto de la interface hombre-computador, incluyendo
además de las telas de la aplicación toda la documentación relacionada del sistema.

• Aplicar los principios de proyecto de interfaces y del análisis heurístico -


Utilización de principios para proyecto de interfaces con usuario y heurísticas de
Usabilidad, para evaluación del proyecto considerado.
• Realizar la prototipación - Elaboración de prototipos para posteriores evaluaciones de
Usabilidad, para disminución del tiempo y costos en la fase final de desarrollo.

• Efectuar pruebas empíricas - Aplicación de pruebas con los usuarios para obtención
de una lista de problemas relacionados a la Usabilidad de la aplicación.

• Ejecutar el proyecto interactivo - Realización de nuevas versiones de la inteface, a


través de un proceso interactivo de proyecto, basadas en los problemas de Usabilidad y en
las observaciones identificadas en las pruebas empíricas.

• Realizar observación en campo - Análisis de la utilización del producto, para colecta


de feedbacks.

Con esta lista se intenta definir los factores críticos para la Usabilidad de la aplicación,
buscando, a través de un desarrollo iteractivo, balancear los cinco atributos de Usabilidad para
obtener productos de software con un grado de Usabilidad satisfactorio.

4.1. Ingeniería de Usabilidad Reducida [9]

Logicamente, a veces no es posible realizar todas las fases de la lista. Una actitud
constructiva consiste en la reducción del ciclo propuesto por Nielsen, adaptándolo y haciéndolo
factible para la realidad del proyecto, con la aplicación de las principales fases. Es lo que
llamamos de principio del mínimo: “Mejor hacer lo mínimo que no hacer nada”.

La determinación de las principales fases de la Ingeniería de Usabilidad dependen del


proyecto y del estado en que este se encuentra. Lo ideal es que las actividades para aumentar la
Usabilidad de la aplicación esten presentes desde el inicio del proyecto.

La preocupación de conocer a los usuarios de la aplicación, además de ser el objetivo de la


primera fase de la lista, debe estar presente en todas las actividades siguientes, tanto en el ciclo
completo como en el reducido. Conocer a los usuarios es esencial para elaborar buenas
interfaces.

Existen varias formas de conocer a los usuarios de la aplicación, que la mayor parte de las
veces no son los clientes que encomendaron el sistema. La más obvia de ellas es visitarlos,
independientemente que el producto se encuentre en su fase inicial, en elaboración o listo. Lo
importante es consultarlos y observarlos utilizando el sistema, escuchar las sugestiones que
pueden ofrecer y estar preparado para modificar, tantas veces como sea necesario, la interface
que se está proyectando.

Desde este punto de vista, según el propio Nielsen sugiere, la prototipación, la aplicación
del análisis heurístico y las pruebas empíricas, se destacan como las principales fases en una
Ingeniería de Usabilidad económica.

4.1.1. Prototipación

La necesidad de observar los usuarios interactuando con la interface de la aplicación y


revisar el proyecto, para mejorar el diálogo, hace que la construción de prototipos sea una
actividad muy importante para obtener un buen producto.

El uso de prototipación, aliado a una metodologia de desarrollo iterativa, es una


herramienta muy importante para definir, junto con el usuario final de la aplicación, una interface
que considere las necesidades reales del trabajo a ser realizado. La idea es, en menos de un dia,
desarrollar un prototipo de la interface de la aplicación y mostrarlo al usuario, de manera que,
iterativamente, el proyecto de la interface evolua hasta alcanzar su versión final.

Para ahorrar tiempo y reducir costos, el prototipo no debe reproducir totalmente las
funcionalidades y las características del sistema. En realidad, el prototipo debe apenas representar
una parte del sistema. En la prática lo que se hace es cortar determinadas características del
futuro sistema o reducir el nivel de funcionalidad del prototipo. Es lo que se denomina de
prototipación horizontal o vertical, respectivamente. Asociado a esto tenemos el concepto de
“escena” que describe, combinando prototipación horizontal y vertical, una única sesión de
interacción. La figura a seguir muestra esquematicamente el sistema como un todo y los dos
enfoques para prototipación.

Cuando se usa prototipación horizontal, se consideran todas las características del sistema
pero se limita la funcionalidad de la aplicación. El resultado es un porción superficial de la
aplicación que contiene todos los elementos de la interface del sistema con funcionalidad
limitada. Cuando se usa prototipación vertical, se considera la funcionalidad total de una pequeña
parte de las características del sistema, simulando una situación real, para las características
representadas en el prototipo.

Figura 1. Enfoques para prototipación.

4.1.2. Análisis Heurístico

El análisis heurístico, realizado solamente por evaluadores, es considerado uno de los


principales métodos de inspección de Usabilidad. Consiste en realizar un análisis sistemático de
la interface para identificar problemas de Usabilidad que puedan estar violando un conjunto de
principios o heurísticas. El objetivo básico del método consiste en obtener una lista de problemas
identificados, tomando como base las heurísticas de Usabilidad.

La mayor parte de los conjuntos de heurísticas de usabilidad que existen hoy en dia poseen
centenas de reglas que deben ser seguidas. Kathleen Potosnak [10] describe un número de
documentos que son una buena fuente de heurísticas. El conjunto de heurísticas utilizado por
Nielsen [11] se reduce a una decena de principios que pueden ser usados para explicar gran parte
de los problemas observados en una interface. Los principios utilizados por Nielsen son:

• relación entre el sistema y el mundo real;


• el usuario controlando la interacción;
• simplicidad y estética de la aplicación;
• flexibilidad y eficiencia de uso de la aplicación;
• minimización de la carga cognitiva del usuario;
• consistencia de la aplicación;
• información sobre el estado del sistema;
• buenos mensajes de error;
• prevención de errores y
• existencia de help y documentación.

A partir de la identificación de los problemas de Usabilidad se promueve una sesión de


discusión (brainstorming), entre los evaluadores, observadores e integrantes del equipo de
desarrollo, para discutir las características generales de la interface, los problemas identificados y
las posibles mejorías y alternativas de (re)proyectos de la interface evaluada. Al final se elabora
una lista de todos los problemas de Usabilidad de la aplicación, mostrados por orden de
importancia, que da subsídios para el proceso de revisión del proyecto.

Lamentablemente, la experiencia demuestra que solo una pequeña parte de los problemas
de usabilidad de una interface pueden ser encontrados de esta forma. Una experiencia realizada
utilizando cuatro sistemas diferentes mostro que la aplicación del analisis heurístico por
solamente un evaluador, detecto entre 20% y 51% de los problemas de usabilidad de la interface.
Sin embargo, al aumentar el número de evaluadores para cinco personas se verifico que el
número de problemas de usabilidad detectados fue entre 55% y 90%.

4.1.2. Pruebas Empíricas

Las pruebas empíricas consisten en observar los usuarios utilizando el sistema. Estas
observaciones pueden ser realizadas de diversas maneras y son insubstituibles porque
proporcionan informaciones directas sobre la forma de utilización del sistema, identifican las
dificultades de uso de la interface y reproducen una situación próxima de la realidad. El método
mas simple para observación de usuarios es la técnica denominada thinking-aloud. Esta técnica
consiste en solicitar a un o mas usuarios representativos que realicen una serie de tareas
predeterminadas usando el sistema y que comenten en voz alta todo lo que piensan mientras
ejecutan estas tareas. A través de la observación de los usuarios y del análisis de los comentarios
que realizan se puede obtener una buena idea de la forma como ellos ejecutan las tareas e
interpretan la interface proyectada.

Para realizar pruebas empíricas eficientes es necesário considerar ciertos aspectos


esenciales para el buen éxito de la observación. El primero de ellos es tener un objetivo y un plan
de pruebas preciso y bien trabajado. Además, la confiabilidad y validad de las pruebas deben ser
consideradas para poder usar de la mejor forma posible las informaciones obtenidas. En general,
cuanto mayor es el número de usuarios mayor la confiabilidad de las pruebas1, y cuanto mayor es
el conocimiento y la experiencia de los procedimientos observados mayor su validad. Otro
aspecto fundamental se relaciona con la elección de los usuarios y de las actividades que seran
testadas. Ambas deben ser lo más representativas posibles de situaciones reales.

Encerrando esta sección, quisieramos comentar que las pruebas debem ser realizadas en
ambientes descontraídos, con baja presión en relación al desempeño y con los usuarios bien
concientes de lo que significa el proceso de mejoria del producto y del papel que ellos tienen en
la prueba que esta siendo realizada. O sea, es esencial la manera como el observador dirije la
prueba y resaltar que el propósito de la prueba es evaluar el sistema y no el usuário.

5. Concluciones
Una buena interface gráfica sólo puede ser obtenida con un trabajo consistente que tenga
como objetivo conocer al usuario final. Consideraciones tanto en relación a la presentación del
producto como a las necesidades y deseos de los usuarios, pasan a tener un papel central en el
desarrollo de aplicaciones con interfaces gráficas, provocando un cambio en la definición y en el
proceso de desarrollo de sistemas computacionales.

En este artículo presentamos algunas técnicas, simples y eficaces, de la Ingeniería de


Usabilidad que contribuyen para la obtención de interfaces gráficas de buena calidad, a saber,
prototipación, análisis heurístico y pruebas empíricas. Estas técnicas demostraron sus valores en
varias ocasiones. El análisis heurístico, por ejemplo, fue utilizado para evaluar y mejorar la
calidad del software educacional Escritor, desarrollado por el Laboratório de Educação e
Informática Aplicada de la Faculdade de Educação de la UNICAMP (LEIA/FE/UNICAMP)
[13], mostrándose una herramienta poderosa para estos fines.

Finalmente, quisieramos comentar que algunos de los conceptos de la Ingeniería de

1
La práctica indica que, en la mayor parte de los casos, la realización de pruebas con solo tres usuarios permite
encontrar una gran parte de los problemas de usabilidad de la interface [12].
Usabilidad han sido utilizados para mejorar los parámetros de Usabilidad usados para evaluar los
productos de software que participan del “Prêmio Melhor Software do Ano” que la Asociação de
Empresas Brasileiras de Software e Serviços de Informática - ASSESPRO - realiza anualmente
para laurear aquellos productos que se destacan por su calidad [14]. La continuidad del trabajo de
incorporación de los conceptos de la Ingeniería de Usabilidad en el proceso de evaluación de los
productos que participan del premio, prevista para este año, ciertamente contribuirá para la
mejoría de este proceso.

6. Agradecimientos
Los autores agradecen al Sr. Daniel Weller, ex-integrante del grupo de interfaces gráficas del
ATPS, cuyo trabajo posibilitó la obtención de estos resultados y al Conselho Nacional de
Desenvolvimento Científico e Tecnológico (CNPq) que financió parcialmente este trabajo a través
de los programas RHAE y DESI.

7. Bibliografía
[1] Argollo Jr., M., et al., Tecnologia para a Produção de Interfaces Gráficas Portáteis de Alta
Qualidade, Memorias del Workshop de Qualidade de Software - IX Simpósio Brasileiro de
Engenharia de Software, Recife - PE, 1995.

[2] Argollo Jr., M., et al., Un Enfoque para la Obtención y Transferencia de Tecnología para
Producción de Interfaces Gráficas, Memorias de INFOCOM’96 - II Congreso
Internacional de Informática y Telecomunicaciones, Buenos Aires, Argentina, 1996.

[3] Nielsen J., Usability Engineering. AP Profesional, 1993.

[4] Heckel P., Software Amigável: Técnicas de Projeto para uma melhor Interface com o
Usuario. Editora Campus, Rio de Janeiro, 1991.

[5] Laurel B., Introduction. en The Art of Human-Computer Interface Design. Addison-Wesley
Publishing Company, 1990, pp.xi-xvi.

[6] Kay A., User Interface: A Personal View. en The Art of Human-Computer Interface
Design. Addison-Wesley Publishing Company, 1990, pp. 191-207.
[7] Browne D., STUDIO: Structured User-Interface Design for Interaction Optimisation.
Prentice Hall, 1994.

[8] Hix D. y Hartson H., Developing User Interfaces: Ensuring Usability Through Product &
Process. John Wiley & Sons, Inc., 1993.

[9] Nielsen J., Usability Engineering at a Discount. Em Designing and Using Human-
Computer Interfaces and Knowledge Based Systems. Elsevier Science Publishers, 1989, pp.
394-401.

[10] Potosnak K., Getting the Most Out of Guidelines. IEEE Software - Vol.5 No.1, 1988, pp.
85-86.

[11] Molich R. y Nielsen J., Improving Human-Computer Dialogue. Communications of the


ACM - Vol.33 No.3, 1990, pp. 338-348.

[12] Nielsen J., Paybacks from ‘Discount’ Usability Engineering. IEEE Software - Vol.7 No.3,
1990, pp. 107-108.

[13] Tsukumo, A.N., et al., Avaliação e Melhoria da Qualidade do Produto de Software


Educacional "Escritor", Memorias del Workshop de Qualidade de Software, X Simpósio
Brasileiro de Engenharia de Software, São Carlos - SP, 1996.

[14] Tsukumo, A.N., et al., The Second Experiment of Application of ISO/IEC 9126 Standards
on Quality Evaluation of Brazilian Software Products. Memorias del 6th International
Conference on Software Quality (ICSQ), IEEE Computer Society, Ottawa, Canadá, 1996.

You might also like