Sessions 19 and 20

 

Sessions 19 and 20: Assume that you interested in developing a “Library Information System (LIS)”. Visit any Library. 
As a visitor of Library, make a list of requirements that need to be fulfilled by LIS. Now, develop Software for LIS. Ensure yourself that LIS developed by you is fulfilling the requirements. Preferably, try to obtain requirements for LIS from any person who visits a library, develop LIS and then get it Software Engineering Lab validated by him/her.


Library Management System

This software project is a library management software system with all the basic as well as some innovative features for managing a library. It consists of a large database of various books available in the library. It also lists various books issued to respective readers. The system keeps track of all the books readily available and also the books that have been issued to various readers for the time period for which the books have been issued. The system also handles the books database. If the reader needs a book, he can order the book request for home delivery by just submitting an online form. Readers usually tend to forget the date to return their library books, so this system even calculates fine depending on the expiry date. Thus, this innovative library management system provides enhanced library functionality for this modern world.

Features of the system: -

·        Admin login: The system will be under the sole control of the admin. Admin can add or remove books from the system and also maintains records of the book available and issued in the library. The admin can even update the book's details if required.

·        User login: The user has to first create an account in the system to gain access. User can explore and search for the books he wants. He can place an order for the books.

·        Tracking the user record: The system can track the period for which the book has been issued to the user and calculates a fine if the book is not returned on time.

·        Quantity Update- The quantity is updated by the system depending on the quantity ordered.

·        Fine calculation: If the user is unable to return the book, the system automatically calculates the fine that the user has to pay for subsequent days.

·        View date info- The user can view the date when he has issued the book as well as the expiry date of the book and can view the fine to be paid that is calculated by the system.

·        Online search and order form: The user may order the book online. The system provides a search option where users can order online.

·        Credit card payment: The user can make payment via credit card.

Software Requirements:

·        Windows XP, Windows 7(ultimate, enterprise)

·        SQL 2008

·        Visual studio 2008

Hardware Components:

·        Processor – i3

·        Hard Disk – 5 GB

·        Memory – 1GB RAM

Advantages:

·        The system excludes the use of paperwork by managing all the records electronically.

·        Administrator doesn't have to keep a manual track of the users

·        Also, the system calculates the fine levied on the user so the admin just has to create a bill and not manually calculate it.

·        Admin can keep updating the system by providing the new books arrival in library and their availability thus the user need not go to the library for issuing purpose. He may order it online through this system.

·        Thus, it saves human efforts and resources.

Disadvantages:

·        User cannot view the book in person.

·        There is no human interaction if users have some inquiry.

Applications:

·        This system can be used in public libraries.

·        It can also be implemented in the library of schools, colleges, institutes, and organizations.

 

Data Flow Diagrams -: 

1) 0-Level DFD -:


2) 1-Level DFD -:

 


3) 2-Level DFD -:

 


Entity Relationship Diagram -:



Modules Description -:

Entities and their Attributes –

  1. Book Entity: It has author, ISBN number, title, edition, category, price. ISBN is the Primary Key for Book Entity.
  2. Reader Entity: It has UserId, Email, address, phone no, name. Name is composite attribute of firstname and lastname. Phone no is multi valued attribute. UserId is the Primary Key for Readers entity.
  3. Publisher Entity: It has PublisherId, Year of publication, name. PublisherID is the Primary Key.
  4. Authentication System Entity: It has LoginId and password with LoginID as Primary Key.
  5. Reports Entity: It has UserId, Reg_no, Book_no, Issue/Return date. Reg_no is the Primary Key of reports entity.
  6. Staff Entity: It has name and staff_id with staff_id as Primary Key.
  7. Reserve/Return Relationship Set: It has three attributes: Reserve date, Due date, Return date.

 

Relationships between Entities –

  • A reader can reserve N books but one book can be reserved by only one reader. The relationship 1: N.
  • A publisher can publish many books but a book is published by only one publisher. The relationship 1: N.
  • Staff keeps track of readers. The relationship is M: N.
  • Staff maintains multiple reports. The relationship 1: N.
  • Staff maintains multiple Books. The relationship 1: N.
  • Authentication system provides login to multiple staffs. The relation is 1:N.

 

Use Case Diagram -:

 

Future Scope -:

This application can be easily implemented in various situations. We can add new features as and when we require them. Reusability is possible & also flexible in all the modules.

 

Software Scope -: 

  • Extensibility - This software is extendable in ways that its original developers may not expect. The following principles enhanced extensibility: hiding data structures, traversing multiple links or methods, avoiding case statements on the object type, and distinguishing between public and private operations.
  • Reusability - Reusability is possible as & when required in this application. We can update its next version. Reusability software reduces design, coding, and testing cost by amortizing effort over several designs. Reducing the amount of code also simplifies understanding which increases the likelihood that the code is correct. We both follow up on both types of reusability. Sharing of newly written code within a project & reuse of previously written code on new projects. 

Comments

Popular posts from this blog

Session 13

Session-1 Scope Statement for the Online Railway Reservation System

Session 4: DFD, ERD, and Data Dictionary