Extended ArchiMate view in which we used both Business, Application and Technology layers

ArchiMate vs Other Notations UML IT Infrastructure Modelling Part 4

Welcome to fourth article on our ArchiMate vs Other Notations series. Last time we tried to understand differences between ArchiMate and UML regarding process modelling. [1] This time we are going to switch the domain completely and try to understand possibilities and limitations in both techniques in infrastructure modelling area.

What we consider an infrastructure?

If we look on Gartner’s IT Glossary we could read, that IT Infrastructure is: The system of hardware, software, facilities and service components that support the delivery of business systems and IT-enabled processes.[2] Whenever we design or build infrastructure we refer to hardware and software, where it is located and how it is interconnected

IT Infrastructure modelling in UML

There are limited possibilities to model infrastructure in UML. The closest one, that brings us some look on infrastructure is the deployment diagram. This diagram enables us to model the execution environment for software components. There is no diagram dedicated to pure HW infrastructure and network environment though. You can check an example of deployment diagram below.

[3] https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-uml/

IT Infrastructure modelling in ArchiMate – Technology layer

In last article we explored Business Layer elements from ArchiMate, that is used to model business processes and use cases. To model infrastructure, we use Technology Layer. By using elements from this layer, we could model deployment schemes for software as well as execution environments. Also, you have a possibility to very briefly outline networks and connections between hardware and technology services offered to applications or business users, like database access or messaging system.
Below you could check some of elements of language defined on that layer.

Element 

Definition 

Notation 

 

Node

 

A computational or physical resource that hosts, manipulates, or interacts with other computational or physical resources.

 
 

Device

 

A physical IT resource upon which system software and artifacts may be stored or deployed for execution.

 
 

System software

 

Software that provides or contributes to an environment for storing, executing, and using software or data deployed within it.

 

Technology collaboration

An aggregate of two or more nodes that work together to perform collective technology behavior.

 

Technology interface

A point of access where technology services offered by a node can be accessed.

 

Path

A link between two or more nodes, through which these nodes can exchange data or material.

 

Communication network

A set of structures that connects computer systems or other electronic devices for transmission, routing, and reception of data or data-based communications such as voice and video.

 

Technology function

A collection of technology behavior that can be performed by a node.

 

Technology process

A sequence of technology behaviors that achieves a specific outcome.

 

Technology interaction

A unit of collective technology behavior performed by (a collaboration of) two or more nodes.

 

Technology event

A technology behavior element that denotes a state change.

 

Technology service

 

An explicitly defined exposed technology behavior.

 
 

Artifact

 

A piece of data that is used or produced in a software development process, or by deployment and operation of a system.

 


(Source: [4] https://pubs.opengroup.org/architecture/archimate3-doc/chap10.html)

UML vs ArchiMate 

To compare UML and ArchiMate we need to come up with basic scenario which we try to model in both notations. We would like to see couple of servers connected to one central switch. There shall be two special servers that host some of applications in a redundant way – to secure we have a backup always available.

The UML example:

In above model we used just two elements: device, which is a metaclass of node element and artifact which depicts a piece of software in infrastructure environment. We used also simple association and deployment relationships to connect elements together.

If you take a look on ArchiMate example you could immediately spot a lot of similarities:

 

This is because ArchiMate technology layer was based on some of UML elements. Node and Device have same meaning as in UML. The new concept, introduced in ArchiMate is called Communication Network, depicts some kind of network organized with set of structures and protocols.

For basic use cases there is no benefit in choosing UML over ArchiMate or other way around. However, ArchiMate allows you to model a bit more thanks to additional elements like Communication Network, Path or Location – to show physically how network and infrastructure is organized.

So how exactly ArchiMate adds value?

The main advantage of ArchiMate is that it allows to connect multiple architectural domains. That means on one diagram you could model physical infrastructure, interconnections, deployments and applications that use infrastructure elements. Let’s look on an extended ArchiMate view in which we used both Business, Application and Technology layers:


By combining layers, we know exactly what infrastructure elements and applications are needed to support business functions. Back Office team is responsible for four business functions. Those functions are supported by three Application Components that are part of bigger Back Office Suite. The Suite itself is stored in two Server Clusters that are standing in two separate locations
Thanks to ArchiMate we could combine multiple domains on one view. UML could be still used to provide details of implementation regarding deployment, however, the same could be achieved using ArchiMate.

Takeaways

To sum up, let’s look on main takeaways from this article:

• In UML we use deployment diagrams to model infrastructure needs
• ArchiMate has a dedicated layer for infrastructure domain called Technology Layer
• For deployment views both notations are equally good
• For infrastructure modelling that includes, beside deployment, also information about networks or/and physical locations ArchiMate is a better choice
• Both notations could be maintained in parallel – UML for precise, low-level deployment diagrams, ArchiMate to make sure infrastructure domain is connected to other architectural domains.

This article is one of articles from ArchiMate vs Other Notations series. Check others:

ArchiMate vs Other Notations - Why you might need ArchiMate? - Part 1
ArchiMate vs Other Notations - UML Software modelling - Part 2
ArchiMate vs Other Notations - UML - business processes - Part 3

 Sources:

[1] https://www.advisedskills.com/about/news/269-archimate-vs-other-notations-uml-software-modelling-part-2
[2] https://www.gartner.com/en/information-technology/glossary/it-infrastructure
[3] https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-uml/
[4] https://pubs.opengroup.org/architecture/archimate3-doc/chap10.html

The Knowledge Centre

Sharing knowledge is essential
for our team

Enterprise architects have a ton of responsibilities within an organization or business. Find out exactly what an enterprise architect does.

What Do Enterprise Architects Do?

Enterprise Architects have a ton of responsibilities within an organization or business. Find out exactly what an enterprise architect does.

AdvisedSkills

NewsNovember 30, 2022

Enterprise Architecture: 3 Things of Note in Changing Times

Enterprise Architecture: 3 Things of Note in Changing Times

40% of organizations have Enterprise Architects on their staff. The business world now recognizes its benefits. New tools and standards changed how Enterprise Architects do their job.

AdvisedSkills

NewsNovember 25, 2022

Scaled Agile Exam Prep Tips for Certification

Beyond Agile Training: Scaled Agile Exam Prep Tips for Certification

Have you almost completed your Agile training? Are you looking to get ready for the exam? Click here for some tips that will help you succeed.

AdvisedSkills

NewsNovember 23, 2022

What is Open Agile Architecture? Watch Video

Watch video what is Open Agile Architecture

The Open Group's latest standard, Open Agile Architecture™ offers an approach to architect at scale with agility.

AdvisedSkills

NewsNovember 22, 2022

Agile is a software development methodology that many software developers follow. Learn about the best practices of this method here.

What Are Agile Practices in Software Development

Agile is a software development methodology that many software developers follow. Learn about the best practices of this method here.

AdvisedSkills

NewsNovember 21, 2022

Become a trainer

We are looking for Instructor who will be responsible for delivering classroom and online live courses. Positive and efficient working environments are key to our trainers' success.

Get started now!