Skip to content
Marcus Otterström edited this page May 20, 2020 · 7 revisions

Use Cases are algorithms that interpret the input to generate the output data, their implementation should be as close as possible to the business vocabulary.

When talking about a use case, it does not matter if it a Mobile or a Desktop application, use cases are delivery independent. The most important about use cases is how they interact with the actors.

  • Primary actors initiate a use case. They can be the End User, another system, or a clock.
  • Secondary actors are affected by use cases.

Application architecture is about usage, a good architecture screams the business use cases to the developer, and framework concerns are minor implementation details. On Manga sample the Customer can Register an account then manage the balance by Deposits, Withdrawals, and Transfers.

A set of use cases is used to describe software. Following the Customer primary actor on the left side, in the middle the Virtual Wallet system and the secondary actors on the right side:

Clean

Following the list of Use Cases:

Use Case Description
Register A customer can register an account using his personal details.
Deposit The customer can deposit an amount.
Transfer The customer can transfer money from one account to another.
Withdraw A customer can withdraw money but not more than the current balance.
Get Customer Details Get customer details including all related accounts and transactions.
Get Account Details Get account details including transactions.
Close Account Closes an account, requires balance to be zero.
Clone this wiki locally