Creación de prototipos de una interfaz de usuario
En este tema se explora cómo crear prototipos de una interfaz de usuario puede ayudar a minimizar los errores de diseño y a garantizar una experiencia de usuario correcta.
A veces, a medida que un proyecto avanza, se acumulan pequeñas suposiciones y decisiones bien intencionadas, lo que convierte las horas de trabajo en una experiencia de usuario lousoso. Los equipos inteligentes eliminan sus errores antes de enviarlos mediante una técnica denominada creación de prototipos de interfaz de usuario. En combinación con los estudios de facilidad de uso, los prototipos mantienen a los equipos en la dirección correcta.
La creación de prototipos es un medio de explorar ideas antes de invertir en ellas. Todos los artesanos y ingenieros experimentados crean prototipos de su trabajo antes de construir cualquier cosa: los arquitectos crean modelos de papel o cartón, o con herramientas de realidad virtual. Los ingenieros de aviación utilizan túneles de viento. Los generadores de puentes crean modelos de estrés. Los diseñadores de software y web crean bocetos de cómo interactuarán los usuarios con sus diseños.
La mejor razón para crear prototipos es ahorrar tiempo y recursos. El valor de un prototipo es que es una fachada, como un conjunto de Hollywood, donde sólo se construye el frente del edificio. En relación con el producto real, los prototipos son fáciles y baratos de crear. Por lo tanto, para una inversión mínima, se pueden encontrar problemas de facilidad de uso y diseño y la interfaz de usuario ajustada antes de que se realice una inversión sustancial en el diseño y las tecnologías finales.
Al examinar las necesidades de un proyecto determinado, se pueden encontrar razones para crear un prototipo que no sea ahorrar dinero. ¿El objetivo es explorar un nuevo modelo de interfaz? ¿Realiza modificaciones en una parte del diseño existente? ¿Investigar una nueva tecnología? Antes de empezar, es importante tener claro por qué está construyendo lo que está construyendo. A partir de objetivos claros, ayuda a realizar esfuerzos directos y eficaces. Las razones para crear prototipos se dividen en tres categorías básicas:
Prueba de concepto.
Entre algunos equipos hay desacuerdos sobre la dirección futura de un proyecto. Un prototipo se puede usar para demostrar que una idea o un nuevo enfoque tiene mérito o valor. Un prototipo puede ayudar a ilustrar que una idea funciona, expresa sus cualidades de una manera visual e interactiva, o motiva a los miembros del equipo a pensar en el problema desde otra perspectiva.
Exploración de diseño.
Si diseña software interactivo, la única manera de explorar cómo se usará algo es crear una simulación e interactuar con él. A veces, la simulación está vinculada a un estudio de facilidad de uso, donde las partes del prototipo se pueden evaluar de forma estructurada. A veces, es simplemente una manera de expresar claramente a un desarrollador cómo debería funcionar o mirar algo. En muchos casos, un diseñador podría simplemente estar experimentando, en un esfuerzo por obtener una idea de qué enfoque podría funcionar. Cualquier persona del equipo puede usar prototipos para explorar los problemas de diseño, aunque los diseñadores suelen ser los más cualificados. Las exploraciones de diseño deben dirigirse a intentar resolver problemas específicos que se reconocen en el producto.
Exploración técnica.
Los desarrolladores que investigan enfoques de implementación para un problema a menudo prueban diferentes técnicas de codificación para ver si funcionan bien. El uso de COM+, HTML dinámico (DHTML), Microsoft Win32 o enfoques de codificación específicos dentro de cada tecnología tienen diferentes ventajas. A veces, un prototipo representa una exploración de qué tecnología funcionará bien para admitir una determinada característica de interfaz de usuario.
A veces se crean prototipos por una combinación de estas razones. Si un equipo planea lo suficientemente bien, puede asignar tiempo para que un desarrollador y un diseñador o administrador de proyectos trabajen juntos en un prototipo. En tales casos, es muy importante definir claramente los objetivos y las contribuciones que se espera que realice cada miembro del equipo. Todos deben estar claros sobre cuáles son los objetivos, qué está en juego y cuál será el resultado potencial.
Cualquier persona puede realizar la creación de prototipos informalmente, independientemente de su fondo o rol en el proyecto. Es fácil crear un prototipo sencillo pero eficaz tomando un mapa de bits de Adobe Photoshop, colocarlo en la herramienta de creación y administración de sitios web de Microsoft FrontPage, y agregar botones o vínculos activos. Estos prototipos ligeros solo van hasta ahora y se pueden volver inconfundibles para interacciones complejas.
Para los prototipos más formales de los equipos más grandes, un desarrollador o administrador de proyectos a menudo colaborará con un diseñador y un ingeniero de facilidad de uso. Juntos generarán ideas, crearán un prototipo que represente las mejores ideas y, a continuación, irán al laboratorio para ver lo eficaz que es para resolver problemas de usuario. Es posible que los desarrolladores participen si pueden ahorrar tiempo o si se necesita su experiencia técnica. A menudo, el diseñador o el jefe de proyectos realizarán la mayor parte del scripting o la codificación para compilar el prototipo.
Dependiendo del ámbito del prototipo y del nivel de detalle requerido, los prototipos se pueden crear en cualquier momento durante el proyecto. A menudo se crean al principio del proyecto, durante la fase de planeamiento y especificación, antes de que los desarrolladores escriban cualquier código de producción. Es cuando la necesidad de exploración es mayor y cuando la inversión de tiempo necesaria es más viable. Si los desarrolladores en lugar de los diseñadores o administradores de programas son prototipos, el tiempo de programación se vuelve aún más importante debido a la necesidad de asegurarse de que el trabajo invertido en el prototipo se contabiliza en la programación de desarrollo. El planeamiento de cualquier versión de la interfaz de usuario debe incluir algún nivel de creación de prototipos.
Al final de un proyecto, los prototipos más pequeños pueden ayudar a resolver problemas técnicos y de diseño difíciles. Una simulación rápida de HTML de cómo debe comportarse un cuadro de diálogo o una página web puede ayudar a responder a la pregunta de un desarrollador o dar a otros compañeros de equipo una sensación de cuál debe ser la experiencia deseada. En algunos casos, un administrador de programas seguro o diseñador puede implementar el comportamiento en el software de desarrollo de Microsoft JScript y aproximadamente gran parte de la lógica de programación que los desarrolladores tendrán que pensar.
El tiempo necesario para crear un prototipo puede variar enormemente, dependiendo del ámbito y la precisión del aspecto que el resultado final necesita. Un prototipo informal podría significar unas horas de trabajo por una persona; un esfuerzo más organizado puede implicar semanas de esfuerzo por parte de todo un equipo.
En un prototipo, compile solo la mayor parte del diseño según sea necesario. Está bien tener botones que no funcionen o texto que nunca se actualice. Siempre que se puedan experimentar las interacciones necesarias, es adecuado usar humo y espejos para el resto. Estas son algunas razones por las que los esfuerzos deben centrarse cuidadosamente:
Costo de construir el prototipo.
El costo implicado en la creación del prototipo debe minimizarse. El desafío con la creación de prototipos es reconocer la inversión mínima necesaria para responder eficazmente a las preguntas sobre el diseño. Aquí es donde los estudios de facilidad de uso son críticos, ya que identifican claramente las partes de la interfaz de usuario que necesitan más trabajo. Incluso sin estudios de facilidad de uso, defina claramente qué problemas de usuario se están resolviendo o qué tareas se están mejorando, con el diseño en el prototipo.
Duración limitada.
Los prototipos deben tener una duración claramente definida. ¿El objetivo final es una presentación en una reunión de equipo? ¿Una reunión de revisión ejecutiva? ¿Una revisión de especificaciones? ¿Un estudio de facilidad de uso? ¿Identificar que el diseño resuelve un problema de usuario? Una vez que se cumplen las necesidades de estos objetivos específicos, se debe reservar el prototipo. La mentalidad básica es que el código o los mapas de bits generados en un prototipo se quedarán atrás. Puede haber excepciones en las que el código o los objetos visuales residen en el producto, pero la expectativa debe ser que esto no sea el caso.
Riesgo de sobrecargar al equipo.
Mostrar prototipos a desarrolladores y compañeros de equipo puede ser complicado. Un prototipo demasiado complejo o elaborado, deportivos increíbles objetos visuales y animaciones, puede sobrecargar a las personas. Siempre tiene sentido hasta dónde ir y cuánto debe tomarse en serio el prototipo.
A medida que se determina el enfoque para el esfuerzo de creación de prototipos, tenga en cuenta lo siguiente:
Necesidades del cliente.
A partir de una comprensión de los problemas o necesidades clave de los usuarios (quizás algo que haya proporcionado un ingeniero de facilidad de uso) proporciona una idea sobre qué partes del diseño de la interfaz de usuario garantizan la mayor exploración.
Tareas de estudio de facilidad de uso.
Si crea el prototipo para un estudio de facilidad de uso, analice con el ingeniero de facilidad de uso qué tareas específicas formarán parte del estudio y diseñe en torno a esos elementos.
Entrada del equipo.
Hable con los desarrolladores clave del equipo a medida que las ideas del prototipo se están reunindo. Obtenga un sentido básico para lo que es razonable, lo que es posible y lo que está más allá de tener en cuenta para la próxima versión. En algunos casos, considere la posibilidad de ir más allá de lo que dicen es posible para un aspecto del diseño si es un punto clave y el equipo debe desafiarse. Sin embargo, no haga esto con todos los aspectos del prototipo, ya que hay una línea fina entre empujar los límites y sobrecargar a su equipo. Si el deseo es inspirar al equipo mostrándoles una visión para varias versiones, entonces ve por él. Sin embargo, si el requisito es definir cambios específicos para la próxima versión, centre los esfuerzos en esos cambios. Asegúrese de llamar a los cambios específicos de una manera modular y mostrar a los desarrolladores una ruta de acceso para crear los diseños.
Amplitud frente a profundidad.
Para prototipos más grandes, hay la consideración adicional de amplitud frente a profundidad. ¿Cada característica del diseño funciona un poco o debe elegirse una característica para crear prototipos con casi todas sus piezas y opciones? Intente no hacer ambas cosas, ya que el resultado podría ser un prototipo grande e inconfundible que es difícil de modificar y difícil de tirar.
Una manera de centrar los recursos de creación de prototipos es concentrarse en el diseño inteligente. Se pueden crear prototipos más eficaces al permitir que un fragmento de código de prototipo pueda ejercer muchas ideas diferentes. En lugar de tener cinco prototipos diferentes, considere la posibilidad de crear un prototipo que tenga las opciones para cambiar los distintos atributos del prototipo.
¿Debe ubicarse la barra de herramientas a la izquierda o en la parte superior? ¿Deberíamos mostrar 10 elementos en la página principal o 20? Un buen prototipo tiene algún tipo de panel de opciones integrados que permite cambiar los parámetros de cómo se ve o funciona el prototipo. Mantenga estos paneles de opciones ocultos en el prototipo: intente evitar que un participante de facilidad de uso los encuentre accidentalmente durante una prueba.
El desafío es simplificar el prototipo, pero seguir siendo lo suficientemente útil como para que se pueda mostrar a un compañero de equipo, se pueden demostrar diferentes opciones y se pueden obtener comentarios.
Las versiones beta no se califican como prototipos, ya que son esfuerzos de ingeniería completos. Si se encuentra un error crítico en una característica de una versión beta, es poco probable que se descarte, incluso si podría estar en el mejor interés del producto. Los desarrolladores, evaluadores y diseñadores ya han invertido mucho tiempo, y la presión para vivir con malas decisiones es muy alta. Las betas ciertamente ayudan a encontrar errores y defectos, pero rara vez son útiles para realizar estudios controlados del valor de direcciones de diseño específicas.
Hay varias herramientas y tecnologías diferentes que se pueden usar para crear prototipos, cada una de las cuales tiene sus ventajas y desventajas. Considere el tipo de trabajo de diseño que se está prototipondo y los objetivos del esfuerzo de creación de prototipos antes de decidir qué herramienta o tecnología es la correcta.
Microsoft Visual Basic o C#.
Esta es la tecnología más rápida para crear prototipos de interfaz de usuario de estilo Windows. El objeto del explorador web facilita la integración de HTMLUI con componentes estándar de estilo Windows. Aunque es cierto que un desarrollador experimentado con Microsoft Visual Studio podría generar una interfaz de usuario más rápida en C/C++, esto crea la tentación de reutilizar el código del prototipo de interfaz de usuario en el código de producción. Se necesita disciplina para reconocer que los objetivos de un prototipo de interfaz de usuario rápido y sucio son altamente divergentes de la ingeniería de alta calidad. Asegúrese de que está claro qué tipo de código se está escribiendo y que el equipo o el administrador entiende lo que se descartará.
Microsoft Expression Blend + SketchFlow.
SketchFlow es una herramienta visual para diseñar, crear prototipos y crear interfaces de usuario sofisticadas para Windows Presentation Foundation (WPF) y aplicaciones web y de escritorio de Microsoft Silverlight. Las aplicaciones se crean mediante formas de dibujo, controles de dibujo como botones y cuadros de lista, lo que hace que las partes de una aplicación respondan a los clics del mouse y a otras entradas del usuario, y aplicar estilos a todo para que parezcan únicos.
Adobe Director o Adobe Flash.
Director es una popular herramienta de creación de prototipos de interfaz de usuario entre diseñadores. Es más útil para los diseños multimedia o de GUI no estándar, o para prototipos que requieren una animación significativa. Es alta flexibilidad hace que sea complicado para la interfaz de usuario de estilo de interfaz de usuario en comparación con Visual Basic. Sin embargo, un usuario de Director experto puede generar windows o interfaz de usuario web sin dificultad.
HTML.
FrontPage y otros editores HTML permiten crear rápidamente prototipos simples. Para expresar una idea, a menudo es posible crear mapas de bits que ilustran una secuencia de interacción del usuario y colocarlos en FrontPage. Estas imágenes se pueden usar para simular cómo interactuar con el diseño. JScript y DHTML toman cosas a otro nivel, lo que permite una lógica e interacción muy sofisticadas. Si usa HTML para crear prototipos de un sitio web, la advertencia descrita para C/C++ también se aplica aquí, no caiga en la trampa de confundir código de prototipo rápido con ingeniería de calidad de producción.