Skip to content

KHALEDNOAMAN/UniversityAutomationApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

University Automation App

Java OOP License

A Java-based university automation system for managing students, courses, instructors, and academic scheduling - built with core OOP principles.


Overview

University Automation App is a command-line application that streamlines university operations including student enrollment, course management, instructor assignments, and schedule generation. Designed to demonstrate clean object-oriented architecture and real-world software design patterns.

Features

  • Student Management - Add, update, delete, and search student records
  • Course Registration - Enroll/drop students from courses with capacity checks
  • Instructor Assignment - Assign instructors to courses and manage workloads
  • Schedule Management - Generate and view class schedules
  • Search & Filter - Query students and courses by various criteria
  • Data Persistence - Save and load data between sessions

Tech Stack

Technology Purpose
Java 11+ Core language
OOP Architecture (inheritance, polymorphism, encapsulation)
Collections Framework Data management
File I/O Data persistence

Getting Started

Prerequisites

Java JDK 11 or later

Build & Run

# Clone the repository
git clone https://github.com/KHALEDNOAMAN/UniversityAutomationApp.git
cd UniversityAutomationApp

# Compile
javac -d bin src/*.java

# Run
java -cp bin Main

Architecture

UniversityAutomationApp/
├── src/
│   ├── Main.java              # Entry point
│   ├── Student.java           # Student model
│   ├── Course.java            # Course model
│   ├── Instructor.java        # Instructor model
│   ├── Schedule.java          # Scheduling logic
│   └── UniversitySystem.java  # Core system controller
├── data/                      # Persistent data files
└── README.md

Design Principles

  • Single Responsibility - Each class handles one concern
  • Encapsulation - Private fields with public getters/setters
  • Inheritance - Shared behavior through class hierarchies
  • Polymorphism - Method overriding for flexible behavior

License

This project is licensed under the MIT License.

Author

Khaled Noaman - Computer Engineering Student at Istanbul Arel University

About

Java university automation system for student management, course registration, and scheduling

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors