Comprendiendo las necesidades de su aplicación web IBM i mediante el descubrimiento de aplicaciones

Comprendiendo las necesidades de su aplicación web IBM i mediante el descubrimiento de aplicaciones

Comprendiendo las necesidades de su aplicación web IBM i mediante el descubrimiento de aplicaciones

¿Está considerando el desarrollo web y aplicaciones móviles en el IBM i? Antes de comenzar a programar, es útil evaluar y validar su visión con un descubridor. Agregar este paso a su proceso de desarrollo aumenta la probabilidad de que su proyecto tenga éxito porque brinda a las partes interesadas una comprensión clara de lo que necesita, cómo la aplicación resolverá los problemas de los usuarios, y cuánto costará.

Al equipo de desarrollo de aplicaciones web se le pide con frecuencia que considere una nueva aplicación comercial y calcule cuánto costará construirla. Con la cantidad de detalles que normalmente tenemos en este punto (es decir, casi ninguno), solo podemos sugerir plausiblemente que costará más que una caja de pan y menos que un Ferrari (creemos). Ahí es donde la fase de descubrimiento de aplicaciones de un proyecto resulta útil.

 

¿Qué es un descubrimiento?

Hay un par de descubrimientos diferentes que podemos llevar a cabo: uno es el descubrimiento de modernización estratégica y otro el descubrimiento de aplicaciones web. El primero es una evaluación estratégica integral de la infraestructura, las aplicaciones y la visión empresarial de un departamento IBM i. EL segundo se basa en un esfuerzo mucho más centrado, que analiza una necesidad específica. Analizaremos el descubrimiento de aplicaciones web en este artículo.

La fase de descubrimiento de aplicaciones web tiene como objetivo comprender qué se necesita y estimar el costo que conlleva desarrollarlo. Una vez que ha sido delimitado y estimado, se toma la decisión de continuar o no. El objetivo es llegar a comprender lo suficiente las necesidades de los usuarios como para hacer una estimación razonable del costo de construcción. En realidad, las estimaciones no están destinadas a ser precisas (de hecho, las palabras estimación y precisión significan cosas diferentes), pero pueden estar más o menos cerca del presupuesto, y el proceso de descubrimiento de aplicaciones nos ayuda a acercarnos a él.

La clave de todo el proceso es comprender las necesidades del usuario y el valor que proporciona responder a esas necesidades. Esto realmente significa acercarse a los usuarios finales de la aplicación y vivir en su mundo. Para hacer esto de manera efectiva, necesitamos cultivar una cierta forma de pensar.

 

La mente del descubridor

El descubridor tiene un desafío interesante: conocer las necesidades reales del cliente y proponer una solución que satisfaga a las mismas.

¿Por qué decimos necesidades reales? Después de trabajar en el desarrollo de software durante muchos años, nos hemos encontrado, con demasiada frecuencia, en la situación en la que el cliente dice "necesitamos x, y, z", solo para descubrir más tarde que simplemente querían estas cosas, a veces sin siquiera saber por qué. Y para consternación posterior de todos, darnos cuenta de que algunos de esos deseos no satisfacían las necesidades que realmente los clientes tenían.

Por eso queremos desglosar lo que necesitan y el valor que esto les brinda. Para comprender verdaderamente sus necesidades, debemos estar en su mundo. Necesitamos abandonar nuestras ideas preconcebidas sobre lo que creemos saber y sentir empatía por sus problemas. Para considerar un descubrimiento a través de diferentes ópticas, intente buscar algunos de los sinónimos de descubrimiento: detección, revelación, encuentro, introducción.

Tenemos mucha experiencia en la creación de software y creemos que sabemos mucho al respecto. Y, sin embargo, esa experiencia conlleva el riesgo de creer que "sabemos más". El concepto zen de Shoshin, o "mente de principiante", puede sernos útil en este caso. Aunque tenemos muchos años de experiencia en el desarrollo de software y soluciones, debemos intentar pensar como un principiante y empaparnos del mundo de nuestro cliente. Debemos estar atentos para no podar prematuramente el árbol de decisiones, por así decirlo.

El kit de herramientas del descubridor

Los descubridores de aplicaciones web tienen muchas herramientas y estrategias diferentes a su disposición. Éstos son algunas de ellas:

Preparar el escenario: descubrir un mundo completamente nuevo, comprender las necesidades clave y, finalmente, proponer soluciones no es una tarea trivial. Tener un buen comienzo es imprescindible para el éxito. Comenzamos con dos preguntas muy simples pero importantes.

  • ¿Cuáles son tus objetivos?
  • ¿Cómo medirás el éxito?

Estas dos preguntas son perfectas para sentar las bases de las siguientes actividades de descubrimiento. Nos ayudan a todos a comprender claramente los principales objetivos y las principales medidas de éxito (MOS).

No tengas miedo. Empieza y colócalos en una pizarra blanca con imprudente abandono. ¡No los estás grabando en piedra, porque esto es un descubrimiento y justo está comenzando! Casi todas las actividades en un descubrimiento deben terminar con una revisión de los objetivos y MOS para ver si todavía estamos alineados o si necesitamos hacer ajustes.

Otro punto importante a tener en cuenta al definir objetivos y MOS es considerar la audiencia. Queremos centrarnos en los verdaderos usuarios de la aplicación. Esto significa que debemos encontrar a las personas adecuadas.

