Design a Vending Machine - Low-level design | OneNoughtOne