Draw on the right, write (Umple) model code on the left. Analyse models and generate code. This tool stores your data in cookies and on a server. I understand. Click to learn about privacy. Download Donate For help: User manual Ask questions Report issue
// Sample UML class diagram for a banking system, written in Umple //Namespace for core of the system. namespace BankingSystem.core.humanResources; class PersonRole{} class Person{ name; address; phoneNumber; 1 -- * PersonRole; } class Employee{ isA PersonRole; } class Client { isA PersonRole; name; address; phoneNumber; 1..2 -- 1..* Account; } class Manager { isA Employee; 0..1 -- * Employee; } //Accounts, priviledges, etc. namespace BankingSystem.core.intangableResources; class Account{ Integer accountNumber; Float balance; Float creditLimit; * -> 1 AccountType; } class AccountType { Float monthlyFee; Float interestRate; * -- * Privilege; } class Privilege { description; } class CreditCardAccount{ isA Account; Date expiryDate; 1 -- 1..* Card; } class MortgageAccount { isA Account; collateral; } //Anything physically tangable namespace BankingSystem.core.tangableResources; class Card { holderName; } class Branch { isA Division; address; branchNumber; 1 -- * Account; } class Division{ name; 1 -- * Employee; 0..1 -- 0..* Division subDivision; } //$?[End_of_model]$? // Positioning // Positioning namespace -; class Account { position 438 270 189 96; position.association Account__AccountType 190,15 0,27; } class AccountType { position 665 258 152 79; position.association AccountType__Privilege 70,0 67,62; } class Privilege { position 668 146 149 62; } class MortgageAccount { position 565 416 137 58; } class CreditCardAccount { position 391 416 139 58; position.association Card__CreditCardAccount 0,14 153,15; } class Client { position 444 125 166 96; position.association Account__Client 80,96 86,0; } class Person { position 35 45 166 96; position.association Person__PersonRole 167,10 0,24; } class Manager { position 252 216 109 41; position.association Employee__Manager 93,0 93,45; } class Employee { position 252 128 109 45; } class PersonRole { position 350 31 110 45; } class Branch { position 200 283 171 79; position.association Account__Branch 172,15 0,28; } class Card { position 161 415 153 58; } class Division { position 78 204 112 58; position.association Division__Employee 40,0 0,37; position.association Division__Division:subDivision 15,58 0,30; }