Articulo de referencia

Patrón de diseño de interacción

Los patrones de diseño de interacción son patrones de diseño aplicados en el contexto de la interacción persona-ordenador , que describen diseños comunes para interfaces gráfica...

Los patrones de diseño de interacción son patrones de diseño aplicados en el contexto de la interacción persona-ordenador , que describen diseños comunes para interfaces gráficas de usuario .

Un patrón de diseño es una forma formal de documentar la solución a un problema de diseño común . La idea fue introducida por el arquitecto Christopher Alexander para su uso en la planificación urbana y la arquitectura de edificios , y se ha adaptado a diversas disciplinas, como la enseñanza y la pedagogía , el desarrollo organizacional y de procesos, y la arquitectura y el diseño de software . [ 1 ]

Así, 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 la comprensión de una interfaz y la realización de sus tareas. [ 3 ]

Historia

Los patrones se originaron como un concepto arquitectónico de Christopher Alexander . Son formas de describir las mejores prácticas, explicar buenos diseños y recopilar experiencias para que otras personas puedan reutilizar estas soluciones.

En informática, los ingenieros de software utilizan patrones de diseño durante el proceso de diseño y al comunicarlos a otros. Estos patrones ganaron popularidad tras la publicación del libro «Design Patterns: Elements of Reusable Object-Oriented Software» . Desde entonces, ha surgido una comunidad dedicada a la definición de patrones para diversos dominios, incluyendo estilos arquitectónicos y marcos de trabajo orientados a objetos. Las actas de la conferencia «Pattern Languages ​​of Programming» (anual, 1994- ) incluyen numerosos ejemplos de patrones específicos de dominio.

La aplicación de un enfoque de lenguaje de patrones al diseño de interacción fue sugerida por primera vez en el libro de Norman y Draper, Diseño de sistemas centrado en el usuario (1986). Las Directrices de interfaz humana para Macintosh de Apple Computer también citan los trabajos de Christopher Alexander en su bibliografía 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, de forma similar a como las relaciones gramaticales entre las palabras dan significado al lenguaje. [ 4 ] Si bien algunas colecciones de patrones intentan crear las relaciones estructurales necesarias para formar un lenguaje, muchas otras son simplemente un conjunto 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, genera la necesidad de una biblioteca de patrones de diseño de interacción móvil.

Esta necesidad está impulsada por:

  • Diferencias en el comportamiento e interacción del usuario en dispositivos móviles, como gestos de deslizamiento y toque, en comparación con la interacción en una interfaz gráfica de usuario de escritorio, que se maneja con el ratón.
  • Diferencias en los atributos físicos entre un dispositivo móvil y un ordenador de sobremesa, por ejemplo, tamaño de la pantalla, pantalla táctil, etc.
  • Directrices de diseño recomendadas por sistemas operativos móviles, por ejemplo, iOS y Android.

Elementos

Para que los patrones sean útiles para los diseñadores y desarrolladores que los utilizarán, deben ser localizables y legibles. [ 5 ] [ 6 ] [ 7 ]

Elementos comunes

