A production-style desktop task scheduling engine built using Core Java (JDK 8+).
This project demonstrates strong fundamentals in:
- Data Structures & Algorithms\
- Multithreading & Concurrency\
- Object-Oriented Design\
- File-Based Persistence\
- Clean Layered Architecture
Designed to simulate a lightweight productivity system with priority-based scheduling and execution time tracking.
✔ Implemented PriorityQueue with Custom Comparator for efficient
task scheduling
✔ Built a Multithreaded Time Tracking Engine
✔ Designed modular Layered Architecture
✔ Implemented File I/O Persistence (TXT/CSV)
✔ Structured and scalable Java application design
Presentation Layer (Swing UI)
↓
Service Layer (Task Management & Scheduling Logic)
↓
Domain Layer (Task Model)
↓
Utility Layer (File Handling & Reporting Engine)
- Add Task\
- Update Task Status\
- Delete Task\
- Search by Task ID\
- View All Tasks (Table Format)
- Start / Stop Tracking\
- Multi-threaded time capture\
- Automatic time aggregation per task
- Structured summary report\
- Displays time spent and status\
- Extendable reporting module
- Language: Java (JDK 8+)\
- GUI: Swing / AWT\
- Data Structures: PriorityQueue, ArrayList\
- Concurrency: Threads\
- Persistence: File Handling (TXT/CSV)\
- Architecture: Layered Design
SmartTaskScheduler/ │ ├── UIinter.java (GUI Layer) ├── Task.java (Domain Model) ├── TaskManager.java (Business Logic) ├── TimeTracker.java (Multithreading Engine) ├── Report.java (Analytics Module) └── tasks.txt (Persistent Storage)
This project demonstrates:
- Practical application of Data Structures\
- Concurrency implementation in real-world logic\
- Clean separation of concerns\
- Scalable system thinking\
- Production-style modular coding approach
- Database integration (MySQL / PostgreSQL)\
- REST API version (Spring Boot)\
- Dashboard analytics with charts\
- User authentication system\
- Cloud deployment
⭐ If you find this project useful, feel free to star the repository!