Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

PRIYANSHU RANJAN[1]

Download as pdf or txt
Download as pdf or txt
You are on page 1of 13

OBJECT ORIENTED ANALYSIS AND DESIGN

SCHOOL OF COMPUTER SCIENCE AND ENGINEERING

NAME: PRIYANSHU RANJAN YADAV


ERP ID: 22BTCSE0153
Course-B.tech(CSE)
Section-A
SUBMITTED TO: MR.YOGESH BAJPAI
Solution: The Online Library Management System (OLMS) is
designed to facilitate seamless management of library resources,
including book browsing, borrowing, returning, and inventory
management. The system supports various actors, including
customers, librarians, and the system itself, to efficiently handle
library operations. The following diagrams provide a comprehensive
overview of the system's functionality through use case, class,
sequence, and activity perspectives

First we will check system requirements that are essential to


develop this system
1. Understanding the Project Context
• Objective: Define the purpose of the library management system (LMS), such as
managing book inventories, user accounts, borrowing and returning processes, etc.

• Stakeholders: Identify all stakeholders (librarians, library staff, patrons, system


administrators).

• Scope: Determine the scope of the system, including core features (catalog
management, user management, circulation management) and potential future
enhancements.

• Constraints: Consider constraints such as budget, timeline, and resource


availability.

2. Functional Requirements
These are the specific functionalities that the system must support:

• User Management: Registration, authentication, and role-based access


(librarians, patrons, admins).

• Catalog Management: Adding, updating, deleting, and searching for books and
other media.

• Circulation Management: Check-out, check-in, and reservation of books;


overdue notifications and fines management.
• Reporting: Generation of various reports (e.g., overdue items, user activity,
inventory status).

• Search and Filtering: Advanced search options for users to find books by title,
author, genre, etc.

• Integration: Compatibility with other systems such as digital catalogs or external


databases.

3. Non-Functional Requirements
These define how the system performs its functions:

• Performance: The system should handle a certain number of simultaneous users


and transactions efficiently.

• Scalability: Ability to handle increased loads, such as additional users or more


books.

• Usability: User-friendly interface for both patrons and staff; ease of navigation and
use.

• Security: Data protection (encryption), secure user authentication, and


authorization.

• Reliability: System should be stable and recoverable from failures.

• Availability: The system should be accessible during specified hours, with minimal
downtime.

4. Technical and Environmental Requirements


These cover the technology stack and environment where the system will operate:

• Platform: Operating systems (Windows, Linux), and web browsers (if web-based).

• Software: Required software frameworks, libraries, and database management


systems (e.g., MySQL, PostgreSQL).

• Hardware: Server specifications (CPU, RAM, storage) and user devices (PCs,
tablets).

• Network: Internet connectivity, bandwidth requirements.


• Backup and Recovery: Procedures and tools for data backup and system
recovery.

5. Priorities and Documents Requirements


Define the importance and documentation associated with each requirement:

• Prioritization: Categorize requirements as high, medium, or low priority based on


stakeholder needs and system impact.

• Documentation: Maintain detailed documentation for requirements, design,


development, and user manuals. Include change management logs.

6. Validate and Review Requirements


Ensure that requirements are correctly defined and meet stakeholder expectations:

• Validation: Review and confirm that requirements are realistic, feasible, and align
with the project goals.

• Review Process: Regularly review requirements with stakeholders to ensure


accuracy and completeness. Update documentation as needed.

7. Maintain and Manage Requirements


Ensure ongoing management of requirements throughout the project lifecycle:

• Change Management: Process for handling changes in requirements, including


impact assessment and approval.

• Tracking: Use tools to track requirement status and ensure alignment with project
milestones.

• Maintenance: Regularly update and maintain the system to adapt to new needs
or changes in the library environment.

By thoroughly addressing these aspects, you can develop a robust and


effective library management system that meets both user needs and
technical standards.
Use Case Diagram

The Use Case Diagram for the Online Library Management System
illustrates the interactions between different actors and the system's
functionality. It highlights the roles of the Customer, Librarian, and
System in achieving key operations.

Actors:

1. Customer: Engages with the system to register, log in, browse books,
borrow, and return books.
2. Librarian: Manages the inventory and oversees the tracking of book
loans.
3. System: Processes user requests and manages data, including tracking
overdue books and handling book statuses.

Use Cases:

1. Register User: Allows customers to create an account within the


