Gym Management System (Java – OOP Project)
Group Members (Group 08) Name Index Number N.G. Dinusha Dilruwan ICT/24/829 P.A. Udith Lakshan ICT/24/874 Niroshan Maduranga ICT/24/880 Janindu Sanjana ICT/24/922
Startup & Problem Identified Startup: Local Gym (PowerFit Gym)
Problems: Manual member registration Difficulty tracking attendance Payment details handled in books No unified reporting Data gets misplaced / lost
Solution: A Java console-based application that manages members, payments, attendance, and trainers with permanent file storage.
Features: Member Management Add member Update member Delete member View all members Attendance Management Mark attendance for any member Payment Management Record payments View pending dues Trainer Management Add trainer Reports
Technologies Used: Java (OOP) File Handling (BufferedReader, BufferedWriter) Exception Handling (try-catch, InputMismatchException) Collections (ArrayList) Git & GitHub (Version Control)
Object-Oriented Concepts Applied 🔹 Encapsulation Private fields with getters/setters in Member, Payment, Trainer.
🔹 Inheritance Member and Trainer inherit from Person.
🔹 Polymorphism Overriding the showInfo() method in both subclasses.
🔹 Abstraction User interacts with high-level methods without knowing internal logic.
🔄 GitHub Workflow (Used by Group 08) ✔ Repository created on GitHub ✔ All members added as collaborators ✔ Branching strategy used ✔ Pull Requests used for merging ✔ Descriptive commit messages ✔ README & documentation added
Future Improvements: Login system GUI interface Auto monthly due generation Database support (MySQL)