Sunday, December 21, 2025

Final Year Project for my BIT degree at the University of Moratuwa Colombo UCSC UoM SLIIT IIT NIBM BSc IT MSc

 ðŸš€ Excited to share my Final Year Project for my BIT degree at the University of Moratuwa!  



💡 **Problem**: Small businesses struggle to digitize sales—they rely on WhatsApp, notebooks, and manual pricing.  

🛠️ **Solution**: A lightweight, web-based **POS + Inventory Management System** built specifically for small resellers and online sellers like me!  


✅ Key Features:  

- Auto-pricing with 20% markup  

- Multi-supplier product tracking  

- Order management from customer photo inquiries  

- Manual payment confirmation (perfect for bank deposits!)  

- Real-time stock alerts & customer notifications  


This project isn’t just academic—it’s designed to solve real challenges I face daily in my own buy-and-sell business. 💼  


Now ready to develop and deploy!  


#StudentProjects #FinalYearProject #BITUniversityOfMoratuwa #WebDevelopment #POSsystem #InventoryManagement #StudentInternships #TechForSMEs #SriLankanStudents #SoftwareEngineering #StartupMindset #SmallBusinessTech


Certainly, Yew. Below is a **comprehensive and development-ready documentation** for your final-year project at the University of Moratuwa (BIT external), titled:


---


# **Final Year Project Proposal & Software Requirements Specification (SRS)**  

**Title:** *Small businesses can’t digitize sales* → **Software Solution: Web-Based POS + Inventory Management System**


---


## **1. Introduction**


### 1.1 Problem Statement

Small and medium-sized businesses (SMBs)—especially informal retailers, home-based sellers, and resellers like online buy-and-sell operators—struggle to digitize their operations. They rely heavily on manual processes such as:

- Physical notebooks for sales and inventory tracking,

- WhatsApp/phone for customer communication,

- Manual price markup calculation (e.g., 20% over cost price),

- Bank deposit confirmation for order validation,

- No centralized view of stock across multiple suppliers.


This leads to:

- Inaccurate stock records,

- Missed sales opportunities,

- Pricing inconsistencies,

- Time-consuming reconciliation,

- Poor customer experience due to lack of order tracking or notifications.


### 1.2 Proposed Solution

A **web-based Point-of-Sale (POS) and Inventory Management System** tailored for SMBs, especially online resellers and small retailers. The system will unify:

- Product catalog management (with multi-supplier sourcing),

- Automated markup pricing,

- Sales processing (including manual payment confirmation workflows),

- Real-time inventory tracking,

- Customer communication and notifications (SMS/WhatsApp/email),

- Order and delivery tracking.


Designed to be **low-cost, intuitive, and mobile-responsive**, enabling non-technical users to adopt digital sales practices without extensive training.


---


## **2. Objectives**


- Replace manual sales and inventory tracking with a unified digital platform.

- Automate pricing using configurable markup rules (e.g., 20% over cost).

- Support multi-supplier product sourcing with cost comparison.

- Enable order management from inquiry (via image upload) to delivery.

- Provide real-time stock visibility and low-stock alerts.

- Facilitate secure, auditable transaction records.

- Integrate simple customer notification systems.

- Ensure data integrity through a normalized, duplication-free database.


---


## **3. Scope**


### 3.1 In Scope

- Web application accessible via desktop and mobile browsers.

- User roles: Admin (owner) and Staff (optional).

- Product management: Add/edit products with images, cost price, selling price, supplier info.

- Supplier management: Track multiple suppliers per product with pricing history.

- Inventory tracking: Real-time stock levels, stock-in/out logs.

- Sales module: Create quotations, process sales, apply discounts.

- Order workflow: From customer inquiry (with photo upload) → quote → payment confirmation → fulfillment.

- Manual payment confirmation (e.g., bank deposit) with upload proof.

- Automated 20% markup (configurable) from cost to selling price.

- Customer database with contact info and order history.

- Basic reporting: Daily sales, top products, stock levels.

- Notification system: WhatsApp/SMS/email alerts for order status (pending, confirmed, shipped).

- Export data (CSV/PDF) for accounting or backup.


### 3.2 Out of Scope

- Native mobile apps (Android/iOS).

- Integrated payment gateways (e.g., Stripe, PayPal) – manual confirmation only.

- Advanced accounting (e.g., tax, balance sheets).

- AI/ML features (e.g., demand forecasting).

- Multi-branch or franchise support.


---


## **4. Functional Requirements**


| Module | Feature | Description |

|-------|--------|------------|

| **Authentication** | Login/Logout | Secure login for admin/staff |

| | Password Reset | Email-based reset |

| **Product Management** | Add/Edit/Delete Product | With name, SKU, description, image, cost price, selling price |

| | Auto-Markup | Selling price = cost × (1 + markup %). Default: 20% |

| | Multi-Supplier Support | Link product to 1+ suppliers with individual cost prices |

| **Supplier Management** | Add/Edit Supplier | Name, contact, email, website |

| | Price History | Track cost changes over time |

| **Inventory** | Stock Tracking | Real-time quantity per product |

