Escritura de historias de usuario en base al texto de una épica

Monday, February 19, 2024 - 11:30

Una historia de usuario es una explicación general e informal de una función de software escrita desde la perspectiva del usuario final. Su propósito es articular cómo proporcionará una función de software valor al cliente.

Debido a que una épica en general es una historia de usuario demasiado grande para que un equipo ágil la complete en una iteración, se divide en varias historias de usuario más pequeñas antes de que se trabaje en ella.

Partiendo de una tienda, se escribirán sus épicas:

1-> Desarrollar una funcionalidad inicial de catálogo que ofrezca una interfaz reducida, permitiendo a los usuarios buscar productos por categorías como género (hombre, mujer, niño, niña), tallas, colores y otras especificaciones relevantes.

2-> Implementar una vista detallada para cada prenda en el catálogo, que incluya información como precio, colores disponibles, tipo de tela, imágenes del producto, disponibilidad en inventario y variedad de tallas.

3-> Desarrollar un sistema de gestión de carrito de compra que permita a los usuarios agregar, eliminar y modificar la cantidad de productos seleccionados, además de visualizar el resumen de la compra, incluyendo detalles como nombre del producto, precio unitario, cantidad seleccionada y subtotal por artículo.

4-> Implementar un sistema de pago por tarjeta de crédito que garantice la seguridad de la información del usuario, permitiendo realizar transacciones seguras y confiables. El sistema deberá incluir la validación de los datos de la tarjeta, el procesamiento de la transacción y la generación de un comprobante de pago para el usuario.

5-> Desarrollar una funcionalidad que permita a los usuarios realizar pagos utilizando PayPal como método de pago.

6-> Desarrollar una funcionalidad que permita a los usuarios realizar pagos utilizando criptomonedas como método de pago. El sistema deberá integrarse con las principales plataformas de intercambio de criptomonedas para procesar las transacciones de manera segura y eficiente.

7-> Implementar una funcionalidad de registro de usuarios que recolecte información básica, como nombre, apellidos, dirección, teléfono, correo electrónico, así como datos de inicio de sesión, incluidos nombre de usuario y contraseña. El sistema deberá garantizar la seguridad de los datos del usuario almacenados y proporcionar una experiencia fluida durante el proceso de registro.

8-> Desarrollar una zona privada accesible para los usuarios registrados, que les permita consultar sus pedidos activos, acceder al historial de pedidos anteriores y visualizar promociones exclusivas. La zona privada debe garantizar la privacidad y seguridad de la información del usuario, brindando una experiencia intuitiva y personalizada. Además, se deben implementar funciones de gestión de cuenta, como la actualización de datos personales y la modificación de preferencias de comunicación.

9-> Crear una sección exclusiva para influencers, donde cada uno tenga un código personalizado que puedan compartir con su audiencia. Los influencers podrán acceder a un panel donde podrán visualizar cuántas veces se ha utilizado su código, así como el total de dinero que han generado a través de las ventas generadas por dicho código.

10-> Capacitar a los influencers para promocionar la ropa mediante códigos exclusivos de descuento. Cada influencer recibirá códigos especiales que podrán compartir con su audiencia, ofreciendo descuentos especiales en los productos de la marca.

11-> Habilitar a los usuarios para que utilicen descuentos encontrados en redes sociales al realizar compras. Se proporcionará un campo de promoción durante el proceso de pago, donde los usuarios podrán ingresar códigos de descuento obtenidos en redes sociales u otras plataformas de promoción.

12-> Ofrecer distintos tipos de sorteos promocionados exclusivamente entre los usuarios registrados. Los sorteos se realizarán periódicamente y ofrecerán a los usuarios la oportunidad de ganar premios atractivos.

13-> Ofrecer cupones a los usuarios registrados, donde al alcanzar una cantidad específica de compras, se les regalará una prenda a elegir dentro de un límite de precio establecido.

14-> Realizar subastas periódicas de prendas de ropa de temporadas pasadas, donde los usuarios puedan pujar por los artículos que deseen adquirir.

15-> Permitir a los usuarios que hayan realizado compras dejar comentarios y valoraciones sobre su experiencia de compra en la tienda.

16-> Ofrecer un servicio exclusivo para los usuarios registrados que les permita revender los productos adquiridos en la tienda.

