/* Banking System - sample system Last updated: May 22, 2008 */ //Namespace for facade class. namespace BankingSystem //Namespace for core of the system. namespace BankingSystem.core class FinancialInstitution { name; 1 -- * ReusableFinancialInstrument; } class CreditCardCompany{ isA FinancialInstitution; } class Bank{ isA FinancialInstitution; 1 -- * Branch; } class FinancialInstrument{ } class ReusableFinancialInstrument{ isA FinancialInstrument; number; PIN; * -> 1 Currency; } class CreditCard { isA ReusableFinancialInstrument; creditLimit; name; } class DebitCard { isA ReusableFinancialInstrument; } class Cheque { isA FinancialInstrument; amount; Date date; sequenceNumber; } class BankAccount{ isA FinancialInstrument; accountNumber; balance; Float overdraftOrCreditLimit; 1..* -- * DebitCard; 1 -- * Cheque; } class Currency { code; exchangeRate; } class Branch { name; address; 1 -- * BankAccount; } class Loan{ isA BankAccount; }