UML Design for Library Management System Iroshan Priyantha
2010
Use-Case Diagrams for Library Management System
1. Actors of the Library Management System
Member Administrator Librarian Guest
2. Use cases of Library Management System
Login View User Details View Books View Members Reserve Books Search Books Issue Books Return Books Add/Remove Books Add/Remove Members
3. Use Case diagram for Library Management System
Login
View User Details
View Books
Member
Reserve Books Librarian Search Books
Issue Books
Return Books
View Members Guest
Add/Remove Books Add/Remove Members
Administrator
4. Use Case Scenarios
Use Case:
Login
Introduction:
To interact with the system, LMS will validate its registration with this system. It also defines the actions a user can perform in LMS.
Actors:
Administrator Librarian Member
Pre- conditions:
User must have proper client installed on user terminal.
Post- conditions:
System should transfer control to the user main screen to proceed desired further actions.
Basic Flow:
System show login screen Enter user Id & password Acknowledge the entry.
Alternative Flow:
user Id or password is incorrect, user will be prompted a message regarding the error. Transfer control back to login screen.
Special Requirements:
User should acquire user Id & password before login to the system.
Relationships:
The base case includes checking the database case.
Use Case:
View User Details
Introduction:
To see the details of the registered user & the books currently borrowed from the library.
Actors:
Member
Pre- conditions:
User must be logged in to the system.
Post- conditions:
View user details. View books borrowed.
Basic Flow:
Enter to the view details page View user details & books borrowed. Print details.
Alternative Flow:
User does not want to print the details, user can ignore the step.
Special Requirements: Relationships:
The base case includes checking the database case. The base case includes retrieve data case.
Use Case:
View Books
Introduction:
To display the details, when a member, guest or administrator wants to see the details on the available books.
Actors:
Administrator guest Member
Pre- conditions:
User should have the client interface. Books should be stored in the database & available to retrieve.
Post- conditions:
User should be displayed all the available books with the complete details.
Basic Flow:
Identify the user type – member, guest or administrator Display the book details Print the details
Alternative Flow:
User does not want to print the details, user can ignore the step.
Special Requirements: Relationships:
The base case includes checking the database case. The base case includes retrieve data case.
Use Case:
Reserve Books
Introduction:
User can reserve a book by inputting the relevant details & the librarian can also reserve a book for a member.
Actors:
Librarian Member
Pre- conditions:
User should be logged into the system. User should have correct book Id. Books should be available to reserve.
Post- conditions:
User should be reserved the book successfully. A message should be prompted regarding reserving. Database should be updated.
Basic Flow:
Member type identified. Enter book Id & member Id. Reserve the book. Update the system.
Alternative Flow:
User Id or book Id is incorrect, user will be prompted a message regarding the error. Transfer control back to user screen. The book is already issued a message will be prompted regarding the error.
Special Requirements:
User should acquire book Id to reserve a book.
Relationships:
The base case includes checking the database case. The base case includes validating reservation case. The base case includes update database case.
Use Case:
Search Books
Introduction:
Member or guest can search for a particular book in the book library by book name or category.
Actors:
Member Guest
Pre- conditions:
Guest & member should available the client interface of the library. Members should be logged into the system. Book should be available to search.
Post- conditions:
The user should be given the results of the search with full details.
Basic Flow:
Member type identified. Select the search type. Check the availability. View the search results.
Alternative Flow:
The search is not found a message will be prompted. The data entered incorrect, a message will be prompted.
Special Requirements: Relationships:
The base case includes checking the database case. The base case includes retrieving data case
Use Case:
Issue Books
Introduction:
This use case describes the process of issuing a certain book for a member by the librarian.
Actors:
Librarian Member
Pre- conditions:
Member should give the member Id to the librarian. Books should be available to issue.
Post- conditions:
Member should have the issued book. Confirmation message should be prompted. Database should be updated-issued. Member details should be updated.
Basic Flow:
Get the member Id & book Id. Check the availability. Check number of books taken. Issue the book. Update the system User Id or book Id is incorrect, user will be prompted a message regarding the error. The given book is already issued prompt a message regarding that. User already taken 3 books prompt a message.
Special Requirements:
Borrowed books should be below 3.
Relationships:
The base case includes checking the database case. The base case includes updating database case
Use Case:
Return Books
Introduction:
This use case describes the process of issuing a certain book for a member by the librarian.
Actors:
Librarian Member
Pre- conditions:
Librarian should be logged into the system. Member should be borrowed books. Member should give the member Id to the librarian.
Post- conditions:
Library should have the returned book. Confirmation message should be prompted. Database should be updated-available. Member details should be updated.
Basic Flow:
Get the member Id & book Id. Check the Id accuracy. Return the book. Update the system User Id or book Id is incorrect, user will be prompted a message regarding the error.
Special Requirements: Relationships:
The base case includes checking the database case. The base case includes updating database case
Use Case:
View Members
Introduction:
To display the details, when a member, guest or administrator wants to see the details on the registered user.
Actors:
Administrator guest Member
Pre- conditions:
User should have the client interface. Members should be stored in the database & available to retrieve.
Post- conditions:
User should be displayed all the members with the complete details.
Basic Flow:
Identify the user type – member, guest or administrator Display the member details Print the details
Alternative Flow:
User does not want to print the details, user can ignore the step.
Special Requirements: Relationships:
The base case includes checking the database case. The base case includes retrieve data case.
Use Case:
Add/Remove Books
Introduction:
Only librarian & administrator are allowed to add or remove books from the library database.
Actors:
Administrator Librarian
Pre- conditions:
User should be logged into the system. Books should be available to remove. Book details should be available to add.
Post- conditions:
Confirmation message should be prompted upon successful add/remove. Database should be updated.
Basic Flow:
Identify the user type – librarian or administrator Check the action to be taken whether to add or remove a book. Add/remove the book Update the database.
Alternative Flow:
The books Id already available then prompt the error. The book Id is invalid when removing, prompt the error. The book is not available to remove, prompt the error.
Special Requirements:
Book should be outdated to remove it. New books should be recognized as standard editions.
Relationships:
The base case includes checking the database case. The base case includes update database case. The base case includes get details case.
Use Case:
Add/Remove Members
Introduction:
Only administrator is allowed to add or remove members from the library database.
Actors:
Administrator
Pre- conditions:
Administrator should be logged into the system. Members should be available to remove. Member details should be available to add.
Post- conditions:
Confirmation message should be prompted upon successful add/remove. Database should be updated.
Basic Flow:
Check the action to be taken whether to add or remove a member. Add/remove the member Update the database.
Alternative Flow:
The member Id already available, then prompt the error. The member Id is invalid when removing, prompt the error. The member is not available to remove, prompt the error.
Special Requirements:
To remove a member, member should request to leave the library.
Relationships:
The base case includes checking the database case. The base case includes update database case. The base case includes get details case.
Activity Diagrams for Library Management System
Activities & Transitions in the Use Cases 1. Case : Login
Enter member Id & password. Check both fields are filled If not prompt a message Clear fields Else check whether input is correct or not If correct display the user interface Else prompt an error message Clear fields
2. Case : View member Details
View details Check whether to print details If needs, then proceed to print step Else exit the window.
3. Case : View Books
Check the user type Proceed to view books page Display the book details Check whether to print details If needs, proceed to print step Else exit the window.
4. Case : Reserve Books
Check the user type. Enter book Id & member Id Check both fields are filled If not prompt a message Else check the member & book Id are correct.
If correct, reserve the book. Confirm reservation. Else prompt error message Update the database.
5. Case : Search Books
Check the user type Select the search type Enter search data If the data incorrect prompt the error message Else check the availability If available proceed to view books page View search results Else prompt error message
6. Case : Issue Books
Get the member Id & book Id Check both fields are filled If not prompt a message Else check the member & book Id are correct. If correct, check the availability of the book. If not available, prompt error message. If available, check number of books taken by the user. If less than 3, proceed to “issue book” step Else prompt message. Proceed to “Update modification” step.
7. Case : Return Books
Get the member Id & book Id Check both fields are filled If not prompt a message Else check the member & book Id are correct. If correct proceed to “return the book” step Else prompt a message regarding error Proceed to “Update modifications” step.
8. Case : View Members
Check the user type Proceed to view members page Display the member details Check whether to print details If needs, proceed to print step Else exit the window.
9. Case : Add/Remove books
Identify the user type Check the action If “add a book” step, then check the Id number availability. If available prompt a message. Else proceed to “add details” step If “remove book” step, then check the validity of book Id If not valid, prompt a message, Else proceed to “remove book” step. Proceed to “update modifications” step.
10. Case : Add/Remove Members
Check the action If “add a user” step, check the Id number availability If available prompt a message. Else proceed to add member step If “remove user” step, check the validity of the Id If not valid, prompt message Else proceed to remove member step Proceed to “update modifications” step.
Activity diagrams for the Use Cases 1. Activity diagram for case : Login
Login
Member Id
Password
[Both not filled]
Prompt error Message
[Both filled]
[Incorrect inputs]
[Correct inputs]
Display User interface
Prompt error Message
Clear Fields
Clear Fields
2. Activity Diagram for Case : View User Details
View user Details
[Print Details]
[Don’t Print]
Print Details
3. Activity Diagram for Case : View Books
User Type
Guest
Member
Administrator
View Books Page
Display Results
[Print Details]
[Don’t Print]
Print Details
4. Activity Diagram for Case : Reserve Books
Reserve Books
Member Id
Book Id
[Both not filled]
Prompt error Message
[Both filled] [Incorrect inputs] Clear Fields [Correct inputs] Prompt error Message Reserve book
Confirm reservation
Update Database
5. Activity Diagram for Case : Search Books
User Type
Guest
Member
Search Type
By Name
By Category
Search Data [Incorrect data]
[Correct Data]
Prompt Error Message [Not Available]
[Available] View results
Prompt Error Message
6. Activity diagram for Case : Issue Books
Issue Books
Member Id
Book Id
[Both not filled]
Prompt error Message
[Both filled] [Incorrect inputs]
[Correct inputs] Prompt error Message
Clear Fields
[Not Available] [Available] Prompt error Message
[Borrowed books>3] [Borrowed books<3] Prompt error Message
Issue book
Confirm Issue
Update Database
7. Activity Diagram for Case : Return Books
Return Books
Member Id
Book Id
[Both not filled]
Prompt error Message
[Both filled] [Incorrect inputs] Clear Fields [Correct inputs] Prompt error Message Return book
Confirm return
Update Database
8. Activity Diagram for Case : View Members
User Type
Guest
Member
Administrator
View Member Page
Display Results
[Print Details]
[Don’t Print]
Print Details
9. Activity Diagram for Case : Add/Remove Books
User Type
Administrator
Librarian
Preferred Action
Add a Book
Remove a Book
[Invalid Id]
[Id Available]
[Not Available] [Valid Id]
Error message
Add book Details
Update Modification
Remove book
Error message
10. Activity Diagram for Case : Add/Remove Users
Preferred Action
Add a User
Remove a User
[Invalid Id]
[Id Available]
[Not Available] [Valid Id]
Error message
Add User Details
Update Modification
Remove User
Error message
Class Diagram for Library Management System
* Librarian
* 1
Administrator
1 Verifylogin()
Verifylogin()
ViewBooks()
Log Reserve()
ViewMembers()
Verifylogin() Return()
NewBook()
Issue()
RemBook()
NewBook()
NewUser()
RemBook()
RemUser()
1 * Member Books Verifylogin()
Guest ViewBooks() ViewMem Search()
ViewBooks() Reserve() ViewMembers() Return() MyDetails() Issue() Search() NewBook() Reserve() RemBook() Search() ViewBooks()