Simple Archimate Question

Started by Alberto, July 13, 2018, 15:08:40 PM

Previous topic - Next topic


Question about Nodes and System Software from an Archimate noob.

I have two nodes (test and prod), both with the same software package installed.  Do you represent each software package as a different element?  If so, how do you get around the duplicate naming (assuming you use the software name for element name)?

Easy example, "McAffee Antivirus" is a specialization of "Node1", "McAffee Antivirus" is (also?) a specialization of "Node2"


Here's a quick reply to get you going, but search for "Mastering ArchiMate" - an excellent book.

I would say create "McAfee Antivirus" as System Software (once), then assign it to both nodes (or the devices on the node).

Defining an environment can be done a number of ways. In theory, the node is just a processing node and it could realise a couple of environments. So test and prod can be seen as a Technology Service realised by the node(s)

I'm sure someone with more time will wade in with a better answer.  ???


I literally got the book yesterday  ;D

QuoteIn theory, the node is just a processing node and it could realise a couple of environments. So test and prod can be seen as a Technology Service realised by the node(s)

I feel I need to unlearn many years of managing systems and working with implementations to understand archimate. Phrases like this still bakes my noodles.  I'm using properties to define whether a specific node is Prod or Test, your point is that a device is composed of a node which realizes a service or environment?  I find that hard to explain to my sysadmin colleagues who are used to layers -hardware (server), system (OS), software- and so I was using archimate is similar fashion -device (server), node (OS), system software- 

I'm so confused.

Jean-Baptiste Sarrodie


My best advice would be for you to find someone who really knows ArchiMate well and has several years of experience, and that could help you. Unfortunately I don't see many good consultants on this topic.

The next advice is to read Gerben's book but you've started and that's good news.

Coming back to your question... you have to understand that there is no "best answer", but several possible answers depending on context and purpose. I'll try to draft some of them.

A bit of background: in ArchiMate the system software is a commodity software with no business rules inside and not used by end-users. Antivirus is a good example of that, Operating Systems are another common example. But SAP isn't as it directly supports business processes (SAP would be best modeled as an application component). Device is the physical/virtual hardware like, for example, an x86 'box'. Device is rarely modeled as you can often simply use an attribute on node instead. Node is the mix of hardware and software with a purpose,so a "database server" or a "j2ee application server" are good examples.

To make it simple, a node is composed of system softwares and devices (usually one unless you're modelling a cluster), but as said before you often don't really need to explicitly model devices, so in practice a node (database server) is composed of system software (oracle rdbms engine).

Now the first criteria is: do you need to model architecture per environment. From an (enterprise) architecture point of view you usually model your solution once and assume that differences between environments is marginal. In such case, your question is partly solved because there's only one node and one system-software. "Partly" because you could ask the same question again: if I have the same antivirus installed on a  "j2ee application server" and a "database server", is it the same system software or not. Answer is: it could be the same but it would then become impossible to do analysis on usage. Let's imagine your antivirus exposes some management services that are used by a management console, but for some reasons this is activated only on some servers but not all. If all nodes are composed of the same antivirus system software, then at the end your management console will be linked to all nodes, thus all servers and you have no ways to answer a simple question like: what nodes are in the scope of my antivirus management console.

If you really have to create per environment views in your model, then you'll end up with multiple nodes for the same "logical" node: so you'll have "production database server" and "test database server". In such case, you'll end up duplicating your CMDB in your model (you have a CMDB right, don't you?) but that could be justified depending on your use-cases (one being: enabling application/business oriented monitoring). Here the same answer as previous apply: yo could theoretically use the same antivirus system software on all nodes, but this would prevent you from futus analysis. So again, my advice is to create one antivirus system software per node.


If you value and use Archi, please consider making a donation!
Ask your ArchiMate related questions to the ArchiMate Community's Discussion Board.