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

Claims handlerClaim registrationPolicy administrationClaim fileKubernetes cluster
A layered view from one paragraph of description: an actor assigned to a process, the application that serves it, the data it touches, and the node underneath. Every relationship here is one the spec permits between those two element types.

01Why ArchiMate generates better than free-form

ArchiMate publishes a relationship table: for every pair of element types, the set of relationships that is permitted between them. It is exhaustive, it is machine-readable, and it is the reason generation is on firmer ground here than anywhere else in modelling. A generator constrained by that table cannot draw a business process realizing a node or an actor accessing a technology service - not because it was well prompted, but because those edges do not exist.

The layers do the second half of the work. Every element belongs to exactly one of business, application, technology and the rest, so "which layer is this in" is a question with an answer, and a model that puts a database in the business layer is visibly wrong to a reader who has never seen your organisation. Free-form boxes and arrows offer no such handle; ArchiMate is a language, and a language can be checked.

02The derived-relationship trap

servesKubernetes clusterClaims handler
Legal, and almost certainly not what you want. This is a derived relationship - the cluster serves the application, the application serves the process the actor performs - collapsed into one edge that hides both hops.

ArchiMate defines derivation: a chain of relationships implies a weaker one between its ends. A node serves an application, the application serves a process, so the node serves the process - and the spec allows you to draw that shortcut directly. It is a genuinely useful feature when a view is deliberately coarse, and it is the single most common thing a generator hands back without saying so.

The damage is not notational, it is that the middle disappears. In the figure above, the application doing the work is gone: nobody can see what would break if it were replaced, and nobody can see that it exists at all. A model built out of derived edges reads as an architecture with no applications in it.

The fix is to ask for the hops. "Show every relationship directly, do not derive anything" costs one sentence in the prompt and turns a tidy picture into a model you can reason about. The full mechanism is in ArchiMate relationships.

Two smaller failures round out the list:

  1. Layer confusion. Business services and application services get swapped, because the names differ by one word and the distinction is about who the consumer is rather than about what the thing does.
  2. Volume.Ask for "the architecture" and you get sixty elements, which is not a model but a list drawn with rectangles. Ask for a viewpoint.

03What to put in the prompt

Four things. The first two are the same as for any notation; the last two are what make an ArchiMate prompt different.

  1. The viewpoint."A layered view" to start with - it forces every element into a layer and forces the layers to connect, which is where the arguments worth having are.
  2. Your own names.The processes and applications as your organisation calls them. A model that invents "Customer Management System" where you say "Siebel" produces a picture nobody recognises.
  3. No derivation. One sentence: every relationship direct, nothing collapsed. This is the highest-value line in the prompt.
  4. A stopping rule."At most twelve elements", or one business process and everything under it. Without a bound you get the list.

04Checking the result

Reach for it when

  • Any edge that crosses two layers - it is derived, and the middle is missing
  • Every element's layer: is it there because of what it is, or what it is named?
  • Serving arrows: they point at the consumer, and reversing one inverts the architecture
  • Element count: if a reader cannot hold the view in their head, split it by viewpoint

Reach for something else when

  • Re-prompting for a single wrong edge - fix it and keep the rest
  • Debating element colour, which carries no meaning the spec defines
  • Asking for every layer at once on the first pass
  • Keeping a view that answers no question, however tidy it looks

The first line is the one that matters. Every other item on the list is a five-second judgement; a derived relationship standing in for two real ones is the error that survives review, gets published, and is still on a slide two years later with the application it hides still unnamed.

05How this works in Archyno

The AI is given the same metamodel the editor enforces, which for ArchiMate means the relationship table itself. An illegal edge is not something the generator is asked politely to avoid - it is not in the set of edges it can emit, and the editor will not accept one afterwards either. What comes back is a model in the repository, not a picture of one: rename an application and the name changes in every view it appears in.

From there it exports to the ArchiMate Exchange format that Archi and BiZZdesign read, to a Sparx .qea file, and to PNG, SVG or Mermaid for a document. That matters more for ArchiMate than for anything else on this site, because enterprise architecture work is judged by people who use a different tool from the one it was made in.

In one line each

  1. 01ArchiMate's relationship table is machine-checkable, so generation cannot produce an illegal model.
  2. 02Legal is not correct: the table says a relationship may exist, not that yours does.
  3. 03The common failure is a derived relationship drawn as a direct one, hiding the middle layer.
  4. 04Prompt with a viewpoint, your own names, no derivation, and a stopping rule.
  5. 05Check cross-layer edges first - they are derived until proven otherwise.
  6. 06Generate into a model, or the result cannot leave the tool it was made in.

The UML side of the same question - where the rules are looser and the failures are different - is in generating UML with AI.

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.

Todos los artículos