![[fd9105f3.png]]
```
YUML: https://yuml.me/diagram/plain/class/draw
[Exception]<-[CustomerException]-[Customer]-.-^[<<Choice>>]
[Customer]-<>[DBase]
[Customer]-[CustomerBuilder]
[Customer|-surname: String;- forename: String;- balance: int;- due: LocalDate |+ toString(): String;+ getSurname(String surname); + getForename(): String;+ setForename(String forename);+ getBalance(): int;+ setBalance(int balance);+ getDue(): LocalDate;+ setDue(String due)]
[DBase| -customers: ArrayList|+readCustomersFromFile();+ printCustomers();+ getBalanceOver50(): ArrayList; + getDueNextWeek(): ArrayList;+ AddCustomer(Customer customer)]
[CustomerException|CustomerException(String s)]
[CustomerBuilder| -surname: String; -forename: String; -balance: int; due LocalDate|surname(String surname);forename(String forename);balance(int balance); due(String due); build(): Customer]
```
![[MockSkelAdvanced.drawio]]