Vamos a realizar una serie de pruebas de Prompting, consistirán en pasar un texto(épica) y pedirle a la IA que nos genere historias de usuario con los criterios de aceptación. Lo haremos de 3 formas distintas.

  1. Pasarle texto dividido en épicas más pequeñas
  2. Pasarle todo el texto completo de la épica, le pedimos que actuase como un experto PO y además escribiendo los criterios de aceptación en BDD.
  3. Le pedimos a partir del texto inicial que escriba las épicas el mismo y luego que haga las historias.

Vamos a utilizar chatGPT para realizar las siguientes pruebas:

CASO 1:

Promt: Partiendo de estas épicas, divídelas en historias y escribe los criterios de aceptación de cada una de ellas

Resultado: Le he proporcionado las épicas, y este ha sido el resultado:

Épica 1: Desarrollar una funcionalidad inicial de catálogo

Historias:

  • Como usuario, quiero poder buscar productos por género (hombre, mujer, niño, niña).
  • Como usuario, quiero poder filtrar productos por tallas y colores.
  • Como usuario, quiero poder ver información básica de los productos en el catálogo.

Criterios de aceptación:

  • La búsqueda por género debe mostrar resultados específicos para cada categoría.
  • Los filtros por tallas y colores deben reflejar las opciones disponibles para cada producto.
  • La información básica de los productos debe incluir al menos el nombre, la imagen y el precio.

Épica 2: Implementar una vista detallada para cada prenda en el catálogo

Historias:

  • Como usuario, quiero ver información detallada de cada producto, incluyendo precio, colores disponibles, tipo de tela y variedad de tallas.
  • Como usuario, quiero ver imágenes de alta calidad de cada producto en la vista detallada.

Criterios de aceptación:

  • La vista detallada debe mostrar todos los detalles relevantes del producto.
  • Las imágenes del producto deben ser de alta resolución y permitir al usuario ver el producto desde diferentes ángulos si es posible.

Épica 3: Desarrollar un sistema de gestión de carrito de compra

Historias:

  • Como usuario, quiero agregar productos al carrito de compra.
  • Como usuario, quiero eliminar productos del carrito de compra.
  • Como usuario, quiero modificar la cantidad de productos en el carrito de compra.
  • Como usuario, quiero ver un resumen detallado de mi carrito de compra antes de realizar la compra.

Criterios de aceptación:

  • Los productos deben agregarse y eliminarse del carrito de forma fluida y sin errores.
  • Los usuarios deben poder cambiar la cantidad de productos en el carrito fácilmente.

Le he proporcionado todas las épicas y solo me ha hecho historia de 3, he tenido que usar un promt más específico para que realizara todas las historias.

Promt: Partiendo de estas épicas, realiza las historias y criterios de aceptación de todas

De esta manera más específica, la IA ha realizado la tarea correctamente escribiendo todas las historias y criterios de aceptación.

Conclusión: Te da buenas historias con un buen formato, pero los criterios de aceptación no están en BBDD, ya que no los pedimos así.

 

CASO 2:

Promt: Actuando como experto product owner, divide este texto de épica en historias. Para cada historia además incluye criterios de aceptación usando notación Behavior Driven Development (BDD).

Resultado:                         

Funcionalidades del Catálogo:

  1. Desarrollo del Catálogo Inicial:
  • Como usuario, quiero poder acceder a un catálogo de productos.
    • Deseo poder buscar productos por género (hombre, mujer, niño, niña), tallas, colores y otras especificaciones relevantes.
    • La interfaz debe ser intuitiva y fácil de usar.

       2. Implementación de la Vista Detallada de Productos:

  • Como usuario, quiero ver una vista detallada de cada producto en el catálogo.
  • Debe mostrar información detallada como precio, colores disponibles, tipo de tela, imágenes del producto, disponibilidad en inventario y variedad de tallas.
  • La navegación entre productos debe ser sencilla y fluida.

Gestión de Compras:

  1. Desarrollo del Carrito de Compra:
  • Como usuario, deseo poder gestionar un carrito de compra.
  • Quiero poder agregar, eliminar y modificar la cantidad de productos seleccionados en mi carrito.
  • Debo poder visualizar un resumen de la compra con detalles como nombre del producto, precio unitario, cantidad seleccionada y subtotal por artículo.

       2. Implementación del Sistema de Pago con Tarjeta de Crédito:

  • Como usuario, quiero poder realizar pagos con tarjeta de crédito de forma segura.
  • El sistema debe validar los datos de la tarjeta.
  • Debe procesar la transacción de manera segura y generar un comprobante de pago para el usuario.

       3. Desarrollo de la Funcionalidad de Pago con PayPal:

  • Como usuario, deseo tener la opción de pagar con PayPal.
  • El sistema debe integrarse con PayPal para permitir pagos seguros y confiables.

       4. ntegración de Pagos con Criptomonedas:

  • Como usuario, quiero tener la opción de pagar con criptomonedas.
  • El sistema debe integrarse con las principales plataformas de intercambio de criptomonedas para procesar las transacciones de manera segura y eficiente.

