Los patrones de diseño de interacción son patrones de diseño aplicados en el contexto de la interacción persona-computadora , que describen diseños comunes para interfaces gráficas de usuario .
Un patrón de diseño es una forma formal de documentar una solución a un problema de diseño común . La idea fue presentada por el arquitecto Christopher Alexander para su uso en planificación urbana y arquitectura de edificios y ha sido adaptada para varias otras disciplinas, incluida la enseñanza y la pedagogía, la organización y el proceso del desarrollo, y la arquitectura y el diseño de software. [1]
Por lo tanto, los patrones de diseño de interacción son una forma de describir soluciones a problemas comunes de usabilidad o accesibilidad en un contexto específico. [2] Documentan modelos de interacción que facilitan a los usuarios comprender una interfaz y realizar sus tareas. [3]
Historia
Los patrones se originaron como un concepto arquitectónico de Christopher Alexander . Los patrones son formas de describir las mejores prácticas, explicar los buenos diseños y capturar la experiencia para que otras personas puedan reutilizar estas soluciones.
Los ingenieros de software utilizan los patrones de diseño en ciencias de la computación durante el proceso de diseño real y cuando comunican diseños a otros. Los patrones de diseño ganaron popularidad en la informática después de la publicación del libro Design Patterns: Elements of Reusable Object-Oriented Software . Desde entonces ha surgido una comunidad de patrones que especifica patrones para dominios de problemas, incluidos estilos arquitectónicos y marcos orientados a objetos. Las actas de la Conferencia sobre lenguajes de programación de patrones (anual, 1994) incluyen muchos ejemplos de patrones específicos de dominio.
La aplicación de un enfoque de lenguaje de patrones al diseño de interacción se sugirió por primera vez en el libro Diseño de sistemas centrados en el usuario de Norman y Draper (1986). Las pautas de interfaz humana de Macintosh de Apple Computer también citan las obras de Christopher Alexander en su lectura recomendada.
Bibliotecas
Alexander concibió un lenguaje de patrones como un sistema estructurado en el que las relaciones semánticas entre los patrones crean un todo que es mayor que la suma de sus partes, muy parecido a la forma en que las relaciones gramaticales entre palabras hacen que el lenguaje sea significativo. [4] Si bien algunas colecciones de patrones intentan crear las relaciones estructurales necesarias para formar un lenguaje, muchas otras son simplemente un ensamblaje de patrones (y por lo tanto se denominan más apropiadamente bibliotecas de patrones).
Bibliotecas de patrones de interacción móvil
La popularidad de los dispositivos móviles, como los teléfonos inteligentes y las tabletas, marca el comienzo de la necesidad de una biblioteca de patrones de diseño de interacción móvil.
Esta necesidad está impulsada por:
- Diferencias en el comportamiento y la interacción del usuario en dispositivos móviles, como los gestos de deslizar y tocar, frente a la interacción en una GUI de escritorio, que se controla con el mouse
- Diferencias en los atributos físicos entre un dispositivo móvil y uno de escritorio, por ejemplo, tamaño de pantalla, pantalla táctil, etc.
- Pautas de diseño recomendadas por el sistema operativo móvil, por ejemplo, iOS, Android
Elementos
Para que los patrones sean útiles para los diseñadores y desarrolladores que los utilizarán, deben ser fáciles de encontrar y legibles. [5] [6] [7]
Elementos comunes
Aunque las descripciones de patrones varían algo, muchas bibliotecas de patrones incluyen algunos elementos comunes:
- Nombre del patrón: elegir un nombre claro y descriptivo ayuda a las personas a encontrar el patrón y fomenta una comunicación clara entre los miembros del equipo durante las discusiones de diseño.
- Descripción del patrón: debido a que los nombres cortos como "desglose de una ventana" a veces no son suficientes para describir el patrón, algunas líneas adicionales de explicación (o una captura de pantalla canónica) ayudarán a explicar cómo funciona el patrón.
- Enunciado del problema: escrito en un lenguaje centrado en el usuario, esto comunica lo que el usuario quiere lograr o cuál es el desafío para el usuario final.
- Usar cuando: El "contexto de uso" es un componente crítico del patrón de diseño. Este elemento ayuda a las personas a comprender situaciones en las que se aplica el patrón de diseño (y cuando no).
- Solución: La solución debe explicar "cómo" resolver el problema y puede incluir listas de verificación prescriptivas, capturas de pantalla o incluso videos cortos que demuestren el patrón en acción.
- Justificación: Proporcionar razones "por las que" funciona el patrón reforzará la solución, aunque los desarrolladores con poco tiempo pueden preferir ignorar esta explicación.
- Ejemplos: cada ejemplo muestra cómo se ha aplicado correctamente el patrón. Esto suele ir acompañado de una captura de pantalla y una breve descripción.
- Comentarios: Incluir un lugar para que los miembros del equipo discutan el uso del patrón ayuda a mantener un recurso activo y mantiene al equipo comprometido.
Elementos opcionales
Las bibliotecas de patrones también pueden incluir elementos opcionales, según las necesidades del equipo que las utilice. Estos pueden incluir:
- Especificaciones de implementación: una guía de estilo con información detallada sobre los tamaños de fuente, las dimensiones en píxeles, los colores y la redacción de los mensajes y las etiquetas puede resultar útil para los desarrolladores.
- Investigación de usabilidad: se debe capturar cualquier investigación de respaldo de las pruebas de usabilidad u otros comentarios de los usuarios. Esto también puede incluir comentarios de desarrolladores, servicio al cliente o el equipo de ventas.
- Patrones relacionados : la biblioteca de patrones puede incluir patrones similares o puede estar organizada en una jerarquía de patrones principales y secundarios.
- Enfoques similares : dado que es probable que haya muchas soluciones posibles para este problema, los equipos pueden querer un lugar para capturar alternativas similares.
- Código fuente : si el código es lo suficientemente modular como para reutilizarse, también se puede incluir en la biblioteca.
Razones para utilizar patrones de diseño
Los beneficios de utilizar patrones de diseño de interacción incluyen:
- Enseñar a los principiantes algunas de las mejores prácticas y enfoques comunes.
- Capturando la sabiduría colectiva de los diseñadores en muchos usos y escenarios.
- Dar a los equipos un lenguaje común, reduciendo los malentendidos que surgen de los diferentes vocabulario.
- Reducir el tiempo y los costos en el ciclo de vida del diseño y desarrollo
- Hacer de los diseños utilizables el " camino de menor resistencia "
- Elimina el tiempo perdido dedicado a "reinventar la rueda"
- Asegurar que los usuarios tengan una experiencia consistente y predecible dentro de una aplicación o servicio.
Ventajas sobre las pautas de diseño
Las pautas son generalmente más útiles para describir los requisitos, mientras que los patrones son herramientas útiles para aquellos que necesitan traducir los requisitos en soluciones de software específicas. Algunas personas consideran las pautas de diseño como una instancia de patrón de diseño de interacción, ya que también son un enfoque común para capturar la experiencia en el diseño de interacción. Sin embargo, los patrones de diseño de interacción suelen tener las siguientes ventajas sobre las pautas de diseño:
- Las pautas abstractas, como las ocho reglas de oro del diseño de interfaces de Shneiderman, no sugieren cómo resolver un problema como muchos patrones de diseño de interacción, y no se pueden utilizar para la comunicación interdisciplinaria. Además, las pautas no proporcionan una explicación de por qué funciona una solución en particular.
- Las pautas concretas, como las Pautas de interfaz humana de Macintosh, están demasiado adaptadas a una interfaz específica y, por lo tanto, no son tan efectivas cuando se aplican a otras interfaces (especialmente interfaces que no son de Macintosh).
- Otros problemas con las pautas son que tienden a ser demasiado numerosas, lo que dificulta que los diseñadores apliquen las pautas correctas. Además, las directrices asumen una validez absoluta, aunque normalmente solo pueden aplicarse en un contexto particular. Un resultado de eso es también que las pautas a menudo tienden a entrar en conflicto solo porque carecen de describir un contexto.
Las pautas y los patrones no son necesariamente contradictorios, y ambos pueden usarse en conjunto para identificar el problema y luego crear una solución válida.
Ver también
Referencias
- ^ Coplien, James. "Una definición de patrón" . Bell Laboratories. Archivado desde el original el 9 de febrero de 2007 . Consultado el 24 de noviembre de 2008 .
- ^ "¿Qué es un patrón?" . Yahoo! . Consultado el 24 de noviembre de 2008 .
- ^ Tidwell, Jennifer. "Common Ground: un lenguaje de patrones para el diseño de interfaz hombre-computadora" . MIT . Consultado el 24 de noviembre de 2008 .
- ^ Pemberton, Lyn. "Género como concepto de estructuración de lenguajes de patrones de diseño de interacción" . Universidad de Brighton . Consultado el 24 de noviembre de 2008 .
- ^ Carrete, Jared. "Los elementos de un patrón de diseño" . Ingeniería de interfaz de usuario . Consultado el 24 de noviembre de 2008 .
- ^ Malone, Erin. "Implementación de una biblioteca de patrones en el mundo real: un estudio de caso de Yahoo" . Cuadros y flechas. Archivado desde el original el 7 de diciembre de 2008 . Consultado el 24 de noviembre de 2008 .
- ^ Kunert, Tibor. Patrones de diseño de interacción centrados en el usuario para aplicaciones de televisión digital interactiva . Saltador. ISBN 9781848822740. Consultado el 6 de julio de 2009 .
Otras lecturas
- Un enfoque de patrón para el diseño de interacción, por Jan Borchers, ISBN 0-471-49828-9
- Un lenguaje de patrones para la usabilidad web, por Ian Graham, ISBN 0-201-78888-8
- Interaction Design Patterns für NFC-basierte Electronic Data Capture Anwendungen por Andreas Prinz, Prinz Publishing, Dieburg 2014, ISBN 978-3-9816875-0-7 .
- El diseño de sitios: patrones para la creación de sitios web ganadores (segunda edición), por Douglas K. van Duyne, James A. Landay y Jason I. Hong, ISBN 0-13-134555-9
- Designing Interfaces: Patterns for Effective Interaction Design, por Jenifer Tidwell, ISBN 0-596-00803-1
- Diseño de interfaces sociales: principios, patrones y prácticas para mejorar la experiencia del usuario, por Christian Crumlish y Erin Malone, ISBN 0-596-15492-5
- Diseño de interacción para actividades cognitivas complejas con representaciones visuales: un enfoque basado en patrones, por Kamran Sedig y Paul Parsons, AIS Transactions on Human-Computer Interaction 5 (2), 84-133 .
enlaces externos
- 10 excelentes sitios para patrones de diseño de interfaz de usuario en Interaction Design foundation
- Biblioteca de patrones de diseño de Yahoo