Coffee Shop POS System

SYSTEM
Visit Project

1. Project Context

  • Course: Software Engineering
  • Timeline: 2 months of development (Requirement gathering to Testing).
  • Team Size: 5 members.
  • Objective: Apply SE principles (UML, Testing, SDLC) to build a real-world business solution.

2. Core Technology Stack

  • Programming Language: Java (utilizing JFrame GUI) for a responsive desktop experience.
  • Database Management System (DBMS): MySQL. It serves as the backbone for storing all relational data, ensuring ACID compliance for transactions.
  • GUI Framework: JFC/Swing architecture for building the visual components (buttons, tables, etc.).
  • Development Environment: Apache NetBeans IDE.
  • Design Methodology: UML (Use Case, Activity, and Sequence diagrams) for structural planning.

3. System Features & Workflow

  • Role-Based Access Control (RBAC):

    • Manager: Can verify new users, manage categories/products, and view all sales.
    • Staff: Access restricted to the "Place Order" module and personal billing history.
  • MySQL Integration:

    • Data Persistence: All changes (new orders, price updates) are immediately committed to the MySQL database.

    • Search & Filter: Uses SQL queries to quickly filter bills by date or find products by category.

    • Order & Billing: Features a dynamic cart with real-time total calculation and exports professional bills as PDF files.

    • Security: Implements a "Forgot Password" flow using MySQL-stored security questions to verify identity.

4. System Requirements

  • Storage: Extremely lightweight (12.2 MB for the app).
  • Environment: Requires Java Runtime Environment (JRE) and a MySQL Server instance to be running for data access.

Created at: 4/10/2024