martes, 21 de octubre de 2008

Dibuja automáticamente diagramas de secuencia

El Ornitorrinco Enmascarado me descubre WebSequenceDiagrams, una magnífica herramienta online que permite elaborar diagramas de secuencia UML a partir de una descripción textual muy intuitiva. Estos diagramas muestran la interacción de un conjunto de objetos a través del tiempo proporcionando detalles de la implementación del escenario así como de los mensajes pasados entre los objetos que lo componen, y son ideales para describir el funcionamiento de los protocolos de red. Por ejemplo, esta descripción de una sesión TCP...

Cliente->Servidor: SYN
Servidor->Cliente: SYN/ACK
Cliente->Servidor: ACK
note over Cliente,Servidor: Conectados
Cliente->Servidor: PUSH
Cliente->Servidor: PUSH
Servidor->Cliente: ACK
Cliente->Servidor: FIN
Servidor->Cliente: FIN/ACK
Servidor->Cliente: FIN
Cliente->Servidor: FIN/ACK
... se convierte a través de la aplicación en este diagrama

Los diagramas pueden generarse en distintos estilos, exportarse en formato PDF y además la web proporciona diversos mecanismos para embeber los resultados en nuestras aplicaciones así como APIs en Python, Java y Ruby para integrarlo con nuestros proyectos. También dispone de un foro donde discutir el producto y proponer mejoras. El Ornitorrinco y el Peje verde han estado jugando con el invento y han encontrado interesantes posibilidades que posiblemente los diseñadores del producto no contemplaron:


Actualización: Voy adquiriendo nuevas destrezas con la aplicación. Así, la conocida historia del chamán de Alcudia y la sanación por la vela queda convertida en este diagrama.

Fuente: directamente pirateado de El Ornitorrinco Enmascarado. Si te interesó el post puedes apuntarte a través del correo electrónico o por medio del feed RSS (más acerca del RSS).

2 comentarios:

Anónimo dijo...

Estos diagramas, no se por que, me an recordado la teoria de los conjuntos de cuando era pequeño. vien por el hornitorrino enmascarado.

Wan Link Sniper dijo...

Pues tiene y no tiene que ver, Juanpi, a ver si me explico...