Instructing

Interacción

Descripción

Instructing, o ‘instrucción’, es un modelo conceptual de interacción que permite describir un producto interactivo a partir de las órdenes o peticiones que realiza el usuario.

Este modelo genera interacciones rápidas y eficientes, lo que resulta especialmente útil para acciones repetitivas o cuando se deben hacer varias tareas de forma sucesiva.

Los primeros lenguajes de programación utilizados para comunicarse con ordenadores ya seguían este modelo. Estos lenguajes, introducidos en los años cincuenta por Grace Hopper y John Backus, eran de carácter imperativo: el programador escribía instrucciones para que el ordenador realizara una serie de cálculos y tareas. La interfaz original para comunicar estas instrucciones eran rudimentarias tarjetas perforadas que se debían introducir físicamente en el ordenador.

Tarjeta perforada de un programa típico de Fortran. Foto de Arnold Reinhold licenciada bajo CC BY-SA 2.5.
Fuente: https://commons.wikimedia.org/wiki/File:FortranCardPROJ039.agr.jpg y https://creativecommons.org/licenses/by-sa/2.5/.

Posteriormente se utilizaron otro tipo de interfaces que mejoraban tanto los mecanismos para introducir las órdenes como la forma de comunicar las consecuencias de estas.

Ejemplos

Se presentan a continuación tres ejemplos con carácter ilustrativo de este modelo de interacción.

Línea de órdenes

Las interfaces de línea de órdenes o CLI (command-line interface) permiten a los usuarios interactuar con el producto interactivo introduciendo sucesivas líneas de texto, normalmente mediante un dispositivo de entrada tipo teclado.

En la siguiente figura, un usuario está interactuando con una interfaz de línea de órdenes, empieza la interacción usando la orden «mkdir» (abreviación de make directory) para crear un nuevo directorio o carpeta con el parámetro new_directory, que será el nombre del directorio.

Justo después utiliza la orden «cd» (abreviación de change directory) para poder empezar a trabajar con nuevas órdenes dentro del directorio.

Interacción mediante línea de órdenes en un sistema Debian GNU/Linux.
Fuente: elaboración propia.

Mediante este tipo de interfaz, el usuario puede generar órdenes complejas o crear secuencias de varias órdenes cuando considere que deba repetirlas en el futuro.

Sensor de movimiento para control gestual

Para indicar órdenes en el modelo instructing, existe habitualmente un lenguaje compartido con el sistema interactivo, pero este lenguaje no necesariamente debe ser verbal.

Kinect era un dispositivo de entrada con sensor de movimiento de Microsoft para la antigua consola de videojuegos Xbox 360 mediante el cual el usuario podía situar su brazo derecho paralelo al cuerpo y el izquierdo formando un ángulo de 45º para ordenar al sistema que pausara el juego y mostrara un menú.

Kinect de Xbox One. Imagen bajo dominio público tomada de Wikimedia Commons.
Fuente: https://commons.wikimedia.org/wiki/File:Xbox-One-Kinect.jpg.

Es importante observar que aquí el sistema no mantiene conversación alguna, como sucedería en un modelo de interacción conversing, sino que se limita a ejecutar la orden indicada.

Menú

Un menú es una colección o lista de opciones u órdenes presentadas explícitamente al usuario. Esta presentación explícita de las opciones es la gran diferencia con los dos ejemplos anteriores.

En la siguiente figura se muestra un menú con varias opciones disponibles para el elemento seleccionado, en este caso un texto en la aplicación Microsoft Word. Algunas de las opciones disponibles se presentan textualmente, mientras que otras se representan mediante iconos.

Captura de pantalla de un menú en Microsoft Word.
Fuente: elaboración propia.

Consideraciones

Al aplicar este modelo se debe tener presente que el uso de órdenes concretas basadas en un lenguaje preestablecido obliga al usuario a conocer previamente y a recordar dichas órdenes.

El usuario también puede tener problemas en el proceso de introducción, por ejemplo, si teclea mal una instrucción o hace un movimiento gestual que el sistema interactivo no reconoce.

Ambos problemas se pueden minimizar mostrando al usuario las órdenes aceptadas e invitándole a seleccionar una de ellas (por ejemplo, mediante un menú). Si bien esto facilita el aprendizaje de la interfaz, implica buscar mecanismos para mostrar y organizar las opciones e impacta directamente en una de las ventajas de este sistema: la eficiencia.

Referencias

Preece, J.; Rogers, Y.; Sharp, H. (2002). Interaction design: beyond human-computer interaction. Nueva York : J. Wiley & Sons (pág. 519).