Tips for Newbies to Create Architecture Diagrams – Part 1

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 🙂

 

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

 

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

 

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

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

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. 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.

Share
Published by
Ajitesh Kumar

Recent Posts

Agentic Reasoning Design Patterns in AI: Examples

In recent years, artificial intelligence (AI) has evolved to include more sophisticated and capable agents,…

2 months ago

LLMs for Adaptive Learning & Personalized Education

Adaptive learning helps in tailoring learning experiences to fit the unique needs of each student.…

2 months ago

Sparse Mixture of Experts (MoE) Models: Examples

With the increasing demand for more powerful machine learning (ML) systems that can handle diverse…

3 months ago

Anxiety Disorder Detection & Machine Learning Techniques

Anxiety is a common mental health condition that affects millions of people around the world.…

3 months ago

Confounder Features & Machine Learning Models: Examples

In machine learning, confounder features or variables can significantly affect the accuracy and validity of…

3 months ago

Credit Card Fraud Detection & Machine Learning

Last updated: 26 Sept, 2024 Credit card fraud detection is a major concern for credit…

3 months ago