Skip to content
RF
HomeWorkAboutExperienceContact
Available for opportunities
Home/Software Development/POS System

Software engineering / 2025

POSSystemfor Retail Business

Streamlined Inventory, Sales & Reporting for Modern Retail

Explore 9 screensWatch the system
Cashier workspaceJava 17 / Swing
POS System cashier transaction screen with customer details, products and sales totals
Inventory · Sales · Reporting04 / 09

CashierAdmin

Project
Retail desktop application
Language
Java 17
User roles
Cashier + Admin
Original screens
09
OverviewScreensArchitectureFeaturesQuality assuranceDemonstration

01Project context & goals

From the register to a connected retail system.

In my 4th semester of the HND in Computing at IAICampus, I developed a Point of Sale (POS) system for a retail business, focusing on inventory management, sales tracking, and reporting. I designed a user-friendly interface for both administrators and cashiers, ensuring efficient transactions and data handling, while incorporating automated testing for reliability.

Academic context

Unit 20
Applied Programming & Design Principles

Project Context & Goals

This standalone Point-of-Sale system grew out of my Unit 20 Applied Programming & Design Principles project. The brief was to replace manual registers in a small electronics shop with software that could move thousands of daily transactions, stock movements and customer-loyalty updates into a single, responsive application. Real-time SQL queries and Java data models ensure that even very large tables—for products, transactions and customers—load and update instantly, eliminating the lags that plague spreadsheet-based setups .

01

Simplify checkout

Bring sales, dynamic totals and receipts into one cashier workflow.

02

Keep stock in sync

Connect each sale to inventory updates and low-stock alerts.

03

Give admins control

Bring users, products and sales reporting into a dedicated workspace.

02The application experience

Two roles. One connected workflow.

Core Modules & User Roles

At runtime the program branches into cashier and admin work-flows. Cashiers get a lightning-fast sales screen with dynamic totals and barcode search, while administrators manage inventory levels, users and analytics from their own dashboard. Role segregation not only simplifies each user’s experience but also locks sensitive operations (like price edits) behind admin credentials, protecting data integrity.

Browse all 9 original screens +
  1. 01Welcome Screen
  2. 02Login Screen
  3. 03Cashier Welcome
  4. 04Cashier Transaction
  5. 05Admin Dashboard
  6. 06Product Management
  7. 07Inventory Page
  8. 08Sales Transactions
  9. 09User Management

Role 01

Cashier

Fast transactions, barcode search, dynamic totals and receipt generation.

Role 02

Admin

Inventory, users and analytics, with sensitive operations protected by admin credentials.

Access / 01–02

A clear way in.

Welcome and secure authentication establish the starting point for each role.

POS System Welcome Screen, original desktop application screenshot
01

Welcome Screen

Inspect screen +
POS System Login Screen, original desktop application screenshot
02

Login Screen

Inspect screen +

Cashier / 03–04

Built around
the next sale.

The cashier workspace brings customer details, product selection and transaction totals into a single flow.

  1. 01

    Enter the workspace

    A dedicated welcome for the cashier.

  2. 02

    Build the transaction

    Search products, manage quantities and apply discounts.

  3. 03

    Complete the sale

    Generate receipts and update stock automatically.

Continue to admin workspace
POS System Cashier Welcome, original desktop application screenshot
03

Cashier Welcome

Inspect screen +
POS System Cashier Transaction, original desktop application screenshot
04

Cashier Transaction

Inspect screen +

Admin / 05–09

The business, in view.

Products, stock, sales and users come together in a dedicated admin workspace.

Scroll to move through the workspaceOpen any screenshot to inspect itContinue to architecture
POS System Admin Dashboard, original desktop application screenshot
05

Admin Dashboard

Inspect screen +
POS System Product Management, original desktop application screenshot
06

Product Management

Inspect screen +
POS System Inventory Page, original desktop application screenshot
07

Inventory Page

Inspect screen +
POS System Sales Transactions, original desktop application screenshot
08

Sales Transactions

Inspect screen +
POS System User Management, original desktop application screenshot
09

User Management

Inspect screen +

Interface decisions