| | Stock In/Out Logs | Manual or sales-triggered adjustments |

| | Low-Stock Alerts | Notify when stock < threshold |

| **Customer Management** | Customer Profile | Name, phone, email, address, order history |

| | Inquiry via Image | Upload product photo from customer to create quote |

| **Sales & Orders** | Create Quotation | From customer inquiry or manual entry |

| | Convert to Order | After customer approval |

| | Payment Confirmation | Mark as paid after bank deposit; upload proof |

| | Order Status Tracking | Pending → Confirmed → Shipped → Delivered |

| **Notifications** | WhatsApp/SMS Alerts | Notify customer on status change |

| | Email Notifications | Optional for receipts or updates |

| **Reporting** | Sales Summary | Daily/weekly/monthly |

| | Inventory Report | Current stock, low-stock items |

| | Supplier Performance | Avg. cost, delivery timeliness (basic) |

| **Settings** | Markup Configuration | Set default markup % |

| | Notification Preferences | Enable/disable channels |


---


## **5. Non-Functional Requirements**


- **Usability**: Simple UI; usable by non-tech users; mobile-first design.

- **Performance**: Load key pages in <2s with 100+ products.

- **Security**: HTTPS, password hashing, role-based access.

- **Reliability**: Data backup support; prevent accidental deletion.

- **Scalability**: Support up to 5 concurrent users and 5,000 products initially.

- **Maintainability**: Modular code, clear documentation, normalized DB schema.


---


## **6. System Architecture**


- **Frontend**: React.js (or Vue.js) – responsive, component-based UI.

- **Backend**: Node.js with Express **or** Python (Django/Flask).

- **Database**: PostgreSQL or MySQL – normalized schema to avoid duplication.

- **File Storage**: Cloud (e.g., Firebase, AWS S3) or local uploads for product/customer images.

- **Notifications**: Twilio (SMS), WhatsApp Business API (or WhatsApp Cloud API), Nodemailer (email).

- **Hosting**: Render, Vercel, or Heroku (free/low-cost options).


---


## **7. Database Design (Key Entities)**


- **Users** (id, name, email, role, password_hash)

- **Suppliers** (id, name, contact, email, address)

- **Products** (id, name, sku, description, image_url, current_cost, selling_price, stock_qty)

- **Product_Suppliers** (product_id, supplier_id, cost_price, updated_at)

- **Customers** (id, name, phone, email, address)

- **Inquiries** (id, customer_id, image_url, description, created_at)

- **Orders** (id, customer_id, status, total_amount, payment_proof_url, created_at, updated_at)

- **Order_Items** (order_id, product_id, quantity, price_at_sale)

- **Inventory_Logs** (id, product_id, change_type (IN/OUT), quantity_change, reason, timestamp)

- **Notifications** (id, customer_id, type, message, status, sent_at)


*(Note: All relationships enforced via foreign keys; no data duplication.)*


---


## **8. Comparison with Existing Systems**


| System | Strengths | Weaknesses for SMBs |

|-------|----------|---------------------|

| **Square POS** | Modern UI, payments | Requires hardware, monthly fees, overkill for simple resellers |

| **Zoho Inventory** | Robust features | Complex, pricing tiers, not tailored for manual payment workflows |

| **Excel/Google Sheets** | Free, familiar | No automation, error-prone, no customer notifications |

| **Proposed System** | **Tailored for manual SMB workflows**, **WhatsApp-friendly**, **low cost**, **markup automation**, **photo-based inquiry support** | Limited to basic operations (by design) |


---


## **9. Development Roadmap (Milestones)**


1. **Week 1–2**: Requirements finalization, DB schema design, tech stack setup.

2. **Week 3–5**: Core modules – Auth, Product, Supplier, Inventory.

3. **Week 6–8**: Sales & Order workflow + Payment confirmation.

4. **Week 9**: Notification system integration.

5. **Week 10**: Reporting + Testing (unit + user).

6. **Week 11–12**: Documentation, deployment, demo video.


---


## **10. Expected Outcomes & Impact**


- Digitize sales for small resellers like your own business.

- Reduce manual errors in pricing and stock tracking.

- Improve customer trust via order transparency and notifications.

- Provide a reusable, open-architecture system for other SMBs.

- Fulfill BIT final-year project requirements with a real-world, deployable solution.


---


## **11. Conclusion**


This project bridges the digital divide for small businesses that cannot afford or operate complex ERP/POS systems. By focusing on **simplicity, affordability, and alignment with real-world workflows** (e.g., WhatsApp inquiries, bank deposit confirmations, 20% markup), the proposed web app delivers immediate value while serving as a robust academic software engineering project.


---


This documentation is **ready for implementation** and satisfies the requirements for both the **project proposal** and **full SRS** for your University of Moratuwa BIT final year project.


Would you like:

- A **UML diagram set** (use case, class, sequence)?

- A **sample ERD** (Entity-Relationship Diagram)?

- A **risk analysis or testing plan**?

- Help drafting the **proposal cover page** or **table of contents**?


Let me know—I’m happy to expand any section!



No comments:

Post a Comment