Tips for Newbies to Create Architecture Diagrams – Part 1

Wondering How to Create Architecture Diagrams

In the initial years of application development, I have found several junior or mid-level developers show up blank faces when asked about architecture of application. This is primarily because that they have been involved mainly in coding or low level design aspect of application development till that point of time in their career. Thus, these developers look up to architects to help them come up with various different architectural viewpoints. Not only this, project managers also look up to architects to come up with architecture and help the team get started.

Wondering on how to create architecture diagrams :)

Wondering on how to create architecture diagrams 🙂

 

Before I go ahead and write on a series of articles on how newbies could come with the architectural diagrams, let me try and explain one key terminology which is important to understand in order to come up with these diagrams. And, the term is called as Viewpoint.

What is Viewpoint?

Did you ever wonder why there were more than one architecture diagrams found in the architecture document of your application? For example, some of the common diagrams are high level architecture, logical architecture, application architecture, data architecture, infrastructure architecture, security architecture, performance architecture etc. This is because these diagrams are intended for different set of audience or stakeholders such as application engineers, performance engineers, security guys, infrastructure team to work on their aspects of application in independent manner.

Let’s see from real world scenario. Take a look at diagrams below.

Different views of House including the floor plan

Different views of House including the floor plan

 

The above view is the primary floor plan view. Also, there are other views such as height, back view which could be useful for the house owner.

Architecture View for Plumbing Perspective

Architecture View for Plumbing Perspective

 

The diagram above represents how plumbing will be done in the house.

Architecture View from Electrician Perspective

Architecture View from Electrician Perspective

The diagram above represents the eletrical fittings in the house and would be useful for electrician to work their way.

The above diagrams are intended for different set of stakeholders including house owner, building constructor, electrician, plumbers etc for them to plan to deliver based on the different set of requirements each one then have got for the same house.

In the similar way, application has various different aspects to be taken care such as application itself, data it works upon, servers it gets deployed upon, security policies that it has to adhere to, performance that it needs to have, internal and external applications that it needs to be integrated with and so on and so forth. Each of these aspects need to be worked upon by one or more individuals having different set of expertise and experience. And, these different set of individuals need to create a blueprint based upon which they would lay down the necessary elements fulfilling the given requirements. This is where different views are needed for different set of stakeholders and these views belong to that stakeholders’ viewpoint.

Following are different viewpoints in relation with architecture for application:

  1. Business (Functional architecture, Process flow view)
  2. Application (Application architecture – Layered View, Security View, Performance View)
  3. Data (Data architecture – Data relationship view)
  4. Technology/Infrastructure (Technology architecture – networking view)

In next article, I shall be explaining methodology one would want to use to create functional architecture diagram.

 

Ajitesh Kumar
Follow me

Ajitesh Kumar

I have been recently working in the area of Data analytics including Data Science and Machine Learning / Deep Learning. I am also passionate about different technologies including programming languages such as Java/JEE, Javascript, Python, R, Julia, etc, and technologies such as Blockchain, mobile computing, cloud-native technologies, application security, cloud computing platforms, big data, etc. For latest updates and blogs, follow us on Twitter. I would love to connect with you on Linkedin. Check out my latest book titled as First Principles Thinking: Building winning products using first principles thinking. Check out my other blog, Revive-n-Thrive.com
Posted in Enterprise Architecture, Freshers. Tagged with .

Leave a Reply

Your email address will not be published. Required fields are marked *