{ "name": "", "config": { "sketch": false, "themeID": 303, "darkThemeID": null, "pad": null, "center": null, "layoutEngine": null }, "isFolderOnly": false, "fontFamily": "SourceSansPro", "shapes": [ { "id": "customer", "type": "c4-person", "pos": { "x": 1057, "y": 0 }, "width": 479, "height": 575, "opacity": 1, "strokeDash": 0, "strokeWidth": 2, "borderRadius": 0, "fill": "B2", "stroke": "B1", "animated": false, "shadow": false, "3d": false, "multiple": false, "double-border": false, "tooltip": "", "link": "", "icon": null, "iconPosition": "", "blend": false, "fields": null, "methods": null, "columns": null, "label": "## Personal Banking Customer\n[person]\n\nA customer of the bank, with personal bank accounts.", "fontSize": 16, "fontFamily": "DEFAULT", "language": "markdown", "color": "N7", "italic": false, "bold": true, "underline": false, "labelWidth": 358, "labelHeight": 119, "labelPosition": "INSIDE_MIDDLE_CENTER", "zIndex": 0, "level": 1 }, { "id": "internet_banking_system", "type": "rectangle", "pos": { "x": 147, "y": 732 }, "width": 2407, "height": 915, "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "borderRadius": 0, "fill": "transparent", "stroke": "AA2", "animated": false, "shadow": false, "3d": false, "multiple": false, "double-border": false, "tooltip": "", "link": "", "icon": null, "iconPosition": "", "blend": false, "fields": null, "methods": null, "columns": null, "label": "## Internet Banking System\n[Software System]", "fontSize": 28, "fontFamily": "DEFAULT", "language": "markdown", "color": "N1", "italic": false, "bold": false, "underline": false, "labelWidth": 447, "labelHeight": 125, "labelPosition": "INSIDE_BOTTOM_LEFT", "zIndex": 0, "level": 1 }, { "id": "internet_banking_system.web_app", "type": "rectangle", "pos": { "x": 177, "y": 762 }, "width": 550, "height": 164, "opacity": 1, "strokeDash": 0, "strokeWidth": 2, "borderRadius": 0, "fill": "B4", "stroke": "B3", "animated": false, "shadow": false, "3d": false, "multiple": false, "double-border": false, "tooltip": "", "link": "", "icon": null, "iconPosition": "", "blend": false, "fields": null, "methods": null, "columns": null, "label": "## Web Application\n[Container: Java and Spring MVC]\n\nDelivers the static content and the Internet banking single page application.", "fontSize": 16, "fontFamily": "DEFAULT", "language": "markdown", "color": "N7", "italic": false, "bold": true, "underline": false, "labelWidth": 505, "labelHeight": 119, "labelPosition": "INSIDE_MIDDLE_CENTER", "zIndex": 0, "level": 2 }, { "id": "internet_banking_system.spa", "type": "rectangle", "pos": { "x": 390, "y": 1047 }, "width": 609, "height": 164, "opacity": 1, "strokeDash": 0, "strokeWidth": 2, "borderRadius": 0, "fill": "B4", "stroke": "B3", "animated": false, "shadow": false, "3d": false, "multiple": false, "double-border": false, "tooltip": "", "link": "", "icon": null, "iconPosition": "", "blend": false, "fields": null, "methods": null, "columns": null, "label": "## Single-Page Application\n[Container: JavaScript and Angular]\n\nProvides all of the Internet banking functionality to customers via their web browser.", "fontSize": 16, "fontFamily": "DEFAULT", "language": "markdown", "color": "N7", "italic": false, "bold": true, "underline": false, "labelWidth": 564, "labelHeight": 119, "labelPosition": "INSIDE_MIDDLE_CENTER", "zIndex": 0, "level": 2 }, { "id": "internet_banking_system.mobile_app", "type": "rectangle", "pos": { "x": 1123, "y": 1047 }, "width": 707, "height": 164, "opacity": 1, "strokeDash": 0, "strokeWidth": 2, "borderRadius": 0, "fill": "B4", "stroke": "B3", "animated": false, "shadow": false, "3d": false, "multiple": false, "double-border": false, "tooltip": "", "link": "", "icon": null, "iconPosition": "", "blend": false, "fields": null, "methods": null, "columns": null, "label": "## Mobile App\n[Container: Xamarin]\n\nProvides a limited subset of the Internet banking functionality to customers via their mobile device.", "fontSize": 16, "fontFamily": "DEFAULT", "language": "markdown", "color": "N7", "italic": false, "bold": true, "underline": false, "labelWidth": 662, "labelHeight": 119, "labelPosition": "INSIDE_MIDDLE_CENTER", "zIndex": 0, "level": 2 }, { "id": "internet_banking_system.api_app", "type": "rectangle", "pos": { "x": 1246, "y": 1348 }, "width": 461, "height": 164, "opacity": 1, "strokeDash": 0, "strokeWidth": 2, "borderRadius": 0, "fill": "B4", "stroke": "B3", "animated": false, "shadow": false, "3d": false, "multiple": false, "double-border": false, "tooltip": "", "link": "", "icon": null, "iconPosition": "", "blend": false, "fields": null, "methods": null, "columns": null, "label": "## API Application\n[Container: Java and Spring MVC]\n\nProvides Internet banking functionality via a JSON/HTTPS API.", "fontSize": 16, "fontFamily": "DEFAULT", "language": "markdown", "color": "N7", "italic": false, "bold": true, "underline": false, "labelWidth": 416, "labelHeight": 119, "labelPosition": "INSIDE_MIDDLE_CENTER", "zIndex": 0, "level": 2 }, { "id": "internet_banking_system.database", "type": "rectangle", "pos": { "x": 1890, "y": 1047 }, "width": 634, "height": 164, "opacity": 1, "strokeDash": 0, "strokeWidth": 2, "borderRadius": 0, "fill": "B4", "stroke": "B3", "animated": false, "shadow": false, "3d": false, "multiple": false, "double-border": false, "tooltip": "", "link": "", "icon": null, "iconPosition": "", "blend": false, "fields": null, "methods": null, "columns": null, "label": "## Database\n[Container: Oracle Database Schema]\n\nStores user registration information, hashed authentication credentials, access logs, etc.", "fontSize": 16, "fontFamily": "DEFAULT", "language": "markdown", "color": "N7", "italic": false, "bold": true, "underline": false, "labelWidth": 589, "labelHeight": 119, "labelPosition": "INSIDE_MIDDLE_CENTER", "zIndex": 0, "level": 2 }, { "id": "email_system", "type": "rectangle", "pos": { "x": 2410, "y": 1784 }, "width": 360, "height": 164, "opacity": 1, "strokeDash": 0, "strokeWidth": 2, "borderRadius": 0, "fill": "B6", "stroke": "B5", "animated": false, "shadow": false, "3d": false, "multiple": false, "double-border": false, "tooltip": "", "link": "", "icon": null, "iconPosition": "", "blend": false, "fields": null, "methods": null, "columns": null, "label": "## E-mail System\n[Software System]\n\nThe internal Microsoft Exchange e-mail system.", "fontSize": 16, "fontFamily": "DEFAULT", "language": "markdown", "color": "N7", "italic": false, "bold": true, "underline": false, "labelWidth": 315, "labelHeight": 119, "labelPosition": "INSIDE_MIDDLE_CENTER", "zIndex": 0, "level": 1 }, { "id": "mainframe", "type": "rectangle", "pos": { "x": 0, "y": 1784 }, "width": 629, "height": 164, "opacity": 1, "strokeDash": 0, "strokeWidth": 2, "borderRadius": 0, "fill": "B6", "stroke": "B5", "animated": false, "shadow": false, "3d": false, "multiple": false, "double-border": false, "tooltip": "", "link": "", "icon": null, "iconPosition": "", "blend": false, "fields": null, "methods": null, "columns": null, "label": "## Mainframe Banking System\n[Software System]\n\nStores all of the core banking information about customers, accounts, transactions, etc.", "fontSize": 16, "fontFamily": "DEFAULT", "language": "markdown", "color": "N7", "italic": false, "bold": true, "underline": false, "labelWidth": 584, "labelHeight": 119, "labelPosition": "INSIDE_MIDDLE_CENTER", "zIndex": 0, "level": 1 } ], "connections": [ { "id": "(customer -> internet_banking_system.web_app)[0]", "src": "customer", "srcArrow": "none", "dst": "internet_banking_system.web_app", "dstArrow": "triangle", "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "stroke": "AA4", "borderRadius": 10, "label": "Visits bigbank.com/ib using\n[HTTPS]", "fontSize": 16, "fontFamily": "DEFAULT", "language": "", "color": "N2", "italic": true, "bold": false, "underline": false, "labelWidth": 179, "labelHeight": 37, "labelPosition": "INSIDE_MIDDLE_CENTER", "labelPercentage": 0, "link": "", "route": [ { "x": 1057, "y": 388 }, { "x": 573, "y": 592.4000244140625 }, { "x": 452, "y": 722 }, { "x": 452, "y": 762 } ], "isCurve": true, "animated": false, "tooltip": "", "icon": null, "zIndex": 0 }, { "id": "internet_banking_system.(web_app -> spa)[0]", "src": "internet_banking_system.web_app", "srcArrow": "none", "dst": "internet_banking_system.spa", "dstArrow": "triangle", "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "stroke": "AA4", "borderRadius": 10, "label": "Delivers to the customer's web browser", "fontSize": 16, "fontFamily": "DEFAULT", "language": "", "color": "N2", "italic": true, "bold": false, "underline": false, "labelWidth": 257, "labelHeight": 21, "labelPosition": "INSIDE_MIDDLE_CENTER", "labelPercentage": 0, "link": "", "route": [ { "x": 452, "y": 925.5 }, { "x": 452, "y": 974.2999877929688 }, { "x": 472.3999938964844, "y": 998.7000122070312 }, { "x": 554, "y": 1047.5 } ], "isCurve": true, "animated": false, "tooltip": "", "icon": null, "zIndex": 0 }, { "id": "(customer -> internet_banking_system.spa)[0]", "src": "customer", "srcArrow": "none", "dst": "internet_banking_system.spa", "dstArrow": "triangle", "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "stroke": "AA4", "borderRadius": 10, "label": "Views account balances, and makes payments using", "fontSize": 16, "fontFamily": "DEFAULT", "language": "", "color": "N2", "italic": true, "bold": false, "underline": false, "labelWidth": 340, "labelHeight": 21, "labelPosition": "INSIDE_MIDDLE_CENTER", "labelPercentage": 0, "link": "", "route": [ { "x": 1063, "y": 519 }, { "x": 962.2000122070312, "y": 618.5999755859375 }, { "x": 937, "y": 657.2000122070312 }, { "x": 937, "y": 677.75 }, { "x": 937, "y": 698.2999877929688 }, { "x": 937, "y": 738.4000244140625 }, { "x": 937, "y": 778 }, { "x": 937, "y": 817.5999755859375 }, { "x": 916.5999755859375, "y": 998.7000122070312 }, { "x": 835, "y": 1047.5 } ], "isCurve": true, "animated": false, "tooltip": "", "icon": null, "zIndex": 0 }, { "id": "(customer -> internet_banking_system.mobile_app)[0]", "src": "customer", "srcArrow": "none", "dst": "internet_banking_system.mobile_app", "dstArrow": "triangle", "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "stroke": "AA4", "borderRadius": 10, "label": "Views account balances, and makes payments using", "fontSize": 16, "fontFamily": "DEFAULT", "language": "", "color": "N2", "italic": true, "bold": false, "underline": false, "labelWidth": 340, "labelHeight": 21, "labelPosition": "INSIDE_MIDDLE_CENTER", "labelPercentage": 0, "link": "", "route": [ { "x": 1442, "y": 576 }, { "x": 1469.199951171875, "y": 630 }, { "x": 1476, "y": 657.2000122070312 }, { "x": 1476, "y": 677.75 }, { "x": 1476, "y": 698.2999877929688 }, { "x": 1476, "y": 738.4000244140625 }, { "x": 1476, "y": 778 }, { "x": 1476, "y": 817.5999755859375 }, { "x": 1476, "y": 998.7000122070312 }, { "x": 1476, "y": 1047.5 } ], "isCurve": true, "animated": false, "tooltip": "", "icon": null, "zIndex": 0 }, { "id": "internet_banking_system.(spa -> api_app)[0]", "src": "internet_banking_system.spa", "srcArrow": "none", "dst": "internet_banking_system.api_app", "dstArrow": "triangle", "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "stroke": "AA4", "borderRadius": 10, "label": "Makes API calls to\n[JSON/HTTPS]", "fontSize": 16, "fontFamily": "DEFAULT", "language": "", "color": "N2", "italic": true, "bold": false, "underline": false, "labelWidth": 116, "labelHeight": 37, "labelPosition": "INSIDE_MIDDLE_CENTER", "labelPercentage": 0, "link": "", "route": [ { "x": 694.5, "y": 1210.5 }, { "x": 694.5, "y": 1265.699951171875 }, { "x": 804.7000122070312, "y": 1300.7220458984375 }, { "x": 1245.5, "y": 1385.6099853515625 } ], "isCurve": true, "animated": false, "tooltip": "", "icon": null, "zIndex": 0 }, { "id": "internet_banking_system.(mobile_app -> api_app)[0]", "src": "internet_banking_system.mobile_app", "srcArrow": "none", "dst": "internet_banking_system.api_app", "dstArrow": "triangle", "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "stroke": "AA4", "borderRadius": 10, "label": "Makes API calls to\n[JSON/HTTPS]", "fontSize": 16, "fontFamily": "DEFAULT", "language": "", "color": "N2", "italic": true, "bold": false, "underline": false, "labelWidth": 116, "labelHeight": 37, "labelPosition": "INSIDE_MIDDLE_CENTER", "labelPercentage": 0, "link": "", "route": [ { "x": 1476, "y": 1210.5 }, { "x": 1476, "y": 1265.699951171875 }, { "x": 1476, "y": 1293.300048828125 }, { "x": 1476, "y": 1348.5 } ], "isCurve": true, "animated": false, "tooltip": "", "icon": null, "zIndex": 0 }, { "id": "(internet_banking_system.api_app -> mainframe)[0]", "src": "internet_banking_system.api_app", "srcArrow": "none", "dst": "mainframe", "dstArrow": "triangle", "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "stroke": "AA4", "borderRadius": 10, "label": "Makes API calls to\n[XML/HTTPS]", "fontSize": 16, "fontFamily": "DEFAULT", "language": "", "color": "N2", "italic": true, "bold": false, "underline": false, "labelWidth": 116, "labelHeight": 37, "labelPosition": "INSIDE_MIDDLE_CENTER", "labelPercentage": 0, "link": "", "route": [ { "x": 1245.5, "y": 1456.1949462890625 }, { "x": 500.6990051269531, "y": 1608.8389892578125 }, { "x": 314.5, "y": 1729.300048828125 }, { "x": 314.5, "y": 1784.5 } ], "isCurve": true, "animated": false, "tooltip": "", "icon": null, "zIndex": 0 }, { "id": "(customer -> email_system)[0]", "src": "customer", "srcArrow": "none", "dst": "email_system", "dstArrow": "triangle", "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "stroke": "AA4", "borderRadius": 10, "label": "Sends e-mails to", "fontSize": 16, "fontFamily": "DEFAULT", "language": "", "color": "N2", "italic": true, "bold": false, "underline": false, "labelWidth": 107, "labelHeight": 21, "labelPosition": "INSIDE_MIDDLE_CENTER", "labelPercentage": 0, "link": "", "route": [ { "x": 1536, "y": 351 }, { "x": 2416.800048828125, "y": 585 }, { "x": 2637, "y": 657.2000122070312 }, { "x": 2637, "y": 677.75 }, { "x": 2637, "y": 698.2999877929688 }, { "x": 2637, "y": 738.4000244140625 }, { "x": 2637, "y": 778 }, { "x": 2637, "y": 817.5999755859375 }, { "x": 2637, "y": 872.5 }, { "x": 2637, "y": 915.25 }, { "x": 2637, "y": 958 }, { "x": 2637, "y": 1015 }, { "x": 2637, "y": 1057.75 }, { "x": 2637, "y": 1100.5 }, { "x": 2637, "y": 1159.0999755859375 }, { "x": 2637, "y": 1204.25 }, { "x": 2637, "y": 1249.4000244140625 }, { "x": 2637, "y": 1309.5999755859375 }, { "x": 2637, "y": 1354.75 }, { "x": 2637, "y": 1399.9000244140625 }, { "x": 2637, "y": 1473.4000244140625 }, { "x": 2637, "y": 1538.5 }, { "x": 2637, "y": 1603.5999755859375 }, { "x": 2632.800048828125, "y": 1729.300048828125 }, { "x": 2616, "y": 1784.5 } ], "isCurve": true, "animated": false, "tooltip": "", "icon": null, "zIndex": 0 }, { "id": "(internet_banking_system.api_app -> email_system)[0]", "src": "internet_banking_system.api_app", "srcArrow": "none", "dst": "email_system", "dstArrow": "triangle", "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "stroke": "AA4", "borderRadius": 10, "label": "Sends e-mail using", "fontSize": 16, "fontFamily": "DEFAULT", "language": "", "color": "N2", "italic": true, "bold": false, "underline": false, "labelWidth": 123, "labelHeight": 21, "labelPosition": "INSIDE_MIDDLE_CENTER", "labelPercentage": 0, "link": "", "route": [ { "x": 1707.5, "y": 1463.843994140625 }, { "x": 2241.5, "y": 1610.3680419921875 }, { "x": 2394.39990234375, "y": 1729.300048828125 }, { "x": 2472, "y": 1784.5 } ], "isCurve": true, "animated": false, "tooltip": "", "icon": null, "zIndex": 0 }, { "id": "internet_banking_system.(database <-> api_app)[0]", "src": "internet_banking_system.database", "srcArrow": "triangle", "dst": "internet_banking_system.api_app", "dstArrow": "triangle", "opacity": 1, "strokeDash": 5, "strokeWidth": 2, "stroke": "AA4", "borderRadius": 10, "label": "Reads from and writes to\n[SQL/TCP]", "fontSize": 16, "fontFamily": "DEFAULT", "language": "", "color": "N2", "italic": true, "bold": false, "underline": false, "labelWidth": 163, "labelHeight": 37, "labelPosition": "INSIDE_MIDDLE_CENTER", "labelPercentage": 0, "link": "", "route": [ { "x": 2206.5, "y": 1210.5 }, { "x": 2206.5, "y": 1265.699951171875 }, { "x": 2106.5, "y": 1300.0999755859375 }, { "x": 1706.5, "y": 1382.5 } ], "isCurve": true, "animated": false, "tooltip": "", "icon": null, "zIndex": 0 } ], "root": { "id": "", "type": "", "pos": { "x": 0, "y": 0 }, "width": 0, "height": 0, "opacity": 0, "strokeDash": 0, "strokeWidth": 0, "borderRadius": 0, "fill": "N7", "stroke": "", "animated": false, "shadow": false, "3d": false, "multiple": false, "double-border": false, "tooltip": "", "link": "", "icon": null, "iconPosition": "", "blend": false, "fields": null, "methods": null, "columns": null, "label": "", "fontSize": 0, "fontFamily": "", "language": "", "color": "", "italic": false, "bold": false, "underline": false, "labelWidth": 0, "labelHeight": 0, "zIndex": 0, "level": 0 } }