User-Centric Interface Design

Every screen—Welcome, Login, Cashier Home, Admin Dashboard and the nine management pages—follows a consistent visual grammar: centred layouts, colour-coded action buttons and JTable components that sort and filter at 60 fps. Decisions such as greeting the user by time of day or exposing low-stock alerts inline were guided by usability heuristics to keep cognitive load low even when datasets soar.

03Technology & database architecture

From interface to data.

Technology Stack & Development Tools

The system is written in Java 17 and Swing, compiled and debugged inside NetBeans IDE; all data lives in a MySQL schema hosted on XAMPP, linked through JDBC prepared statements for speed and SQL-injection safety. Automated quality gates run in Testmo, covering unit, integration and full system scenarios before every build, which slashes manual regression time and keeps delivery cycles tight.

Application
Java 17 · Java Swing
Database
MySQL · JDBC · XAMPP
Development
NetBeans IDE
Verification
Testmo · JMeter · OWASP ZAP
01

Presentation

Java Swing

Cashier workspace / Admin dashboard
02

Application logic

Java 17

Products / Transactions / UI logic
03

Data access

JDBC

Prepared statements / Database helpers
04

Database

MySQL on XAMPP

Products / Transactions / Customers

Designed to evolve

Engineering for Scalability & Maintainability

SOLIDFive principles.
One maintainable codebase.

The codebase applies all five SOLID principles. Separate classes handle products, transactions, database connections and UI logic, so a new payment gateway or discount rule can be added by extension rather than modification. Patterns such as Factory (object creation), Facade (database helpers) and Observer (UI refresh) further tame complexity, paving the way for future modules like barcode scanning or e-receipts without ripple effects.

Factory
Object creation
Facade
Database helpers
Observer
UI refresh

04Key features

A complete retail toolkit.

01Core Retail Functions

  • 01

    Fast Checkout Workflow

    Single‑screen cashier module with dynamic totals, discount handling and receipt generation.

  • 02

    Real‑Time Inventory Management

    Automatic stock adjustments after each sale and low‑stock alerts to keep shelves replenished.

  • 03

    Role‑Based Access

    Separate admin and cashier dashboards ensure the right tools are in the right hands.

  • 04

    Comprehensive Reporting

    Daily, monthly or yearly sales summaries with on‑screen filtering and export options.

02Security & Reliability

  • 05

    Secure Authentication

    Encrypted credential storage and input validation prevent unauthorized access.

  • 06

    MySQL + JDBC Backbone

    Stable, high‑performance database layer hosted on XAMPP for speedy queries.

  • 07

    Automated Test Suite

    Unit, integration and performance tests executed via Testmo for continuous quality assurance.

  • 08

    Scalable Architecture

    SOLID & design‑pattern‑driven codebase ready for new payment methods, customer loyalty and more.

05Verification & reliability

Tested beyond the happy path.

Quality Assurance Pipeline

Beyond the happy path, a multilayered testing strategy stresses the system under peak loads and hostile input. Automated suites in Testmo verify that adding stock updates inventory counts, that negative prices are rejected, and that sales transactions cascade correctly into daily summaries. Performance scripts in JMeter and security sweeps in OWASP ZAP round out the pipeline, ensuring the release build is fast, stable and secure before it ever reaches a cashier’s hands .

  1. 01

    Functional verification

    Testmo

    Unit, integration and full system scenarios. Stock updates, negative-price rejection and sales summaries.
  2. 02

    Performance testing

    JMeter

    Performance scripts stress the system under peak loads.
  3. 03

    Security testing

    OWASP ZAP

    Security sweeps complement validation against hostile input.

These foundations clear goals, modular roles, a proven stack, disciplined design and relentless testing—define the POS System’s introduction and set the stage for the deeper feature tour that follows on the webpage.

06System demonstration

See the system at work.

Watch the original POS System demonstration.

Watch on YouTube in a new tab
POS System / Retail businessDemonstration
Back to Software DevelopmentExplore all work
RF

DESIGNED AND DEVELOPED BY RAKINDU FERNANDO WITH OPENAI

Back to top ↑