14. Uso de diagramas y modelos como apoyo de la documentación técnica

14.1 Introducción

Los diagramas y modelos son recursos muy útiles dentro de la documentación técnica. Permiten representar relaciones, estructuras, flujos, estados, componentes e interacciones de una forma que muchas veces resulta más clara que una explicación puramente textual.

Sin embargo, un diagrama no reemplaza automáticamente a la documentación escrita. Para ser útil, debe tener propósito, audiencia, nivel de detalle adecuado y una explicación que lo contextualice. Un diagrama sin contexto puede ser tan ambiguo como un texto mal redactado.

En este tema veremos cómo usar diagramas y modelos como apoyo de la documentación técnica, cuándo conviene incluirlos, cómo explicarlos y cómo evitar que se vuelvan obsoletos.

14.2 Por qué usar documentación visual

La documentación visual ayuda a comprender sistemas complejos. Un diagrama puede mostrar de un vistazo qué componentes existen, cómo se relacionan, qué pasos sigue un proceso o qué estados atraviesa una entidad. Esto reduce esfuerzo de lectura y facilita conversaciones entre personas con distintos roles.

Los diagramas son especialmente útiles cuando el texto sería largo, repetitivo o difícil de seguir. Por ejemplo, explicar dependencias entre servicios, flujos de aprobación, interacción entre módulos o despliegue en ambientes puede ser más claro con apoyo visual.

Un buen diagrama no decora la documentación: ayuda a responder una pregunta que sería más difícil de responder solo con texto.

14.3 Diagramas dentro de la documentación

La imagen muestra diagramas y modelos integrados a la documentación técnica. Alrededor de un documento aparecen vistas de procesos, arquitectura, datos, interacción y estados. La idea es que cada diagrama aporte una vista específica y esté acompañado por explicación textual.

Diagramas y modelos integrados a la documentación técnica para representar procesos, arquitectura, datos, interacción y estados

14.4 Diagrama no es documentación completa

Un error frecuente es insertar un diagrama y asumir que el lector entenderá todo. Los diagramas necesitan contexto: qué representan, qué alcance tienen, qué nivel de detalle muestran, qué elementos se omitieron y qué decisiones ilustran.

Por ejemplo, un diagrama de componentes puede mostrar módulos principales, pero quizá no muestre clases internas. Un diagrama de actividades puede mostrar flujo general, pero no todas las validaciones. Si esas limitaciones no se explican, el lector puede interpretar el diagrama de manera incorrecta.

La documentación debe acompañar el diagrama con una introducción, una explicación de elementos importantes y, cuando sea necesario, referencias a documentos más detallados.

14.5 Elegir el tipo de diagrama

El tipo de diagrama debe elegirse según la pregunta que se desea responder. Si queremos explicar estructura, puede servir un diagrama de componentes, clases o paquetes. Si queremos mostrar pasos de un proceso, puede servir un diagrama de actividades o flujo. Si queremos mostrar interacción temporal, puede servir un diagrama de secuencia. Si queremos mostrar estados, conviene un diagrama de estados.

No es necesario usar siempre diagramas formales. A veces un esquema simple, una tabla o una vista de alto nivel comunica mejor que un diagrama complejo. La elección debe favorecer la comprensión, no la apariencia.

14.6 Diagramas de procesos

Los diagramas de procesos muestran pasos, decisiones, bifurcaciones y resultados. Son útiles para documentar flujos funcionales, procedimientos operativos, aprobaciones, tareas de usuario o procesos de negocio.

En documentación funcional, un proceso de reserva de turnos puede mostrar búsqueda, selección, validación, confirmación y notificación. En operación, un proceso puede mostrar pasos para responder a un incidente. En pruebas, puede mostrar el recorrido de validación.

Estos diagramas deben evitar exceso de detalle. Si cada validación menor se incluye en el mismo gráfico, el proceso puede volverse ilegible.

14.7 Diagramas de arquitectura

Los diagramas de arquitectura muestran componentes principales, responsabilidades, relaciones, integraciones y límites del sistema. Ayudan a comprender cómo está organizada la solución y dónde se ubican las partes importantes.

Un buen diagrama de arquitectura debe indicar alcance. Puede mostrar contexto del sistema, contenedores, componentes internos o despliegue físico. Mezclar todos los niveles en un único diagrama suele generar confusión.

La documentación debe explicar qué representa cada componente, qué responsabilidad tiene y qué relaciones son importantes.

14.8 Diagramas de datos y dominio

Los diagramas de datos y modelos de dominio ayudan a entender conceptos, entidades, relaciones y restricciones. Son útiles para conectar la documentación con el vocabulario del negocio y con la estructura de información del sistema.

Un modelo de dominio puede mostrar conceptos como Paciente, Profesional, Turno, Agenda y Especialidad. Un modelo de datos puede mostrar tablas, claves, relaciones e índices. Cada uno tiene distinto nivel de detalle y distinta audiencia.

Es importante no confundir un modelo conceptual con un esquema físico de base de datos. Ambos pueden ser útiles, pero responden preguntas diferentes.

14.9 Diagramas de interacción

