Perspectives

Structurizr supports the addition of arbitrary "perspectives" to elements and relationships in the software architecture model. The concept is an implementation of the perspectives you'll see described in approaches such as Viewpoints and Perspectives (Eoin Woods and Nick Rozanski). In summary, if you have a single software architecture diagram, it might be useful to look at that single diagram from a number of different perspectives, each of which might highlight a different characteristic. Example perspectives include qualities such as security, performance, scalability, availability, regulatory/compliance concerns, etc.

Once some perspectives have been added to the model*, you can then use the button to view the current diagram with a given perspective.

* this is currently only supported by the "Structurizr for Java" and "Structurizr for .NET" client libraries; support for the browser-based editor is coming soon

Example

Here is an example deployment diagram.

An example diagram


We can then choose to view the "Security" perspective.

Choosing a perspective to view


And the resulting diagram now highlights all of the elements and relationships that include information about the security perspective. The tooltip can be used to read the content of the chosen perspective.

Viewing the chosen perspective

Embedded diagrams

You can highlight a given perspective on a diagram embedded using an iframe by adding a parameter to the query string named perspective (for example ...&perspective=Security).