Library automation System
description
Transcript of Library automation System
Work Group [alphabetically]
Amr Mohamed Gamal.Eihab Hamdy Mohamed Mohamed .Fatma Gamal Hasan.Mohamed Eisam El-Den El-Sababty.Moetaz Maher Kilany Abd El-Aziz.Mona Abd El-Naser Khalaf.Shaymaa Gamal Mohamed Haredy.
Minia UniversityFaculty of computers and information
Under supervision of
DR.Tarek Moustafa Mahmoud.
ANALYSIS & DESIGN............................................................................................................................................0
PLANNING................................................................................................................................................ 2
A. SYSTEM REQUEST............................................................................................................................... 2
PROJECT NAME:.........................................................................................................................................2 BUSINESS NEED:.........................................................................................................................................2 FUNCTIONALITY:.........................................................................................................................................3
B. EXPECTED VALUE:............................................................................................................................... 3
C. SPECIAL ISSUES OR CONSTRAINTS:......................................................................................................4
ANALYSIS.................................................................................................................................................. 5
LOGICAL PROCESS MODEL.................................................................................................................... 8
Use cases....................................................................................................................................................8LOGICAL DFD...................................................................................................................................................18
Context diagram.......................................................................................................................................18
LOGICAL DATA MODEL.............................................................................................................................. 26
LOGICAL ERD...................................................................................................................................................26
METADATA................................................................................................................................................ 27
METADATA FOR ENTITY:.....................................................................................................................................27METADATA FOR RELATIONSHIP.............................................................................................................................27METADATA FOR ATTRIBUTES:..............................................................................................................................29
DESIGN..................................................................................................................................................... 36
PHYSICAL PROCESS MODEL.................................................................................................................................36Physical DFD:............................................................................................................................................36
PHYSICAL DATA MODEL......................................................................................................................................37Physical ERD:............................................................................................................................................37
PHYSICAL ERD DATABASE MODEL:.......................................................................................................................38
USER INTERFACE DESIGN.......................................................................................................................... 39
The Books Module....................................................................................................................................39Stocking....................................................................................................................................................44
1
Planning
A. SYSTEM REQUEST
Project Name:
-Library management automation system.
Business need: o To make searching, borrowing books very easy for students.
o To ease modifying, updating, and adding new books for the librarian.
o Encourage students to visit library every day.
o Get better access to other networks and systems, on the web, etc.
o Facilitate wider access to information for their clients.
o Smooth the progress of wider dissemination of information products and services.
2
Functionality: The application should provide the following functions:-
Add new book.o Librarian can easily add new book to library, categorize it and give at an
appropriate index automatically within 2 or 3 minutes. o Add new copy of old book or replace wrong tag with new one.
Borrow and return book.o A visitor can borrow a book if it’s available in a very short period.o Return a book in a very short period.
Searching.o Search function is provided for the librarian to retrieve information about any
book very quickly, providing any attribute of the searched book. Search for borrowers.
o The librarian can investigate the information about any visitor to know whether he is permitted to borrow or not.
Stocking.o Librarian vas the ability to get reports about the existing, missed and overdue
books in a very short time and extract reports.
B. Expected Value:
Tangible: (Not expected) Intangible:
This application will serve over 50,000 members around the university.
Helps speed up daily transactions within the library. Improve satisfaction of both visitors and librarian(s) due to faster
transactions.
3
C. Special Issues or Constraints:
The library system is evaluated every year, that’s through reports telling the frequency of attendance in the library, if one more bad evaluation has taken place, the library may not be funded any more or closed, so the new project should come to an end within 6 months, in order to have the time to make good impression for readers and get a good evaluation for the next year.
4
Analysis
The current system in the library is a paper based system (manual system).
While the manual system operates a lot of problems appear.
This problem slow down the processes that must be done every day, it also makes a massive problems to the student s specially and the librarian.
We can now discuss some problems that face the current system (as-is-system) :
a) The first problem is that face the student is the process of search for books, this problem waste a lot of time of the students
b) The process of borrowing itself leads to problems such as book missing and the books may be we.
c) Sometimes the stuff members or the students’ needs books that doesn’t exist in the library, there is a problem to contact with the people responsible for buying new books and the stuff members or the students.
d) At the end of year, the librarian has a great problem to perform the process of stocktaking.
5
e) The normal operations of the library (e.g. students want to read books inside library) is not effective and very slow.
The students enter the library for either reading a book or borrowing a book for some period of time, First the students must register enter information about himself (e.g. Name, Faculty, etc.) then he search for the book according to the departments in the library ,he ask the librarian to borrow this book.
The librarian takes the book to take information about the book and the write it in a documents that is exists for that purpose (the librarian write the name of the book, ISBN, the name of the student “In this case he is a borrower”, and the return date.
There are a different operations that is not related to the students such as the process of stocktaking that is held every end of the year, in which the librarian must prepare a statistics about the books in the library to ensure that no books missed or wear out, if so a new books is bought according to the missed books or the orders of the stuff members and students (the most required books).
6
How the as-is-system operates
Is a computerized system that uses a various collection of computer technologies (e.g. computer machines, printers, programming language, database system and so on).
The new system will provide the librarian with an effective way to control all the library operations.
It also support students and make the library more enjoyable to the students not a dictating place, so they can spend the free time in the library.
Here are some advantages of using the new computerized system for managing the library operations:
a) An easy way to control and managing borrowing and return books.
b) Ability to perform stocktaking with minimum amount of effort.
c) Handling student’s library cards.d) Deals with book companies from different vendors
to buy all the new books that staff members and students may require.
e) Managing all process on books such as inserting, deleting, and updating books.
7
Logical Process Model
Use cases
Use case name: librarian adds book. ID number : 1.
Short description:
This describes how the librarian can add a new book to books list.
Trigger: librarian.
Type: External Temporal
Major inputs: Major outputs:
Description Description. Source.
Book title. Book information. Book information. Book file.
Book’s author. Book information.
Theses name. Book information.
Scientific article name. Book information.
Major steps performed:
1- Member in the staff determine the type and the subject of book to put every book in its place, and the system gives the general number to the book both depending on its specialization by increasing one number to the last number of book in its specialization.
2- If the type was book, then the librarian adds (book title, book author, number of edition, publishing place, publisher, date of print, the date of adding book, and CD as notes if there exist, he adds the description of book. If he found during adding the book, book with the same title, and author but with different edition, he puts the book as independence book with different general number.
Information for steps
Book name
Book type
Book information
Book file
8
3- If the type was theses, then he adds the name of theses, and the
value of it (gift). If it was for scientific article, he adds the name, editors, its value; the international standard scientific periodicals number (ISSN).
4- He adds all the books, theses, and scientific article in financial file.
Book type
Book file
Financial file
9
10
Use case name: borrower borrows a book. ID number: 2.
Short description: this describes how borrower borrows a book.
Trigger: borrower asks to borrow a book.Type: External Temporal
Major inputs: Major outputs:
Description Source Description. Source.
Borrower information borrower Borrowed book name Borrowed book information
Borrowed book information books file
Major steps performed:
1. To borrow a book the librarian checks the identifier number of the library card if it doesn’t exist the borrowing process
Will be canceled, otherwise the librarian checks the required Book case ,if its case is available then the librarian records The borrower information and borrowed book information.
2. If book case is not available then the borrower can't borrow it as it may be one copy, dictionary or thesis and borrowing process will be canceled.
3. if book case is available and borrowed then the borrower Is put in the queue and take his role.
4. if book case is not found then the borrower can't borrow it as It isn't available in the library and the borrowing process will
Be canceled.
5. The borrowed books names and not found books will be put in a sheet book to help the librarian To know the most wanted Book to buy it.
Information for steps
Book case
Identifier number
Borrower info
Borrowed book info
Books number
Borrowing period
Type
Waiting list
Book name
Book sheet
Book case
Book case
Book case
Use case name: borrower makes library card. ID number : 3.
Short description: this describes how person makes library card.
Trigger: borrower asks to make library card to borrow a book.Type: External Temporal
Major inputs: Major outputs:
Description Source
Borrower information borrower
Major steps performed:
1. the borrower to make library card the librarian records the borrower information (name, type (student, member), Photo and identifier number).
2. if the borrower lost his library card he must make new library card.
Information for steps
Borrower information
Borrower information
Use case name: librarian deletes book. ID number : 4.
11
Short description:
This describes how the librarian can delete a book from books list.
Trigger: librarian.
Type: External Temporal
Major inputs: Major outputs:
Description Description. Source.
Book name. Book file. Lost book name. Book file.
Borrower name. Borrower’s information.
Major steps performed:
1-The librarian search for the state of book in the book file, if it was borrowed, and if the time of back to it passed the allowed period time he takes the name of borrower and search for his information from borrower file.
2- If the borrower told the librarian that the book was lost, or was damaged, or if the librarian does not find the person who borrowed the book, then the librarian put the state of book is not found in book file and put it in lost book file.
3-If the librarian found that the state of book indicates that the book was damaged, then he put the state of book is not found in book file and put it in lost book file.
Information for steps
Book file.
Borrower’s information (name, id, faculty, etc...).
Book file.
Lost book file.
Use case name: return a book and renew of borrowing a book. ID number : 5.
Short description: this describes what happen in returning book process And how borrower makes renew of
12
Borrower’s name
Book file
borrowing book.Trigger: borrower return borrowed books and he can renew the borrowing of the book if he wants it again. Type: External Temporal
Major inputs: Major outputs:
Description Source Description Source
Borrowed book information. Books file Book case Borrowed book info
Major steps performed:
1. when the borrower returns the borrowed books the librarian Check the identifier number of the borrower to know borrowed Books number and borrowed books names then Check the Books if they haven't any damage then the book returned Case will be available.
2. if the borrower returns the borrowed books before theBorrowing Period has terminated then the book return date
Will modify and the book case will modify to available.
3. if the borrower doesn't return the book in the defined Retuning date then privation period will be done This means that the borrower does not be able to make Borrowing process for a specific period and if the borrower Doesn't return the book in the time for the second time then The borrower doesn't be able to enter the library for specific
Period but if this problem repeated then the borrower will pay A fine the fine is calculated from the borrowing period Termination.
Information for steps:
Identifier number
Books number
Books names
Book Returning date
Book case
Borrowed book info
Waiting list
(ID:5 continue)
13
Book returning date
Book Returning date
Major steps performed:
4. if the borrower doesn't return the book in the time As it was lost, then the borrower will pay the book price If this price greater than fifty pounds and fine if he tries to Escape From payment, but if the price Less or equal fifty Pounds The university library will pay it.
5. if the borrower wants to renew the borrowing of a bookIt will be not available if another borrower wants this book.
6. if the borrower wants to renew borrowing of the book and the waiting list Isn't empty then the librarian checks the waiting list size if it isn't full He will put in the end of the waiting list, otherwise he isn't placed on the Waiting list as he is out of range.
Information for steps
borrowed book info
Waiting list
Waiting list size
Waiting list
14
Book case
15
16
Use case name: inventory operation ID number : 8
Short description: this use case describes the inventory operation in library by the librarian and shows the final reports from this operation.
Trigger: Librarian perform inventory operation to make reports about all anything in library.
Type: External
Major inputs: Major outputs:
Description Source Description. Source.
Number of books (original, borrowed, damaged, lost suggested).
Book file Reports Librarian
Major steps performed:
1. For daily inventory, the Librarian makes a limited inventory operation to calculate the number of borrowed and returned books.
2. For monthly inventory, the librarian uses the daily visitors’
sheet to know the number of members and the number of books that are most read and borrowed.
3. if there are lost books he records that in the book file,if the responsible for that book paid its price the librarian updates that book in the database and recorded it's information in the book file.
4. Librarian cancel any borrowed operation in the last year
And tell all members stuff to return all borrowed books
, he revised the original books and the current books and calculates the library budget.
5. Inventory results reports are extracted (total books, damaged, lost, borrowed, suggested file).
Information for steps
Book file
Visitors sheet
New books added to suggested file
Book file
Book information
(lost, damaged, suggested),
Visitor file
Final report
Use case name: borrower borrows a book. ID number: 6.
Short description: this describes how borrower borrows a book.
Trigger: borrower asks to borrow a book.Type: External Temporal
Major inputs: Major outputs:
Description Source Description. Source.
Borrower information borrower Borrowed book name Borrowed book information
Borrowed book information books file
Card identifier borrower
Major steps performed:
1. The librarian validates the identifier number of the library card.
2. If it’s not a valid one the borrowing process will be canceled.Otherwise the librarian searches for the required book in the books’ files; search process retrieves book information including book case.
3. If book case is available then the librarian records The borrower information and borrowed book informationIn the borrowing log, specifies
4. If book case is not available then the borrower can't borrow it as it may be one copy, dictionary or thesis and borrowing process will be canceled.
5. if book case is available and borrowed then the borrower Is put in the queue and take his role.
4. if book case is not found then the borrower can't borrow it as It isn't available in the library and the borrowing process will
Be canceled.
5. The borrowed books names and not found books will be put in a sheet book to help the librarian To know the most wanted Book to buy it.
Information for steps
Card identifier.
Book case
Book information.
Borrower info
Borrowed book info
Book name
Book sheet
Book case
Book case
Book case
Book informationcase
Use case name: librarian search in library ID number : 7
Short description:
These use case describes how the search operation perform in library and how the librarian help the library members (student, member of stuff) or visitor to find what he want.
Trigger: librarian check about the book (available, found not available, not found) and inform the visitor about the results.
Type: External
Major inputs: Major outputs:
Description Source Description. Source.
Book information. Visitor. Book information Books file.
Desired book. Visitor. book location Books file.
Search result Books file.
Books List Books file.
Major steps performed:
1. Librarian takes the book information from the visitor and start search operation if the book is found, he tells the visitor about the book location.
2. If the visitor doesn’t know any information but the book category, the librarian search by category and the application lists all books in each department under same category, the user chooses the book he wants.
3. If the book is not found, the librarian records the requested book in the missed books file to submit it to the management which may decide to buy or no according to the number of requested books.
Information for steps
Book information :( name, ID, category).
Book location.
Books list.
Desired Book.
Book location.
Book information (name, id, category).
Book category
Logical DFD
Context diagram
17
Level 0 DFD
18
Level 1 (Make Card)
19
Level 1 (Delete)
20
Level 1 (Return Book)
21
LEVEL 1 (SEARCH)
22
LEVEL 1 (STOCKING)
23
LEVEL 1 (RETURN & RENEW)
24
Logical DATA ModelLogical ERD
25
METADATA
Metadata for Entity: Name Borrow Definition The Borrow entity contains all the information of any borrowing operation
(library_card_id, start_date, etc.).Name Library CardDefinition The Library card entity contains all the information of any borrower (card_id, member
name, etc.).Name BooksDefinition The Books entity contains all the information of books (ISBN, book_ publisher, etc.).Name Visitor Definition The Visitor entity contains specific information about the visitor that is any one visits the
library to read or borrow (University_cardID, member_typeID).Name Member TypeDefinition The Member Type entity contains information about all possible categories of university
members that interact with the library.Name New Book requestsDefinition The New book requests entity captures information about new books' requests by any
member type, or by the librarian, or missed ones.
Metadata for relationshipContains Name
Library card is contained by borrow.Borrow contains library card.
Definition
Library card contains borrowAttached entities
ManyCardinality
OneModalityAny borrow operation must be related to at least one instance of library card (member) entity.Library card can be related to many borrow operations, it also can be unrelated to any borrow operation.Here the library card distinguishes any borrower from another one.
Notes
Contains Name
Books is contained by borrow.Borrow contains one or two books.
Definition
Borrow contains booksAttached entities
twoCardinality
OneModality
26
Any New Book requested by an instance of member type entity.Member type instance request new book instance on new book entity.
Notes
Is_aName
Visitor can be related to one instance of member type entity.Member type related to one instance of a visitor entity.
Definition
Member type is a visitor.Attached entities
OneCardinality
OneModality
Member type is related to one instance of visitor entity.Visitor is related to one instance of member type.
Notes
27
Metadata for Attributes:
Entity (Library Card)
1.
Card_IDLabelLibrary Card ID Alias
Library Card ID For students who are registered in libraryDescription
NUMBERValues and Meanings(Type)
Notes
2.
University_cardIDLabel
University ‘s student card IDAlias
The ID for a student enrolled in the university Description
NUMBERValues and Meanings(Type)
Unique and Un repeated Notes
Entity (Borrow)
1.
Borrow_IDLabel
Borrowing book NumberAlias The ID for the borrowed book Description
NUMBERValues and
28
Meanings(Type)Notes
3.
Library_card_IDLabel
Library Card Number Alias
The ID of the borrower ‘s library card Description
NUMBERValues and Meanings(Type)Notes
4.
Start_dateLabel
Start borrowing dateAlias
The date of borrowing the book from libraryDescription
NUMBERValues and Meanings(Type)Notes
5.
Return_dateLabel
Return borrowed book dateAlias
The date in which the borrowing period will end and the borrowed book should be returned to library
Description
NUMBERValues and Meanings(Type)Notes
6.
Book_IndexID Label
Book index numberAlias
The number of the book created by library to arrange booksDescription
NUMBERValues and Meanings(Type)Notes
29
7.
ISBNLabel
International Standard Book NumberAlias
a unique numeric commercial book identifier based upon the 9-digit Standard Book Numbering (SBN) code created by Gordon Foster
Description
NUMBERValues and Meanings(Type)Notes
Entity (University)
1.
University_Card_IDLabel
University card ID Alias
The student university card IDDescription
NUMBERValues and Meanings(Type)Notes
8.
member_NameLabel
The member nameAlias
The member of the university nameDescription
VARCHARValues and Meanings(Type)Notes
9.
Telephone_NumberLabel
Telephone numberAlias
The member telephone numberDescription
NUMBERValues and Meanings(Type)
30
Notes
10.
AddressLabel
AddressAlias The member Address Description
VARCHARValues and Meanings(Type)Notes
Entity (Books)
1.
ISBNLabel
International Standard Book NumberAlias
a unique numeric commercial book identifier based upon the 9-digit Standard Book Numbering (SBN) code created by Gordon Foster
Description
NUMBERValues and Meanings(Type)Notes
2.
Book_nameLabel
Book nameAlias
The full name of the book Description
VARCHARValues and Meanings(Type)Notes
3.
Book_authorLabel
Book authorAlias Name of the book authorDescription
VARCHARValues and Meanings(Type)Notes
31
4.
Book_publisherLabel
Book publisherAlias
The publisher of the book may be a company or a personDescription
VARCHARValues and Meanings(Type)Notes
5.
Book_EditionLabel
The book editionAlias
The version of the bookDescription
VARCHARValues and Meanings(Type)Notes
6.
StockLabel
Stock of the bookAlias
The number of copies of the book in the library at the time of queryDescription
NUMBERValues and Meanings(Type)Notes
Entity (New Book requests)
1.
ISBNLabel
International Standard Book NumberAlias
a unique numeric commercial book identifier based upon the 9-digit Standard Book Numbering (SBN) code created by Gordon Foster
Description
NUMBERValues and Meanings(Type)Notes
32
2.
Request_DateLabel
Request dateAlias
The date of requesting a bookDescription
DATEValues and Meanings(Type)Notes
3.
Member_university_IDCardLabel
University’s member card IDAlias
The ID number of the university member may be (student, staff)Description
NUMBERValues and Meanings(Type)Notes
4.
Request_priorityLabel
Request majority Alias
The degree of priority of requesting that request depends on (who request and how many times it’s requested)
Description
NUMBERValues and Meanings(Type)Notes
Entity (Visitors_Log)
1.
University_cardIDLabel
University card ID Alias
The visitor’s university card IDDescription
NUMBERValues and Meanings(Type)
33
The visitor is not member of the libraryNotes
2.
Visit_DateLabel
Visiting date Alias
The date of visitingDescription
NUMBERValues and Meanings(Type)Notes
34
Design
Physical Process Model
Physical DFD:
35
Physical Data Model
Physical ERD:
36
Physical ERD Database Model:
37
User Interface Design
The Books Module
The books module contains all operations needed to be applied on books.
Add new book. Remove book. Borrow Book. Search for book. Check borrowing information.
The following form provides basic operations on books :- (search/Add/Remove/Update).
Search:-
Search is done by selecting the search criteria and then providing the search key , and finally hit the search button.
38
39
Update Book.
Editing is done by hitting the edit button corresponding to the desired book to be edited
40
Removing a record is done by hitting the remove button corresponding to the book needed to be removed.
Borrowing information is handled in a different form, to update or check the borrowing information for some book, that’s done by navigating to the borrowing form from the borrow button corresponding to the desired book record.
The borrow button should navigate to the following form; the fields specified for the borrowed book are prefilled by the application with the book information that was chosen in the previous form.
If this book is already borrowed by someone, this form reflects his information.
Borrowing is not available if the stock of this bock is zero.
41
42
Stocking
This form enables users to make monthly stocking or yearly stocking
43
This form generates monthly report
This form generates annual report:-
44
45