Interfaz de usuario

La interfaz de usuario es la primera impresión de un sistema de software desde el punto de vista del usuario. Por lo tanto, cualquier sistema de software debe satisfacer los requisitos del usuario. La interfaz de usuario realiza principalmente dos funciones:

  • Aceptando la entrada del usuario

  • Visualización de la salida

La interfaz de usuario juega un papel crucial en cualquier sistema de software. Posiblemente sea el único aspecto visible de un sistema de software como:

  • Los usuarios verán inicialmente la arquitectura de la interfaz de usuario externa del sistema de software sin considerar su arquitectura interna.

  • Una buena interfaz de usuario debe atraer al usuario a utilizar el sistema de software sin errores. Debería ayudar al usuario a comprender el sistema de software fácilmente sin información engañosa. Una mala interfaz de usuario puede causar fallas en el mercado frente a la competencia del sistema de software.

  • La interfaz de usuario tiene su sintaxis y semántica. La sintaxis comprende tipos de componentes como texto, icono, botón, etc. y la usabilidad resume la semántica de la interfaz de usuario. La calidad de la interfaz de usuario se caracteriza por su apariencia (sintaxis) y su usabilidad (semántica).

  • Básicamente, existen dos tipos principales de interfaz de usuario: a) Textual b) Gráfica.

  • El software en diferentes dominios puede requerir un estilo diferente de su interfaz de usuario, por ejemplo, la calculadora solo necesita un área pequeña para mostrar números numéricos, pero un área grande para comandos, una página web necesita formularios, enlaces, pestañas, etc.

Interfaz gráfica del usuario

Una interfaz gráfica de usuario es el tipo más común de interfaz de usuario disponible en la actualidad. Es muy fácil de usar porque hace uso de imágenes, gráficos e iconos, de ahí que se le llame "gráfico".

También se conoce como WIMP interface porque hace uso de -

  • Windows - Un área rectangular en la pantalla donde se ejecutan las aplicaciones de uso común.

  • Icons - Una imagen o símbolo que se utiliza para representar una aplicación de software o un dispositivo de hardware.

  • Menus - Una lista de opciones entre las que el usuario puede elegir lo que requiera.

  • Pointers- Un símbolo como una flecha que se mueve por la pantalla cuando el usuario mueve el mouse. Ayuda al usuario a seleccionar objetos.

Diseño de interfaz de usuario

Comienza con el análisis de tareas que comprende las tareas principales del usuario y el dominio del problema. Debe diseñarse en términos de la terminología del usuario y el comienzo del trabajo del usuario en lugar de la del programador.

  • Para realizar el análisis de la interfaz de usuario, el profesional debe estudiar y comprender cuatro elementos:

    • los users quién interactuará con el sistema a través de la interfaz

    • los tasks que los usuarios finales deben realizar para hacer su trabajo

    • los content que se presenta como parte de la interfaz

    • los work environment en el que se realizarán estas tareas

  • El diseño de la interfaz de usuario adecuado o bueno se basa en las capacidades y limitaciones del usuario, no en las máquinas. Al diseñar la interfaz de usuario, el conocimiento de la naturaleza del trabajo y el entorno del usuario también es fundamental.

  • La tarea a realizar se puede dividir y asignar al usuario o máquina, en función del conocimiento de las capacidades y limitaciones de cada uno. El diseño de una interfaz de usuario a menudo se divide en cuatro niveles diferentes:

    • The conceptual level - Describe las entidades básicas considerando la visión del usuario del sistema y las acciones posibles sobre ellas.

    • The semantic level - Describe las funciones realizadas por el sistema, es decir, una descripción de los requisitos funcionales del sistema, pero no aborda cómo el usuario invocará las funciones.

    • The syntactic level - Describe las secuencias de entradas y salidas necesarias para invocar las funciones descritas.

    • The lexical level - Determina cómo se forman realmente las entradas y salidas a partir de operaciones de hardware primitivas.

  • El diseño de la interfaz de usuario es un proceso iterativo, donde toda la iteración explica y refina la información desarrollada en los pasos anteriores. Pasos generales para el diseño de la interfaz de usuario

    • Define objetos y acciones (operaciones) de la interfaz de usuario.

    • Define eventos (acciones del usuario) que harán que cambie el estado de la interfaz de usuario.

    • Indica cómo el usuario interpreta el estado del sistema a partir de la información proporcionada a través de la interfaz.

    • Describa el estado de cada interfaz como lo verá el usuario final.

Proceso de desarrollo de la interfaz de usuario

Sigue un proceso en espiral como se muestra en el siguiente diagrama:

Interface analysis

Se concentra o se centra en los usuarios, las tareas, el contenido y el entorno de trabajo que interactuarán con el sistema. Define las tareas orientadas a personas y computadoras que se requieren para lograr el funcionamiento del sistema.

Interface design

Define un conjunto de objetos de interfaz, acciones y sus representaciones de pantalla que permiten al usuario realizar todas las tareas definidas de una manera que cumpla con todos los objetivos de usabilidad definidos para el sistema.

Interface construction

Comienza con un prototipo que permite evaluar escenarios de uso y continúa con herramientas de desarrollo para completar la construcción.

Interface validation

Se centra en la capacidad de la interfaz para implementar correctamente todas las tareas del usuario, adaptarse a todas las variaciones de tareas, lograr todos los requisitos generales del usuario y el grado en que la interfaz es fácil de usar y de aprender.