Registro y Privacidad:

  1. Implementación del Registro de Usuarios:
  • Como usuario nuevo, quiero registrarme en la plataforma.
  • El sistema debe recolectar información básica como nombre, apellidos, dirección, teléfono, correo electrónico y datos de inicio de sesión.
  • Se debe garantizar la seguridad y privacidad de los datos del usuario.

       2. Desarrollo de la Zona Privada para Usuarios Registrados:

  • Como usuario registrado, quiero acceder a una zona privada.
  • Debo poder consultar mis pedidos activos, acceder al historial de pedidos anteriores y visualizar promociones exclusivas.
  • Deben existir funciones de gestión de cuenta como la actualización de datos personales y la modificación de preferencias de comunicación.

Funcionalidades Adicionales:

  1. Creación de una Sección para Influencers:
  • Como influencer, quiero tener una sección exclusiva donde pueda compartir un código personalizado con mi audiencia.
  • Quiero visualizar cuántas veces se ha utilizado mi código y el total de dinero generado a través de las ventas.

       2. Capacitación de Influencers para Promocionar Productos:

  • Como influencer, quiero recibir capacitación para promocionar productos con códigos exclusivos de descuento.
  • Debo recibir códigos especiales para compartir con mi audiencia, ofreciendo descuentos especiales.

       3. Habilitar el Uso de Descuentos en Redes Sociales:

  • Como usuario, quiero poder utilizar descuentos encontrados en redes sociales al realizar compras.
  • Debo tener un campo de promoción durante el proceso de pago para ingresar códigos de descuento obtenidos en redes sociales.

       4. Ofrecer Sorteos Promocionados para Usuarios Registrados:

  • Como usuario registrado, quiero participar en sorteos promocionados exclusivos.
  • Los sorteos deben ofrecer premios atractivos y realizarse periódicamente.

       5. Ofrecer Cupones por Compras Realizadas:

  • Como usuario registrado, quiero recibir cupones por alcanzar una cantidad específica de compras.
  • Debo poder elegir una prenda dentro de un límite de precio establecido como regalo.

      6. Realizar Subastas de Temporadas Pasadas:

  • Como usuario, quiero poder pujar por artículos en subastas de temporadas pasadas.
  • Debe existir un sistema de subastas periódicas para prendas de ropa.

       7. Permitir Comentarios y Valoraciones de Usuarios:

  • Como usuario, quiero poder dejar comentarios y valoraciones sobre mi experiencia de compra.
  • Deben existir secciones donde los usuarios puedan compartir sus opiniones sobre los productos y la tienda.

       8. Ofrecer un Servicio de Reventa para Usuarios Registrados:

  • Como usuario registrado, quiero tener la opción de revender los productos adquiridos en la tienda.
  • Debe existir un servicio exclusivo que facilite la reventa de productos entre usuarios registrados.

Igual que en el caso que se ha mostrado anteriormente, no se muestran todas las historias sino 4 y elegidas por el chatgpt, ni siquiera en orden. Para obtener todas las historias habría que usar un promt más específico.

Promt: Actuando como experto product owner, divide este texto de épica en historias. Para cada historia además incluye criterios de aceptación usando notación Behavior Driven Development (BDD), pero hazlo de todas.

Conclusión: Este caso ha funcionado mejor que el anterior, ya que le hemos pedido que actúe como OP y además con la notación Behavior Driven Development (BDD). Ha creado mejores historias de usuario y más completas, además de refinar los criterios de aceptación.

 

CASO 3:

Promt: "Un grupo de jóvenes emprendedores se unen con el objetivo de ayudar a todo tipo de públicos a poder acceder a un comercio de ropa online, para ello van a crear una página web la cual tendrá una gran variedad de ropa y marcas. Su objetivo es llegar a la gente de una manera agresiva, para ello pretenden hacer una campaña con todo tipo de recursos como redes sociales, distintas formas de pago etc." créame las épicas.