system, enabling them to access other functionalities.
2. Login: Enables customers to log into their accounts to perform actions
such as borrowing or returning books.
3. Browse Books: Provides functionality for users to search and view
available books in the library.
4. Borrow Book: Allows users to borrow books from the library.

5. Return Book: Facilitates the return of borrowed books to the library.

6. Manage Inventory: Allows librarians to add, update, or remove books


from the library's inventory.
7. Track Overdue Books: The system monitors overdue books and sends
notifications to users.
The use case diagram connects actors with their relevant use cases,
showing the interactions and dependencies between them. For instance,
the Customer interacts with all the use cases except for "Manage
Inventory" and "Track Overdue Books," which are specific to the Librarian
and System, respectively.

Class Diagram
The Class Diagram provides a detailed representation of the system's
data structure, showcasing the attributes and methods of each class. It
establishes the relationships between the different components of the
system.
Classes and Relationships:

User

1. Attributes: ▪ userID String - A unique identifier for each user.


2. ▪ name: String - The user's name.
3. ▪ email: String - The user's email address.
4. ▪ password: String - The user's password for authentication.

Methods:

▪ register() - Registers a new user.


▪ login() - Authenticates the user and grants access to their account.
▪ updateProfile() - Updates the user's profile information.

2. Librarian (Inherits from User)

Attributes:

▪ librarianID: String - A unique identifier for each librarian.


Methods:

▪ addBook() - Adds a new book to the inventory.


▪ removeBook() - Removes a book from the inventory.
▪ updateBook() - Updates the details of an existing book.

3.Book

Attributes:
▪ bookID: String - A unique identifier for each book.
▪ title: String - The title of the book.
▪ author: String - The author of the book.
▪ status: String - The current status of the book (e.g., Available,
Borrowed)
Methods

▪ search() - Searches for books based on criteria.


▪ viewDetails() - Displays detailed information about a book.

4. Loan

Attributes:

▪ loanID: String - A unique identifier for each loan.


▪ borrowDate: Date - The date when the book was borrowed.
▪ returnDate: Date - The date when the book was returned.
▪ dueDate: Date - The date by which the book should be returned.

Methods:

▪ issueBook() - Issues a book to a user.


▪ renewLoan() - Renews the loan period for a borrowed book.
▪ returnBook() - Processes the return of a borrowed book.

In the class diagram, the Librarian class inherits from the User class,
indicating that a
Librarian is a specialized type of User with additional responsibilities and
methods related to book management.
Sequence Diagram

The Sequence Diagram demonstrates the interaction between objects


when a user borrows a book from the library. It captures the order of
operations and the flow of messages between the User, System, and
Loan objects.

Sequence of Interactions:

1. User selects a book.


Message: Select Book
Description: The User initiates the borrowing process by selecting
a book they wish to borrow.
2. System checks the book's availability.
Message: Check Availability
Description: The System verifies whether the selected book is
available for borrowing.
3. System creates a loan record.
Message: Create Loan Record .
Description: The System generates a new loan record to track the
borrowing of the book.

4. Loan updates the book status to "Borrowed."


Message: Update Book Status to
Borrowed .
Description: The Loan updates the status of the book to reflect
that it has been borrowed.

The sequence diagram captures the chronological flow of


messages and actions, highlighting the interactions necessary for
completing the borrowing process. Each step is clearly defined,
showing how the system responds to user actions and updates the
relevant records.
Activity Diagram

The Activity Diagram illustrates the process flow for returning a


book to the library. It captures the sequence of activities involved
from the moment the user decides to return a book until the
process is completed.

Activities and Flow:

1. User logs in
Description: The User accesses their account in the system to
initiate the return process.
Diagram Element: Start Node leading to this activity.
2. Select Book to Return
Description: The User selects the specific book they want to
return from their list of borrowed items.
Diagram Element: Activity node following the login activity.
3. System Updates Book Status .
Description: The System updates the status of the book to
reflect that it has been returned and is now available.
Diagram Element: Activity node following the book selection
activity.

4. System Sends Confirmation


Description: The System sends a confirmation message to the
User to notify them that the return process is complete.
Diagram Element: Activity node following the status update
activity.

The activity diagram provides a clear visual representation of


the process, showing the flow of activities and their sequence.
It includes start and end nodes to denote the beginning and
completion of the process, as well as activity nodes for each
step involved in returning a book.

You might also like