Uso de ChatGPT para diagramas
Foto de Kelly Sikkema en Unsplash

Uso de ChatGPT para diagramas

A estas alturas, ¿quién no ha oído ya hablar de ChatGPT? Su popularidad es tal, que sigue creciendo y, a día de hoy, tiene una amplia gama de aplicaciones. 

Por mi lado, quería confirmar si ChatGPT podía generar diagramas para la explicación de un caso de uso y analizar múltiples factores al mismo tiempo, ya que, con algo de práctica, podría conseguir ahorrarme tiempo a la hora de preparar diagramas que me ayuden a completar la documentación de un proyecto.

Comparto la conversación con vosotros:

1. Definición de caso de uso

ChatGPT - Captura de pantalla con la definición de caso de uso del sector retail.
ChatGPT - Captura de pantalla con la definición de caso de uso del sector retail.

La verdad es que no está nada mal.

2. Definición de un modelo de datos

Ahora le pido que me defina el modelo de datos.

ChatGPT - Descripción del modelo de datos.
ChatGPT - Descripción del modelo de datos.

Quiero profundizar un poco más en el modelo de datos y darle una forma de tabla, más amigable.

ChatGPT - Modelo de datos en forma de tablas.
ChatGPT - Modelo de datos en forma de tablas.

3. Diagrama entidad-relación

Vamos a ver si me puede representar las relaciones como con Mermaid.

ChatGPT - Diagrama entidad-relación en formato Mermaid.
ChatGPT - Diagrama entidad-relación en formato Mermaid.

Copio código en un editor markdown y obtengo lo siguiente:

ChatGPT - Diagrama entidad-relación.
ChatGPT - Diagrama entidad-relación.

4. Diagrama de secuencia

Ahora quiero obtener un diagrama de secuencia con un posible caso de una transacción de compra:

Este diagrama muestra cómo una transacción de compra se inicia cuando el cliente realiza una compra. Luego, se registra la tarjeta de fidelización del cliente en la transacción y se agregan los productos comprados a la misma. Después, se reduce la cantidad disponible del producto en el inventario y se retorna la cantidad actualizada. Por último, la transacción informa al cliente el monto total de la compra.
sequenceDiagram
    participant Client
    participant LoyaltyCard
    participant Transaction
    participant Product
    participant Inventory


    Client->>+Transaction: Realiza una compra
    Transaction->>LoyaltyCard: Obtiene la tarjeta de fidelización del cliente
    LoyaltyCard->>Transaction: Registra la tarjeta en la transacción
    Transaction->>Product: Agrega los productos comprados a la transacción
    Product->>Inventory: Reduce la cantidad disponible en el inventario
    Inventory-->>Product: Retorna la cantidad actualizada del producto
    Transaction-->>Client: Informa el monto total de la compra        

Vuelvo a pegar el resultado en un editor markdown y obtengo lo siguiente:

ChatGPT - Diagrama de secuencia para una transacción de compra.
ChatGPT - Diagrama de secuencia para una transacción de compra.

5. Diagrama de estados

Ahora le pido que me devuelva un diagrama de estados, de los posibles estados que pueda tener una cuenta:

ChatGPT - Diagrama de estados.
ChatGPT - Código del diagrama de estados en Mermaid.

Y en markdown queda de la siguiente manera:

No hay texto alternativo para esta imagen
ChatGPT - Visualización del diagrama de estados en markdown.

Los diferentes estados que pueda obtener la cuenta y las posibles transacciones que pueda haber entre ellos en el ejemplo que proporciona ChatGPT quedan de la siguiente manera:

  • Estado inicial [*]
  • La cuenta puede pasar de `Nueva` a `Activa`, validándola.
  • La cuenta puede pasar de `Activa` a `Inactiva` si no se utiliza por un periodo de tiempo.
  • La cuenta puede pasar de `Activa` a `Cerrada` si el usuario cierra la cuenta.
  • La cuenta puede pasar de `Inactiva` a `Activa` si el usuario reactiva la cuenta.

Los estados de una cuenta son más variados, así que éste se me queda un poco corto. Vamos a intentar agregar alguno más:

ChatGPT - Código del diagrama de estados más extenso en Mermaid.
ChatGPT - Código del diagrama de estados más extenso en Mermaid.

Con su representación gráfica en markdown:

ChatGPT - Visualización del diagrama de estados más extenso en markdown.
ChatGPT - Visualización del diagrama de estados más extenso en markdown.

Observamos que ha agregado dos estados más (`Congelada` y `Caducada`) con sus transacciones. Es cierto que podría haber creado alguna más como `Bloqueada` o `En creación`, pero lo vamos a dejar aquí.

Volviendo al inicio del artículo, estoy convencido de que haciéndole las preguntas precisas, esta herramienta puede brindarte un material con calidad suficiente para utilizar como base y hacerte ahorrar mucho tiempo.

Espero que os haya servido de ayuda esta introducción de ChatGPT para este tipo de usos.

Cristian Gonzalo Diaz Pizarro

"Experto en Tecnologías de la Información con experiencia diversificada que aspira en convertirse en Arquitecto de Seguridad de la Información"

1 año

se te olvido comentar que se tiene que pagar una mensualidad

César Gutiérrez Francisco

Director PJMX, Cesar Gutierrez Companies

1 año

me gustaria saber que editor de markdown usaste

Bernat Pérez

Inteligencia Artificial y Automatización

1 año

¡No había pensado que pudiera usarse para generar diagramas! ¡Qué interesante! ¡Gracias Pepe!

Mario Muñoz

Project Manager & Advanced Analytics Consultant | Mathematician

1 año

¡Qué bueno! Gratamente sorprendido con el resultado 😂 ¡Gracias por compartir Pepe!

Inicia sesión para ver o añadir un comentario.

Más artículos de Pepe Pont

Otros usuarios han visto

Ver temas