Personas, historias de usuarios y entrevistas: ahora tenemos algunos objetivos de alto nivel y MOS. A continuación, ¿quién va a utilizar nuestra aplicación? ¿Quienes son? ¿Estamos hablando con las personas adecuadas? ¿Son los usuarios reales del producto propuesto?

A menudo, las necesidades las atiende un intermediario, como un miembro del equipo de TI o un gerente. Hemos estado en la lamentable posición de tener un intermediario que nos dice que no quieren dar voz a los usuarios, porque los usuarios pedirán la luna. Necesitamos que los usuarios reales nos cuenten sobre su mundo y lo que hacen.

A veces se nos dice que una aplicación dará servicio al usuario A solo para descubrir más tarde que el Gerente B y el Cliente C no fueron tomados en cuenta. Necesitamos ser conscientes de todos los tipos de usuarios, sin importar su nivel de interacción con una aplicación. Una actividad simple que podemos hacer en este punto es trazar el flujo de trabajo típico de los "trabajos" u "operaciones" que deben completarse. Esto nos ayuda a identificar los tipos de usuarios o roles.

Ahora que conocemos nuestros diferentes tipos de usuarios (personas), podemos profundizar más para comprenderlos. ¿Cómo llevamos a cabo esto? Escuchemos la historia directamente de la fuente: para nuestra próxima actividad de descubrimiento, entrevistamos a los usuarios.

Esto nos proporciona información sobre lo que deben hacer y por qué (las historias de los usuarios). Durante estas entrevistas, es importante mantener una mente abierta y sin pretensiones. Buscamos identificar matices o cosas sutiles que hace un usuario. No es solo el "¿Qué?" ¿o como?" un usuario hace algo, también es el "¿Por qué?"

Cuestionar las respuestas: considere los "Cinco por qué", que se hicieron famosos por su uso en Toyota. Aunque este método de consulta se suele utilizar como estrategia de resolución de problemas, no hay ninguna razón por la que no pueda pensar de esta forma cuando aprende sobre las necesidades de los usuarios.

Por ejemplo, estábamos haciendo un descubrimiento para una aplicación donde los despachadores asignaban trabajos a los contratistas. La necesidad declarada era: "Necesitamos saber cómo se asignan los trabajos a los contratistas".

De los gerentes, escuchamos:

  • ¿Por qué? Entonces tenemos una mejor idea de cuántos trabajos completamos al día.
  • ¿Por qué? Queremos maximizar el número que obtiene cada contratista
  • ¿Por qué? Le da al contratista más oportunidades de maximizar su salario.
  • ¿Por qué? Porque podemos planificar mejor los trabajos del día
  • ¿Por qué? Nos ayuda a servir mejor a nuestros clientes

De los despachadores, escuchamos:

  • ¿Por qué? Entonces tenemos una mejor idea de cuántos trabajos completamos al día.
  • ¿Por qué? Queremos maximizar el número que obtiene cada contratista
  • ¿Por qué? Queremos ser justos con nuestros contratistas
  • ¿Por qué? Porque queremos contratistas felices
  • ¿Por qué? Nos ayuda a servir mejor a nuestros clientes

Tenga en cuenta que existen ligeras variaciones en las razones entre los grupos de usuarios. Esto fue nuevo y esclarecedor. Toda esta información clave nos ayudó a identificar métricas clave que incluimos en la interfaz de usuario. ¡Todos salimos ganando!

Wireframe (porque una imagen vale más que mil palabras): antes de comenzar a lanzar código, nos gusta validar los pensamientos y la visión de nuestros clientes con un wireframe. Una simple representación visual de cómo funcionará la aplicación propuesta, un wireframe puede ser tan simple como algunos bocetos en papel o tan interactiva como un esqueleto HTML de la aplicación propuesta. La clave es ilustrar lo que harán los usuarios y cómo resuelve sus problemas.

Usamos el wireframe para compartir nuestras ideas con el cliente y asegurarnos de que vamos en la dirección correcta y hablamos el mismo idioma. Al igual que los Objetivos y el MOS, el wireframe es otra herramienta a la que podemos hacer referencia a menudo y modificar orgánicamente a medida que avanza el descubrimiento.

Aunque hay muchas herramientas y estrategias diferentes con respecto a los wireframes, todas comparten algunos de los mismos momentos de Zen:

  • Falla rápido y a menudo
  • Obtenga temprana y frecuentemente comentarios del usuario
  • Haga crecer el wireframe juntos

 

"Un diseñador ha alcanzado la perfección no cuando no hay nada que agregar, sino cuando no hay nada que quitar".

 

El placer del descubrimiento

Hay una satisfacción, incluso una sensación de placer, al aprender lo que hace la gente. No hay nada como el momento "ajá" en el que realmente entendemos algo, especialmente cuando se profundiza en algo simple y se descubre que tiene más matices de lo que parecía. Y esto puede fluir en ambos sentidos: los usuarios saben que han sido escuchados y comprendidos. Nada facilita la participación del usuario como la comprensión compartida construida durante el descubrimiento. Ahora tienen un papel en el juego, el cual es exactamente cómo terminar la fase de descubrimiento y dar los siguientes pasos.

 

Artículo traducido y basado en su original en ingles publicado en ITjungle y escrito por Scott Gingerysty y Derek Woods de Fresche Solutions