ArchiMate vs Other Notations UML Business Modelling

ArchiMate vs Other Notations UML Business Modelling Part 3

Welcome to third article in our ArchiMate vs Other Notations series. Last article, “#2 – UML: Software Modelling” [1] we explored the differences between UML and ArchiMate on modelling software solutions. In this article we would switch our focus to business world. Article will cover business process modelling comparison between ArchiMate and UML.

What is a business process?

To model business domain, we need to understand basic terms. The fundamental one is business process. According to BusinessDictionary.com [2] it is “series of logically related activities or tasks (such as planning, production, or sales) performed together to produce a defined set of results.”. In real life we would consider many business processes that happen in parallel. In most cases they are set to achieve many goals. The bigger organization is the more complex relationships between processes and outcomes become. That creates a sense of urgency to have clear models that explain the complex processes in a graphical way.

Business Process Modelling in UML

As mentioned in previous articles in UML we have various types of diagrams. To model business processes and business domain in general we use some of them. There are two main categories of diagrams. We use structural diagrams to analyze structure of given system and behavioral diagrams, where one could analyze behaviors in the system, actors and events. Out of behavioral diagrams one could use Activity Diagram to model business processes. They describe what is happening, when and by whom. Below you could see the classical example of Activity Diagram. This use case shows the document management process, where 4 actors are taking part in a document lifecycle.

This use case shows the document management process, where 4 actors are taking part in a document lifecycle

(Source: [3])

Business process modelling in ArchiMate - Business layer

In last article we explored the Application Layer from ArchiMate, that is used to model software. To model business domain we use Business Layer. By using elements from this layer, we could model business processes, organizations, actors, products and other business-related aspects of systems. Below you could check some of elements of language defined on that layer. Those elements are used to model business processes and other behaviors: Element Description Notation Business actor A business entity that is capable of performing behavior. Business role The responsibility for performing specific behavior, to which an actor can be assigned, or the part an actor plays in a particular action or event. Business collaboration An aggregate of two or more business internal active structure elements that work together to perform collective behavior. Business interface A point of access where a business service is made available to the environment. Business process A sequence of business behaviors that achieves a specific outcome such as a defined set of products or business services. Business function A collection of business behavior based on a chosen set of criteria (typically required business resources and/or competencies), closely aligned to an organization, but not necessarily explicitly governed by the organization. Business interaction A unit of collective business behavior performed by (a collaboration of) two or more business roles. Business event A business behavior element that denotes an organizational state change. It may originate from and be resolved inside or outside the organization. Business service An explicitly defined exposed business behavior. Business object A concept used within a particular business domain.

Element Description Notation
Business actor A business entity that is capable of performing behavior.  A business entity that is capable of performing behavior.
Business role The responsibility for performing specific behavior, to which an actor can be assigned, or the part an actor plays in a particular action or event. The responsibility for performing specific behavior, to which an actor can be assigned, or the part an actor plays in a particular action or event.
Business collaboration An aggregate of two or more business internal active structure elements that work together to perform collective behavior.  An aggregate of two or more business internal active structure elements that work together to perform collective behavior. 
Business interface A point of access where a business service is made available to the environment.  A point of access where a business service is made available to the environment.
Business process A sequence of business behaviors that achieves a specific outcome such as a defined set of products or business services.  A sequence of business behaviors that achieves a specific outcome such as a defined set of products or business services.
Business function A collection of business behavior based on a chosen set of criteria (typically required business resources and/or competencies), closely aligned to an organization, but not necessarily explicitly governed by the organization.  A collection of business behavior based on a chosen set of criteria (typically required business resources and/or competencies), closely aligned to an organization, but not necessarily explicitly governed by the organization.
Business interaction A unit of collective business behavior performed by (a collaboration of) two or more business roles.  A unit of collective business behavior performed by (a collaboration of) two or more business roles.
Business event A business behavior element that denotes an organizational state change. It may originate from and be resolved inside or outside the organization.  A business behavior element that denotes an organizational state change. It may originate from and be resolved inside or outside the organization.
Business service An explicitly defined exposed business behavior. An explicitly defined exposed business behavior.
Business object A concept used within a particular business domain. A concept used within a particular business domain.

(Source: [4])

UML vs ArchiMate – Activity Diagrams

To compare approach for business process modelling we’d look on the same use case modelled in two techniques: by using UML’s Activity Diagram. Let’s consider following scenario: LetsInsure is a leading company selling insurances. Consider a process of insurance ordering initiated by a customer. In the process of order settling LetsInsure must assess the credibility of customer and decide whether it is willing to insure the customer. If the decision is positive Customer must pay for the insurance. Regardless of the decision company must inform customer about final decision and next steps.

At first let’s consider following proposal of UML Activity Diagram:

 proposal of UML Activity Diagram

In following diagram, we could see two partitions for each actor and the process flow, clearly indicating what are the next steps.

two partitions for each actor and the process flow, clearly indicating what are the next steps

Now, the exact scenario modelled in ArchiMate: [ArchiMate-process.png] As you may see both views are relatively similar – the only deciding factor could be personal aesthetics: both UML and ArchiMate require similar number of elements to represent the use case. So why even bother introducing ArchiMate?

So how exactly ArchiMate adds value?

The main advantage of ArchiMate is that it facilitates business-IT alignment. Let’s assume you were asked to model the business process but also include information what kind of IT support is needed in a given scenario. In ArchiMate it could be easily done by combining two layers together. Let’s look on an extended ArchiMate view in which we used both Business and Application layer:

extended ArchiMate view in which we used both Business and Application layer:

By combining layers, we have a clear picture of required application services for this business process. Internal CRM System application component realizes two services: Automated Customer Assessment and Customer Communication. Both are used when customer is ordering the insurance. The external Bank system is realizing a payment service used by customer. Thanks to ArchiMate we could combine multiple domains on one view. UML could be still used to provide details of processes (though BPMN might be better choice for that), while ArchiMate models could be created for high-level overview of processes in an organization.

Takeaways

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

• In UML, in most cases, we use Activity Diagrams to model business processes

• ArchiMate has a dedicated layer for business domain called Business Layer

• For pure process modelling both notations are fine. UML could provide a bit more detailed model though.

• ArchiMate is capable of aligning Business with other domains, to show high-level overview and application/infrastructure requirements

• Both notations could be maintained in parallel – UML for low-level process modelling, ArchiMate for aligning those processes with other domains

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

Check others:

ArchiMate vs Other Notations - #1 - Why you might need ArchiMate?

ArchiMate vs Other Notations - #2 - UML: Software modelling

ArchiMate vs Other Notations - #4 – UML: infrastructure modelling

[1] https://www.advisedskills.com/about/news/269-archimate-vs-other-notations-uml-software-modelling-part-2

[2] http://www.businessdictionary.com/definition/business-process.html

[3] https://www.uml-diagrams.org/examples/activity-example-document-management.png

[4] https://pubs.opengroup.org/architecture/archimate3-doc/chap08.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!