Diseño de una interfaz de usuario

En esta sección se describen detalladamente algunas de las tareas asociadas al diseño de una interfaz de usuario para una aplicación de Windows.

Introducción

El diseño de la interfaz de usuario se puede dividir en tres elementos esenciales: funcionalidad, estética y rendimiento.

Con más frecuencia que no, el enfoque principal durante el desarrollo de aplicaciones es la funcionalidad. ¿Se puede usar la aplicación? ¿Permite a los usuarios completar tareas? Sin embargo, la funcionalidad es solo una parte de la historia.

La estética describe cómo se muestran y presentan las cosas, el estilo en el que las cosas se comunican al usuario. La estética es muy objetiva y mucho más difícil de cuantificar que los requisitos funcionales y las métricas de rendimiento. La estética suele llegar a opciones sencillas,como los colores se complementan entre sí o cómo los elementos de la interfaz de usuario transmiten su significado, que a menudo afectan a la forma en que una persona se siente sobre algo e influyen en el éxito que están usando.

El rendimiento se mide no solo por velocidad, sino también por confiabilidad. Si una aplicación se ve y se siente genial, es fácil de usar, pero se bloquea repetidamente, es probable que no sea muy correcta. La aplicación tiene que proporcionar a un usuario plena confianza en su confiabilidad.

A continuación se muestran algunas tareas de fase de diseño que pueden contribuir a una interfaz de usuario correcta para una aplicación de Windows.

Requisitos funcionales

Tenga en cuenta las siguientes sugerencias al principio de la fase de diseño para optimizar la experiencia del usuario en el público más amplio posible:

  • Siga las directrices de diseño de la interfaz de usuario.

    Familiarícese con las directrices de interacción de la experiencia del usuario Windows y haga referencia a ellas a menudo a medida que progresa el diseño, la implementación y las pruebas de la interfaz de usuario de la aplicación.

  • Asegúrese de que la interfaz de usuario sea accesible.

    Asegúrese de integrar la accesibilidad en el diseño de la interfaz de usuario desde el principio del ciclo de vida del producto. La accesibilidad de retroajuste puede ser muy costosa porque parte del desarrollo de accesibilidad requiere atención en el nivel arquitectónico. Para obtener más información, descargue el libro electrónico Software de ingeniería para accesibilidad.

  • Soporte técnico del marketplace internacional.

    Windows incluye tecnologías que permiten la compatibilidad con muchas referencias culturales y idiomas escritos en una aplicación de Windows. Si la aplicación tiene como destino el marketplace internacional, es importante incluir la compatibilidad con la internacionalización en el diseño de la interfaz de usuario desde el principio del proyecto. Para obtener más información, consulte Internationalization for Windows Applications.

Análisis de usuarios

Un paso fundamental para diseñar una interfaz correcta es obtener un conocimiento básico de lo que los usuarios necesitan y quieren de una aplicación antes de escribir cualquier código. Recuerde que los usuarios potenciales de una aplicación ya están realizando su trabajo de alguna manera y las herramientas y procesos existentes deben entenderse lo más completa posible. No diseñe sin considerar completamente estos problemas.

El enfoque más sencillo y informal es hablar con los usuarios previstos del producto. Obtenga información directamente del origen: evite el uso de administradores o ejecutivos como servidores proxy para consumidores reales. Considere la posibilidad de tener pequeños grupos de desarrolladores y administradores de programas que realizan visitas informales a los usuarios en sus lugares de trabajo donde existe la oportunidad de analizar cómo funcionan y recopilar detalles de los problemas a los que se enfrentan con sus herramientas actuales.

Recuerde que no haga preguntas iniciales o sesgadas, ya que esto afectará directamente a la calidad y validez de los comentarios del usuario. Tenga en cuenta lo siguiente al redactar preguntas durante esta fase:

  • Quién son nuestros usuarios? ¿Qué habilidades y conocimientos tienen?
  • ¿Qué orígenes de datos diferentes podemos usar para comprender su experiencia?
  • ¿Qué objetivos y tareas usarán nuestro producto para completarse?
  • ¿Qué suposiciones estamos realizando y cómo podemos verificarlas?
  • ¿Qué orígenes de datos tenemos? (Los estudios de facilidad de uso y las evaluaciones heurística son buenos lugares para empezar).

