{ "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": 704, "y": 12 }, "width": 415, "height": 394, "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": 12, "y": 658 }, "width": 2218, "height": 1035, "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": 62, "y": 708 }, "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": 190, "y": 1043 }, "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": 819, "y": 1043 }, "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": 942, "y": 1394 }, "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": 1546, "y": 1043 }, "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": 1746, "y": 1895 }, "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": 781, "y": 1895 }, "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": 788, "y": 406 }, { "x": 787.75, "y": 446 }, { "x": 359.25, "y": 446 }, { "x": 359.25, "y": 708 } ], "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": 393, "y": 872 }, { "x": 393, "y": 1043 } ], "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": 871, "y": 406 }, { "x": 870.75, "y": 496 }, { "x": 652, "y": 496 }, { "x": 652, "y": 1043 } ], "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": 954, "y": 406 }, { "x": 953.75, "y": 1043 } ], "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": 494.5, "y": 1207 }, { "x": 494.5, "y": 1354 }, { "x": 1057.25, "y": 1354 }, { "x": 1057.25, "y": 1394 } ], "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": 1172.5, "y": 1207 }, { "x": 1172.5, "y": 1394 } ], "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": 1095.666015625, "y": 1558 }, { "x": 1095.666015625, "y": 1895 } ], "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": 1037, "y": 406 }, { "x": 1036.75, "y": 446 }, { "x": 2303.5, "y": 446 }, { "x": 2303.5, "y": 1855 }, { "x": 1986.8330078125, "y": 1855 }, { "x": 1986.8330078125, "y": 1895 } ], "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": 1249.3330078125, "y": 1558 }, { "x": 1249.3330078125, "y": 1855 }, { "x": 1866.8330078125, "y": 1855 }, { "x": 1866.8330078125, "y": 1895 } ], "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": 1863, "y": 1207 }, { "x": 1863, "y": 1354 }, { "x": 1287.75, "y": 1354 }, { "x": 1287.75, "y": 1394 } ], "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 } }