Resultado:

  1. Desarrollo de la plataforma de comercio electrónico: Esta épica abarca la creación y el desarrollo de la página web de comercio electrónico, incluyendo la implementación de una interfaz de usuario intuitiva y atractiva, la integración de un sistema de navegación eficiente y la configuración de la base de datos para gestionar la variedad de ropa y marcas.
  2. Campaña de marketing y promoción: Esta épica se enfoca en la planificación y ejecución de una campaña de marketing integral para promocionar la página web y llegar a un amplio público objetivo. Esto puede incluir estrategias de redes sociales, publicidad pagada, marketing de influencia, entre otras tácticas.
  3. Diversificación de opciones de pago: Para mejorar la accesibilidad y la comodidad del público objetivo, esta épica se centra en la implementación de diversas formas de pago, como tarjetas de crédito, PayPal, transferencias bancarias, entre otras, para facilitar las transacciones de compra.
  4. Optimización de la experiencia del usuario: Esta épica busca mejorar continuamente la experiencia del usuario en la plataforma, mediante la implementación de funciones como la personalización de perfiles de usuario, recomendaciones de productos personalizadas, opciones de búsqueda avanzada y una navegación fluida.
  5. Expansión del catálogo de productos y marcas: Con el objetivo de ofrecer una amplia variedad de opciones a los usuarios, esta épica implica la continua expansión del catálogo de productos y marcas disponibles en la plataforma, incluyendo la incorporación de nuevas colecciones y marcas populares.
  6. Gestión eficiente de inventario y pedidos: Esta épica se enfoca en la implementación de sistemas y herramientas que permitan una gestión eficiente del inventario y de los pedidos, garantizando la disponibilidad de productos, la precisión en los envíos y la atención rápida a las consultas y reclamaciones de los clientes.

Promt: A partir de lo anterior, créame las historias y los criterios de aceptación con BDD, además actúa como experto product owner.

Resultado:

 Épica 1: Desarrollo de la plataforma de comercio electrónico

Historias de Usuario:

  1. Como usuario, quiero poder registrarme en la plataforma para acceder a las funcionalidades completas.

        Criterios de Aceptación:

  • Cuando visito la página de registro, debo poder proporcionar mi información básica como nombre, dirección de correo electrónico y contraseña.
  • Después de registrarme, debo recibir un correo electrónico de confirmación.
  • Debo poder iniciar sesión con las credenciales que he proporcionado durante el registro.

       2. Como usuario, quiero poder buscar productos por categorías para encontrar lo que necesito fácilmente.

       Criterios de Aceptación:

  • Debo poder filtrar productos por género, tipo de ropa, marca, talla y precio.
  • Los resultados de búsqueda deben mostrarse de manera clara y ordenada, con imágenes y detalles de cada producto.

Épica 2: Campaña de marketing y promoción

Historias de Usuario:

  1. Como administrador, quiero poder crear publicaciones en redes sociales para promocionar nuevos productos y ofertas especiales.

       Criterios de Aceptación:

  • Debo poder programar publicaciones en diferentes plataformas como Facebook, Instagram y Twitter.
  • Las publicaciones deben incluir imágenes atractivas y contenido relevante para los usuarios.

        2. Como administrador, quiero poder colaborar con influencers para promocionar nuestra marca y productos.

        Criterios de Aceptación:

  • Debo poder identificar y contactar a influencers relevantes en la industria de la moda.
  • Los influencers deben recibir una compensación adecuada por su colaboración.

Épica 3: Diversificación de opciones de pago

Historias de Usuario:

  1. Como usuario, quiero poder pagar mis compras utilizando diferentes métodos de pago.

       Criterios de Aceptación:

  • Debo poder seleccionar entre opciones de pago como tarjeta de crédito, PayPal, transferencia bancaria y criptomonedas.
  • El proceso de pago debe ser seguro y sin errores, proporcionando confirmación de la transacción.

      2. Como administrador, quiero integrar un sistema de seguridad robusto para proteger la información financiera de los usuarios.

      Criterios de Aceptación:

  • La plataforma debe cumplir con los estándares de seguridad de la industria, incluyendo encriptación SSL y protección contra fraudes.

Conclusión: En esta última prueba, la IA añade información que no le hemos proporcionado, como, por ejemplo, si la aplicación es web o no, además hace una división del texto no muy buena. Escribe bien los criterios de aceptación en cuanto a formato.

 

Preguntas:

¿Es bueno darle contexto?

