Archyno
ArchiMatePráctica del modelado

Generar ArchiMate con IA

ArchiMate es la notación donde la generación funciona mejor y donde más hay que revisar. Su tabla de relaciones es comprobable por máquina, así que se puede atar un generador a la especificación - y sus relaciones derivadas le permiten producir algo legal, plausible y silenciosamente equivocado.

8 min de lecturaArchiMate 45 de 5

La respuesta corta

  • ArchiMate publica una tabla de qué relaciones son legales entre qué tipos de elemento, así que un generador atado a ella no puede producir un modelo ilegal.
  • El fallo que sobrevive es una relación derivada dibujada como directa: legal, plausible y ocultando la aplicación que hace el trabajo.
  • Pide primero el punto de vista por capas. Obliga a situar cada elemento en una capa y a conectarlas, que es donde están las discusiones útiles.
  • Genera un modelo, no una imagen. Un modelo se exporta a ArchiMate Exchange y sobrevive a la herramienta; una imagen no se exporta a ninguna parte.
Una vista en capas de ArchiMate. Un actor de negocio tramitador de siniestros está asignado al proceso de negocio registro de siniestro. El componente de aplicación administración de pólizas sirve a ese proceso y accede a un objeto de datos expediente de siniestro. Un nodo clúster de Kubernetes sirve al componente de aplicación.
Una vista en capas a partir de un párrafo de descripción: un actor asignado a un proceso, la aplicación que le sirve, los datos que toca, y el nodo debajo. Cada relación aquí es una de las que la especificación permite entre esos dos tipos de elemento.

01Por qué ArchiMate se genera mejor que la forma libre#

ArchiMate publica una tabla de relaciones: para cada par de tipos de elemento, el conjunto de relaciones permitidas entre ellos. Es exhaustiva, es legible por máquina, y es la razón de que la generación esté aquí sobre terreno más firme que en ningún otro sitio del modelado. Un generador restringido por esa tabla no puede dibujar un proceso de negocio realizando un nodo ni un actor accediendo a un servicio tecnológico, y no porque estuviera bien guiado, sino porque esas aristas no existen.

Las capas hacen la segunda mitad del trabajo. Cada elemento pertenece exactamente a una de negocio, aplicación, tecnología y las demás, así que "en qué capa está esto" es una pregunta con respuesta, y un modelo que mete una base de datos en la capa de negocio es visiblemente erróneo incluso para un lector que nunca ha visto tu organización. Las cajas y flechas libres no ofrecen ningún asidero así; ArchiMate es un lenguaje, y un lenguaje se puede comprobar.

02La trampa de la relación derivada#

Dos elementos de ArchiMate: un nodo tecnológico clúster de Kubernetes con una relación de servicio dibujada directamente hacia un actor de negocio tramitador de siniestros, saltándose la capa de aplicación que hay entre ambos.
Legal, y casi con seguridad no lo que quieres. Esto es una relación derivada - el clúster sirve a la aplicación, la aplicación sirve al proceso que el actor ejecuta - plegada en una sola arista que oculta los dos saltos.

ArchiMate define la derivación: una cadena de relaciones implica una más débil entre sus extremos. Un nodo sirve a una aplicación, la aplicación sirve a un proceso, así que el nodo sirve al proceso, y la especificación te permite dibujar ese atajo directamente. Es una función genuinamente útil cuando una vista es deliberadamente gruesa, y es lo que más a menudo devuelve un generador sin decirlo.

El daño no es notacional: es que el medio desaparece. En la figura de arriba, la aplicación que hace el trabajo se ha ido: nadie ve qué se rompería si se sustituyera, y nadie ve que exista siquiera. Un modelo construido con aristas derivadas se lee como una arquitectura sin aplicaciones dentro.

El arreglo es pedir los saltos. "Muestra cada relación directamente, no derives nada" cuesta una frase en el prompt y convierte una imagen ordenada en un modelo sobre el que se puede razonar. El mecanismo completo está en relaciones de ArchiMate.

Dos fallos menores completan la lista:

  1. Confusión de capas. Los servicios de negocio y los de aplicación se intercambian, porque los nombres se diferencian en una palabra y la distinción va de quién es el consumidor, no de qué hace la cosa.
  2. Volumen.Pide "la arquitectura" y obtienes sesenta elementos, que no es un modelo sino una lista dibujada con rectángulos. Pide un punto de vista.

03Qué poner en el prompt#

