UX: ¿Cuándo utilizar skins en la interfaz de tu aplicación?

Uno de los ejemplos más conocidos es Winamp, que incluso tiene una comunidad en torno a sus skins.

Los skins son sustitutos de la apariencia de los controles estándar de un sistema operativo con una interfaz de usuario basada en ventanas (e.g. Windows 7, Ubuntu Linux, Mac OS X). Los skins pueden ser o no personalizables por el usuario (si lo son, se dice que la aplicación es skinnable). La definición anterior puede ampliarse a interfaces gráficas no basadas en ventanas, como por ejemplo la de un cajero automático o la de un teléfono móvil.

A la hora de decidir si queremos utilizar skins (o hacer skinnable nuestra GUI) hay que valorar los pros y los contras de esta elección. Como siempre en el mundo de la UX, no hay una solución general, pues cada caso es distinto (no one-size-fits-all solution).

Motivos para SÍ utilizar skins

  • Mayor impacto visual, que puede resultar en un producto estéticamente más agradable o en una mayor conexión emocional entre usuario y producto.
  • Diferenciarse de la competencia (o equipararse a ella). Tenemos una interfaz gráfica distinta, por tanto somos distintos (¿mejores? muy dudoso).
  • Branding de aplicaciones OEM. Puede ser obligatorio en determinados productos (¿suficiente con el splash inicial o el about?).
  • Misma interfaz en varios sistemas. En aplicaciones multiplataforma puede ser interesante para mejorar la consistencia (e.g. Google Chrome tiene casi la misma apariencia en Linux, Windows y Mac). Las bondades de este punto son muy dudosas ya que habría que estar muy seguro de que tus usuarios cambian de sistema tan frecuentemente.
  • Mejorar la consistencia entre aplicaciones de una misma marca o suite, de forma que estar familiarizado con una de ellas, facilite la utilización de otra (e.g. Adobe utiliza una GUI personalizada de forma similar en todos sus productos).
  • Reducir la complejidad del sistema operativo. Es el caso de la mayoría de los cajeros automáticos que corren sobre entornos Windows. También se utiliza en aplicaciones infantiles.
  • Mejorar la interfaz estándar, cambiando los controles estándar o haciendo nuevos. Aplicable en productos muy concretos, e.g. editores de sonido. No es fácil de conseguir y hay que tener muy claro que se va a mejorar lo existente.

Motivos para NO utilizar skins

  • Pérdida de consistencia desde el punto de vista de la usabilidad, ya que el usuario reconoce fácilmente los controles estándar que utiliza el sistema operativo (y la mayoría de las aplicaciones) y sabe cómo interaccionar con ellos, mientras que una interfaz con distinta apariencia tiene una barrera inicial, ya que el usuario va a tener que redescubrir a qué equivale cada elemento y cómo funciona.
  • Desaprovechamiento de las mejoras en el sistema. Si se utilizan los controles estándar y se siguen sus guías de UX, cuando éste lance una nueva versión, la aplicación se beneficiará de todas las mejoras que incluya esa nueva versión. Si utilizamos skins, las mejoras en el sistema serán omitidas.
  • Mayor tiempo de desarrollo. Añadir skins no deja de ser una funcionalidad que conlleva un desarrollo. Se puede paliar utilizando librerías especializadas (e.g. Prof-UIs), aunque en mi opinión éstas suelen tener demasiadas cosas (más dinero, más features, más complejidad, más bugs, más problemas)
  • Es difícil hacerlo bien. La mayoría de aplicaciones con skins que han tenido éxito, tienen una gran compañía por detrás. Hay mucho trabajo de diseño gráfico y de interfaces.

Conclusión

Si decides que tu aplicación tenga un skin propio o sea skinnable, hazlo por una muy buena razón y siendo consciente de que vas a necesitar un esfuerzo extra para no empeorar la experiencia de tus usuarios. Si tienes dudas, es probable que no te convenga utilizar skins.

Por otra parte, hay aplicaciones de mucho éxito que utilizan skins, e.g. World of Warcraft, Spotify, Adobe Photoshop,… así que no hay duda de que en algunos casos existe un beneficio derivado de su utilización.

Referencias

¿Opiniones, comentarios, críticas? :)