diseño de usabilidad
La usabilidad de cualquier aplicación está determinada esencialmente por el usuario. El diseño de la interfaz es un proceso iterativo; al diseñar una interfaz para una aplicación, es raro obtener una interfaz perfecta desde el primer paso. Cuanto antes participen los usuarios en el proceso de diseño, menos esfuerzo se necesitará para crear una interfaz mejor y más utilizable.
¿Qué es una buena interfaz?
Al diseñar una interfaz de usuario, es una buena idea comenzar analizando algunas de las aplicaciones más vendidas de Microsoft u otras empresas. Después de todo, una aplicación con una interfaz deficiente no se venderá bien. Encontrará muchas cosas comunes, como barras de herramientas, barras de estado, información sobre herramientas, menús contextuales y cuadros de diálogo de marcado. No es casualidad que Visual Basic tenga la capacidad de agregar todas estas cosas a una aplicación.
También puede confiar en su propia experiencia al utilizar el software. Piensa en algunas aplicaciones que has utilizado, cuáles funcionaron, cuáles no y cómo podrías modificarlas. Pero recuerda que las preferencias personales no son iguales a las preferencias del usuario, y debes alinear tus propias opiniones con las de los usuarios.
Tenga en cuenta también que las aplicaciones más exitosas ofrecen opciones para adaptarse a las diferentes preferencias de los usuarios. Por ejemplo, Microsoft Windows Explorer permite a los usuarios copiar archivos mediante menús, comandos de teclado o arrastrar y soltar. Proporcionar opciones ampliará el atractivo de la aplicación y al menos debería hacer que todas las funciones sean accesibles mediante el mouse y el teclado.
Directrices de interfaz de Windows
La principal ventaja del sistema operativo Windows es que proporciona una interfaz común para todas las aplicaciones. Los usuarios que saben cómo utilizar aplicaciones basadas en Windows pueden aprender fácilmente a utilizar otras aplicaciones. Las aplicaciones que se desvían demasiado de las directrices de interfaz establecidas son difíciles de entender.
Los menús son un buen ejemplo de esto: la mayoría de las aplicaciones basadas en Windows siguen este estándar: el menú "Archivo" en el extremo izquierdo, luego "Editar", "Herramientas" y otros menús opcionales, y el menú "Archivo" en el extremo derecho. Menú "Ayuda". Si Documentos fuera mejor que Archivo, o si el menú Ayuda debería colocarse primero, valdría la pena discutirlo. No hay nada que le impida hacer esto, pero hacerlo puede confundir a los usuarios y reducir la usabilidad de su aplicación. Los usuarios deben detenerse y pensar cada vez que cambian entre aplicaciones y otros programas.
La ubicación de los submenús también es importante. Los usuarios esperan encontrar submenús como "Copiar", "Cortar" y "Pegar" en el menú "Editar", pero moverlos al menú "Archivo" causará confusión a los usuarios. No se desvíe demasiado de las pautas que se han creado a menos que haya una buena razón para hacerlo.
pruebas de usabilidad
La mejor manera de probar la usabilidad de su interfaz es involucrar a los usuarios durante todo el proceso de diseño. Ya sea que esté diseñando una aplicación grande y comprimida o una aplicación pequeña y de uso limitado, el proceso de diseño debe ser exactamente el mismo. Utilizando las pautas de diseño que se han creado, el diseño de la interfaz debe comenzar en papel.
El siguiente paso es crear uno o más prototipos y diseñar el formulario en Visual Basic. Aún necesita agregar suficiente código para comenzar el prototipo: mostrar el formulario, completar el cuadro de lista con datos de muestra, etc. Luego prepárese para las pruebas de usabilidad.
Las pruebas de usabilidad pueden ser un proceso informal de revisión del diseño con los usuarios o puede ser un proceso formal en un laboratorio de usabilidad que se haya creado. El propósito de ambos métodos es el mismo: aprender de primera mano de los usuarios qué funciona bien y qué necesita mejorar. Déjelo ir, deje que los usuarios estén con la aplicación y obsérvelos; este enfoque es más efectivo que preguntar a los usuarios. Pida a los usuarios que expresen su proceso de pensamiento mientras intentan completar una serie de tareas: "Quiero abrir un nuevo documento, así que lo busco en el menú Archivo". Observe dónde el diseño de la interfaz no refleja su proceso de pensamiento. Pruebe con diferentes tipos de usuarios; si descubre que los usuarios tienen dificultades para completar una tarea en particular, es posible que esa tarea necesite más atención.
A continuación, revise los registros y considere cómo modificar la interfaz para hacerla más utilizable. Modifique la interfaz y pruebe nuevamente. Una vez que esté satisfecho con la usabilidad de la aplicación, estará listo para comenzar a codificar. También es necesario realizar pruebas de vez en cuando durante el proceso de desarrollo para garantizar que las suposiciones sobre el prototipo sean correctas.
Descubrimiento de características
Un concepto clave en las pruebas de usabilidad es la capacidad de descubrimiento. Si los usuarios no saben cómo utilizar una función (o ni siquiera saben que existe), es poco probable que la utilicen. Por ejemplo, la mayoría de los usuarios de Windows 3.1 nunca supieron que la combinación de teclas ALT y TAB se podía utilizar para cambiar entre aplicaciones abiertas. En ninguna parte de la interfaz se proporcionan pistas para ayudar a los usuarios a descubrir esta función.
Para probar la capacidad de descubrimiento de la funcionalidad, solicite a los usuarios que completen una tarea sin explicar cómo hacerlo (por ejemplo, crear un nuevo documento utilizando una "plantilla de formulario"). Si no pueden completar la tarea o se necesitan varios intentos, entonces es necesario mejorar la capacidad de descubrimiento de esta función.
Interactuar con los usuarios cuando algo sale mal con ellos o con el sistema.
En un mundo ideal, el software y el hardware siempre funcionarían sin problemas y los usuarios nunca cometerían errores. En realidad, los errores son inevitables. Decidir cómo responde su aplicación cuando algo sale mal es parte del diseño de la interfaz de usuario.
Una respuesta común es mostrar un cuadro de diálogo solicitando al usuario información sobre cómo la aplicación debe manejar el problema. Una respuesta menos común (pero mejor) es simplemente solucionar el problema sin molestar al usuario. Después de todo, a los usuarios les preocupa principalmente completar tareas, no detalles técnicos. Al diseñar una interfaz de usuario, considere posibles errores y determine cuáles requieren la interacción del usuario y cuáles pueden resolverse con soluciones preestablecidas.
Cree cuadros de diálogo fáciles de entender
Ocasionalmente ocurre un error en una solicitud y se requiere criterio para resolver la situación. Esto suele ocurrir como una rama de código: una declaración If...Then o una declaración Case. Si este juicio requiere la interacción del usuario, este problema generalmente se presenta al usuario mediante un cuadro de diálogo. Los cuadros de diálogo son parte de la interfaz de usuario y, al igual que otras partes de la interfaz, su diseño influye en la usabilidad de la aplicación.
A veces parece que muchos diseñadores de cuadros de diálogo de programas no pronuncian palabras que faciliten la comprensión de las personas. Por ejemplo, un mensaje como este: "El sector del disco duro C está dañado o es inaccesible. ¿Abortar, volver a intentar, ignorar?" (Ver Figura 6.22) Esto no es fácil de entender para los usuarios normales. Esto equivale a que un camarero le pregunte a un cliente: "No tenemos sopa o la cocina está encendiendo el fuego, cancela, vuelve a intentarlo, ignora". Es importante describir el problema (y la elección) de una manera o frase que los usuarios puedan entender. En el ejemplo anterior, un mensaje mejor sería "Hay un problema al guardar el archivo en la unidad C. Guarde el archivo en la unidad A. ¿Quiere guardar el archivo?"
Al crear cuadros de diálogo para su aplicación, tenga en cuenta al usuario. ¿Este mensaje transmite información útil al usuario? ¿Es fácil de entender? ¿Están claras las opciones representadas por los botones de comando? ¿Es esta elección adecuada para las condiciones dadas? Recuerde, un solo cuadro de mensaje molesto puede dar a los usuarios una mala impresión de su aplicación.
Si está diseñando un cuadro de diálogo personalizado, intente ceñirse a los tipos estándar. Si se desvía demasiado del diseño del cuadro de mensaje estándar, es posible que los usuarios no lo reconozcan como un cuadro de diálogo.
Para obtener más información sobre los cuadros de diálogo, consulte "Cuadros de diálogo" anteriormente en este capítulo.
Manejo de errores sin cuadro de diálogo
No es necesario interrumpir al usuario cuando ocurre un error. A veces es preferible manejar errores en el código sin notificar al usuario, o alertar al usuario de una manera que no detenga su flujo de trabajo. Un buen ejemplo de esta tecnología es la función "Autocorrección" de Microsoft Word: si una palabra común está mal escrita, Word la corrige automáticamente; si una palabra poco común está mal escrita, se dibuja una línea roja debajo para recordarle al usuario que la corrija más tarde; .
Hay una gran cantidad de técnicas disponibles; depende de usted decidir qué técnicas son apropiadas para su aplicación. Aquí hay algunas sugerencias:
1. Agregue la función "Deshacer" en el menú "Editar". Para situaciones como la eliminación, en lugar de interrumpir al usuario con un cuadro de diálogo "Aceptar", puede asegurarse de que tomó la decisión correcta y proporcionar una función "deshacer" en caso de que cambie de opinión más adelante.
2. Muestra el mensaje en la barra de estado o en el ícono. Si el error no afecta la tarea actual del usuario, no detenga la aplicación. Utilice una barra de estado o un ícono de advertencia brillante para alertar a los usuarios que pueden manejar el problema cuando estén listos.
3. Corrija el problema. A veces la solución equivocada es obvia. Por ejemplo, si el disco está lleno cuando el usuario intenta guardar un archivo, el sistema busca espacio en otras unidades. Si hay espacio disponible, el archivo se guarda; se muestra un mensaje en la barra de estado que le informa al usuario lo que se hizo.
4. Guarde el mensaje y espere a que se procese. Debido a que no todos los errores son críticos o requieren atención inmediata, considere registrarlos en un archivo y mostrárselos al usuario cuando salga de la aplicación o en otro momento conveniente. Si el usuario comete un error de entrada (por ejemplo, escribir MainSt. en lugar de MianSt.), regístrelo. Agregue un botón "Revisar entradas" y una función que muestre las diferencias para que los usuarios puedan corregirlas.
5. No hagas nada. A veces el error no es lo suficientemente importante como para justificar una advertencia. Por ejemplo, el hecho de que el papel no esté listo para la impresora en el LPT1 no importa mucho hasta que esté listo para imprimir. Espere hasta que el mensaje sea relevante para la tarea actual.
Para obtener más información sobre técnicas de manejo de errores, consulte el Capítulo 13, "Depuración de código y manejo de errores".
Diseño de patrones de asistencia al usuario
No importa qué tan bien diseñada esté una interfaz de usuario, a veces los usuarios necesitarán ayuda. El modo de asistencia al usuario de una aplicación incluye cosas como ayuda en línea y documentación impresa; también puede incluir dispositivos de asistencia al usuario como información sobre herramientas, barras de estado, ayuda sobre "qué es esto" y asistentes.
Como cualquier otra parte de una aplicación, el diseño de patrones de asistencia al usuario debe preceder al desarrollo. El contenido del esquema variará según la complejidad de la aplicación y el público objetivo.
Ayuda y documentación
La ayuda en línea es una parte importante de cualquier aplicación y, a menudo, es el primer lugar al que recurren los usuarios cuando tienen preguntas. Incluso las aplicaciones simples deberían proporcionar "ayuda". No proporcionarlo es como asumir que los usuarios nunca tendrán un problema.
Al diseñar un sistema de Ayuda, recuerde que su objetivo principal es responder preguntas. Intente utilizar términos de usuario al crear nombres de temas y entradas de índice, por ejemplo, "¿Cómo le doy formato a una página?" Los temas son más fáciles de encontrar que los menús "Editar" o "Formato de página". No olvide el contexto; la mayoría de los usuarios se sentirán frustrados si presionan la tecla F1 para obtener ayuda con un campo específico y luego se encuentran con el tema del contenido.
La documentación de los conceptos básicos, ya sea impresa y/o proporcionada en un disco zip, es útil para todas las aplicaciones excepto para las más simples. Puede proporcionar información que sería difícil transmitir con un tema de Ayuda breve. Como mínimo, debe haber un documento en formato de archivo Léame que el usuario pueda imprimir si es necesario.
dispositivo de asistencia al usuario
En las interfaces de usuario, existen varias tecnologías que ayudan a los usuarios. Es fácil agregar información sobre herramientas, ayuda sobre "qué es esto", pantallas de estado y asistentes a sus aplicaciones con Visual Basic. Depende de usted decidir cuál de estos dispositivos es adecuado para su propia aplicación.
información sobre herramientas
La información sobre herramientas (Figura 6.23) es una excelente manera de mostrar información a los usuarios mientras realizan búsquedas en la interfaz de usuario. Una información sobre herramientas es una pequeña etiqueta que aparece cuando el puntero del mouse se posa sobre un control y generalmente contiene una descripción de la funcionalidad del control. Normalmente, la información sobre herramientas se utiliza junto con las barras de herramientas y funcionan bien en la mayor parte de la interfaz.
La mayoría de los controles de Visual Basic incluyen una propiedad utilizada para mostrar información sobre herramientas: ToolTipText. El siguiente código proporcionará información sobre herramientas para un botón de comando denominado "cmdPRint".
cmdPrint.ToolTipText=Imprime el documento actual
Al igual que otras partes de la interfaz, asegúrese de que este texto comunique claramente el mensaje al usuario.
Para obtener más información sobre la información sobre herramientas, consulte "Propiedad ToolTipText" en la Referencia del lenguaje.
Ayuda "¿Qué es esto?"
Cuando el usuario selecciona What's Help y hace clic en el cursor What's del control, What's Help proporciona un vínculo al tema de ayuda emergente (consulte la Figura 6.24). La ayuda "¿Qué es esto?" se puede iniciar desde un botón de la barra de herramientas, un elemento de menú o un botón en la barra de título de un cuadro de diálogo.
Para habilitar la ayuda "¿Qué es esto" desde el menú o la barra de herramientas, siga estos pasos:
1. Seleccione el control al que desea ayudar.
2. En la ventana Propiedades, seleccione la propiedad WhatsThisHelpID.
3. Introduzca el identificador de contexto para el tema de Ayuda emergente relevante.
4. Repita los pasos del 1 al 3 para cualquier otro control.
5. Seleccione el formulario.
6. En la ventana "Propiedades", establezca la propiedad WhatsThisHelp del formulario en Verdadero.
7. En el evento Click del botón de menú o barra de herramientas, escriba el siguiente código:
nombredelformulario.WhatsThisHelp
Cuando el usuario hace clic en el botón o menú, el puntero del mouse cambia a un puntero de ayuda "¿Qué es esto?". Para habilitar la ayuda "¿Qué es esto?" en la barra de título de un formulario de diálogo personalizado, establezca las propiedades WhatsThisButton y WhatsThisHelp del formulario en True.
Para obtener más información sobre la ayuda "WhatsThis", consulte "Propiedad WhatsThisHelp" y "Propiedad WhatsThisButton" en la Referencia del idioma.
visualización de estado
Las pantallas de estado también se pueden utilizar para proporcionar asistencia al usuario de la misma manera que la información sobre herramientas. Las pantallas de estado son una excelente manera de proporcionar instrucciones o mensajes que no se prestan bien a la información sobre herramientas. El control de la barra de estado incluido en las ediciones Professional y Enterprise de Visual Basic puede mostrar mensajes muy bien; el control Etiqueta también se puede utilizar como visualización de estado.
El texto que se muestra en la pantalla de estado se puede actualizar de dos maneras: usando el control o el evento GotFocus del formulario, o usando el evento MouseMove. Si desea utilizar la pantalla como dispositivo de aprendizaje, agregue un elemento al menú Ayuda para activar y desactivar su propiedad Visible.
Para agregar una visualización de estado, siga estos pasos:
1. Agregue un control Etiqueta al formulario.
2. Seleccione el control para el cual desea mostrar un mensaje.
3. Agregue el siguiente código en el evento MouseMove (o GotFocus) del control: Labelname.Caption=Ingrese el número de identificación del cliente en este campo Cuando el mouse se mueve sobre el control, este mensaje se mostrará en este control Label.
4. Repita los pasos 2 a 3 para cualquier otro control.
mago
Un asistente es un dispositivo asistido por el usuario que lo guía paso a paso a través de la implementación de un proceso utilizando sus propios datos reales. Los asistentes se utilizan a menudo para proporcionar asistencia para tareas específicas. Ayudan con tareas que requieren un proceso de aprendizaje largo (y molesto) y brindan información experta a usuarios que aún no lo son.
Las ediciones Professional y Enterprise de Visual Basic incluyen una herramienta para crear asistentes: el Administrador de asistentes.
Para obtener detalles sobre el asistente, consulte "Uso de asistentes y complementos" en el Capítulo 4 "Gestión de proyectos".
->