Example models

A simple bank

Nine customer services over three entities: registering, opening an account, deposits and withdrawals, transfers, salary runs, balances and closing an account. It is the model to read first, and it is read the way the method works, top down: a service’s requirements, then who is responsible for meeting each of them, then how the work is orchestrated, and then the same again one level down.

The model verifies with no errors at either verification level. It keeps five warnings, each with a written reason. They concern the ledger’s record of an entry, whose contents no contract states yet.

Scope View

Functional Requirements Views

URDAD Functional Requirements View of Transfer funds, showing Customer; Both accounts are open; Sufficient funds; Amount is positive; Within the transfer limit; Different accounts; Requested by the holder; Bank; Money is conserved; Funds moved; New balance reported; Payer advised; Payee advised.
Functional Requirements View: Transfer fundsFull size: Functional Requirements View: Transfer funds
URDAD Functional Requirements View of Post transfer, showing Both accounts are open; Sufficient funds; Within the posting limit; Different accounts; Amount is positive; Bank; Ledger; Transfer funds; Pay salaries; Transfer large amount; Money is conserved; No other account changed; Entries recorded; Payer debited; Payee credited; Payer balance reported.
Functional Requirements View: Post transferFull size: Functional Requirements View: Post transfer

Responsibility Allocation View

URDAD Responsibility Allocation View of Transfer funds, showing Both accounts are open; Requested by the holder; Sufficient funds; Check: Both accounts are open; Post transfer; Check: Requested by the holder; Resp: Report the new balance; Send AccountAdvice; Check: Sufficient funds; Funds moved; Money is conserved; New balance reported; Payer advised; Payee advised.
Responsibility Allocation View: Transfer fundsFull size: Responsibility Allocation View: Transfer funds

Dependencies View

URDAD Dependencies View of Ledger, showing Accounts; Retrieve account.
Dependencies View: LedgerFull size: Dependencies View: Ledger

Process View

URDAD Process View of Transfer funds, showing Start; Check: Both accounts are open; Check: Requested by the holder; Check: Sufficient funds; Post transfer; Send AccountAdvice; Resp: Report the new balance; End.
Process View: Transfer fundsFull size: Process View: Transfer funds