Aunque las descripciones de los patrones varían un poco, 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: Dado que los nombres cortos como "exploración en profundidad en una sola ventana" a veces no son suficientes para describir el patrón, unas pocas líneas adicionales de explicación (o una captura de pantalla representativa) ayudarán a explicar cómo funciona el patrón.
  • Planteamiento del problema: Redactado en un lenguaje centrado en el usuario, comunica lo que el usuario desea lograr o cuál es el desafío para el usuario final.
  • Uso: El "contexto de uso" es un componente fundamental del patrón de diseño. Este elemento ayuda a comprender las situaciones en las que se aplica el patrón de diseño (y en las que 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 de "por qué" funciona el patrón reforzará la solución, aunque los desarrolladores con poco tiempo disponible quizás prefieran ignorar esta explicación.
  • Ejemplos: Cada ejemplo muestra cómo se ha aplicado el patrón con éxito. A menudo, esto va acompañado de una captura de pantalla y una breve descripción.
  • Comentarios: Incluir un espacio para que los miembros del equipo discutan el uso del patrón ayuda a mantener un recurso activo y a mantener 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 tamaños de fuente, dimensiones en píxeles, colores y redacción de mensajes y etiquetas puede resultar útil para los desarrolladores.
  • Investigación de usabilidad: Se debe recopilar toda la información obtenida de las pruebas de usabilidad y otros comentarios de los usuarios. Esto incluye también los comentarios de los desarrolladores, el servicio de atención al cliente o el equipo de ventas.
  • Patrones relacionados : La biblioteca de patrones puede incluir patrones similares o estar organizada en una jerarquía de patrones padre e hijo.
  • Enfoques similares : Dado que probablemente existan muchas soluciones posibles para este problema, los equipos podrían querer un lugar donde recopilar alternativas similares.
  • Código fuente : Si el código es lo suficientemente modular como para ser reutilizado, también puede incluirse en la biblioteca.

Razones para utilizar patrones de diseño

Entre los beneficios de utilizar patrones de diseño de interacción se incluyen:

  • Enseñar a principiantes algunas buenas prácticas y enfoques comunes
  • Capturando la sabiduría colectiva de los diseñadores en múltiples usos y escenarios.
  • Proporcionar a los equipos un lenguaje común, reduciendo los malentendidos que surgen de los diferentes vocabularios.
  • Reducción del tiempo y los costes en el ciclo de vida del diseño y desarrollo.
  • Hacer que los diseños sean funcionales sea el " camino de menor resistencia ".
  • Elimine el tiempo perdido "reinventando la rueda".
  • Garantizar que los usuarios tengan una experiencia coherente y predecible dentro de una aplicación o servicio.

Ventajas sobre las directrices de diseño

Las directrices suelen ser más útiles para describir requisitos, mientras que los patrones son herramientas útiles para quienes necesitan traducir requisitos en soluciones de software específicas. Algunas personas consideran las directrices de diseño como un ejemplo 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 directrices de diseño:

  1. Las directrices 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 pueden utilizarse para la comunicación interdisciplinaria. Además, las directrices no explican por qué funciona una solución en particular.
  2. Las directrices concretas, como las Directrices 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 a las que no son de Macintosh).
  3. Otro problema con las directrices es que suelen ser demasiado numerosas, lo que dificulta a los diseñadores aplicar las correctas. Además, las directrices presuponen una validez absoluta, cuando generalmente solo pueden aplicarse en un contexto específico. Como consecuencia, a menudo se producen conflictos entre ellas, precisamente porque no especifican dicho contexto.

Las directrices y los patrones no son necesariamente contradictorios, y ambos pueden utilizarse conjuntamente para identificar el problema y, posteriormente, crear una solución válida.

Véase también

Referencias

  1. Coplien, James. "Una definición de patrón" . Bell Laboratories. Archivado del original el 9 de febrero de 2007. Consultado el 24 de noviembre de 2008 .
  2. "¿Qué es un patrón?" . Yahoo!. Archivado del original el 4 de diciembre de 2008. Consultado el 24 de noviembre de 2008 .
  3. Tidwell, Jennifer. "Common Ground: A Pattern Language for Human-Computer Interface Design" . MIT . Consultado el 24 de noviembre de 2008 .
  4. Pemberton, Lyn. "Genre as a Structuring Concept for Interaction Design Pattern Languages" . University of Brighton. Archivado del original el 22 de octubre de 2006. Consultado el 24 de noviembre de 2008 .
  5. Spool, Jared. "Los elementos de un patrón de diseño" . Ingeniería de interfaz de usuario. Archivado del original el 20 de diciembre de 2008. Consultado el 24 de noviembre de 2008 .
  6. Malone, Erin. "Implementación de una biblioteca de patrones en el mundo real: un estudio de caso de Yahoo!" . Boxes and Arrows. Archivado del original el 7 de diciembre de 2008. Consultado el 24 de noviembre de 2008 .
  7. Kunert, Tibor (23 de junio de 2009). Patrones de diseño de interacción centrados en el usuario para aplicaciones interactivas de televisión digital . Springer. ISBN 9781848822740. Consultado el 6 de julio de 2009 .

Lecturas adicionales

  • Un enfoque basado en patrones 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
  • Patrones de diseño de interacción para soluciones de captura de datos electrónicos basadas en NFC por Andreas Prinz, Prinz Publishing, Dieburg 2014, ISBN 978-3-9816875-0-7.
  • El diseño de sitios web: patrones para crear sitios web exitosos (Segunda edición), por Douglas K. van Duyne, James A. Landay y Jason I. Hong, ISBN 0-13-134555-9
  • Diseño de interfaces: Patrones para un diseño de interacción eficaz, 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 .
  • 10 excelentes sitios web sobre patrones de diseño de interfaz de usuario en la Fundación de Diseño de Interacción
  • Biblioteca de patrones de diseño de Yahoo