Announcing - Views

By Paul Stack
12/13/2024

Today, we are delighted to release the functionality that allows users of a workspace to create representations of the living architecture that reflect product or team boundaries, infrastructure segmentation, or a representation of components that is semantically relevant to what they are currently working on. Working with folks on your team or across your organization is now an order of magnitude more straightforward than it's ever been.

Why Views are essential to a team

A visual representation of your system is one of the many benefits that System Initiative brings to an organization. The workspace is a central hub, much like a town square, where collaboration thrives. As adoption within an organization grows, so does the number of components within a given workspace representing various aspects of the system. Therefore, to continue providing the ability to collaborate with other people on the parts of the system relevant to them, the ability to create views specific to one's role or responsibility becomes essential. Views enable collaboration, productivity, and an understanding of the system across your organization.

Views are a core part of the diagramming experience. A View in System Initiative is a uniquely named collection of components built to empower users to create representation of infrastructure configurations that are semantically relevant for their workflow. For example, a visual representation that a networking engineer, security engineer, or application developer can interact with without having to understand or care about the underlying components.

These are the rules that govern Views:

  1. A component can live on multiple Views
  2. A component must live on at least one view
  3. Views must have unique names.
  4. A component always represents the same configuration or infrastructure. For example, an attribute on a component modified on one view will be reflected in all views that the component is in.
  5. Components can be connected across Views. For example, A credential in View A can be connected to an EC2 Instance in View B.
  6. Each View has independent geometry, meaning you can position and size the same component differently in each view
  7. Views are a core part of the diagram and, therefore, follow the same change control as any other change to infrastructure.

Based on the AWS EC2 HA guide from our documentation, you can build a set of infrastructure that looks like the image below

Infrastructure for AWS EC2

We can think of creating views of this infrastructure as 3 separate slices:

  • Application configuration
  • Networking Infrastructure
  • Load Balancing

Let’s extract the application components into a View called 'application', as demonstrated in the image below:

Extract Application view

When the components have been moved to the new View, the diagram has a new hexagon icon with the word 'application' on it. This hexagon shape signifies a diagram link object. We can click on that link to navigate to the 'application' View and see the correct components reside there, as per the image below:

Contents of Application view

We can now return to the 'DEFAULT' View, select the networking components, and extract them to a View called 'network', as per the image below:

Extract Networking view

Lastly, we extract the load balancer components to a View called 'loadbalancer', as per the image below:

Extract Load balancing view

We can reorganize the new diagram a little by moving the diagram links around the canvas. If I extract the AWS credential and the region to be 'aws-config', then we can have a very simple 'DEFAULT' View that I can now organize, as per the image below.

Simplified View

If we navigate to the 'networking' View and select the VPC component, the image below demonstrates that we have kept the correct parentage and connections between the components. We can see from the image that the VPC ID output socket is connected to components that are not stored in this View.

VPC Component

Views are a cornerstone of collaboration and productivity within System Initiative, empowering users to create representations of the business architecture that are semantically relevant and efficient for their day-to-day workflow, process, or whomever they are working with that cares about a specific part of the system.

When can I use this?

Views are generally available today! We are already hard at work planning the next features that integrate with Views. The first is integrating RBAC directly to yield control over who can change the components within a View. If you have any questions or feedback on the feature, please join us on Discord and talk to us there. You can message me directly at SI_Stack72 or chat publicly in #discussion.

Paul Stack, Director of Product

Paul is an engineer turned product manager who is passionate about the Continuous Delivery and DevOps movements and how they are critical in helping businesses deliver value to their customers.

Use System Initiative.

Generous free tier