Navegación

Introducción

La navegación es un subconcepto de una incumbencia más general de nuestra aplicación, y en particular de nuestra interfaz de usuario: la interacción. Toda acción del usuario sobre la interfaz es una interacción. Navegación se refiere en particular a esas interacciones que el usuario realizará para poder llevar acabo diferentes tareas. En general serán todas las interacciones relacionadas con el ciclo de vida de una tarea:

Cómo verán aquí, tanto nombrar el concepto de tarea les dará la idea de que es un concepto importante, ya que la navegación se define en base a ella. Pero entonces bajémoslo a algo concreto, ¿qué sería una tarea?

Tarea / Caso de uso

Nos referimos a tarea aquí como una unidad de trabajo que comienza y realiza un usuario sobre el dominio.

Por ejemplo, en un sistema de gestión de un videoclub:

Esta definición tiene cierta similitud con la idea de caso de uso del análisis de requerimientos. Por eso a veces se utilizan ambos términos intercambiablemente.

Pero entonces, ¿cómo se relacionan las tareas con la UI?

Relación entre una tarea y los elementos de UI

La relación entre las tareas y la UI es justamente la navegación. Esta navegación, o su implementación va a depender de varios factores:

Así como hemos visto previamente cómo vincular nuestro dominio con la interfaz de usuario (a través de bindings, por citar un ejemplo), la manera de implementar una tarea y su navegación va a depender de todos estos factores que nombramos.

Un ejemplo concreto

Si estamos en una aplicación de facturación minorista de cualquier negocio, pensemos la vista del caso de uso “Crear factura”, y en particular cómo sería la navegación para seleccionar al cliente. Tenemos varias opciones:

Links relacionados