Articles on: FAQ

Is there a way that I can group together all the different components in my solution in the same model?

There are two architecture viewpoints in NubOps which are customizable in the way that they are based on the 'tags' you have assigned to your resources in Azure, i.e, virtual machines, availability sets, web apps, databases, etc. These two viewpoints generate the 'Applications' and 'Application Tiers' entities in the Diagrams feature, and those are created based on the following tags:

'Application' or 'ApplicationId'
'ApplicationTier'
'Environment'


The two application viewpoints support these tiers:
Presentation
Application
Data
Storage
Security
Governance

There are multiple options for assigning values to the 'ApplicationTier' tag. These values are case-insensitive, meaning that NubOps supports all variations regarding upper and lower casing.

Supported 'Presentation tier' tag values
Frontend
FE
Web

Supported 'Application tier' tag values:
Backend
BE
App
Application
ApplicationServer
Middleware
Middle

Supported 'Data tier' tag values:
Data
DB
Database

Supported 'Storage tier' tag values:
Storage
Disk

Supported 'Governance tier' tag values:
Governance

Supported 'Security tier' tag values:
Security

You can use either the 'Application' or 'ApplicationId' tag as the primary name, which is what will appear in the left sidebar in the Diagrams feature. The 'ApplicationId' is usually a unique ID that is related to the use of a CMDB. If you aren't using a CMDB for asset management of Azure resources then only the 'Application' is necessary to use. Since the same application likely has been installed in multiple subscriptions (such as development, test, QA, production) NubOps modifies the application name shown in NubOps to reflect which environment the application is running in. Assigning the name 'MyApplication' to a resource in the 'test' environment means that the application will be shown as 'MyApplication-test' in NubOps. This makes it easier to avoid confusion when analyzing the application using the Diagrams feature. The purpose of this is that resources from different subscriptions and environments won't be grouped together in the same model. This makes sense, especially since it should be a priority to investigate issues in a production environment before anything else.

The 'Environment' tag is necessary to assign to the resources, since the same application could be installed in a development subscription, another instance in a test subscription, and a third instance in a production subscription. This means that if the environment tag wasn't used, then all these instances from all subscriptions would be grouped together in the same architecture model, which would make the architecture model nearly impossible to analyze. This is primarily a fail-safe mechanism to avoid a scenario where resources from different subscriptions are given the same value in the 'Application' tag.

Regarding the 'ApplicationTier' tag, the primary values are: Frontend, Backend, Data, or Storage. These values are used to create the tiers in the model that correspond to the architecture layers in your application. You can use one, two, three, or all four tiers in whichever combination you want. Governance and security can also be added.

Read more about using tags to organize Azure resources here: Use tags to organize your Azure resources and management hierarchy

Check out this video to learn more about the Application viewpoint: Create solution architecture models based on tags using the application viewpoint

Updated on: 04/03/2025

Was this article helpful?

Share your feedback

Cancel

Thank you!