structurizr / dsl

Structurizr DSL
https://docs.structurizr.com/dsl
Apache License 2.0
1.41k stars 265 forks source link

Cardinality of container #315

Closed zmrocze closed 1 year ago

zmrocze commented 1 year ago

Description

I'd like to reformulate an older feature request from #164.

feature

It would be cool to specify a container as being one of many of that kind, influencing how the container gets displayed. Semantically this would mean that the container is expected to be run with multiple instances (like multiple clients vs single server). This could be achieved with an optional argument or wrapper element.

justification

I understand that:

  1. this is ambigous with modern deployments
  2. this is domain of deployment diagrams probably

but nevertheless I think that a visual cue about which components are expected to be run independently in multiples and which are expected to be by themselves goes a long way in understanding a diagram without a written narrative.

This introduces further considerations and complication when we consider the display of relations, but I don't think this is needed and I don't advocate for that. I think the above semantics of "there's likely gonna be more of those" is sufficiently understandable and viewer can infer correctly that the relations with all the other "copies" are analogous, but independent.

visuals - proposition

Tagged container would display as a stack of 3 boxes, where the top box is mostly visible and contains all the labels and descriptions, possibly with some ... between the boxes somewhere. You know - in the standard way to depict plurality.

feature request

Is this achievable currently with some tagging/styling mechanism? Is this a feature possible to be implemented as a library (plugin? I am new to structurizr).

How does the idea sound?

Priority

Low

Resolution

I have no budget, please add this feature for free

More information

No response

simonbrowndotje commented 1 year ago

this is domain of deployment diagrams probably

Yes, I see this as a deployment concern. If you'd like to show this on a static structure diagram, I'd recommend using a specific element style instead (e.g. border, colour, icon, etc).