Cuatro cosas. Las dos primeras valen para cualquier notación; las dos últimas son lo que hace distinto a un prompt de ArchiMate.

  1. El punto de vista."Una vista en capas" para empezar: obliga a que cada elemento caiga en una capa y a que las capas se conecten, que es donde están las discusiones que merecen tenerse.
  2. Tus propios nombres.Los procesos y las aplicaciones tal como los llama tu organización. Un modelo que se inventa "Customer Management System" donde tú dices "Siebel" produce una imagen que nadie reconoce.
  3. Sin derivación. Una frase: cada relación directa, nada plegado. Es la línea de mayor valor del prompt.
  4. Una regla de parada."Como mucho doce elementos", o un proceso de negocio y todo lo que hay debajo. Sin un límite obtienes la lista.

04Comprobar el resultado#

Úsalo cuando

  • Cualquier arista que cruce dos capas: es derivada, y falta el medio
  • La capa de cada elemento: ¿está ahí por lo que es, o por cómo se llama?
  • Las flechas de servicio: apuntan al consumidor, e invertir una invierte la arquitectura
  • El número de elementos: si un lector no puede sostener la vista en la cabeza, divídela por punto de vista

Usa otra cosa cuando

  • Volver a lanzar el prompt por una sola arista mal: corrígela y quédate con el resto
  • Discutir el color de un elemento, que no lleva significado definido por la especificación
  • Pedir todas las capas a la vez en la primera pasada
  • Quedarte una vista que no responde a ninguna pregunta, por ordenada que parezca

La primera línea es la que importa. Todos los demás puntos de la lista son un juicio de cinco segundos; una relación derivada haciendo de dos reales es el error que sobrevive a la revisión, se publica, y sigue en una diapositiva dos años después con la aplicación que oculta todavía sin nombre.

05Cómo funciona esto en Archyno#

A la IA se le da el mismo metamodelo que impone el editor, que para ArchiMate significa la propia tabla de relaciones. Una arista ilegal no es algo que se le pida educadamente al generador que evite: no está en el conjunto de aristas que puede emitir, y el editor tampoco la aceptará después. Lo que vuelve es un modelo en el repositorio, no una imagen de uno: renombra una aplicación y el nombre cambia en todas las vistas donde aparece.

De ahí exporta al formato ArchiMate Exchange que leen Archi y BiZZdesign, a un fichero .qea de Sparx, y a PNG, SVG o Mermaid para un documento. Eso importa más en ArchiMate que en ninguna otra cosa de este sitio, porque el trabajo de arquitectura empresarial lo juzga gente que usa una herramienta distinta de aquella en la que se hizo.

En una línea cada uno

  1. 01La tabla de relaciones de ArchiMate es comprobable por máquina, así que la generación no puede producir un modelo ilegal.
  2. 02Legal no es correcto: la tabla dice que una relación puede existir, no que la tuya exista.
  3. 03El fallo común es una relación derivada dibujada como directa, que oculta la capa del medio.
  4. 04Escribe el prompt con un punto de vista, tus propios nombres, sin derivación y con una regla de parada.
  5. 05Comprueba primero las aristas que cruzan capas: son derivadas hasta que se demuestre lo contrario.
  6. 06Genera hacia un modelo, o el resultado no podrá salir de la herramienta en la que se hizo.

La cara UML de la misma pregunta, donde las reglas son más laxas y los fallos distintos, está en generar UML con IA.

06Preguntas frecuentes#

¿Puede la IA generar un modelo ArchiMate a partir de una descripción?

Sí, y aquí resulta más fiable que en notaciones más laxas, porque ArchiMate publica una tabla de qué relaciones se permiten entre qué tipos de elementos. Un generador atado a esa tabla no puede producir un modelo ilegal, así que los errores que quedan son sobre tu organización y no sobre la notación.

¿Qué fallan los modelos ArchiMate generados por IA?

Sobre todo dibujan relaciones derivadas como si fueran directas: un nodo tecnológico sirviendo a un actor de negocio, algo legal que a la vez oculta la aplicación que hace el trabajo. Después: elementos en la capa equivocada, y demasiados, porque un modelo al que se le pide completitud entrega una imagen irrevisable.

¿Qué punto de vista de ArchiMate conviene pedir primero?

El punto de vista por capas, porque obliga al generador a situar cada elemento en una capa y a conectarlas, que es donde están las discusiones útiles. Pide uno más específico cuando ya sepas a qué pregunta debe responder el modelo, no antes.

¿Se puede abrir en otra herramienta un modelo ArchiMate generado?

Solo si se generó como modelo y no como imagen. Un modelo se exporta al formato ArchiMate Exchange, que leen Archi, BiZZdesign y Sparx, de modo que el trabajo sobrevive a la herramienta. La imagen de un diagrama no se exporta a ninguna parte y hay que redibujarla a mano.

En esta serie

Lecturas relacionadas

Todos los artículos