User Interface Models

Cuando se analiza y diseña una interfaz de usuario, se utilizan los siguientes cuatro modelos:

User profile model

  • Creado por un usuario o ingeniero de software, que establece el perfil de los usuarios finales del sistema en base a edad, género, habilidades físicas, educación, motivación, metas y personalidad.

  • Considera el conocimiento sintáctico y semántico del usuario y clasifica a los usuarios como novatos, conocedores intermitentes y conocedores frecuentes.

Design model

  • Creado por un ingeniero de software que incorpora datos, arquitectura, interfaz y representaciones de procedimientos del software.

  • Derivado del modelo de análisis de los requisitos y controlado por la información de la especificación de requisitos que ayuda a definir el usuario del sistema.

Implementation model

  • Creado por los implementadores de software que trabajan en la apariencia de la interfaz combinada con toda la información de apoyo (libros, videos, archivos de ayuda) que describe la sintaxis y la semántica del sistema.

  • Sirve como traducción del modelo de diseño e intenta estar de acuerdo con el modelo mental del usuario para que los usuarios se sientan cómodos con el software y lo utilicen de forma eficaz.

User's mental model

  • Creado por el usuario al interactuar con la aplicación. Contiene la imagen del sistema que los usuarios llevan en la cabeza.

  • A menudo llamado percepción del sistema del usuario y la exactitud de la descripción depende del perfil del usuario y la familiaridad general con el software en el dominio de la aplicación.

Consideraciones de diseño de la interfaz de usuario

Centrado en el usuario

Una interfaz de usuario debe ser un producto centrado en el usuario que involucre a los usuarios durante todo el ciclo de vida de desarrollo de un producto. El prototipo de una interfaz de usuario debe estar disponible para los usuarios y los comentarios de los usuarios deben incorporarse al producto final.

Simple e intuitivo

La interfaz de usuario proporciona simplicidad e intuición para que se pueda utilizar de forma rápida y eficaz sin instrucciones. La GUI es mejor que la interfaz de usuario textual, ya que la GUI consta de menús, ventanas y botones y se opera simplemente con el mouse.

Ponga a los usuarios en control

No obligue a los usuarios a completar secuencias predefinidas. Bríndeles opciones: cancelar o guardar y regresar a donde lo dejaron. Utilice términos en toda la interfaz que los usuarios puedan comprender, en lugar de términos del sistema o del desarrollador.

Proporcione a los usuarios alguna indicación de que se ha realizado una acción, ya sea mostrándoles los resultados de la acción o reconociendo que la acción se ha realizado correctamente.

Transparencia

La interfaz de usuario debe ser transparente para ayudar a los usuarios a sentir que están llegando directamente a través de la computadora y manipulando directamente los objetos con los que están trabajando. La interfaz se puede hacer transparente proporcionando a los usuarios objetos de trabajo en lugar de objetos del sistema. Por ejemplo, los usuarios deben entender que la contraseña del sistema debe tener al menos 6 caracteres, no cuántos bytes de almacenamiento debe tener una contraseña.

Utilice la divulgación progresiva

Proporcione siempre fácil acceso a funciones comunes y acciones de uso frecuente. Oculte funciones y acciones menos comunes y permita a los usuarios navegar por ellas. No intente poner toda la información en una ventana principal. Utilice la ventana secundaria para obtener información que no sea información clave.

Consistencia

La interfaz de usuario mantiene la coherencia dentro y en todo el producto, mantiene los mismos resultados de interacción, los comandos y menús de la interfaz de usuario deben tener el mismo formato, las puntuaciones de los comandos deben ser similares y los parámetros deben pasarse a todos los comandos de la misma manera. La interfaz de usuario no debe tener comportamientos que puedan sorprender a los usuarios y debe incluir los mecanismos que permitan a los usuarios recuperarse de sus errores.

Integración

El sistema de software debe integrarse sin problemas con otras aplicaciones como el bloc de notas de MS y MS-Office. Puede usar los comandos del Portapapeles directamente para realizar el intercambio de datos.

Orientado a componentes

El diseño de la interfaz de usuario debe ser modular e incorporar una arquitectura orientada a componentes para que el diseño de la interfaz de usuario tenga los mismos requisitos que el diseño del cuerpo principal del sistema de software. Los módulos se pueden modificar y reemplazar fácilmente sin afectar otras partes del sistema.

Personalizable

La arquitectura de todo el sistema de software incorpora módulos enchufables que permiten que muchas personas diferentes extiendan el software de forma independiente. Permite a los usuarios individuales seleccionar entre varios formularios disponibles para adaptarse a sus preferencias y necesidades personales.

Reducir la carga de memoria de los usuarios

No obligue a los usuarios a tener que recordar y repetir lo que la computadora debería hacer por ellos. Por ejemplo, al completar formularios en línea, el sistema debe recordar los nombres, direcciones y números de teléfono de los clientes una vez que el usuario los haya ingresado o una vez que se haya abierto un registro de cliente.

Las interfaces de usuario apoyan la recuperación de la memoria a largo plazo al proporcionar a los usuarios elementos para que los reconozcan en lugar de tener que recordar información.

Separación

La interfaz de usuario debe separarse de la lógica del sistema a través de su implementación para aumentar la reutilización y el mantenimiento.