A console-based healthcare management system developed in C++ as part of an Object-Oriented Software Development course.
This project was originally developed as an academic coursework project and has been restructured and enhanced to improve code organization, maintainability, and software development practices.
The system demonstrates fundamental Object-Oriented Programming (OOP) concepts, including:
- Classes and Objects
- Encapsulation
- Inheritance
- File Handling
- Input Validation
- Modular Programming using Header Files
- Separation of Source and Header Files
- Patient Registration
- Patient Login
- View Patient Profile
- Update Patient Profile
- View Medical Records
- Doctor Login
- View Patient Records
- Add Medical Records
- Edit Medical Records
- Remove Medical Records
- Administrator Login
- Manage Hospital Information
- Appointment Booking
- Appointment Management
- Consultation Services
- Payment Management
- File-based Data Storage
- Input Validation
- Modular Program Structure
- Console-based User Interface
SmartHealth-System
│
├── include
│ ├── appointment.h
│ ├── bool.h
│ ├── doctor.h
│ ├── hospital.h
│ ├── patient.h
│ ├── payment.h
│ ├── record.h
│ └── user.h
│
├── src
│ ├── main.cpp
│ ├── appointment.cpp
│ ├── bool.cpp
│ ├── doctor.cpp
│ ├── hospital.cpp
│ ├── patient.cpp
│ ├── payment.cpp
│ ├── record.cpp
│ └── user.cpp
│
├── data
│ ├── PatientRegistration.txt
│ ├── Appointment.txt
│ ├── Record.txt
│ └── Payment.txt
│
└── README.md
- Programming Language: C++
- Compiler: GCC (MinGW-w64)
- Development Environment: Visual Studio Code
- Build Environment: MSYS2 UCRT64
- Programming Paradigm: Object-Oriented Programming (OOP)
- Storage Method: Text File-Based Database
This project is developed and tested using:
MSYS2 provides a Unix-like development environment on Windows with the UCRT64 toolchain for compiling C++ applications.
- Visual Studio Code
- C/C++ Extension
- MSYS2
- UCRT64 GCC Compiler
Open MSYS2 UCRT64 terminal:
pacman -S mingw-w64-ucrt-x86_64-gccVerify compiler installation:
g++ --versiongit clone <repository-url>Navigate to project folder:
cd SmartHealth-SystemRun the following command from the project root directory:
g++ src/*.cpp -Iinclude -o SmartHealth.exesrc/*.cpp
Compile all C++ source files inside the src folder.
-Iinclude
Specify the location of header files.
-o SmartHealth.exe
Generate the executable file.
Using MSYS2 UCRT64:
./SmartHealth.exeUsing Windows Command Prompt:
SmartHealth.exeUsername : PDC1365
Password : 74251
Doctor Name : Lamine Hamka
Specialization : Paediatric
Username : Marc Cucurella
Password : 10024
Hospital Name : Nurulain Basirah
- The project uses
.cppfiles for class implementation and.hfiles for class declarations. - All system data is stored locally using text files inside the
datafolder. - Run the program from the project root directory to ensure file paths work correctly.
- The system is designed for educational purposes and demonstrates basic software development practices.
The original coursework version was restructured and improved by:
- Organizing source files into separate
srcandincludedirectories - Improving class organization and modularity
- Removing duplicated code
- Improving file handling methods
- Updating compilation workflow using MSYS2 UCRT64
- Improving project documentation
- Enhancing maintainability and readability
This project was developed for educational and personal software development purposes.
The original version was created as part of an academic project, while this enhanced version was independently restructured to practice:
- Object-Oriented Programming
- Modular Software Design
- File-Based Data Management
- C++ Application Development