Model complex systems using multiple modules
masterPyStructurizr allows you to model large systems by splitting definitions into separate Python modules. This is useful when different teams (e.g., Team A and Team B) own different parts of a system.
Common patterns include:
- Domain-specific files: Create files like
users.pyfor people/actors,chatsystem.pyfor one software system, andanalysissystem.pyfor another. - Shared definitions: Modules can share common definitions, such as
Personobjects or shared infrastructure containers. - Workspace aggregation: Use a central
workspace.pyfile to import the different models and define top-level relationships between the separate software systems. - View definitions: Define specific view files (e.g.,
systemlandscapeview.py,containerview.py) to specify which parts of the aggregated model should be rendered as SVGs.