structurizr-java

Форк
0
/
structurizr-36141-workspace.json 
1590 строк · 62.0 Кб
1
{
2
  "id" : 0,
3
  "name" : "Big Bank plc",
4
  "description" : "This is an example workspace to illustrate the key features of Structurizr, via the DSL, based around a fictional online banking system.",
5
  "properties" : {
6
    "structurizr.dsl" : "LyoKICogVGhpcyBpcyBhIGNvbWJpbmVkIHZlcnNpb24gb2YgdGhlIGZvbGxvd2luZyB3b3Jrc3BhY2VzLCB3aXRoIGF1dG9tYXRpYyBsYXlvdXQgZW5hYmxlZDoKICoKICogLSAiQmlnIEJhbmsgcGxjIC0gU3lzdGVtIExhbmRzY2FwZSIgKGh0dHBzOi8vc3RydWN0dXJpenIuY29tL3NoYXJlLzI4MjAxLykKICogLSAiQmlnIEJhbmsgcGxjIC0gSW50ZXJuZXQgQmFua2luZyBTeXN0ZW0iIChodHRwczovL3N0cnVjdHVyaXpyLmNvbS9zaGFyZS8zNjE0MS8pCiovCndvcmtzcGFjZSAiQmlnIEJhbmsgcGxjIiAiVGhpcyBpcyBhbiBleGFtcGxlIHdvcmtzcGFjZSB0byBpbGx1c3RyYXRlIHRoZSBrZXkgZmVhdHVyZXMgb2YgU3RydWN0dXJpenIsIHZpYSB0aGUgRFNMLCBiYXNlZCBhcm91bmQgYSBmaWN0aW9uYWwgb25saW5lIGJhbmtpbmcgc3lzdGVtLiIgewoKICAgIG1vZGVsIHsKICAgICAgICBjdXN0b21lciA9IHBlcnNvbiAiUGVyc29uYWwgQmFua2luZyBDdXN0b21lciIgIkEgY3VzdG9tZXIgb2YgdGhlIGJhbmssIHdpdGggcGVyc29uYWwgYmFuayBhY2NvdW50cy4iICJDdXN0b21lciIKCiAgICAgICAgZ3JvdXAgIkJpZyBCYW5rIHBsYyIgewogICAgICAgICAgICBzdXBwb3J0U3RhZmYgPSBwZXJzb24gIkN1c3RvbWVyIFNlcnZpY2UgU3RhZmYiICJDdXN0b21lciBzZXJ2aWNlIHN0YWZmIHdpdGhpbiB0aGUgYmFuay4iICJCYW5rIFN0YWZmIgogICAgICAgICAgICBiYWNrb2ZmaWNlID0gcGVyc29uICJCYWNrIE9mZmljZSBTdGFmZiIgIkFkbWluaXN0cmF0aW9uIGFuZCBzdXBwb3J0IHN0YWZmIHdpdGhpbiB0aGUgYmFuay4iICJCYW5rIFN0YWZmIgoKICAgICAgICAgICAgbWFpbmZyYW1lID0gc29mdHdhcmVzeXN0ZW0gIk1haW5mcmFtZSBCYW5raW5nIFN5c3RlbSIgIlN0b3JlcyBhbGwgb2YgdGhlIGNvcmUgYmFua2luZyBpbmZvcm1hdGlvbiBhYm91dCBjdXN0b21lcnMsIGFjY291bnRzLCB0cmFuc2FjdGlvbnMsIGV0Yy4iICJFeGlzdGluZyBTeXN0ZW0iCiAgICAgICAgICAgIGVtYWlsID0gc29mdHdhcmVzeXN0ZW0gIkUtbWFpbCBTeXN0ZW0iICJUaGUgaW50ZXJuYWwgTWljcm9zb2Z0IEV4Y2hhbmdlIGUtbWFpbCBzeXN0ZW0uIiAiRXhpc3RpbmcgU3lzdGVtIgogICAgICAgICAgICBhdG0gPSBzb2Z0d2FyZXN5c3RlbSAiQVRNIiAiQWxsb3dzIGN1c3RvbWVycyB0byB3aXRoZHJhdyBjYXNoLiIgIkV4aXN0aW5nIFN5c3RlbSIKCiAgICAgICAgICAgIGludGVybmV0QmFua2luZ1N5c3RlbSA9IHNvZnR3YXJlc3lzdGVtICJJbnRlcm5ldCBCYW5raW5nIFN5c3RlbSIgIkFsbG93cyBjdXN0b21lcnMgdG8gdmlldyBpbmZvcm1hdGlvbiBhYm91dCB0aGVpciBiYW5rIGFjY291bnRzLCBhbmQgbWFrZSBwYXltZW50cy4iIHsKICAgICAgICAgICAgICAgIHNpbmdsZVBhZ2VBcHBsaWNhdGlvbiA9IGNvbnRhaW5lciAiU2luZ2xlLVBhZ2UgQXBwbGljYXRpb24iICJQcm92aWRlcyBhbGwgb2YgdGhlIEludGVybmV0IGJhbmtpbmcgZnVuY3Rpb25hbGl0eSB0byBjdXN0b21lcnMgdmlhIHRoZWlyIHdlYiBicm93c2VyLiIgIkphdmFTY3JpcHQgYW5kIEFuZ3VsYXIiICJXZWIgQnJvd3NlciIKICAgICAgICAgICAgICAgIG1vYmlsZUFwcCA9IGNvbnRhaW5lciAiTW9iaWxlIEFwcCIgIlByb3ZpZGVzIGEgbGltaXRlZCBzdWJzZXQgb2YgdGhlIEludGVybmV0IGJhbmtpbmcgZnVuY3Rpb25hbGl0eSB0byBjdXN0b21lcnMgdmlhIHRoZWlyIG1vYmlsZSBkZXZpY2UuIiAiWGFtYXJpbiIgIk1vYmlsZSBBcHAiCiAgICAgICAgICAgICAgICB3ZWJBcHBsaWNhdGlvbiA9IGNvbnRhaW5lciAiV2ViIEFwcGxpY2F0aW9uIiAiRGVsaXZlcnMgdGhlIHN0YXRpYyBjb250ZW50IGFuZCB0aGUgSW50ZXJuZXQgYmFua2luZyBzaW5nbGUgcGFnZSBhcHBsaWNhdGlvbi4iICJKYXZhIGFuZCBTcHJpbmcgTVZDIgogICAgICAgICAgICAgICAgYXBpQXBwbGljYXRpb24gPSBjb250YWluZXIgIkFQSSBBcHBsaWNhdGlvbiIgIlByb3ZpZGVzIEludGVybmV0IGJhbmtpbmcgZnVuY3Rpb25hbGl0eSB2aWEgYSBKU09OL0hUVFBTIEFQSS4iICJKYXZhIGFuZCBTcHJpbmcgTVZDIiB7CiAgICAgICAgICAgICAgICAgICAgc2lnbmluQ29udHJvbGxlciA9IGNvbXBvbmVudCAiU2lnbiBJbiBDb250cm9sbGVyIiAiQWxsb3dzIHVzZXJzIHRvIHNpZ24gaW4gdG8gdGhlIEludGVybmV0IEJhbmtpbmcgU3lzdGVtLiIgIlNwcmluZyBNVkMgUmVzdCBDb250cm9sbGVyIgogICAgICAgICAgICAgICAgICAgIGFjY291bnRzU3VtbWFyeUNvbnRyb2xsZXIgPSBjb21wb25lbnQgIkFjY291bnRzIFN1bW1hcnkgQ29udHJvbGxlciIgIlByb3ZpZGVzIGN1c3RvbWVycyB3aXRoIGEgc3VtbWFyeSBvZiB0aGVpciBiYW5rIGFjY291bnRzLiIgIlNwcmluZyBNVkMgUmVzdCBDb250cm9sbGVyIgogICAgICAgICAgICAgICAgICAgIHJlc2V0UGFzc3dvcmRDb250cm9sbGVyID0gY29tcG9uZW50ICJSZXNldCBQYXNzd29yZCBDb250cm9sbGVyIiAiQWxsb3dzIHVzZXJzIHRvIHJlc2V0IHRoZWlyIHBhc3N3b3JkcyB3aXRoIGEgc2luZ2xlIHVzZSBVUkwuIiAiU3ByaW5nIE1WQyBSZXN0IENvbnRyb2xsZXIiCiAgICAgICAgICAgICAgICAgICAgc2VjdXJpdHlDb21wb25lbnQgPSBjb21wb25lbnQgIlNlY3VyaXR5IENvbXBvbmVudCIgIlByb3ZpZGVzIGZ1bmN0aW9uYWxpdHkgcmVsYXRlZCB0byBzaWduaW5nIGluLCBjaGFuZ2luZyBwYXNzd29yZHMsIGV0Yy4iICJTcHJpbmcgQmVhbiIKICAgICAgICAgICAgICAgICAgICBtYWluZnJhbWVCYW5raW5nU3lzdGVtRmFjYWRlID0gY29tcG9uZW50ICJNYWluZnJhbWUgQmFua2luZyBTeXN0ZW0gRmFjYWRlIiAiQSBmYWNhZGUgb250byB0aGUgbWFpbmZyYW1lIGJhbmtpbmcgc3lzdGVtLiIgIlNwcmluZyBCZWFuIgogICAgICAgICAgICAgICAgICAgIGVtYWlsQ29tcG9uZW50ID0gY29tcG9uZW50ICJFLW1haWwgQ29tcG9uZW50IiAiU2VuZHMgZS1tYWlscyB0byB1c2Vycy4iICJTcHJpbmcgQmVhbiIKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGRhdGFiYXNlID0gY29udGFpbmVyICJEYXRhYmFzZSIgIlN0b3JlcyB1c2VyIHJlZ2lzdHJhdGlvbiBpbmZvcm1hdGlvbiwgaGFzaGVkIGF1dGhlbnRpY2F0aW9uIGNyZWRlbnRpYWxzLCBhY2Nlc3MgbG9ncywgZXRjLiIgIk9yYWNsZSBEYXRhYmFzZSBTY2hlbWEiICJEYXRhYmFzZSIKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgIyByZWxhdGlvbnNoaXBzIGJldHdlZW4gcGVvcGxlIGFuZCBzb2Z0d2FyZSBzeXN0ZW1zCiAgICAgICAgY3VzdG9tZXIgLT4gaW50ZXJuZXRCYW5raW5nU3lzdGVtICJWaWV3cyBhY2NvdW50IGJhbGFuY2VzLCBhbmQgbWFrZXMgcGF5bWVudHMgdXNpbmciCiAgICAgICAgaW50ZXJuZXRCYW5raW5nU3lzdGVtIC0+IG1haW5mcmFtZSAiR2V0cyBhY2NvdW50IGluZm9ybWF0aW9uIGZyb20sIGFuZCBtYWtlcyBwYXltZW50cyB1c2luZyIKICAgICAgICBpbnRlcm5ldEJhbmtpbmdTeXN0ZW0gLT4gZW1haWwgIlNlbmRzIGUtbWFpbCB1c2luZyIKICAgICAgICBlbWFpbCAtPiBjdXN0b21lciAiU2VuZHMgZS1tYWlscyB0byIKICAgICAgICBjdXN0b21lciAtPiBzdXBwb3J0U3RhZmYgIkFza3MgcXVlc3Rpb25zIHRvIiAiVGVsZXBob25lIgogICAgICAgIHN1cHBvcnRTdGFmZiAtPiBtYWluZnJhbWUgIlVzZXMiCiAgICAgICAgY3VzdG9tZXIgLT4gYXRtICJXaXRoZHJhd3MgY2FzaCB1c2luZyIKICAgICAgICBhdG0gLT4gbWFpbmZyYW1lICJVc2VzIgogICAgICAgIGJhY2tvZmZpY2UgLT4gbWFpbmZyYW1lICJVc2VzIgoKICAgICAgICAjIHJlbGF0aW9uc2hpcHMgdG8vZnJvbSBjb250YWluZXJzCiAgICAgICAgY3VzdG9tZXIgLT4gd2ViQXBwbGljYXRpb24gIlZpc2l0cyBiaWdiYW5rLmNvbS9pYiB1c2luZyIgIkhUVFBTIgogICAgICAgIGN1c3RvbWVyIC0+IHNpbmdsZVBhZ2VBcHBsaWNhdGlvbiAiVmlld3MgYWNjb3VudCBiYWxhbmNlcywgYW5kIG1ha2VzIHBheW1lbnRzIHVzaW5nIgogICAgICAgIGN1c3RvbWVyIC0+IG1vYmlsZUFwcCAiVmlld3MgYWNjb3VudCBiYWxhbmNlcywgYW5kIG1ha2VzIHBheW1lbnRzIHVzaW5nIgogICAgICAgIHdlYkFwcGxpY2F0aW9uIC0+IHNpbmdsZVBhZ2VBcHBsaWNhdGlvbiAiRGVsaXZlcnMgdG8gdGhlIGN1c3RvbWVyJ3Mgd2ViIGJyb3dzZXIiCgogICAgICAgICMgcmVsYXRpb25zaGlwcyB0by9mcm9tIGNvbXBvbmVudHMKICAgICAgICBzaW5nbGVQYWdlQXBwbGljYXRpb24gLT4gc2lnbmluQ29udHJvbGxlciAiTWFrZXMgQVBJIGNhbGxzIHRvIiAiSlNPTi9IVFRQUyIKICAgICAgICBzaW5nbGVQYWdlQXBwbGljYXRpb24gLT4gYWNjb3VudHNTdW1tYXJ5Q29udHJvbGxlciAiTWFrZXMgQVBJIGNhbGxzIHRvIiAiSlNPTi9IVFRQUyIKICAgICAgICBzaW5nbGVQYWdlQXBwbGljYXRpb24gLT4gcmVzZXRQYXNzd29yZENvbnRyb2xsZXIgIk1ha2VzIEFQSSBjYWxscyB0byIgIkpTT04vSFRUUFMiCiAgICAgICAgbW9iaWxlQXBwIC0+IHNpZ25pbkNvbnRyb2xsZXIgIk1ha2VzIEFQSSBjYWxscyB0byIgIkpTT04vSFRUUFMiCiAgICAgICAgbW9iaWxlQXBwIC0+IGFjY291bnRzU3VtbWFyeUNvbnRyb2xsZXIgIk1ha2VzIEFQSSBjYWxscyB0byIgIkpTT04vSFRUUFMiCiAgICAgICAgbW9iaWxlQXBwIC0+IHJlc2V0UGFzc3dvcmRDb250cm9sbGVyICJNYWtlcyBBUEkgY2FsbHMgdG8iICJKU09OL0hUVFBTIgogICAgICAgIHNpZ25pbkNvbnRyb2xsZXIgLT4gc2VjdXJpdHlDb21wb25lbnQgIlVzZXMiCiAgICAgICAgYWNjb3VudHNTdW1tYXJ5Q29udHJvbGxlciAtPiBtYWluZnJhbWVCYW5raW5nU3lzdGVtRmFjYWRlICJVc2VzIgogICAgICAgIHJlc2V0UGFzc3dvcmRDb250cm9sbGVyIC0+IHNlY3VyaXR5Q29tcG9uZW50ICJVc2VzIgogICAgICAgIHJlc2V0UGFzc3dvcmRDb250cm9sbGVyIC0+IGVtYWlsQ29tcG9uZW50ICJVc2VzIgogICAgICAgIHNlY3VyaXR5Q29tcG9uZW50IC0+IGRhdGFiYXNlICJSZWFkcyBmcm9tIGFuZCB3cml0ZXMgdG8iICJTUUwvVENQIgogICAgICAgIG1haW5mcmFtZUJhbmtpbmdTeXN0ZW1GYWNhZGUgLT4gbWFpbmZyYW1lICJNYWtlcyBBUEkgY2FsbHMgdG8iICJYTUwvSFRUUFMiCiAgICAgICAgZW1haWxDb21wb25lbnQgLT4gZW1haWwgIlNlbmRzIGUtbWFpbCB1c2luZyIKCiAgICAgICAgZGVwbG95bWVudEVudmlyb25tZW50ICJEZXZlbG9wbWVudCIgewogICAgICAgICAgICBkZXBsb3ltZW50Tm9kZSAiRGV2ZWxvcGVyIExhcHRvcCIgIiIgIk1pY3Jvc29mdCBXaW5kb3dzIDEwIG9yIEFwcGxlIG1hY09TIiB7CiAgICAgICAgICAgICAgICBkZXBsb3ltZW50Tm9kZSAiV2ViIEJyb3dzZXIiICIiICJDaHJvbWUsIEZpcmVmb3gsIFNhZmFyaSwgb3IgRWRnZSIgewogICAgICAgICAgICAgICAgICAgIGRldmVsb3BlclNpbmdsZVBhZ2VBcHBsaWNhdGlvbkluc3RhbmNlID0gY29udGFpbmVySW5zdGFuY2Ugc2luZ2xlUGFnZUFwcGxpY2F0aW9uCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBkZXBsb3ltZW50Tm9kZSAiRG9ja2VyIENvbnRhaW5lciAtIFdlYiBTZXJ2ZXIiICIiICJEb2NrZXIiIHsKICAgICAgICAgICAgICAgICAgICBkZXBsb3ltZW50Tm9kZSAiQXBhY2hlIFRvbWNhdCIgIiIgIkFwYWNoZSBUb21jYXQgOC54IiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGRldmVsb3BlcldlYkFwcGxpY2F0aW9uSW5zdGFuY2UgPSBjb250YWluZXJJbnN0YW5jZSB3ZWJBcHBsaWNhdGlvbgogICAgICAgICAgICAgICAgICAgICAgICBkZXZlbG9wZXJBcGlBcHBsaWNhdGlvbkluc3RhbmNlID0gY29udGFpbmVySW5zdGFuY2UgYXBpQXBwbGljYXRpb24KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBkZXBsb3ltZW50Tm9kZSAiRG9ja2VyIENvbnRhaW5lciAtIERhdGFiYXNlIFNlcnZlciIgIiIgIkRvY2tlciIgewogICAgICAgICAgICAgICAgICAgIGRlcGxveW1lbnROb2RlICJEYXRhYmFzZSBTZXJ2ZXIiICIiICJPcmFjbGUgMTJjIiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGRldmVsb3BlckRhdGFiYXNlSW5zdGFuY2UgPSBjb250YWluZXJJbnN0YW5jZSBkYXRhYmFzZQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBkZXBsb3ltZW50Tm9kZSAiQmlnIEJhbmsgcGxjIiAiIiAiQmlnIEJhbmsgcGxjIGRhdGEgY2VudGVyIiAiIiB7CiAgICAgICAgICAgICAgICBkZXBsb3ltZW50Tm9kZSAiYmlnYmFuay1kZXYwMDEiICIiICIiICIiIHsKICAgICAgICAgICAgICAgICAgICBzb2Z0d2FyZVN5c3RlbUluc3RhbmNlIG1haW5mcmFtZQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgIH0KCiAgICAgICAgZGVwbG95bWVudEVudmlyb25tZW50ICJMaXZlIiB7CiAgICAgICAgICAgIGRlcGxveW1lbnROb2RlICJDdXN0b21lcidzIG1vYmlsZSBkZXZpY2UiICIiICJBcHBsZSBpT1Mgb3IgQW5kcm9pZCIgewogICAgICAgICAgICAgICAgbGl2ZU1vYmlsZUFwcEluc3RhbmNlID0gY29udGFpbmVySW5zdGFuY2UgbW9iaWxlQXBwCiAgICAgICAgICAgIH0KICAgICAgICAgICAgZGVwbG95bWVudE5vZGUgIkN1c3RvbWVyJ3MgY29tcHV0ZXIiICIiICJNaWNyb3NvZnQgV2luZG93cyBvciBBcHBsZSBtYWNPUyIgewogICAgICAgICAgICAgICAgZGVwbG95bWVudE5vZGUgIldlYiBCcm93c2VyIiAiIiAiQ2hyb21lLCBGaXJlZm94LCBTYWZhcmksIG9yIEVkZ2UiIHsKICAgICAgICAgICAgICAgICAgICBsaXZlU2luZ2xlUGFnZUFwcGxpY2F0aW9uSW5zdGFuY2UgPSBjb250YWluZXJJbnN0YW5jZSBzaW5nbGVQYWdlQXBwbGljYXRpb24KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZGVwbG95bWVudE5vZGUgIkJpZyBCYW5rIHBsYyIgIiIgIkJpZyBCYW5rIHBsYyBkYXRhIGNlbnRlciIgewogICAgICAgICAgICAgICAgZGVwbG95bWVudE5vZGUgImJpZ2Jhbmstd2ViKioqIiAiIiAiVWJ1bnR1IDE2LjA0IExUUyIgIiIgNCB7CiAgICAgICAgICAgICAgICAgICAgZGVwbG95bWVudE5vZGUgIkFwYWNoZSBUb21jYXQiICIiICJBcGFjaGUgVG9tY2F0IDgueCIgewogICAgICAgICAgICAgICAgICAgICAgICBsaXZlV2ViQXBwbGljYXRpb25JbnN0YW5jZSA9IGNvbnRhaW5lckluc3RhbmNlIHdlYkFwcGxpY2F0aW9uCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZGVwbG95bWVudE5vZGUgImJpZ2JhbmstYXBpKioqIiAiIiAiVWJ1bnR1IDE2LjA0IExUUyIgIiIgOCB7CiAgICAgICAgICAgICAgICAgICAgZGVwbG95bWVudE5vZGUgIkFwYWNoZSBUb21jYXQiICIiICJBcGFjaGUgVG9tY2F0IDgueCIgewogICAgICAgICAgICAgICAgICAgICAgICBsaXZlQXBpQXBwbGljYXRpb25JbnN0YW5jZSA9IGNvbnRhaW5lckluc3RhbmNlIGFwaUFwcGxpY2F0aW9uCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGRlcGxveW1lbnROb2RlICJiaWdiYW5rLWRiMDEiICIiICJVYnVudHUgMTYuMDQgTFRTIiB7CiAgICAgICAgICAgICAgICAgICAgcHJpbWFyeURhdGFiYXNlU2VydmVyID0gZGVwbG95bWVudE5vZGUgIk9yYWNsZSAtIFByaW1hcnkiICIiICJPcmFjbGUgMTJjIiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxpdmVQcmltYXJ5RGF0YWJhc2VJbnN0YW5jZSA9IGNvbnRhaW5lckluc3RhbmNlIGRhdGFiYXNlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZGVwbG95bWVudE5vZGUgImJpZ2JhbmstZGIwMiIgIiIgIlVidW50dSAxNi4wNCBMVFMiICJGYWlsb3ZlciIgewogICAgICAgICAgICAgICAgICAgIHNlY29uZGFyeURhdGFiYXNlU2VydmVyID0gZGVwbG95bWVudE5vZGUgIk9yYWNsZSAtIFNlY29uZGFyeSIgIiIgIk9yYWNsZSAxMmMiICJGYWlsb3ZlciIgewogICAgICAgICAgICAgICAgICAgICAgICBsaXZlU2Vjb25kYXJ5RGF0YWJhc2VJbnN0YW5jZSA9IGNvbnRhaW5lckluc3RhbmNlIGRhdGFiYXNlICJGYWlsb3ZlciIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBkZXBsb3ltZW50Tm9kZSAiYmlnYmFuay1wcm9kMDAxIiAiIiAiIiAiIiB7CiAgICAgICAgICAgICAgICAgICAgc29mdHdhcmVTeXN0ZW1JbnN0YW5jZSBtYWluZnJhbWUKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgcHJpbWFyeURhdGFiYXNlU2VydmVyIC0+IHNlY29uZGFyeURhdGFiYXNlU2VydmVyICJSZXBsaWNhdGVzIGRhdGEgdG8iCiAgICAgICAgfQogICAgfQoKICAgIHZpZXdzIHsKICAgICAgICBzeXN0ZW1sYW5kc2NhcGUgIlN5c3RlbUxhbmRzY2FwZSIgewogICAgICAgICAgICBpbmNsdWRlICoKICAgICAgICAgICAgYXV0b0xheW91dAogICAgICAgIH0KCiAgICAgICAgc3lzdGVtY29udGV4dCBpbnRlcm5ldEJhbmtpbmdTeXN0ZW0gIlN5c3RlbUNvbnRleHQiIHsKICAgICAgICAgICAgaW5jbHVkZSAqCiAgICAgICAgICAgIGFuaW1hdGlvbiB7CiAgICAgICAgICAgICAgICBpbnRlcm5ldEJhbmtpbmdTeXN0ZW0KICAgICAgICAgICAgICAgIGN1c3RvbWVyCiAgICAgICAgICAgICAgICBtYWluZnJhbWUKICAgICAgICAgICAgICAgIGVtYWlsCiAgICAgICAgICAgIH0KICAgICAgICAgICAgYXV0b0xheW91dAogICAgICAgICAgICBkZXNjcmlwdGlvbiAiVGhlIHN5c3RlbSBjb250ZXh0IGRpYWdyYW0gZm9yIHRoZSBJbnRlcm5ldCBCYW5raW5nIFN5c3RlbS4iCiAgICAgICAgICAgIHByb3BlcnRpZXMgewogICAgICAgICAgICAgICAgc3RydWN0dXJpenIuZ3JvdXBzIGZhbHNlCiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGNvbnRhaW5lciBpbnRlcm5ldEJhbmtpbmdTeXN0ZW0gIkNvbnRhaW5lcnMiIHsKICAgICAgICAgICAgaW5jbHVkZSAqCiAgICAgICAgICAgIGFuaW1hdGlvbiB7CiAgICAgICAgICAgICAgICBjdXN0b21lciBtYWluZnJhbWUgZW1haWwKICAgICAgICAgICAgICAgIHdlYkFwcGxpY2F0aW9uCiAgICAgICAgICAgICAgICBzaW5nbGVQYWdlQXBwbGljYXRpb24KICAgICAgICAgICAgICAgIG1vYmlsZUFwcAogICAgICAgICAgICAgICAgYXBpQXBwbGljYXRpb24KICAgICAgICAgICAgICAgIGRhdGFiYXNlCiAgICAgICAgICAgIH0KICAgICAgICAgICAgYXV0b0xheW91dAogICAgICAgICAgICBkZXNjcmlwdGlvbiAiVGhlIGNvbnRhaW5lciBkaWFncmFtIGZvciB0aGUgSW50ZXJuZXQgQmFua2luZyBTeXN0ZW0uIgogICAgICAgIH0KCiAgICAgICAgY29tcG9uZW50IGFwaUFwcGxpY2F0aW9uICJDb21wb25lbnRzIiB7CiAgICAgICAgICAgIGluY2x1ZGUgKgogICAgICAgICAgICBhbmltYXRpb24gewogICAgICAgICAgICAgICAgc2luZ2xlUGFnZUFwcGxpY2F0aW9uIG1vYmlsZUFwcCBkYXRhYmFzZSBlbWFpbCBtYWluZnJhbWUKICAgICAgICAgICAgICAgIHNpZ25pbkNvbnRyb2xsZXIgc2VjdXJpdHlDb21wb25lbnQKICAgICAgICAgICAgICAgIGFjY291bnRzU3VtbWFyeUNvbnRyb2xsZXIgbWFpbmZyYW1lQmFua2luZ1N5c3RlbUZhY2FkZQogICAgICAgICAgICAgICAgcmVzZXRQYXNzd29yZENvbnRyb2xsZXIgZW1haWxDb21wb25lbnQKICAgICAgICAgICAgfQogICAgICAgICAgICBhdXRvTGF5b3V0CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJUaGUgY29tcG9uZW50IGRpYWdyYW0gZm9yIHRoZSBBUEkgQXBwbGljYXRpb24uIgogICAgICAgIH0KCiAgICAgICAgaW1hZ2UgbWFpbmZyYW1lQmFua2luZ1N5c3RlbUZhY2FkZSAiTWFpbmZyYW1lQmFua2luZ1N5c3RlbUZhY2FkZSIgewogICAgICAgICAgICBpbWFnZSBodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vc3RydWN0dXJpenIvZXhhbXBsZXMvbWFpbi9kc2wvYmlnLWJhbmstcGxjL2ludGVybmV0LWJhbmtpbmctc3lzdGVtL21haW5mcmFtZS1iYW5raW5nLXN5c3RlbS1mYWNhZGUucG5nCiAgICAgICAgICAgIHRpdGxlICJbQ29kZV0gTWFpbmZyYW1lIEJhbmtpbmcgU3lzdGVtIEZhY2FkZSIKICAgICAgICB9CgogICAgICAgIGR5bmFtaWMgYXBpQXBwbGljYXRpb24gIlNpZ25JbiIgIlN1bW1hcmlzZXMgaG93IHRoZSBzaWduIGluIGZlYXR1cmUgd29ya3MgaW4gdGhlIHNpbmdsZS1wYWdlIGFwcGxpY2F0aW9uLiIgewogICAgICAgICAgICBzaW5nbGVQYWdlQXBwbGljYXRpb24gLT4gc2lnbmluQ29udHJvbGxlciAiU3VibWl0cyBjcmVkZW50aWFscyB0byIKICAgICAgICAgICAgc2lnbmluQ29udHJvbGxlciAtPiBzZWN1cml0eUNvbXBvbmVudCAiVmFsaWRhdGVzIGNyZWRlbnRpYWxzIHVzaW5nIgogICAgICAgICAgICBzZWN1cml0eUNvbXBvbmVudCAtPiBkYXRhYmFzZSAic2VsZWN0ICogZnJvbSB1c2VycyB3aGVyZSB1c2VybmFtZSA9ID8iCiAgICAgICAgICAgIGRhdGFiYXNlIC0+IHNlY3VyaXR5Q29tcG9uZW50ICJSZXR1cm5zIHVzZXIgZGF0YSB0byIKICAgICAgICAgICAgc2VjdXJpdHlDb21wb25lbnQgLT4gc2lnbmluQ29udHJvbGxlciAiUmV0dXJucyB0cnVlIGlmIHRoZSBoYXNoZWQgcGFzc3dvcmQgbWF0Y2hlcyIKICAgICAgICAgICAgc2lnbmluQ29udHJvbGxlciAtPiBzaW5nbGVQYWdlQXBwbGljYXRpb24gIlNlbmRzIGJhY2sgYW4gYXV0aGVudGljYXRpb24gdG9rZW4gdG8iCiAgICAgICAgICAgIGF1dG9MYXlvdXQKICAgICAgICAgICAgZGVzY3JpcHRpb24gIlN1bW1hcmlzZXMgaG93IHRoZSBzaWduIGluIGZlYXR1cmUgd29ya3MgaW4gdGhlIHNpbmdsZS1wYWdlIGFwcGxpY2F0aW9uLiIKICAgICAgICB9CgogICAgICAgIGRlcGxveW1lbnQgaW50ZXJuZXRCYW5raW5nU3lzdGVtICJEZXZlbG9wbWVudCIgIkRldmVsb3BtZW50RGVwbG95bWVudCIgewogICAgICAgICAgICBpbmNsdWRlICoKICAgICAgICAgICAgYW5pbWF0aW9uIHsKICAgICAgICAgICAgICAgIGRldmVsb3BlclNpbmdsZVBhZ2VBcHBsaWNhdGlvbkluc3RhbmNlCiAgICAgICAgICAgICAgICBkZXZlbG9wZXJXZWJBcHBsaWNhdGlvbkluc3RhbmNlIGRldmVsb3BlckFwaUFwcGxpY2F0aW9uSW5zdGFuY2UKICAgICAgICAgICAgICAgIGRldmVsb3BlckRhdGFiYXNlSW5zdGFuY2UKICAgICAgICAgICAgfQogICAgICAgICAgICBhdXRvTGF5b3V0CiAgICAgICAgICAgIGRlc2NyaXB0aW9uICJBbiBleGFtcGxlIGRldmVsb3BtZW50IGRlcGxveW1lbnQgc2NlbmFyaW8gZm9yIHRoZSBJbnRlcm5ldCBCYW5raW5nIFN5c3RlbS4iCiAgICAgICAgfQoKICAgICAgICBkZXBsb3ltZW50IGludGVybmV0QmFua2luZ1N5c3RlbSAiTGl2ZSIgIkxpdmVEZXBsb3ltZW50IiB7CiAgICAgICAgICAgIGluY2x1ZGUgKgogICAgICAgICAgICBhbmltYXRpb24gewogICAgICAgICAgICAgICAgbGl2ZVNpbmdsZVBhZ2VBcHBsaWNhdGlvbkluc3RhbmNlCiAgICAgICAgICAgICAgICBsaXZlTW9iaWxlQXBwSW5zdGFuY2UKICAgICAgICAgICAgICAgIGxpdmVXZWJBcHBsaWNhdGlvbkluc3RhbmNlIGxpdmVBcGlBcHBsaWNhdGlvbkluc3RhbmNlCiAgICAgICAgICAgICAgICBsaXZlUHJpbWFyeURhdGFiYXNlSW5zdGFuY2UKICAgICAgICAgICAgICAgIGxpdmVTZWNvbmRhcnlEYXRhYmFzZUluc3RhbmNlCiAgICAgICAgICAgIH0KICAgICAgICAgICAgYXV0b0xheW91dAogICAgICAgICAgICBkZXNjcmlwdGlvbiAiQW4gZXhhbXBsZSBsaXZlIGRlcGxveW1lbnQgc2NlbmFyaW8gZm9yIHRoZSBJbnRlcm5ldCBCYW5raW5nIFN5c3RlbS4iCiAgICAgICAgfQoKICAgICAgICBzdHlsZXMgewogICAgICAgICAgICBlbGVtZW50ICJQZXJzb24iIHsKICAgICAgICAgICAgICAgIGNvbG9yICNmZmZmZmYKICAgICAgICAgICAgICAgIGZvbnRTaXplIDIyCiAgICAgICAgICAgICAgICBzaGFwZSBQZXJzb24KICAgICAgICAgICAgfQogICAgICAgICAgICBlbGVtZW50ICJDdXN0b21lciIgewogICAgICAgICAgICAgICAgYmFja2dyb3VuZCAjMDg0MjdiCiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxlbWVudCAiQmFuayBTdGFmZiIgewogICAgICAgICAgICAgICAgYmFja2dyb3VuZCAjOTk5OTk5CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxlbWVudCAiU29mdHdhcmUgU3lzdGVtIiB7CiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kICMxMTY4YmQKICAgICAgICAgICAgICAgIGNvbG9yICNmZmZmZmYKICAgICAgICAgICAgfQogICAgICAgICAgICBlbGVtZW50ICJFeGlzdGluZyBTeXN0ZW0iIHsKICAgICAgICAgICAgICAgIGJhY2tncm91bmQgIzk5OTk5OQogICAgICAgICAgICAgICAgY29sb3IgI2ZmZmZmZgogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsZW1lbnQgIkNvbnRhaW5lciIgewogICAgICAgICAgICAgICAgYmFja2dyb3VuZCAjNDM4ZGQ1CiAgICAgICAgICAgICAgICBjb2xvciAjZmZmZmZmCiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxlbWVudCAiV2ViIEJyb3dzZXIiIHsKICAgICAgICAgICAgICAgIHNoYXBlIFdlYkJyb3dzZXIKICAgICAgICAgICAgfQogICAgICAgICAgICBlbGVtZW50ICJNb2JpbGUgQXBwIiB7CiAgICAgICAgICAgICAgICBzaGFwZSBNb2JpbGVEZXZpY2VMYW5kc2NhcGUKICAgICAgICAgICAgfQogICAgICAgICAgICBlbGVtZW50ICJEYXRhYmFzZSIgewogICAgICAgICAgICAgICAgc2hhcGUgQ3lsaW5kZXIKICAgICAgICAgICAgfQogICAgICAgICAgICBlbGVtZW50ICJDb21wb25lbnQiIHsKICAgICAgICAgICAgICAgIGJhY2tncm91bmQgIzg1YmJmMAogICAgICAgICAgICAgICAgY29sb3IgIzAwMDAwMAogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsZW1lbnQgIkZhaWxvdmVyIiB7CiAgICAgICAgICAgICAgICBvcGFjaXR5IDI1CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0K"
7
  },
8
  "configuration" : { },
9
  "model" : {
10
    "people" : [ {
11
      "id" : "1",
12
      "tags" : "Element,Person,Customer",
13
      "properties" : {
14
        "structurizr.dsl.identifier" : "customer"
15
      },
16
      "name" : "Personal Banking Customer",
17
      "description" : "A customer of the bank, with personal bank accounts.",
18
      "relationships" : [ {
19
        "id" : "19",
20
        "tags" : "Relationship",
21
        "properties" : {
22
          "structurizr.dsl.identifier" : "6d299902-3f78-4a39-a8ca-3a61e3e50f3e"
23
        },
24
        "sourceId" : "1",
25
        "destinationId" : "7",
26
        "description" : "Views account balances, and makes payments using"
27
      }, {
28
        "id" : "23",
29
        "tags" : "Relationship",
30
        "properties" : {
31
          "structurizr.dsl.identifier" : "e61b034b-4617-4f42-8831-b171bdd5f7df"
32
        },
33
        "sourceId" : "1",
34
        "destinationId" : "2",
35
        "description" : "Asks questions to",
36
        "technology" : "Telephone"
37
      }, {
38
        "id" : "25",
39
        "tags" : "Relationship",
40
        "properties" : {
41
          "structurizr.dsl.identifier" : "2ebe5df0-e547-4c9b-9403-a83561d958ea"
42
        },
43
        "sourceId" : "1",
44
        "destinationId" : "6",
45
        "description" : "Withdraws cash using"
46
      }, {
47
        "id" : "28",
48
        "tags" : "Relationship",
49
        "properties" : {
50
          "structurizr.dsl.identifier" : "4a08e84b-acb3-4fc4-a7f1-8ebe621a0f0f"
51
        },
52
        "sourceId" : "1",
53
        "destinationId" : "10",
54
        "description" : "Visits bigbank.com/ib using",
55
        "technology" : "HTTPS"
56
      }, {
57
        "id" : "29",
58
        "tags" : "Relationship",
59
        "properties" : {
60
          "structurizr.dsl.identifier" : "025a49a0-4557-44bb-9724-2d7ea4d7e1ed"
61
        },
62
        "sourceId" : "1",
63
        "destinationId" : "8",
64
        "description" : "Views account balances, and makes payments using"
65
      }, {
66
        "id" : "30",
67
        "tags" : "Relationship",
68
        "properties" : {
69
          "structurizr.dsl.identifier" : "c6295d75-dd8c-494e-8d69-096540a25b4b"
70
        },
71
        "sourceId" : "1",
72
        "destinationId" : "9",
73
        "description" : "Views account balances, and makes payments using"
74
      } ],
75
      "location" : "Unspecified"
76
    }, {
77
      "id" : "2",
78
      "tags" : "Element,Person,Bank Staff",
79
      "properties" : {
80
        "structurizr.dsl.identifier" : "supportstaff"
81
      },
82
      "name" : "Customer Service Staff",
83
      "description" : "Customer service staff within the bank.",
84
      "relationships" : [ {
85
        "id" : "24",
86
        "tags" : "Relationship",
87
        "properties" : {
88
          "structurizr.dsl.identifier" : "ad399353-807e-4350-ad5f-2359c54844db"
89
        },
90
        "sourceId" : "2",
91
        "destinationId" : "4",
92
        "description" : "Uses"
93
      } ],
94
      "group" : "Big Bank plc",
95
      "location" : "Unspecified"
96
    }, {
97
      "id" : "3",
98
      "tags" : "Element,Person,Bank Staff",
99
      "properties" : {
100
        "structurizr.dsl.identifier" : "backoffice"
101
      },
102
      "name" : "Back Office Staff",
103
      "description" : "Administration and support staff within the bank.",
104
      "relationships" : [ {
105
        "id" : "27",
106
        "tags" : "Relationship",
107
        "properties" : {
108
          "structurizr.dsl.identifier" : "a4243927-b19d-423f-9f2c-6d84ba3604e3"
109
        },
110
        "sourceId" : "3",
111
        "destinationId" : "4",
112
        "description" : "Uses"
113
      } ],
114
      "group" : "Big Bank plc",
115
      "location" : "Unspecified"
116
    } ],
117
    "softwareSystems" : [ {
118
      "id" : "4",
119
      "tags" : "Element,Software System,Existing System",
120
      "properties" : {
121
        "structurizr.dsl.identifier" : "mainframe"
122
      },
123
      "name" : "Mainframe Banking System",
124
      "description" : "Stores all of the core banking information about customers, accounts, transactions, etc.",
125
      "group" : "Big Bank plc",
126
      "location" : "Unspecified",
127
      "documentation" : { }
128
    }, {
129
      "id" : "5",
130
      "tags" : "Element,Software System,Existing System",
131
      "properties" : {
132
        "structurizr.dsl.identifier" : "email"
133
      },
134
      "name" : "E-mail System",
135
      "description" : "The internal Microsoft Exchange e-mail system.",
136
      "relationships" : [ {
137
        "id" : "22",
138
        "tags" : "Relationship",
139
        "properties" : {
140
          "structurizr.dsl.identifier" : "93b2b770-fec1-40f4-ab14-cec2eb3c75d6"
141
        },
142
        "sourceId" : "5",
143
        "destinationId" : "1",
144
        "description" : "Sends e-mails to"
145
      } ],
146
      "group" : "Big Bank plc",
147
      "location" : "Unspecified",
148
      "documentation" : { }
149
    }, {
150
      "id" : "6",
151
      "tags" : "Element,Software System,Existing System",
152
      "properties" : {
153
        "structurizr.dsl.identifier" : "atm"
154
      },
155
      "name" : "ATM",
156
      "description" : "Allows customers to withdraw cash.",
157
      "relationships" : [ {
158
        "id" : "26",
159
        "tags" : "Relationship",
160
        "properties" : {
161
          "structurizr.dsl.identifier" : "e2e730e2-ce51-4154-9847-b8d73823cdc2"
162
        },
163
        "sourceId" : "6",
164
        "destinationId" : "4",
165
        "description" : "Uses"
166
      } ],
167
      "group" : "Big Bank plc",
168
      "location" : "Unspecified",
169
      "documentation" : { }
170
    }, {
171
      "id" : "7",
172
      "tags" : "Element,Software System",
173
      "properties" : {
174
        "structurizr.dsl.identifier" : "internetbankingsystem"
175
      },
176
      "name" : "Internet Banking System",
177
      "description" : "Allows customers to view information about their bank accounts, and make payments.",
178
      "relationships" : [ {
179
        "id" : "20",
180
        "tags" : "Relationship",
181
        "properties" : {
182
          "structurizr.dsl.identifier" : "bd46add8-7f56-4639-9f1c-1569a681ad92"
183
        },
184
        "sourceId" : "7",
185
        "destinationId" : "4",
186
        "description" : "Gets account information from, and makes payments using"
187
      }, {
188
        "id" : "21",
189
        "tags" : "Relationship",
190
        "properties" : {
191
          "structurizr.dsl.identifier" : "c58d1eb9-d9da-4f37-b9f5-e2035c651abd"
192
        },
193
        "sourceId" : "7",
194
        "destinationId" : "5",
195
        "description" : "Sends e-mail using"
196
      } ],
197
      "group" : "Big Bank plc",
198
      "location" : "Unspecified",
199
      "containers" : [ {
200
        "id" : "18",
201
        "tags" : "Element,Container,Database",
202
        "properties" : {
203
          "structurizr.dsl.identifier" : "database"
204
        },
205
        "name" : "Database",
206
        "description" : "Stores user registration information, hashed authentication credentials, access logs, etc.",
207
        "technology" : "Oracle Database Schema",
208
        "documentation" : { }
209
      }, {
210
        "id" : "9",
211
        "tags" : "Element,Container,Mobile App",
212
        "properties" : {
213
          "structurizr.dsl.identifier" : "mobileapp"
214
        },
215
        "name" : "Mobile App",
216
        "description" : "Provides a limited subset of the Internet banking functionality to customers via their mobile device.",
217
        "relationships" : [ {
218
          "id" : "36",
219
          "tags" : "Relationship",
220
          "properties" : {
221
            "structurizr.dsl.identifier" : "5fce96a5-2f6c-41e1-9263-26174a28ced1"
222
          },
223
          "sourceId" : "9",
224
          "destinationId" : "12",
225
          "description" : "Makes API calls to",
226
          "technology" : "JSON/HTTPS"
227
        }, {
228
          "id" : "37",
229
          "sourceId" : "9",
230
          "destinationId" : "11",
231
          "description" : "Makes API calls to",
232
          "technology" : "JSON/HTTPS",
233
          "linkedRelationshipId" : "36"
234
        }, {
235
          "id" : "38",
236
          "tags" : "Relationship",
237
          "properties" : {
238
            "structurizr.dsl.identifier" : "3ee42ae6-31e2-4644-8d27-0d9f8fde6919"
239
          },
240
          "sourceId" : "9",
241
          "destinationId" : "13",
242
          "description" : "Makes API calls to",
243
          "technology" : "JSON/HTTPS"
244
        }, {
245
          "id" : "39",
246
          "tags" : "Relationship",
247
          "properties" : {
248
            "structurizr.dsl.identifier" : "65f4415c-7575-4230-bd32-6d8d754d01ca"
249
          },
250
          "sourceId" : "9",
251
          "destinationId" : "14",
252
          "description" : "Makes API calls to",
253
          "technology" : "JSON/HTTPS"
254
        } ],
255
        "technology" : "Xamarin",
256
        "documentation" : { }
257
      }, {
258
        "id" : "10",
259
        "tags" : "Element,Container",
260
        "properties" : {
261
          "structurizr.dsl.identifier" : "webapplication"
262
        },
263
        "name" : "Web Application",
264
        "description" : "Delivers the static content and the Internet banking single page application.",
265
        "relationships" : [ {
266
          "id" : "31",
267
          "tags" : "Relationship",
268
          "properties" : {
269
            "structurizr.dsl.identifier" : "792ce67f-78f1-4c65-933b-84eece4334e2"
270
          },
271
          "sourceId" : "10",
272
          "destinationId" : "8",
273
          "description" : "Delivers to the customer's web browser"
274
        } ],
275
        "technology" : "Java and Spring MVC",
276
        "documentation" : { }
277
      }, {
278
        "id" : "11",
279
        "tags" : "Element,Container",
280
        "properties" : {
281
          "structurizr.dsl.identifier" : "apiapplication"
282
        },
283
        "name" : "API Application",
284
        "description" : "Provides Internet banking functionality via a JSON/HTTPS API.",
285
        "relationships" : [ {
286
          "id" : "45",
287
          "sourceId" : "11",
288
          "destinationId" : "18",
289
          "description" : "Reads from and writes to",
290
          "technology" : "SQL/TCP",
291
          "linkedRelationshipId" : "44"
292
        }, {
293
          "id" : "47",
294
          "sourceId" : "11",
295
          "destinationId" : "4",
296
          "description" : "Makes API calls to",
297
          "technology" : "XML/HTTPS",
298
          "linkedRelationshipId" : "46"
299
        }, {
300
          "id" : "49",
301
          "sourceId" : "11",
302
          "destinationId" : "5",
303
          "description" : "Sends e-mail using",
304
          "linkedRelationshipId" : "48"
305
        } ],
306
        "technology" : "Java and Spring MVC",
307
        "components" : [ {
308
          "id" : "16",
309
          "tags" : "Element,Component",
310
          "properties" : {
311
            "structurizr.dsl.identifier" : "mainframebankingsystemfacade"
312
          },
313
          "name" : "Mainframe Banking System Facade",
314
          "description" : "A facade onto the mainframe banking system.",
315
          "relationships" : [ {
316
            "id" : "46",
317
            "tags" : "Relationship",
318
            "properties" : {
319
              "structurizr.dsl.identifier" : "2f9ddb3a-77a2-433c-9257-49bfe5bb0766"
320
            },
321
            "sourceId" : "16",
322
            "destinationId" : "4",
323
            "description" : "Makes API calls to",
324
            "technology" : "XML/HTTPS"
325
          } ],
326
          "technology" : "Spring Bean",
327
          "documentation" : { }
328
        }, {
329
          "id" : "12",
330
          "tags" : "Element,Component",
331
          "properties" : {
332
            "structurizr.dsl.identifier" : "signincontroller"
333
          },
334
          "name" : "Sign In Controller",
335
          "description" : "Allows users to sign in to the Internet Banking System.",
336
          "relationships" : [ {
337
            "id" : "40",
338
            "tags" : "Relationship",
339
            "properties" : {
340
              "structurizr.dsl.identifier" : "2f405114-17b0-4223-aaa1-12f87d1ca8ba"
341
            },
342
            "sourceId" : "12",
343
            "destinationId" : "15",
344
            "description" : "Uses"
345
          } ],
346
          "technology" : "Spring MVC Rest Controller",
347
          "documentation" : { }
348
        }, {
349
          "id" : "13",
350
          "tags" : "Element,Component",
351
          "properties" : {
352
            "structurizr.dsl.identifier" : "accountssummarycontroller"
353
          },
354
          "name" : "Accounts Summary Controller",
355
          "description" : "Provides customers with a summary of their bank accounts.",
356
          "relationships" : [ {
357
            "id" : "41",
358
            "tags" : "Relationship",
359
            "properties" : {
360
              "structurizr.dsl.identifier" : "9920b188-70d1-4f83-b51d-a2f7eb4c6ffc"
361
            },
362
            "sourceId" : "13",
363
            "destinationId" : "16",
364
            "description" : "Uses"
365
          } ],
366
          "technology" : "Spring MVC Rest Controller",
367
          "documentation" : { }
368
        }, {
369
          "id" : "15",
370
          "tags" : "Element,Component",
371
          "properties" : {
372
            "structurizr.dsl.identifier" : "securitycomponent"
373
          },
374
          "name" : "Security Component",
375
          "description" : "Provides functionality related to signing in, changing passwords, etc.",
376
          "relationships" : [ {
377
            "id" : "44",
378
            "tags" : "Relationship",
379
            "properties" : {
380
              "structurizr.dsl.identifier" : "67d3a4e5-1e3f-4046-a121-c0a342a26d25"
381
            },
382
            "sourceId" : "15",
383
            "destinationId" : "18",
384
            "description" : "Reads from and writes to",
385
            "technology" : "SQL/TCP"
386
          } ],
387
          "technology" : "Spring Bean",
388
          "documentation" : { }
389
        }, {
390
          "id" : "14",
391
          "tags" : "Element,Component",
392
          "properties" : {
393
            "structurizr.dsl.identifier" : "resetpasswordcontroller"
394
          },
395
          "name" : "Reset Password Controller",
396
          "description" : "Allows users to reset their passwords with a single use URL.",
397
          "relationships" : [ {
398
            "id" : "42",
399
            "tags" : "Relationship",
400
            "properties" : {
401
              "structurizr.dsl.identifier" : "bd04aed2-60d9-45f9-a75a-bd570b5a9cc4"
402
            },
403
            "sourceId" : "14",
404
            "destinationId" : "15",
405
            "description" : "Uses"
406
          }, {
407
            "id" : "43",
408
            "tags" : "Relationship",
409
            "properties" : {
410
              "structurizr.dsl.identifier" : "aa43b36b-ddc2-4aad-a021-d54f79abd36b"
411
            },
412
            "sourceId" : "14",
413
            "destinationId" : "17",
414
            "description" : "Uses"
415
          } ],
416
          "technology" : "Spring MVC Rest Controller",
417
          "documentation" : { }
418
        }, {
419
          "id" : "17",
420
          "tags" : "Element,Component",
421
          "properties" : {
422
            "structurizr.dsl.identifier" : "emailcomponent"
423
          },
424
          "name" : "E-mail Component",
425
          "description" : "Sends e-mails to users.",
426
          "relationships" : [ {
427
            "id" : "48",
428
            "tags" : "Relationship",
429
            "properties" : {
430
              "structurizr.dsl.identifier" : "3c022388-9eb7-4e47-b524-f480fc361897"
431
            },
432
            "sourceId" : "17",
433
            "destinationId" : "5",
434
            "description" : "Sends e-mail using"
435
          } ],
436
          "technology" : "Spring Bean",
437
          "documentation" : { }
438
        } ],
439
        "documentation" : { }
440
      }, {
441
        "id" : "8",
442
        "tags" : "Element,Container,Web Browser",
443
        "properties" : {
444
          "structurizr.dsl.identifier" : "singlepageapplication"
445
        },
446
        "name" : "Single-Page Application",
447
        "description" : "Provides all of the Internet banking functionality to customers via their web browser.",
448
        "relationships" : [ {
449
          "id" : "32",
450
          "tags" : "Relationship",
451
          "properties" : {
452
            "structurizr.dsl.identifier" : "adb4007f-e5e8-41b9-ac61-d027fac89cdb"
453
          },
454
          "sourceId" : "8",
455
          "destinationId" : "12",
456
          "description" : "Makes API calls to",
457
          "technology" : "JSON/HTTPS"
458
        }, {
459
          "id" : "33",
460
          "sourceId" : "8",
461
          "destinationId" : "11",
462
          "description" : "Makes API calls to",
463
          "technology" : "JSON/HTTPS",
464
          "linkedRelationshipId" : "32"
465
        }, {
466
          "id" : "34",
467
          "tags" : "Relationship",
468
          "properties" : {
469
            "structurizr.dsl.identifier" : "235c5bc1-8163-4415-abb2-9f24d7a03155"
470
          },
471
          "sourceId" : "8",
472
          "destinationId" : "13",
473
          "description" : "Makes API calls to",
474
          "technology" : "JSON/HTTPS"
475
        }, {
476
          "id" : "35",
477
          "tags" : "Relationship",
478
          "properties" : {
479
            "structurizr.dsl.identifier" : "607c5ef3-186c-4f68-a4f1-3be26eb4591f"
480
          },
481
          "sourceId" : "8",
482
          "destinationId" : "14",
483
          "description" : "Makes API calls to",
484
          "technology" : "JSON/HTTPS"
485
        } ],
486
        "technology" : "JavaScript and Angular",
487
        "documentation" : { }
488
      } ],
489
      "documentation" : { }
490
    } ],
491
    "deploymentNodes" : [ {
492
      "id" : "50",
493
      "tags" : "Element,Deployment Node",
494
      "properties" : {
495
        "structurizr.dsl.identifier" : "25239481-454a-4edd-bca5-7ee77ced54e1"
496
      },
497
      "name" : "Developer Laptop",
498
      "environment" : "Development",
499
      "technology" : "Microsoft Windows 10 or Apple macOS",
500
      "instances" : "1",
501
      "children" : [ {
502
        "id" : "53",
503
        "tags" : "Element,Deployment Node",
504
        "properties" : {
505
          "structurizr.dsl.identifier" : "e8ce8a91-df97-4486-b2a0-dcd171cd2ee3"
506
        },
507
        "name" : "Docker Container - Web Server",
508
        "environment" : "Development",
509
        "technology" : "Docker",
510
        "instances" : "1",
511
        "children" : [ {
512
          "id" : "54",
513
          "tags" : "Element,Deployment Node",
514
          "properties" : {
515
            "structurizr.dsl.identifier" : "af91db02-1a49-4a73-848a-ff230caf459b"
516
          },
517
          "name" : "Apache Tomcat",
518
          "environment" : "Development",
519
          "technology" : "Apache Tomcat 8.x",
520
          "instances" : "1",
521
          "containerInstances" : [ {
522
            "id" : "55",
523
            "tags" : "Container Instance",
524
            "properties" : {
525
              "structurizr.dsl.identifier" : "developerwebapplicationinstance"
526
            },
527
            "relationships" : [ {
528
              "id" : "56",
529
              "sourceId" : "55",
530
              "destinationId" : "52",
531
              "description" : "Delivers to the customer's web browser",
532
              "linkedRelationshipId" : "31"
533
            } ],
534
            "environment" : "Development",
535
            "deploymentGroups" : [ "Default" ],
536
            "instanceId" : 1,
537
            "containerId" : "10"
538
          }, {
539
            "id" : "57",
540
            "tags" : "Container Instance",
541
            "properties" : {
542
              "structurizr.dsl.identifier" : "developerapiapplicationinstance"
543
            },
544
            "relationships" : [ {
545
              "id" : "62",
546
              "sourceId" : "57",
547
              "destinationId" : "61",
548
              "description" : "Reads from and writes to",
549
              "technology" : "SQL/TCP",
550
              "linkedRelationshipId" : "45"
551
            }, {
552
              "id" : "66",
553
              "sourceId" : "57",
554
              "destinationId" : "65",
555
              "description" : "Makes API calls to",
556
              "technology" : "XML/HTTPS",
557
              "linkedRelationshipId" : "47"
558
            } ],
559
            "environment" : "Development",
560
            "deploymentGroups" : [ "Default" ],
561
            "instanceId" : 1,
562
            "containerId" : "11"
563
          } ]
564
        } ]
565
      }, {
566
        "id" : "51",
567
        "tags" : "Element,Deployment Node",
568
        "properties" : {
569
          "structurizr.dsl.identifier" : "b7da5a3d-2f5f-41f4-ab17-a81118c842ad"
570
        },
571
        "name" : "Web Browser",
572
        "environment" : "Development",
573
        "technology" : "Chrome, Firefox, Safari, or Edge",
574
        "instances" : "1",
575
        "containerInstances" : [ {
576
          "id" : "52",
577
          "tags" : "Container Instance",
578
          "properties" : {
579
            "structurizr.dsl.identifier" : "developersinglepageapplicationinstance"
580
          },
581
          "relationships" : [ {
582
            "id" : "58",
583
            "sourceId" : "52",
584
            "destinationId" : "57",
585
            "description" : "Makes API calls to",
586
            "technology" : "JSON/HTTPS",
587
            "linkedRelationshipId" : "33"
588
          } ],
589
          "environment" : "Development",
590
          "deploymentGroups" : [ "Default" ],
591
          "instanceId" : 1,
592
          "containerId" : "8"
593
        } ]
594
      }, {
595
        "id" : "59",
596
        "tags" : "Element,Deployment Node",
597
        "properties" : {
598
          "structurizr.dsl.identifier" : "5f95573e-5028-40e6-9b55-b1402dc184b4"
599
        },
600
        "name" : "Docker Container - Database Server",
601
        "environment" : "Development",
602
        "technology" : "Docker",
603
        "instances" : "1",
604
        "children" : [ {
605
          "id" : "60",
606
          "tags" : "Element,Deployment Node",
607
          "properties" : {
608
            "structurizr.dsl.identifier" : "562a146b-9830-4fef-ab67-cadbede1cabb"
609
          },
610
          "name" : "Database Server",
611
          "environment" : "Development",
612
          "technology" : "Oracle 12c",
613
          "instances" : "1",
614
          "containerInstances" : [ {
615
            "id" : "61",
616
            "tags" : "Container Instance",
617
            "properties" : {
618
              "structurizr.dsl.identifier" : "developerdatabaseinstance"
619
            },
620
            "environment" : "Development",
621
            "deploymentGroups" : [ "Default" ],
622
            "instanceId" : 1,
623
            "containerId" : "18"
624
          } ]
625
        } ]
626
      } ]
627
    }, {
628
      "id" : "63",
629
      "tags" : "Element,Deployment Node,",
630
      "properties" : {
631
        "structurizr.dsl.identifier" : "77f85941-3884-4918-bfb5-a55a6d2d7448"
632
      },
633
      "name" : "Big Bank plc",
634
      "environment" : "Development",
635
      "technology" : "Big Bank plc data center",
636
      "instances" : "1",
637
      "children" : [ {
638
        "id" : "64",
639
        "tags" : "Element,Deployment Node,",
640
        "properties" : {
641
          "structurizr.dsl.identifier" : "9e854be8-32f3-4d69-88fd-245871775b15"
642
        },
643
        "name" : "bigbank-dev001",
644
        "environment" : "Development",
645
        "instances" : "1",
646
        "softwareSystemInstances" : [ {
647
          "id" : "65",
648
          "tags" : "Software System Instance",
649
          "properties" : {
650
            "structurizr.dsl.identifier" : "437ac7c3-ebbb-44ce-8a60-80bef8b6fb6e"
651
          },
652
          "environment" : "Development",
653
          "deploymentGroups" : [ "Default" ],
654
          "instanceId" : 1,
655
          "softwareSystemId" : "4"
656
        } ]
657
      } ]
658
    }, {
659
      "id" : "67",
660
      "tags" : "Element,Deployment Node",
661
      "properties" : {
662
        "structurizr.dsl.identifier" : "80be1ff8-fe6c-413b-aac6-9bb6cb9b85c7"
663
      },
664
      "name" : "Customer's mobile device",
665
      "environment" : "Live",
666
      "technology" : "Apple iOS or Android",
667
      "instances" : "1",
668
      "containerInstances" : [ {
669
        "id" : "68",
670
        "tags" : "Container Instance",
671
        "properties" : {
672
          "structurizr.dsl.identifier" : "livemobileappinstance"
673
        },
674
        "relationships" : [ {
675
          "id" : "80",
676
          "sourceId" : "68",
677
          "destinationId" : "79",
678
          "description" : "Makes API calls to",
679
          "technology" : "JSON/HTTPS",
680
          "linkedRelationshipId" : "37"
681
        } ],
682
        "environment" : "Live",
683
        "deploymentGroups" : [ "Default" ],
684
        "instanceId" : 1,
685
        "containerId" : "9"
686
      } ]
687
    }, {
688
      "id" : "69",
689
      "tags" : "Element,Deployment Node",
690
      "properties" : {
691
        "structurizr.dsl.identifier" : "493075d0-96ce-4274-98e2-5327fc48aeb6"
692
      },
693
      "name" : "Customer's computer",
694
      "environment" : "Live",
695
      "technology" : "Microsoft Windows or Apple macOS",
696
      "instances" : "1",
697
      "children" : [ {
698
        "id" : "70",
699
        "tags" : "Element,Deployment Node",
700
        "properties" : {
701
          "structurizr.dsl.identifier" : "45b6f442-c8bf-4923-8270-b9325afe0581"
702
        },
703
        "name" : "Web Browser",
704
        "environment" : "Live",
705
        "technology" : "Chrome, Firefox, Safari, or Edge",
706
        "instances" : "1",
707
        "containerInstances" : [ {
708
          "id" : "71",
709
          "tags" : "Container Instance",
710
          "properties" : {
711
            "structurizr.dsl.identifier" : "livesinglepageapplicationinstance"
712
          },
713
          "relationships" : [ {
714
            "id" : "81",
715
            "sourceId" : "71",
716
            "destinationId" : "79",
717
            "description" : "Makes API calls to",
718
            "technology" : "JSON/HTTPS",
719
            "linkedRelationshipId" : "33"
720
          } ],
721
          "environment" : "Live",
722
          "deploymentGroups" : [ "Default" ],
723
          "instanceId" : 1,
724
          "containerId" : "8"
725
        } ]
726
      } ]
727
    }, {
728
      "id" : "72",
729
      "tags" : "Element,Deployment Node",
730
      "properties" : {
731
        "structurizr.dsl.identifier" : "e7539131-ef26-4370-beda-31449e4c6b07"
732
      },
733
      "name" : "Big Bank plc",
734
      "environment" : "Live",
735
      "technology" : "Big Bank plc data center",
736
      "instances" : "1",
737
      "children" : [ {
738
        "id" : "86",
739
        "tags" : "Element,Deployment Node,Failover",
740
        "properties" : {
741
          "structurizr.dsl.identifier" : "edeb7dc9-7738-4516-9c81-c879369b2ab5"
742
        },
743
        "name" : "bigbank-db02",
744
        "environment" : "Live",
745
        "technology" : "Ubuntu 16.04 LTS",
746
        "instances" : "1",
747
        "children" : [ {
748
          "id" : "87",
749
          "tags" : "Element,Deployment Node,Failover",
750
          "properties" : {
751
            "structurizr.dsl.identifier" : "secondarydatabaseserver"
752
          },
753
          "name" : "Oracle - Secondary",
754
          "environment" : "Live",
755
          "technology" : "Oracle 12c",
756
          "instances" : "1",
757
          "containerInstances" : [ {
758
            "id" : "88",
759
            "tags" : "Container Instance",
760
            "properties" : {
761
              "structurizr.dsl.identifier" : "livesecondarydatabaseinstance"
762
            },
763
            "environment" : "Live",
764
            "deploymentGroups" : [ "Default" ],
765
            "instanceId" : 1,
766
            "containerId" : "18"
767
          } ]
768
        } ]
769
      }, {
770
        "id" : "82",
771
        "tags" : "Element,Deployment Node",
772
        "properties" : {
773
          "structurizr.dsl.identifier" : "7ec5cdd8-2cfe-46f6-8298-575bf81c2463"
774
        },
775
        "name" : "bigbank-db01",
776
        "environment" : "Live",
777
        "technology" : "Ubuntu 16.04 LTS",
778
        "instances" : "1",
779
        "children" : [ {
780
          "id" : "83",
781
          "tags" : "Element,Deployment Node",
782
          "properties" : {
783
            "structurizr.dsl.identifier" : "primarydatabaseserver"
784
          },
785
          "name" : "Oracle - Primary",
786
          "relationships" : [ {
787
            "id" : "93",
788
            "tags" : "Relationship",
789
            "properties" : {
790
              "structurizr.dsl.identifier" : "982513db-e0af-4cde-a468-b98ff002d363"
791
            },
792
            "sourceId" : "83",
793
            "destinationId" : "87",
794
            "description" : "Replicates data to"
795
          } ],
796
          "environment" : "Live",
797
          "technology" : "Oracle 12c",
798
          "instances" : "1",
799
          "containerInstances" : [ {
800
            "id" : "84",
801
            "tags" : "Container Instance",
802
            "properties" : {
803
              "structurizr.dsl.identifier" : "liveprimarydatabaseinstance"
804
            },
805
            "environment" : "Live",
806
            "deploymentGroups" : [ "Default" ],
807
            "instanceId" : 1,
808
            "containerId" : "18"
809
          } ]
810
        } ]
811
      }, {
812
        "id" : "77",
813
        "tags" : "Element,Deployment Node,",
814
        "properties" : {
815
          "structurizr.dsl.identifier" : "291edaeb-88f1-4c8e-9a26-54d0c113b1ae"
816
        },
817
        "name" : "bigbank-api***",
818
        "environment" : "Live",
819
        "technology" : "Ubuntu 16.04 LTS",
820
        "instances" : "8",
821
        "children" : [ {
822
          "id" : "78",
823
          "tags" : "Element,Deployment Node",
824
          "properties" : {
825
            "structurizr.dsl.identifier" : "a89ebe72-8ae6-43bf-8708-cc142a531f6b"
826
          },
827
          "name" : "Apache Tomcat",
828
          "environment" : "Live",
829
          "technology" : "Apache Tomcat 8.x",
830
          "instances" : "1",
831
          "containerInstances" : [ {
832
            "id" : "79",
833
            "tags" : "Container Instance",
834
            "properties" : {
835
              "structurizr.dsl.identifier" : "liveapiapplicationinstance"
836
            },
837
            "relationships" : [ {
838
              "id" : "85",
839
              "sourceId" : "79",
840
              "destinationId" : "84",
841
              "description" : "Reads from and writes to",
842
              "technology" : "SQL/TCP",
843
              "linkedRelationshipId" : "45"
844
            }, {
845
              "id" : "89",
846
              "sourceId" : "79",
847
              "destinationId" : "88",
848
              "description" : "Reads from and writes to",
849
              "technology" : "SQL/TCP",
850
              "linkedRelationshipId" : "45"
851
            }, {
852
              "id" : "92",
853
              "sourceId" : "79",
854
              "destinationId" : "91",
855
              "description" : "Makes API calls to",
856
              "technology" : "XML/HTTPS",
857
              "linkedRelationshipId" : "47"
858
            } ],
859
            "environment" : "Live",
860
            "deploymentGroups" : [ "Default" ],
861
            "instanceId" : 1,
862
            "containerId" : "11"
863
          } ]
864
        } ]
865
      }, {
866
        "id" : "90",
867
        "tags" : "Element,Deployment Node,",
868
        "properties" : {
869
          "structurizr.dsl.identifier" : "cdb15b14-58b4-4ca2-aa56-a162198908c8"
870
        },
871
        "name" : "bigbank-prod001",
872
        "environment" : "Live",
873
        "instances" : "1",
874
        "softwareSystemInstances" : [ {
875
          "id" : "91",
876
          "tags" : "Software System Instance",
877
          "properties" : {
878
            "structurizr.dsl.identifier" : "d3633a49-63a4-4495-80b3-e173391180bb"
879
          },
880
          "environment" : "Live",
881
          "deploymentGroups" : [ "Default" ],
882
          "instanceId" : 1,
883
          "softwareSystemId" : "4"
884
        } ]
885
      }, {
886
        "id" : "73",
887
        "tags" : "Element,Deployment Node,",
888
        "properties" : {
889
          "structurizr.dsl.identifier" : "f55b7219-d698-485d-91c1-ee303f3f5386"
890
        },
891
        "name" : "bigbank-web***",
892
        "environment" : "Live",
893
        "technology" : "Ubuntu 16.04 LTS",
894
        "instances" : "4",
895
        "children" : [ {
896
          "id" : "74",
897
          "tags" : "Element,Deployment Node",
898
          "properties" : {
899
            "structurizr.dsl.identifier" : "1d58ef82-2528-4ded-84b2-af35a7f18009"
900
          },
901
          "name" : "Apache Tomcat",
902
          "environment" : "Live",
903
          "technology" : "Apache Tomcat 8.x",
904
          "instances" : "1",
905
          "containerInstances" : [ {
906
            "id" : "75",
907
            "tags" : "Container Instance",
908
            "properties" : {
909
              "structurizr.dsl.identifier" : "livewebapplicationinstance"
910
            },
911
            "relationships" : [ {
912
              "id" : "76",
913
              "sourceId" : "75",
914
              "destinationId" : "71",
915
              "description" : "Delivers to the customer's web browser",
916
              "linkedRelationshipId" : "31"
917
            } ],
918
            "environment" : "Live",
919
            "deploymentGroups" : [ "Default" ],
920
            "instanceId" : 1,
921
            "containerId" : "10"
922
          } ]
923
        } ]
924
      } ]
925
    } ]
926
  },
927
  "documentation" : { },
928
  "views" : {
929
    "systemLandscapeViews" : [ {
930
      "key" : "SystemLandscape",
931
      "order" : 1,
932
      "automaticLayout" : {
933
        "implementation" : "Graphviz",
934
        "rankDirection" : "TopBottom",
935
        "rankSeparation" : 300,
936
        "nodeSeparation" : 300,
937
        "edgeSeparation" : 0,
938
        "vertices" : false,
939
        "applied" : false
940
      },
941
      "enterpriseBoundaryVisible" : true,
942
      "relationships" : [ {
943
        "id" : "27"
944
      }, {
945
        "id" : "26"
946
      }, {
947
        "id" : "25"
948
      }, {
949
        "id" : "24"
950
      }, {
951
        "id" : "23"
952
      }, {
953
        "id" : "22"
954
      }, {
955
        "id" : "21"
956
      }, {
957
        "id" : "20"
958
      }, {
959
        "id" : "19"
960
      } ],
961
      "elements" : [ {
962
        "id" : "1",
963
        "x" : 0,
964
        "y" : 0
965
      }, {
966
        "id" : "2",
967
        "x" : 0,
968
        "y" : 0
969
      }, {
970
        "id" : "3",
971
        "x" : 0,
972
        "y" : 0
973
      }, {
974
        "id" : "4",
975
        "x" : 0,
976
        "y" : 0
977
      }, {
978
        "id" : "5",
979
        "x" : 0,
980
        "y" : 0
981
      }, {
982
        "id" : "6",
983
        "x" : 0,
984
        "y" : 0
985
      }, {
986
        "id" : "7",
987
        "x" : 0,
988
        "y" : 0
989
      } ]
990
    } ],
991
    "systemContextViews" : [ {
992
      "key" : "SystemContext",
993
      "order" : 2,
994
      "description" : "The system context diagram for the Internet Banking System.",
995
      "properties" : {
996
        "structurizr.groups" : "false"
997
      },
998
      "softwareSystemId" : "7",
999
      "automaticLayout" : {
1000
        "implementation" : "Graphviz",
1001
        "rankDirection" : "TopBottom",
1002
        "rankSeparation" : 300,
1003
        "nodeSeparation" : 300,
1004
        "edgeSeparation" : 0,
1005
        "vertices" : false,
1006
        "applied" : false
1007
      },
1008
      "animations" : [ {
1009
        "order" : 1,
1010
        "elements" : [ "7" ]
1011
      }, {
1012
        "order" : 2,
1013
        "elements" : [ "1" ],
1014
        "relationships" : [ "19" ]
1015
      }, {
1016
        "order" : 3,
1017
        "elements" : [ "4" ],
1018
        "relationships" : [ "20" ]
1019
      }, {
1020
        "order" : 4,
1021
        "elements" : [ "5" ],
1022
        "relationships" : [ "22", "21" ]
1023
      } ],
1024
      "enterpriseBoundaryVisible" : true,
1025
      "relationships" : [ {
1026
        "id" : "22"
1027
      }, {
1028
        "id" : "21"
1029
      }, {
1030
        "id" : "20"
1031
      }, {
1032
        "id" : "19"
1033
      } ],
1034
      "elements" : [ {
1035
        "id" : "1",
1036
        "x" : 0,
1037
        "y" : 0
1038
      }, {
1039
        "id" : "4",
1040
        "x" : 0,
1041
        "y" : 0
1042
      }, {
1043
        "id" : "5",
1044
        "x" : 0,
1045
        "y" : 0
1046
      }, {
1047
        "id" : "7",
1048
        "x" : 0,
1049
        "y" : 0
1050
      } ]
1051
    } ],
1052
    "containerViews" : [ {
1053
      "key" : "Containers",
1054
      "order" : 3,
1055
      "description" : "The container diagram for the Internet Banking System.",
1056
      "softwareSystemId" : "7",
1057
      "automaticLayout" : {
1058
        "implementation" : "Graphviz",
1059
        "rankDirection" : "TopBottom",
1060
        "rankSeparation" : 300,
1061
        "nodeSeparation" : 300,
1062
        "edgeSeparation" : 0,
1063
        "vertices" : false,
1064
        "applied" : false
1065
      },
1066
      "animations" : [ {
1067
        "order" : 1,
1068
        "elements" : [ "1", "4", "5" ],
1069
        "relationships" : [ "22" ]
1070
      }, {
1071
        "order" : 2,
1072
        "elements" : [ "10" ],
1073
        "relationships" : [ "28" ]
1074
      }, {
1075
        "order" : 3,
1076
        "elements" : [ "8" ],
1077
        "relationships" : [ "29", "31" ]
1078
      }, {
1079
        "order" : 4,
1080
        "elements" : [ "9" ],
1081
        "relationships" : [ "30" ]
1082
      }, {
1083
        "order" : 5,
1084
        "elements" : [ "11" ],
1085
        "relationships" : [ "33", "47", "37", "49" ]
1086
      }, {
1087
        "order" : 6,
1088
        "elements" : [ "18" ],
1089
        "relationships" : [ "45" ]
1090
      } ],
1091
      "externalSoftwareSystemBoundariesVisible" : true,
1092
      "relationships" : [ {
1093
        "id" : "29"
1094
      }, {
1095
        "id" : "28"
1096
      }, {
1097
        "id" : "37"
1098
      }, {
1099
        "id" : "22"
1100
      }, {
1101
        "id" : "33"
1102
      }, {
1103
        "id" : "45"
1104
      }, {
1105
        "id" : "31"
1106
      }, {
1107
        "id" : "30"
1108
      }, {
1109
        "id" : "47"
1110
      }, {
1111
        "id" : "49"
1112
      } ],
1113
      "elements" : [ {
1114
        "id" : "11",
1115
        "x" : 0,
1116
        "y" : 0
1117
      }, {
1118
        "id" : "1",
1119
        "x" : 0,
1120
        "y" : 0
1121
      }, {
1122
        "id" : "4",
1123
        "x" : 0,
1124
        "y" : 0
1125
      }, {
1126
        "id" : "5",
1127
        "x" : 0,
1128
        "y" : 0
1129
      }, {
1130
        "id" : "18",
1131
        "x" : 0,
1132
        "y" : 0
1133
      }, {
1134
        "id" : "8",
1135
        "x" : 0,
1136
        "y" : 0
1137
      }, {
1138
        "id" : "9",
1139
        "x" : 0,
1140
        "y" : 0
1141
      }, {
1142
        "id" : "10",
1143
        "x" : 0,
1144
        "y" : 0
1145
      } ]
1146
    } ],
1147
    "componentViews" : [ {
1148
      "key" : "Components",
1149
      "order" : 4,
1150
      "description" : "The component diagram for the API Application.",
1151
      "automaticLayout" : {
1152
        "implementation" : "Graphviz",
1153
        "rankDirection" : "TopBottom",
1154
        "rankSeparation" : 300,
1155
        "nodeSeparation" : 300,
1156
        "edgeSeparation" : 0,
1157
        "vertices" : false,
1158
        "applied" : false
1159
      },
1160
      "animations" : [ {
1161
        "order" : 1,
1162
        "elements" : [ "4", "5", "18", "8", "9" ]
1163
      }, {
1164
        "order" : 2,
1165
        "elements" : [ "12", "15" ],
1166
        "relationships" : [ "44", "36", "40", "32" ]
1167
      }, {
1168
        "order" : 3,
1169
        "elements" : [ "13", "16" ],
1170
        "relationships" : [ "34", "46", "38", "41" ]
1171
      }, {
1172
        "order" : 4,
1173
        "elements" : [ "14", "17" ],
1174
        "relationships" : [ "35", "48", "39", "42", "43" ]
1175
      } ],
1176
      "containerId" : "11",
1177
      "externalContainerBoundariesVisible" : true,
1178
      "relationships" : [ {
1179
        "id" : "40"
1180
      }, {
1181
        "id" : "41"
1182
      }, {
1183
        "id" : "42"
1184
      }, {
1185
        "id" : "43"
1186
      }, {
1187
        "id" : "32"
1188
      }, {
1189
        "id" : "36"
1190
      }, {
1191
        "id" : "35"
1192
      }, {
1193
        "id" : "34"
1194
      }, {
1195
        "id" : "44"
1196
      }, {
1197
        "id" : "46"
1198
      }, {
1199
        "id" : "48"
1200
      }, {
1201
        "id" : "38"
1202
      }, {
1203
        "id" : "39"
1204
      } ],
1205
      "elements" : [ {
1206
        "id" : "12",
1207
        "x" : 0,
1208
        "y" : 0
1209
      }, {
1210
        "id" : "13",
1211
        "x" : 0,
1212
        "y" : 0
1213
      }, {
1214
        "id" : "14",
1215
        "x" : 0,
1216
        "y" : 0
1217
      }, {
1218
        "id" : "4",
1219
        "x" : 0,
1220
        "y" : 0
1221
      }, {
1222
        "id" : "15",
1223
        "x" : 0,
1224
        "y" : 0
1225
      }, {
1226
        "id" : "16",
1227
        "x" : 0,
1228
        "y" : 0
1229
      }, {
1230
        "id" : "5",
1231
        "x" : 0,
1232
        "y" : 0
1233
      }, {
1234
        "id" : "17",
1235
        "x" : 0,
1236
        "y" : 0
1237
      }, {
1238
        "id" : "18",
1239
        "x" : 0,
1240
        "y" : 0
1241
      }, {
1242
        "id" : "8",
1243
        "x" : 0,
1244
        "y" : 0
1245
      }, {
1246
        "id" : "9",
1247
        "x" : 0,
1248
        "y" : 0
1249
      } ]
1250
    } ],
1251
    "dynamicViews" : [ {
1252
      "key" : "SignIn",
1253
      "order" : 6,
1254
      "description" : "Summarises how the sign in feature works in the single-page application.",
1255
      "automaticLayout" : {
1256
        "implementation" : "Graphviz",
1257
        "rankDirection" : "TopBottom",
1258
        "rankSeparation" : 300,
1259
        "nodeSeparation" : 300,
1260
        "edgeSeparation" : 0,
1261
        "vertices" : false,
1262
        "applied" : false
1263
      },
1264
      "elementId" : "11",
1265
      "externalBoundariesVisible" : true,
1266
      "relationships" : [ {
1267
        "id" : "32",
1268
        "description" : "Submits credentials to",
1269
        "order" : "1",
1270
        "response" : false
1271
      }, {
1272
        "id" : "40",
1273
        "description" : "Validates credentials using",
1274
        "order" : "2",
1275
        "response" : false
1276
      }, {
1277
        "id" : "44",
1278
        "description" : "select * from users where username = ?",
1279
        "order" : "3",
1280
        "response" : false
1281
      }, {
1282
        "id" : "44",
1283
        "description" : "Returns user data to",
1284
        "order" : "4",
1285
        "response" : true
1286
      }, {
1287
        "id" : "40",
1288
        "description" : "Returns true if the hashed password matches",
1289
        "order" : "5",
1290
        "response" : true
1291
      }, {
1292
        "id" : "32",
1293
        "description" : "Sends back an authentication token to",
1294
        "order" : "6",
1295
        "response" : true
1296
      } ],
1297
      "elements" : [ {
1298
        "id" : "12",
1299
        "x" : 0,
1300
        "y" : 0
1301
      }, {
1302
        "id" : "15",
1303
        "x" : 0,
1304
        "y" : 0
1305
      }, {
1306
        "id" : "18",
1307
        "x" : 0,
1308
        "y" : 0
1309
      }, {
1310
        "id" : "8",
1311
        "x" : 0,
1312
        "y" : 0
1313
      } ]
1314
    } ],
1315
    "deploymentViews" : [ {
1316
      "key" : "LiveDeployment",
1317
      "order" : 8,
1318
      "description" : "An example live deployment scenario for the Internet Banking System.",
1319
      "softwareSystemId" : "7",
1320
      "automaticLayout" : {
1321
        "implementation" : "Graphviz",
1322
        "rankDirection" : "TopBottom",
1323
        "rankSeparation" : 300,
1324
        "nodeSeparation" : 300,
1325
        "edgeSeparation" : 0,
1326
        "vertices" : false,
1327
        "applied" : false
1328
      },
1329
      "environment" : "Live",
1330
      "animations" : [ {
1331
        "order" : 1,
1332
        "elements" : [ "69", "70", "71" ]
1333
      }, {
1334
        "order" : 2,
1335
        "elements" : [ "67", "68" ]
1336
      }, {
1337
        "order" : 3,
1338
        "elements" : [ "77", "78", "79", "72", "73", "74", "75" ],
1339
        "relationships" : [ "80", "81", "76" ]
1340
      }, {
1341
        "order" : 4,
1342
        "elements" : [ "82", "83", "84" ],
1343
        "relationships" : [ "85" ]
1344
      }, {
1345
        "order" : 5,
1346
        "elements" : [ "88", "86", "87" ],
1347
        "relationships" : [ "89", "93" ]
1348
      } ],
1349
      "relationships" : [ {
1350
        "id" : "93"
1351
      }, {
1352
        "id" : "80"
1353
      }, {
1354
        "id" : "81"
1355
      }, {
1356
        "id" : "92"
1357
      }, {
1358
        "id" : "76"
1359
      }, {
1360
        "id" : "85"
1361
      }, {
1362
        "id" : "89"
1363
      } ],
1364
      "elements" : [ {
1365
        "id" : "88",
1366
        "x" : 0,
1367
        "y" : 0
1368
      }, {
1369
        "id" : "77",
1370
        "x" : 0,
1371
        "y" : 0
1372
      }, {
1373
        "id" : "67",
1374
        "x" : 0,
1375
        "y" : 0
1376
      }, {
1377
        "id" : "78",
1378
        "x" : 0,
1379
        "y" : 0
1380
      }, {
1381
        "id" : "68",
1382
        "x" : 0,
1383
        "y" : 0
1384
      }, {
1385
        "id" : "79",
1386
        "x" : 0,
1387
        "y" : 0
1388
      }, {
1389
        "id" : "69",
1390
        "x" : 0,
1391
        "y" : 0
1392
      }, {
1393
        "id" : "90",
1394
        "x" : 0,
1395
        "y" : 0
1396
      }, {
1397
        "id" : "91",
1398
        "x" : 0,
1399
        "y" : 0
1400
      }, {
1401
        "id" : "70",
1402
        "x" : 0,
1403
        "y" : 0
1404
      }, {
1405
        "id" : "71",
1406
        "x" : 0,
1407
        "y" : 0
1408
      }, {
1409
        "id" : "82",
1410
        "x" : 0,
1411
        "y" : 0
1412
      }, {
1413
        "id" : "83",
1414
        "x" : 0,
1415
        "y" : 0
1416
      }, {
1417
        "id" : "72",
1418
        "x" : 0,
1419
        "y" : 0
1420
      }, {
1421
        "id" : "84",
1422
        "x" : 0,
1423
        "y" : 0
1424
      }, {
1425
        "id" : "73",
1426
        "x" : 0,
1427
        "y" : 0
1428
      }, {
1429
        "id" : "74",
1430
        "x" : 0,
1431
        "y" : 0
1432
      }, {
1433
        "id" : "86",
1434
        "x" : 0,
1435
        "y" : 0
1436
      }, {
1437
        "id" : "75",
1438
        "x" : 0,
1439
        "y" : 0
1440
      }, {
1441
        "id" : "87",
1442
        "x" : 0,
1443
        "y" : 0
1444
      } ]
1445
    }, {
1446
      "key" : "DevelopmentDeployment",
1447
      "order" : 7,
1448
      "description" : "An example development deployment scenario for the Internet Banking System.",
1449
      "softwareSystemId" : "7",
1450
      "automaticLayout" : {
1451
        "implementation" : "Graphviz",
1452
        "rankDirection" : "TopBottom",
1453
        "rankSeparation" : 300,
1454
        "nodeSeparation" : 300,
1455
        "edgeSeparation" : 0,
1456
        "vertices" : false,
1457
        "applied" : false
1458
      },
1459
      "environment" : "Development",
1460
      "animations" : [ {
1461
        "order" : 1,
1462
        "elements" : [ "50", "51", "52" ]
1463
      }, {
1464
        "order" : 2,
1465
        "elements" : [ "55", "57", "53", "54" ],
1466
        "relationships" : [ "56", "58" ]
1467
      }, {
1468
        "order" : 3,
1469
        "elements" : [ "59", "60", "61" ],
1470
        "relationships" : [ "62" ]
1471
      } ],
1472
      "relationships" : [ {
1473
        "id" : "62"
1474
      }, {
1475
        "id" : "56"
1476
      }, {
1477
        "id" : "66"
1478
      }, {
1479
        "id" : "58"
1480
      } ],
1481
      "elements" : [ {
1482
        "id" : "55",
1483
        "x" : 0,
1484
        "y" : 0
1485
      }, {
1486
        "id" : "57",
1487
        "x" : 0,
1488
        "y" : 0
1489
      }, {
1490
        "id" : "59",
1491
        "x" : 0,
1492
        "y" : 0
1493
      }, {
1494
        "id" : "60",
1495
        "x" : 0,
1496
        "y" : 0
1497
      }, {
1498
        "id" : "61",
1499
        "x" : 0,
1500
        "y" : 0
1501
      }, {
1502
        "id" : "50",
1503
        "x" : 0,
1504
        "y" : 0
1505
      }, {
1506
        "id" : "51",
1507
        "x" : 0,
1508
        "y" : 0
1509
      }, {
1510
        "id" : "52",
1511
        "x" : 0,
1512
        "y" : 0
1513
      }, {
1514
        "id" : "63",
1515
        "x" : 0,
1516
        "y" : 0
1517
      }, {
1518
        "id" : "53",
1519
        "x" : 0,
1520
        "y" : 0
1521
      }, {
1522
        "id" : "64",
1523
        "x" : 0,
1524
        "y" : 0
1525
      }, {
1526
        "id" : "54",
1527
        "x" : 0,
1528
        "y" : 0
1529
      }, {
1530
        "id" : "65",
1531
        "x" : 0,
1532
        "y" : 0
1533
      } ]
1534
    } ],
1535
    "imageViews" : [ {
1536
      "key" : "MainframeBankingSystemFacade",
1537
      "order" : 5,
1538
      "title" : "[Code] Mainframe Banking System Facade",
1539
      "elementId" : "16",
1540
      "content" : "https://raw.githubusercontent.com/structurizr/examples/main/dsl/big-bank-plc/internet-banking-system/mainframe-banking-system-facade.png",
1541
      "contentType" : "image/png"
1542
    } ],
1543
    "configuration" : {
1544
      "branding" : { },
1545
      "styles" : {
1546
        "elements" : [ {
1547
          "tag" : "Person",
1548
          "color" : "#ffffff",
1549
          "fontSize" : 22,
1550
          "shape" : "Person"
1551
        }, {
1552
          "tag" : "Customer",
1553
          "background" : "#08427b"
1554
        }, {
1555
          "tag" : "Bank Staff",
1556
          "background" : "#999999"
1557
        }, {
1558
          "tag" : "Software System",
1559
          "background" : "#1168bd",
1560
          "color" : "#ffffff"
1561
        }, {
1562
          "tag" : "Existing System",
1563
          "background" : "#999999",
1564
          "color" : "#ffffff"
1565
        }, {
1566
          "tag" : "Container",
1567
          "background" : "#438dd5",
1568
          "color" : "#ffffff"
1569
        }, {
1570
          "tag" : "Web Browser",
1571
          "shape" : "WebBrowser"
1572
        }, {
1573
          "tag" : "Mobile App",
1574
          "shape" : "MobileDeviceLandscape"
1575
        }, {
1576
          "tag" : "Database",
1577
          "shape" : "Cylinder"
1578
        }, {
1579
          "tag" : "Component",
1580
          "background" : "#85bbf0",
1581
          "color" : "#000000"
1582
        }, {
1583
          "tag" : "Failover",
1584
          "opacity" : 25
1585
        } ]
1586
      },
1587
      "terminology" : { }
1588
    }
1589
  }
1590
}

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.