Sí, proporcionar contexto a la IA ayuda a entender mejor las consultas y a ofrecer respuestas más precisas. Este contexto puede incluir detalles sobre el tema, el problema o la tarea que se está abordando. Ayuda a la IA a adaptar sus respuestas y a ofrecer información relevante para satisfacer las necesidades del usuario de manera más eficiente.

¿Qué funciona mejor darle todo el texto y que el divida como quiera o dividir yo?

Dividir el texto por ti mismo ayuda a que la IA comprenda mejor el contexto y las necesidades específicas de la tarea. Esto facilita que la IA genere respuestas más precisas y relevantes para en las consultas. En cambio, si se le proporciona todo el texto puede pasar por alto detalles importantes o incluso omitirlos.

¿Se puede hacer todo a partir de un texto más simple?

Sí, al tener texto más básico, la información es más simples, y por lo tanto se facilita su comprensión y ejecución, permitiendo una gestión más eficiente y accesible de las tareas.

Conclusiones: ¿Cuál de las 3 aproximaciones ha funcionado mejor?

El caso 2 ha sido el mejor debido a que comenzó con una épica bien definida y un contexto inicial claro. Además, al utilizar la notación BDD (Desarrollo Guiado por Comportamiento) y actuar como un experto product owner, se establecieron criterios de aceptación específicos y comprensibles. Esto permitió una planificación más efectiva y una ejecución más precisa de las tareas, lo que resultó en un proceso de desarrollo más fluido y en la entrega de resultados alineados con las expectativas del usuario.

Propuestas de mejoras del prompting:

Una posible mejora utilizando el texto(épica) del caso 3, seria utilizar este promt: Créame historias para trabajar en un equipo Scrum, y que como resultado final sea una aplicación web con lo que las historias tienen que ir relacionadas con ello, además utilizar la notación BDD.

Historias de Usuario para Desarrollo de la Plataforma de Comercio Electrónico:

  1. Explorar Catálogo de Productos:
  • Como usuario, quiero poder navegar por el catálogo de productos por categorías como género, tipo de prenda, talla y marca para encontrar lo que necesito.

       Criterios de Aceptación (BDD):

  • Debe haber opciones de filtrado por género, tipo de prenda, talla y marca.
  • Los resultados de búsqueda deben ser relevantes y actualizados en tiempo real.

      2. Detalles de Producto:

  • Como usuario, quiero ver detalles específicos de cada producto, como imágenes, descripción, precio y disponibilidad en inventario.

       Criterios de Aceptación (BDD):

  • Cada producto debe tener imágenes de alta calidad que muestren diferentes ángulos y detalles.
  • La descripción del producto debe ser completa y precisa.
  • El precio y la disponibilidad en inventario deben ser visibles y actualizados correctamente.

Historias de Usuario para Estrategia de Marketing y Promoción:

  1. Promociones y Descuentos:
  • Como usuario, quiero recibir información sobre promociones y descuentos a través de correos electrónicos y notificaciones en la aplicación.

       Criterios de Aceptación (BDD):

  • Los correos electrónicos y notificaciones deben ser informativos y atractivos visualmente.
  • Deben incluir detalles claros sobre las promociones, fechas de vencimiento y requisitos específicos.

       2. Múltiples Opciones de Pago:

  • Como usuario, quiero tener diferentes opciones de pago, como tarjeta de crédito, PayPal y criptomonedas, para realizar compras de manera conveniente y segura.

       Criterios de Aceptación (BDD):

  • Cada opción de pago debe ser segura y confiable, con procesos claros de validación y confirmación.
  • Los usuarios deben poder seleccionar su método de pago preferido durante el proceso de pago.

Historias de Usuario para Desarrollo de la Aplicación Web:

  1. Registro de Usuarios:
  • Como usuario, quiero poder registrarme en la aplicación proporcionando información básica, como nombre, dirección, correo electrónico y contraseña.

        Criterios de Aceptación (BDD):

  • El proceso de registro debe ser fácil y rápido, con validación de datos en tiempo real.
  • La información del usuario debe almacenarse de forma segura y protegida.

       2. Gestión de Cuenta de Usuario:

  • Como usuario registrado, quiero poder acceder a mi cuenta para ver mis pedidos activos, historial de pedidos anteriores y promociones exclusivas.

       Criterios de Aceptación (BDD):

  • La zona privada debe garantizar la privacidad y seguridad de la información del usuario.
  • Deben implementarse funciones de gestión de cuenta, como la actualización de datos personales y preferencias de comunicación.

 

 

 



Add new comment

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.