Instrucciones de problema

Una vez recopilados todos los comentarios de los usuarios, analice y destile los problemas y requisitos relacionados. Intente evitar pensar en soluciones en este momento. Asegúrese de que los problemas están completamente identificados, no solo los síntomas.

A menudo resulta útil crear una lista de una instrucción de problema de oración (desde la perspectiva de los usuarios) para cada problema o requisito. Por ejemplo, "Cambiar el ancho del cuadro de edición a 15 caracteres" no es un problema. Pero "Es demasiado difícil escribir términos de búsqueda largos" es una instrucción de problema válida. La diferencia es dramática. Intente no definir la solución y el problema al mismo tiempo: a menudo se pierde el problema real. En este ejemplo, puede haber muchas otras maneras de resolver el problema de los términos de búsqueda, incluido el cambio del tamaño del cuadro de edición. Tenga siempre en cuenta soluciones alternativas.

A continuación se muestran ejemplos adicionales de instrucciones de problema:

  • Es difícil navegar desde una sección del sitio web a otra.
  • Los usuarios tienen que esperar demasiado tiempo para que el software se cargue.
  • Nuestros mensajes de error de seguridad son difíciles de entender.
  • La página de registro tiene demasiadas preguntas y los usuarios a menudo lo abandonan.
  • Encontrar un producto específico en el índice del sitio es demasiado difícil de completar.

Si las declaraciones del problema son lo suficientemente amplias, es probable que haya muchas formas innovadoras y creativas de resolverlas.

Prioridades

El acto de tomar una lista de elementos y clasificarlos por prioridad define una versión. Sin prioridades claras, los equipos pueden luchar y discutir sobre lo que se debe hacer y qué cosas deben cortarse. El trabajo implicado en establecer prioridades debe ser más fácil con la investigación completa, pero siempre es un desafío.

Establecer prioridades requiere la capacidad de evaluar al menos tres criterios: programación, equipo y negocio. Puede haber un conjunto de programación predefinido para el proyecto, que limita el tamaño y la escala del trabajo que se puede realizar. Un problema que es probable que requiera volver a escribir la mitad de la base de código no debe intentarse durante un ciclo de versión pequeño.

El maquillaje y la naturaleza de un equipo definen qué tipos de trabajo se pueden hacer. ¿Qué otros compromisos tiene el equipo? ¿Hay un diseñador o ingeniero de facilidad de uso en el equipo? ¿Qué aptitudes tiene el diseño de la interfaz de usuario o web? Por último, y lo más importante, son consideraciones empresariales. ¿Cuáles son los objetivos de ingresos de este proyecto? Quién son los competidores? ¿Cuáles son las ventajas de resolver ciertos problemas? ¿Qué asociaciones se pueden forjar? También se deben identificar otras consideraciones antes de priorizar la lista.

Una vez priorizado, la lista de instrucciones de problema establece la dirección del producto y garantiza que el desarrollo se dirija a las áreas adecuadas.

Diseño conceptual

Normalmente, la interfaz de usuario no se aborda en la fase de diseño conceptual. Sin embargo, esta fase requiere un modelo de negocio completo con perfiles de usuario completos y escenarios de uso que son imperativos para una experiencia de usuario correcta.

Diseño lógico

La fase de diseño lógico es cuando se desarrollan los prototipos iniciales que admiten el diseño conceptual.

Las tecnologías específicas de hardware y software que se usarán durante el desarrollo también se identifican en esta fase, lo que puede determinar las funcionalidades de la interfaz de usuario en el producto final. Para obtener más información, consulte Tecnologías de la interfaz de usuario.

Además de las herramientas de desarrollo, se deben identificar los distintos requisitos de hardware y factores de forma a los que debe dirigirse la aplicación.

Diseño físico

La fase de diseño físico determina cómo se implementará un diseño de interfaz de usuario para los factores de forma y hardware específicos identificados en el diseño lógico.

Durante esta fase, las limitaciones de hardware o factor de forma pueden introducir restricciones inesperadas en la interfaz de usuario que requieren refinamientos significativos en el diseño.