-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathschema.dot
More file actions
84 lines (81 loc) · 2.37 KB
/
Copy pathschema.dot
File metadata and controls
84 lines (81 loc) · 2.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
digraph DatabaseSchema {
node[shape=Mrecord, fontname="Calibri"];
edge[fontname="Calibri"];
Product [label="{PRODUCT
|product-id* \l
|product-name \l
|product-type \l
|product-benefits \l}"];
PersonalCurrentAccount [label="{PERSONAL-CURRENT-ACCOUNT
|product-id*\l
|interest-rate\l
|monthly-fee\l
|min-monthly-deposit\l}"];
SavingsAccount [label="{SAVINGS-ACCOUNT
|product-id*\l
|interest-rate\l
|min-monthly-deposit\l
|max-monthly-deposit\l
|max-yearly-withdrawal\l
|max-withdrawal-limit\l}"];
CreditCard [label="{CREDIT-CARD
|product-id*\l
|interest-rate\l
|monthly-fee\l
|credit-limit\l}"];
Overdraft [label="{OVERDRAFT
|product-id*\l
|daily-interest-rate\l
|interest-free-overdraft-limit\l
|interest-free-buffer\l}"]
Customer [label="{CUSTOMER
|customer-id*\l
|title\l
|name\l
|surname\l
|nationality\l
|dob\l
|address\l
|city\l
|postcode\l
|monthly-income\l
|marital-status\l}"];
Account [label="{ACCOUNT
|account-id*\l
|product-id\l
|customer-id\l}"];
Transaction [label="{TRANSACTION
|transaction-id*\l
|account-id\l
|transaction-date\l
|transaction-time\l
|transaction-amount\l
|payment-type\l
|transaction-category\l
|transaction-reference\l}"];
Interaction [label="{INTERACTION
|visit-id\l
|customer-id\l
|access-method\l
|visit-type\l
|visit-date\l
|area-id\l
|area-type\l
|area-description\l
|area-view-open-time\l
|area-view-close-time\l}"]
/*
Product -> SavingsAccount [label="can-be"];
Product -> PersonalCurrentAccount [label="can-be"];
Product -> CreditCard [label="can-be"];
Product -> Overdraft [label="can-be"];
*/
SavingsAccount -> Product [label="is-a"];
PersonalCurrentAccount -> Product [label="is-a"];
CreditCard -> Product [label="is-a"];
Overdraft -> Product [label="is-a"];
Product -> Account [label="has-many"];
Customer -> Account [label="has-many"];
Customer -> Interaction [label="has-many"];
Account -> Transaction [label="has-many"];
}