A Library Management System developed in Java that encapsulates the core principles of Object-Oriented Programming. The project features a minimal GUI and ensures data consistency through serialization. It was created as a term project for the "Multimedia Lab" course.
The goals of this project was :
-To design, implement, test, and deliver a fully functional desktop application based on the provided requirements.
-Receive a high grade and have fun along the way. 😃
The first step in the system design was to identify the necessary actors for the application. These actors represent the primary users who interact with the system:
- Administrator
- User
After determining the actors, the second step in use case analysis is to determine the tasks that each actor will need to do with the system. Each task is called a use case because it represents one particular way the system will be used.
Administrator Use Cases:
- Add,delete and update book information
- Add,delete and update book category information
- Delete and update user information
- Loan management (issue,return)
User Use Cases:
- Sign up: Register an account to access system features
- Search books: Find books based on title, author, or category
- Book loan: Borrow and return books, manage loan status
- Add comments and ratings: Provide feedback and rate books
- Install latest Java version to your machine.
You can download it from the official Oracle website or use a package manager (if applicable to your OS). - Install JavaFX library to your machine.
Follow the instructions from the official JavaFX website, ensuring that it’s properly configured with your Java installation - Clone this repo to your local machine using the following command:
fd
4.Application Data Location:
All application data is stored in the medialab folder. 5.Default Administrator Login:
- Username:medialab
- Password:medialab_2024
If you find any bugs, have suggestions, or face issues feel free to:
- Open an Issue in the Issues Tab to discuss them.
- Submit a Pull Request to propose fixes or improvements.
- Review Pull Requests from other contributors to help maintain the project's quality and progress.