Skip to content
Shop

CommunityJoin Our PatreonDonate

Sponsored Ads

Sponsored Ads

ATM App

Functional Requirements

  • CRM
  • Product Catalogue
  • Customer Support
  • IAM
  • Compliance
  • AML/CTF
  • Fraud Prevention
  • Risk Management
  • Messaging
  • Market Data
  • Payment Gateway
  • Card Processing
  • Ledger
  • PnL
  • Credit & Deposits
  • Reporting

MVP

  • Deposit
  • Withdraw
  • Transfer
  • List of transactions
  • View Balance
  • Accounts (bank accounts)
  • Users
  • Login Logout
  • Categories?

Non Functional Requirements

Wireframes

Mockups

User Flow

User Personas

Schema

The Process

UML Sequence Diagram

Business Rules

System Design

Technical Specifications

java
@Transactional
public boolean transferMoney(){
    if(someExpensiveChecksFailed()){
        return false;
    }else{
        //Transfer logic
        return true;
    }
}
java
public boolean transferMoney(){
    if(someExpensiveChecksFailed()){
        return false;
    }else{
        //Transfer logic
        return doTransfer();
    }
}
@Transactional
private boolean doTransfer(){
    //
}
java
standingOrderRepository
    .findAllUnprocessedOn(date)
    .filter(standingOrder -> isNotProcessed(standingOrder, date)
    .forEach(standingOrder -> process(standingOrder, date))

What to see this in action?

Purchase a validation and get access to this project and many others. A single license gives you access to the entire website

Resources