Basic Enterprise Architecture Modeling with Archi and Excel

Industry analysts calculate that the enterprise architecture (EA) tool market yields over a billion dollars in revenue and will continue to grow. Gartner’s latest Magic Quadrant places ten tool vendors in the Leader’s quadrant alone, with an additional five in the other three quadrants. But what if your organization cannot afford a tool, or is unwilling to commit to one?

Fortunately, there are ways to produce, query, and maintain architecture models (representations of past, present, planned, or hypothetical reality) with free and inexpensive tools. For basic modeling, we need the capability to develop the models themselves, as well as the capability to present model data using views. The TOGAF standard defines three types of views: catalogs, matrices and diagrams, and a key underlying concept, the building block. The standard defines building blocks as follows:

Building blocks are entities of a particular type within the metamodel (for example, a business service called “Purchase Order”).  Building blocks carry metadata [e.g., service type or service owner] according to the metamodel, which supports query and analysis. 

The catalog and matrix definitions are both based on the building block concept:

Catalogs are lists of building blocks of a specific type, or of related types, that are used for governance or reference purposes (for example, an organization chart, showing locations and actors). As with building blocks, catalogs carry metadata according to the metamodel, which supports query and analysis…

Matrices are grids that show relationships between two or more model entities. Matrices are used to represent relationships that are list-based rather than graphical in their usage (for example, a CRUD matrix showing which applications Create, Read, Update, and Delete a particular type of data is difficult to represent visually).

The free and open source Archi tool provides comprehensive EA modeling and diagramming with the ArchiMate language, which is in turned aligned with the TOGAF standard. A set of four Archi plugins enhance the tool’s capabilities. Lightbox provides a gallery of ArchiMate diagram views. coArchi  enables collaboration and robust version management by connecting with repositories based on the commonly used git version control system. jArchi enables model manipulation through a JavaScript library and engine. Export to Excel exports model elements, relationships, and properties to Excel worksheets, complementing three built-in export options. coArchi is free, and the other three plugins are all available with a minimum $5 monthly Patreon sponsorship. Architects can therefore use Archi to create models with diagrams as views, and they can use Excel to create catalogs and matrices using Archi model data. The Archi Command Line Interface can be used to automate modeling tasks using Archi and other tools, including Excel, which has versatile automation capabilities.

Consider this simple Archi model of machine learning model development and deployment. The diagram below shows all model elements and relationships.

The diagram depicts the business role (set of responsibilities) of Data Scientist assigned to the Model Development business function (category of behavior), which consists of three sub-functions and maintains an experimental Jupyter Notebook with code to define, train, and test the model. The Machine Learning Engineer role is assigned to the Deploy Model business process (sequence of behavior), which has five sub-processes. All notebooks are modeled as artifacts (physical files), and are contained in a source code repository (inclusive set of physical files).

With the Export to Excel plugin installed, Archi users can export ArchiMate models to Excel (FileàExportàModel to Excel… from the top ribbon menu), yielding a worksheet with three tabs for Elements, Relationships, and Properties, respectively. The properties of model elements and relationships are not shown in the diagram above, although they can be displayed using the Archi Label Expressions feature. Here is a partial view of the Properties tab, which contains a row for each property of each element and relationship in the model:

With an Excel macro written in Visual Basic for Applications (VBA), the Properties tab, which contains a row for each property of each element and relationship in the model, can be flattened into a catalog:

The table is filtered to exclude model objects used in the diagram legend, and it shows that relationships are unnamed, and most property types are only available for a subset of object types.

Here is a partial view of the Relationships tab, which shows the source and target for each relationship in the model.

An Excel VBA macro can reorganize this table into a matrix. Like the catalog, this view omits all relationships in the legend.

In conclusion, EA is possible with free and inexpensive tools. Archi is a versatile, extensible, and free tool for developing models with diagram views, and Excel can create catalog and matrix views of those models. This article has just scratched the surface of what is possible with Excel and Archi. Future articles will further explore the use of these tools and others.

For those interested in the macro source code, EA Principals is developing a plan to make it widely available. Stay tuned!

Authored by Iver Band, EA Principals Senior Instructor and ArchiMate Expert