Los diagramas de interacción muestran cómo colaboran actores, objetos, servicios o componentes para completar un escenario. Son útiles para explicar operaciones que involucran varios participantes y orden temporal.

Por ejemplo, una reserva de turno puede involucrar interfaz de usuario, servicio de turnos, base de datos, servicio de notificaciones y sistema externo. Un diagrama de secuencia puede mostrar mensajes y respuestas en orden.

Estos diagramas ayudan a detectar responsabilidades mal ubicadas, dependencias ocultas y escenarios incompletos.

14.10 Diagramas de estados

Los diagramas de estados muestran las situaciones por las que puede pasar una entidad y las transiciones permitidas. Son útiles cuando una entidad tiene ciclo de vida importante: turno, pedido, pago, solicitud, reclamo o incidente.

En un sistema de turnos, un turno puede pasar de disponible a reservado, de reservado a cancelado, de reservado a atendido o de reservado a ausente. Documentar estos estados evita acciones inválidas y ayuda a definir pruebas.

14.11 Nivel de detalle

El nivel de detalle de un diagrama debe ajustarse a su objetivo. Un diagrama para explicar una visión general no debería incluir cada clase o campo. Un diagrama para implementar una integración puede necesitar mensajes, errores y formatos más precisos.

Un error común es intentar mostrar todo en un solo diagrama. Es mejor crear varias vistas enfocadas que un diagrama enorme. Cada vista debe responder una pregunta concreta.

Si un diagrama necesita una explicación larga para que alguien encuentre lo importante, probablemente está mostrando demasiado o está mal enfocado.

14.12 Texto que acompaña al diagrama

Cada diagrama debería tener una breve explicación. Esa explicación puede incluir propósito, alcance, elementos principales, decisiones representadas, limitaciones y referencias relacionadas.

Por ejemplo, antes de un diagrama de arquitectura se puede indicar: "Este diagrama muestra los componentes principales del sistema de turnos y sus integraciones externas. No incluye clases internas ni detalles de despliegue". Esa aclaración evita interpretaciones incorrectas.

14.13 Tabla de tipos de diagramas

Tipo de vista Pregunta que responde Ejemplos
Proceso ¿Qué pasos sigue la operación? Flujo, actividad, procedimiento.
Arquitectura ¿Qué componentes existen y cómo se relacionan? Contexto, componentes, despliegue.
Datos ¿Qué información se maneja y cómo se relaciona? Modelo de dominio, entidad-relación.
Interacción ¿Qué mensajes se intercambian en un escenario? Secuencia, comunicación.
Estados ¿Qué ciclo de vida tiene una entidad? Estados y transiciones.

14.14 Herramientas y formatos

Los diagramas pueden crearse con herramientas visuales, editores colaborativos o lenguajes de texto como PlantUML, Mermaid o formatos similares. Cada opción tiene ventajas y limitaciones.

Las herramientas visuales facilitan edición manual y comunicación rápida. Los diagramas como código facilitan versionado, revisión y mantenimiento junto con el repositorio. La elección depende del equipo, el tipo de documentación y la frecuencia de cambios.

Lo importante es que el formato elegido permita mantener el diagrama actualizado y accesible para quienes lo necesitan.

14.15 Mantener diagramas actualizados

Un diagrama desactualizado puede generar decisiones incorrectas. Por eso, los diagramas deben mantenerse junto con los cambios del sistema. Si cambia una integración, un componente, una regla o un estado, se debe revisar la documentación visual relacionada.

Una buena práctica es incluir diagramas en el mismo flujo de revisión que el código o los documentos afectados. También conviene indicar fecha de actualización o versión cuando el diagrama representa una situación específica.

14.16 Errores frecuentes

Al usar diagramas y modelos en documentación técnica suelen aparecer estos errores:

  • Insertar diagramas sin explicar qué representan.
  • Mezclar varios niveles de detalle en un único diagrama.
  • Usar diagramas demasiado grandes que nadie puede leer.
  • Crear modelos que no coinciden con el texto o con el sistema real.
  • No actualizar diagramas cuando cambia el software.
  • Usar diagramas formales cuando un esquema simple sería más claro.
  • Tratar el diagrama como decoración en lugar de herramienta de comprensión.

14.17 Qué debes recordar de este tema

  • Los diagramas y modelos apoyan la documentación técnica, pero no la reemplazan por completo.
  • Cada diagrama debe tener propósito, alcance y audiencia.
  • El tipo de diagrama debe elegirse según la pregunta que se desea responder.
  • Es mejor tener varias vistas enfocadas que un diagrama enorme.
  • Los diagramas deben acompañarse con explicación textual.
  • La documentación visual debe mantenerse actualizada con el sistema.
  • Un buen diagrama reduce ambigüedad y facilita comunicación.

14.18 Conclusión

Los diagramas y modelos son recursos valiosos para documentar software, siempre que se usen con criterio. Ayudan a explicar procesos, arquitectura, datos, interacciones y estados, pero deben estar integrados con el texto y mantenerse actualizados.

En el próximo tema estudiaremos la documentación de arquitectura: vistas, componentes, responsabilidades e interfaces.