understanding complex systems
system models for
drawing tools e.g. Visio, Gliffy, ExcaliDraw
commercial modelling tools
separation of models and views view specific customization of model elements
Similar to JSON but richer set of data literals Subset of Clojure
Numbers: 123
Strings: "Hello"
Keywords: :keyword
, :namespaced/keyword
Vectors: ["a" "b" "c"]
Sets: #{"a" "b" "c"}
Maps: {:a "a" :b "b" :c "c"}
Data structures can be nested
#{ ; set of model elements
{:el :system
:id :example/system1
:name "Example System"
:desc "An example system to show how to model in overarch"
:ct #{ ; set of children
{:el :container
:id :example/container1
:name "Example Container"
:tech "Java"
:desc "Deployable application in the example system"}}}
}
C4 Model: Architecture Model, Deployment Model, Dynamic Model UML: Use Case Model, Class Model, State Machines Concept Maps: Concept Model
:person :system :container :component :enterprise-boundary :context-boundary
:node :system :container :component
:person :system :container :component
:use-case :actor :person :system :context-boundary
:uses :include :extends :generalizes
:state-machine :start-state :state :end-state :fork :join :choice :history-state :deep-history-state
:transition
:class :enum :interface :field :method :function :package :namespace :stereotype :annotation :protocol
:inheritance :implementation :composition :aggregation :association :dependency
:concept :person :system :container :enterprise-boundary :context-boundary
Views define
JSON EDN Structurizr (architecture/deployment model and views only)
Can you improve this documentation? These fine people already did:
Ludger Solbach & Solbach, Ludger (FDP4_EXTERN)Edit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close