Object Oriented Analysis and Design Project: Library Management System (LMS) Submitted By: Memon Khurshed (Group Leader) - 2011194008 Hamed Abdollahpur 2011194006 Sherzod Rakhmatov 2011511001
Contents Introduction Design Use Case Diagrams, Use Case Text Class Diagrams Sequence Diagrams State Chart Diagrams Activity Diagrams Implementation Desktop-based Web-based
Introduction Apply OOAD concepts on Library Management System Analysis emphasizes an investigation of the problem rather than how a solution is defined (WHAT?) Design emphasizes a logical solution, how the system fulfills the requirements (HOW?)
Use Case Diagrams - LMS
Use Case Text - LMS Use Case: UC0004 – Add new book Scenario Name: Add new book Main Actor: Librarian Pre-condition: Logged in the system and have book to add Post-condition: Book is entered in the system Main Scenario: Librarian: Click add new book System: Show dialog to add new book Librarian : Fill book name, author, isbn and other details User: Click add button to save new book System: saves new book information
Alternative conditions and paths Use Case- Add New Book... Alternative conditions and paths 4a. 1) System throws an error if any of compulsory field left empty 5a. 1) System unable to add new book due to database problem or Persistance problem
Use Case - Borrow Book Scenario Name: Borrow book Main Actor: Librarian Pre-condition: Logged in the system and have book to issue to patron Post-condition: Book is removed from the sytem Main Scenario: Librarian: clicks on borrow a book System shows borrow book page Librarian enters patron informatin System verifies patron information and return patron details Librarian enters book code to borrow and clicks submit System verifies book existance in the system System: updates book status and update patron information
4a. 1) System could not verify patron information Use Case- Borrow Book... Alternative conditions and paths 4a. 1) System could not verify patron information System requests librarian to enter valid PatronId 4a. 2) System can not found patronId System requests librarian to register patron first 5a. 1) Librarian clicks on submit without entering book code System requests librarian to enter book code 6a. 2) System can not found book System requests librarian to add book in the system
Use Case - Search Book Scenario Name: Search book Main Actor: Librarian Pre-condition: Logged in the system Post-condition: Book exists in the system Main Scenario: Librarian: clicks on search book System shows search dialog box Librarian: Enter book name, author, or ISBN Librarian: Click search System: Shows founded books list
Use Case- Search Book... Alternative conditions and paths 4a. 1) System: if not found books by name, author or ISBN. System shows message ‘Not found’
Use Case – Return Book Scenario Name: Return book Main Actor: Librarian Pre-condition: Logged in the system and have book to return Post-condition: Book added in the system Main Scenario: Librarian: clicks on return book System shows return book dialog Librarian: Enter book code Librarian: Click on return book System: updates book status and Patron information
4a. 1) System: if not found books by code. Use Case- Return Book... Alternative conditions and paths 4a. 1) System: if not found books by code. System shows message ‘Not found’. 4a. 2) System unable to update book or patron information due to database problem
Use Case – Add New User Use Case: UC0009 – Add New User Scenario Name: Add New User Main Actor: Administrator Pre-condition: Logged-in the system Post-condition: New user has been added Main Scenario: Administrator: clicks on add new user System: shows add new user dialog Administrator: enters user information Administrator: clicks on submit System: verifies user details and save new user in the system Alternative conditions and paths 4a. 1) Administrator clicks on submit without enter user information System requests administrator to provide valid user information 5a. 1) System shows “user already exists” message as provided username already exists
Domain Model - LMS In the domain model only the noteworthy conceptual classes are included. A simplified representation of library management system’s domain model
Class Diagram - LMS
Sequence Diagram - LMS Collaboration diagrams illustrate object interaction in a graph or network format. Types: Sequence diagrams Communication Diagrams Sequence Diagrams: Clearly shows sequence or time ordering of message;
Sequence Diagram – Add Book
Sequence Diagram – Borrow a Book
Sequence Diagram – Return Book
Sequence Diagram – Search Book
StateChart Diagrams - LMS A state diagram describes how a certain entity changes state as a result of various events. Diagram showing how something changes from one state to anothe Good for finding missing or obscure functions. Use only for complex life cycles.
Book State- LMS
Patron State- LMS
Activity Diagrams - LMS A diagram showing the flow of control and the flow of data (objects). Handles concurrency and synchronization Useful as requirements for workflow applications.
Activity Diagrams – Add Book
Activity Diagrams – Borrow Book
Activity Diagrams – Return Book
Activity Diagrams – Search Book
Activity Diagrams – Add New User
Implementation We will go through our Project Implementation
Thanks