You are on page 1of 34

Library management system

Analysis and design using UML

1/12/2009
Rabha said Mansur ID 11091

Supervised by: Dr. Adal asmeda


Library Management System

2
Library Management System

Introduction.

00
1.1 Problem statement.

1.2 System objectives


1.3 Project scope .

1.4 Project approach

1.5 Context Diagram


Notation about DFD.
2.1Data flow diagrams.
2.2Decomposed DFDs.
2.2.1 Process Create bills [3].
2.2.2 Process Create reports and queries [4]
2.2.3 Process Maintain Books Information [1]
2.2.4 Process Make book search [2]
3.1 State transaction diagram STD
3.2 Screen hierarchy.
Appendix:
A.1 Conclusion
A.2 References

3
Library Management System

figures
Figure 2.1 Context diagram
Figure 3.1 DFD level 0
Figure 3.2 DFD level 1 Maintain Books Information
Figure 3.3 DFD level 2 Maintain author
Figure 3.4 DFD level 2 Maintain subject
Figure 3.5 DFD level 2 Maintain sub subject
Figure 3.6 DFD level 2 Maintain publisher
Figure 3.7 DFD level 2 Maintain book author
Figure 3.8 DFD level 2 Maintain book
Figure 3.9 DFD level 1 Make book search
Figure 3.10 DFD level 1 Create bills
Figure 4.1 use case diagram
Figure 4.2 class diagram
figure sequence diagram
figure State transaction diagram (STD)

4
Library Management System

1.1Introduction.
The aim of this project is to design and
implement an online library, which will
enable users to search for books and browse
information about these books as the
abstract, publisher information, cost, table of
contents, etc.
The database of the library based on one of
the standardized systems for cataloging and
classifying the books. We follow the
standardization rules to assign subjects and
sub-subjects codes, and to classify books
under subjects and sub-subjects.

5
Library Management System

1.2The curnt system


it is manually system where librarian
have to process every thing manually
from organizing the books and place
them in the right place write shelf to
retrieve them for the library visitors and
that is overwhelming consuming process
1.3Problem for the current system.
Retrieving books from a library is very
important for many peoples. The main
problem is to define whether this book is
exactly what the user wants and where this
book resides in the library (to go and pick).
And that with be source of some of these
hinders in books searching in library
1- Wasting a lot of time looking for the
book in the wrong location in the library
2- Use the wrong search item and ending
up with the same title for more than
author

6
Library Management System

3- Misallocate books in the wrong section


the wrong shelf
4- Search process consume allot of the
librarian time as well as the visitor and it
could be overwhelming for the librarian
specially if they have to deal with more
than one visitor at the time
There is a need for designing an advanced
search engine that searches a library
database and returns a complete book
record, including the shelf number on which
the book resides
1.3System Objectives.

• Design and implement a library


database based on a standard library
classification system.

• Build an advanced search that can help


for the best handling of user queries,
this search should handle different
search types like searching by author,
title, subject, format or any
combination of them, or searching by
ISBN, or Publisher and Publication date.
The search result should contain
information about the exact location of
the book.

7
Library Management System

• Build the interface between the online


screens and the library database
system.

1.4Project Scope.
Project scope will be contains the
following activities:
- Reception activities.
- Sales transactions.
- Accounting system.
- Book store follow up.
- Using internet facilities to connect all
branches together.

Activities to be covered in our project


The following is the activities that will be
covered in our project scope:-
• Maintain book information.
• Maintain publisher information.
• Maintain author information.

8
Library Management System

• Handel search request.


• Handel retrieval operations like:-.
- List all books with specific title.
- List all books with specific author
name.
- List all books classified under specific
sub-subject.
- List all books with any combination of
title, subject and author.
- List all books published by a certain
publisher.
- List all books published in a certain
date.
- Retrieve a book with a given ISBN.
- List all books belong to a certain
series.
• 1.5 Project approach.

• To solve our problems in this system,


we will use the following structured
approach to achieve the system goals
using the next steps in analysis and
design phases:-

• Analysis phase:
• In this phase we want to analyses the
system and tray to explain the moving

9
Library Management System

data between different components of


the system.
• * Prepare the context diagram, which it
is the highest level view of the system,
it contains only one process and a
number of data flows and also a
number of sources. It is an overview of
an organizational system that shows
the system boundaries, external
entities that interact with the system,
and the major information flows
between the entities and the system.
• * Data flow diagram (DFD).

• It is a logical model of the system.


These diagrams have a notification for
each of the components of the system,
they also have a notification for
representing different level in a
hierarchy of detail used to describe the
system.
• *use case diagram
use case in a use case diagram is a
visual representation of a distinct
business function in a system. For
example, In a banking application, a
deposit function represents a use case

10
Library Management System

• *Class diagram
It’s the conceptual model ; and it’s use
conceptual ion to visuals the basic
concept of the system in the analysis
stage

• Design phase:

• * Prepare the (ER) entity relationship


diagram, which it is a data model that
determines the relationships between
several entities in the system.
• * ER to relational data model mapping.
• * Normalization.

• The normalization process takes a


relation schema through a series of
tests to certify weather it satisfies a
certain normal form.
• *Sequences diagram
It call interaction diagram too ;in it the
transformation for the analysis
requirements to the it’s final
functionality in the destine stage

11
Library Management System

2.3 Context Diagram:


The context diagram is the highest level view
of the system, it contains only one process,
no data stores, and a number of data flows
and also a number of source/sinks. The single
process represents the entire system and its
labeled “o”. The source/sinks represent its
environmental boundaries. Since the data
stores conceptually inside the one process,
no data stores appear on a context diagram.
It is an overview of an organizational system
that shows the system boundaries, external
entities that interact with the system, and
the major information flows between the
entities and the system.
In the figure, the context diagram of the
System is shown. It consists of the following
entities and the following data flows.
Reception: This source represents the first
step to start functions of our system that this
section meet the customer to give him the
answers of different questions he needs.
Administration: This source represents the
main department in library which responsible
for managing all the information which the
system needs.

12
Library Management System

Cashier: This section responsible for


customer’s payment and issue the bills.
Data flow:
Customer request: this request from user
to reception to inquiry about certain book
with little information about this book,
reception clerk will search and replay to
customer about his needs in suitable time.
Bill: prepared by cashier for all items
purchased by customer using the information
system which contains information about all
items in the library like item description,
quantity, item price and total value for bill.
Statistical reports: prepared by computer
department to help the mangers in the
library to take a suitable decisions in the
suitable time.

Process Library Management System

13
Library Management System

C o n te xvia
Connected tD ia g rConnected
a m G r a p to
h Src Dst

Bills issuing Cashier (External Entity) X

Maintain books Administration (External Entity) X


information

make search Reception (External Entity) X


0 B ills is s u in g
Queries and Reports
Q u e ireReception
s a n d R e p o rt s(External Entity) X
R e c e p t io n L ib ra ry
Queries and Cashier (External
M a n a gEntity)
ement X
invoices Q u e rie s a n dmrea kpeo rts es a rc h S y s te m C a s h ie r

Queries and reports Administration (External Entity) X


Q u e rie s a n d in v o ic e s

A d m in is t ra tio n

M a in ta in b o o k s in f o rm a t io n

14
Library Management System

3.2 Notation about DFD.


First, Data Flow Diagram is a logical model of
the system, the model does not depend on
hardware, software, data structure or file
organization. It is a graphical picture of the
logical system. It is an excellent tool for
communication with user to explain the
system for him. Data Flow diagram describes
what happen not how is happens.
Data Flow diagrams have a notation for each
of the components of a system. They also have
a notation for representing different level in a
hierarchy of detail used to describe the
system. This notation makes it possible to
represent an overall view of a large complex
system and a detailed view of a part of a
system using the same notation. Parts of a
system can be isolated into independent
subsystems. These work together as a unit to
perform a set of processes that must be done
together at one time. There is a standard
process that an analyst can follow to make
sure that all components of a system are
identified.
Data Flow Diagrams are constructed from four
basic building blocks:
• Terminators

15
Library Management System

• Data stores ,
• Data Flows, and
• Process.

Connected via Connected to Src Dst

enter sub subject data Administration (External X


Entity)

Read author data Author (Data Store) X

Read book authors Book_author (Data Store) X

Read book information Book (Data Store) X

read publisher data Publisher (Data Store) X

read sub subject data Sub_subject (Data Store) X

read subject data Subject (Data Store) X

Subject data updating Subject (Data Store) X

Updating author data Author (Data Store) X

Write Book author data Book_author (Data Store) X

Write book data Book (Data Store) X

Write Publisher data Publisher (Data Store) X

Write sub subject data Sub_subject (Data Store) X

16
Library Management System

DFD level 0

D4 P u b lis h e r
D a t a F lo w D i a g r a m L e v e l 0 D5 B o o k _ a u th o r

D1 A u th o r
W ri te P u b lis h e r d a ta
b o o k a u th o r_ d a ta _ r e a d in g
R e a d a u th o r d a ta
W r ite B o o k a u th o r d a ta
r e a d p u b lis h e r d a ta
R e a d b o o k a u th o rs
U p d a tin g a u th o r d a ta p u b lis h e r d a ta re a d in g

1 a u th o r re a d in g
A d m in is
M a in t a in 2
t r a tio n e n te r s u b s u b je c t d a ta B o o k s Q u e ry
B oo ks S u b je c t r e a d i n g R e c e p tio n
In f o r m a tio+ n M ake boo k
search
S u b s u b je c t re a d in g + B o o k s r e s u lt
r e a d s u b j e c t d a ta
R e a d in g a u th o r d a ta b o o k s d a ta re a d in g
re a d s u b s u b je c t d a ta
W r ite b o o k d a ta
S u b je c t d a ta u p d a tin g
W r ite s u b s u b je c t d a ta
R e a d b o o k in fo r m a tio n
D2 S u b je c t
D6 Book

d a ta r e a d in g o f b o o k s
D3 S u b _ s u b je c t

3 C a s h ie r
R e a d in g s u b s u b je c t d a ta c r e a te b ill
C rea te
b ills + Q u e r ie s a n d in v o ic e s

4
R e a d in g p u b lis h e r d a ta W r ite b ill d a ta
C r e a te R e a d b ill d a ta
R e a d in g s u b je c t d a ta
r e p o rts a n d
is s u e r e p o rts R e a d in g b o o k d a ta
q u e r ie s
D7 B illin g

17
Library Management System

Connected via Connected to Src Dst

Enter book data Administration (External X


Entity)

Read book information Book (Data Store) X

Readin book author Book_author (Data Store) X

Reading puplisher information Publisher (Data Store) X

Reading sub subject Sub_subject (Data Store) X


information

Reading subject information Subject (Data Store) X

Write book data Book (Data Store) X

Sub process Maintain book

18
Library Management System

D F D L evel 1 fo r P ro cess #1
1 .1
[R e a d a u th o r d a ta ]
E n te r a u th o r d a ta D1 A u th o r
M a in ta in [U p d a tin g a u th o r d a ta ]
a u th o r
+ R e a d in g b o o k a u th o r

E nte r s u b je c t d a ta 1 .2 [re a d su b je ct d a ta ] D 2 S u b je c t
M ia n ta in
b o o k re a d in g [S u b je ct d a ta u p d a tin g ]
s u b je c t R e a d in g s u b s ub je c t
+

A d m in is tr a tio n 1 .3 R e a d in g s u b je c t

[e n te r su b su b je ct d a ta ] M a in ta in
[re a d su b su b je ct d a ta ] D3 S u b _ s u b je c t
sub
s u b je c+t [W rite su b su b je ct d a ta ]

1 .4
E n te r p u b lis h e r d a ta
M a in t a in [re a d p u b lish e r d a ta ]
re a d b o o k p u b lis h e r D4 P u b lis h e r
+ [W rite P u b lish e r d a ta ]

1 .5 R e a d in g a u th o r
M a in t a in
E n te r b o o k a uth or book [R e a d b o o k a u th o rs] D 5 B o o k _ a u th o r
b o o k re a d
a u t h o r+
[W rite B o o k a u th o r d a ta ]

1 .6 R e a d in b o o k a u th o r
E n te r b o o k d a ta
R e a d in g p u p lis h e r in fo rm a tio n
M a in ta in
D6 Book [R e a d b o o k in fo rm a tio n ] book R e a d in g s u b s u b je c t in fo rm a tio n

[W rite b o o k d a ta ]
+
R e a d in g s u b je c t in fo rm a tio n

Sub process Maintain book author

19
Library Management System

Connected via Connected to Src Dst

Enter author data Administration (External X


Entity)

Read author data Author (Data Store) X

Reading book author Book_author (Data Store) X

Updating author data Author (Data Store) X

DFD Level 2 process 1.1

1.1.1
[En te r a utho r d ata ] Da ta a dding
A dd new
author no

A dm inistration 1.1.2

Ma inte na nc e da ta U pdate D1 A u th o r
[Re a d a u tho r d a ta]
author data
da ta updating

1.1.3
D elete
author da ta author data
[Up d a tin g a u th o r d a ta ]

[Re ad in g b o o k a u th or]

D5 B o o k _ a u th o r

Sub process Miantain subject

20
Library Management System

Connected via Connected to Src Dst

book reading Book (Data Store) X

Enter subject data Administration (External X


Entity)

read subject data Subject (Data Store) X

Reading sub subject Sub_subject (Data Store) X

Subject data updating Subject (Data Store) X

DFD Level 2 for process 1.2


1.2.1
[Enter subject data] Add new
Adding new subject data
subject
code

1.2.2

Administration Update
specific [read subject data] D2 Subject
Flow of subject data
subject data subject updating

[Reading sub subject]

D3 Sub_subject

Reading sub subject

1.2.3
delete
subject
code [Subject data updating]
Enter subject code

[book reading]

D6 Book

Sub process Maintain sub subject

21
Library Management System

Connected via Connected to Src Dst

enter sub subject data Administration (External X


Entity)

read sub subject data Sub_subject (Data Store) X

Reading subject Subject (Data Store) X

Write sub subject data Sub_subject (Data Store) X

D F D L e v e l 2 f o r p r o c e s s 1 .3
1 .3 .1

[e n te r su b s u b je ct d a t a ]
A dd n ew [W rite s u b su b je ct d a ta ]
su b
s u b je c t

[ R e a d in g su b je ct]

D2 S u b je c t

R e a d in g s u b je c t

1 .3 .2
A d m in is tr a tio n
D a ta e n te r [re a d s u b s u b je c t d a t a ] D3 S u b _ s u b je c t
U p d a te s u b
s u b je c t d a ta d a ta s u b s u b je c t u p d a tin g

1 .3 .3

D e le te s u b
E n te r d a ta s u b je c t u p d a tin g d a ta

R e a d in g b o o k d a ta

D6 Book

Sub process Maintain publisher

22
Library Management System

Connected via Connected to Src Dst

Enter publisher data Administration (External X


Entity)

read book Book (Data Store) X

read publisher data Publisher (Data Store) X

Write Publisher data Publisher (Data Store) X

D F D L e v e l 2 f o r p r o c e s s 1 .4

1 .4 .1 [W rite P u b lis h e r d a ta ]
[E n te r p u b lish e r d a ta ]
A d d n ew
p u b lis h e r

A d m in is tr a t io n 1 .4 .2
M a inte n a n c e da ta U p d ate D4 P u b lis h e r
[re a d p u b lish e r d a ta ]
p u b lis h e r
P u blis he r da ta u p da ting
d a ta

1 .4 .3
D e le te
U pd a tin g p u blis he r da ta
p u b lis h e r
P u b lis h e r d a ta
d ata

[re a d b o o k ]

D6 Book

Sub process Make book search

23
Library Management System

Sub process Search by author


Connected via Connected to Src Dst

author reading Author (Data Store) X

book author_data_reading Book_author (Data Store) X

books data reading Book (Data Store) X

Books Query Reception (External Entity) X

Books result Reception (External Entity) X

Sub process Search by book


Connected via Connected to Src Dst

Book query Reception (External Entity) X

Book result Reception (External Entity) X

Reading book Book (Data Store) X

Sub process Search by publisher


Connected via Connected to Src Dst

publisher data reading Publisher (Data Store) X

Publisher query Reception (External Entity) X

Puplisher result Reception (External Entity) X

Reading book information Book (Data Store) X

Sub process Search by subject and sub subject


Connected via Connected to Src Dst

Book reading data Book (Data Store) X

24
Library Management System

Sub subject reading Sub_subject (Data Store) X

Subject query Reception (External Entity) X

Subject reading Subject (Data Store) X

Subject result Reception (External Entity) X

D V D L e ve l 1 fo r p ro c es s # 2

[ B o o k s Q u e ry ]
2 .1 [a u t h o r re a d in g ] D1 A u th o r

S earch b y
[ B o o k s re s u lt ] D5 B o o k _ a u th o r
a u th o r [ b o o k a u t h o r_ d a t a _ re a d in g ]
[ b o o k s d a t a re a d in g ]

B o o k r e a d i n g d a ta
S u b je c t q u e r y 2 .2
S u b je c t re s u l t S earch b y [ S u b je c t re a d in g ] D2 S u b je c t
s u b je c t a n d
s u b s u b je c t
[ S u b s u b je c t re a d inDg 3] S u b _ s u b je c t
R e c e p t io n

R e a d i n g b o o k i n fo r m a ti o n
2 .3
P u b lis h e r q u e ry
S earch b y
p u b lis h e r
P u p lis h e r re s u lt D4
[p u b lis h e r d a t a re a d in g ]
P u b lis h e r

2 .4
B o ok que ry
S earch b y
D6 Book
book R e a d in g b o o k
B o o k re s u lt

Sub process Create bills


Connected via Connected to Src Dst

create bill Cashier (External Entity) X

25
Library Management System

data reading of books Book (Data Store) X

Queries and invoices Cashier (External Entity) X

Read bill data Billing (Data Store) X

Write bill data Billing (Data Store) X

D FD Level 1 process #3

[cre a te b ill] 3 .1 [W rite b ill d a ta ]


A dd new
b ill

[d a ta re a d in g o f b o o ks]

Re a ding book s
D6 Book

3 .2
C a s h ie r
U p d a te [Re a d b ill d a ta ] D7 B illin g
bill da ta b ill d a ta Upda ting da ta

3 .3
D ele te
e nte r bill da ta b ill d a ta Upda ting bill da ta

3 .4
[Q u e rie s a n d in vo ice s] Is s u e inv oic e a nd re port
in v o ic e

Use case diagram


1-In this use case diagram administrate
the

26
Library Management System

2-requirement with simple symbols; easy


for the use to understand
3-It covers the whole system and how it
works and any thing out of the system
borders that means it’s not in the system
4-It make it easier to communicant
between the client and the system
developers

27
Library Management System

Class diagram
in this conceptual model we descript the
basic concepts of the system and it’s
relationships with each other ; in this
point we do not pay much attention to the
system behavior
in this conceptual model we determent
the basic concepts of the for the library
system we analysis
1- Administrative
2- Reception
3- Cashier
4- Book

28
Library Management System

Designe stage

29
Library Management System

Entity-Relationship Data Model (E-R Model):


It is detailed Logical representation of the entities,
association, and data elements for an organization or
business area.

* Entity-Relationship Diagram (E-R Diagram):


It is graphical representation of ER Model.

* Entity Type:
A collection of entities shared common properties or
characteristics.

* Attribute:
A named property or characteristic of an entity that is of
interest to the organization.
Relationship:
it is association between the instances of one or more
entity types that is of interest to the organization.

30
Library Management System

E R D ia g r a m
fo r
O n lin e lib r a r y

W r itte n b y book C O N T A IN E S
is b n
a u th o r BO O K_AUTHE R t it le
a u th o r id n u m b e r o f v o lu m e s
a u t h _ f irs t p u b lis h e r y e a r
A u th e r i n fo r m a t i o n
a u t h _ la s t m o n th
a u t h _ f u lln a m e e d it io n
a u t h _ e m a il p ric e b illin g
a u t h _ c o u n t ry n o te b ill_ n o
a u th _ p h o n e _ n o SUBJECT fo rm a t b o o ks_ co u n t
n u m b e ro fp a g e v a lu e
s u b j e c ti d
In c lu d e s d im e n t io n d is c o u n t
s u b je c t n a m e
c a lln u m b e r n o te s
t a b le o f c o n t a n t

P u b lis h e d b y
R e l a te d _ t o

P U B L IS H E R
p u b lis h e r id
p u b lis h e r n a m e
p u b lis h e r p la c e

SUB_SUBJECT
s u b s u b j e c tid B e l o n g s to
s u b s u b je c t n a m e

31
Library Management System

3.5 State transaction diagram STD


It is represent dynamic models of how
objects change their states in response to
events. It is a model of the states of an
object and the events that cause the object
to change from one state to another.
A state is shown as a rectangle with rounded
corners.
In figure we have shown different states of
Book order object such as user entrance,
order form, database accessing , searching
result and getting results.
The state diagram shows how the object
transactions from an initial state to other
states, when certain events occur or when
certain State Transition Diagram conditions are
satisfied.
[if form not fill]
/ display form
User number,
user password
written
Order clicked

User entrance Order form


[if not there ]
[if the form is fill] /display message
/ go to db

Order searched
Search result
Db accessing

[if there ]
/ display result

Book button is pressed


Order booked Result pages

Confirmation message
is displayed
32
Getting confirmed
message
Library Management System

0
Screen Hierarchy Chart
Online library
sy s t e m m a i n m en u

1.0 2.0 3.0 5.0


4 .0
System Tr a ns a c t i o n
Ba s i c d a t a Report
Codes data Q u e ri e s

1.1 2.1 3.1 4.1 5.1

C ou n t r i e s Search book
Author Book b y n a me Authors
codes

2.2
1.2 3.2 4.2 5.2
Main
subject
P u bl i s h e r Search book
Billing Subjects
p l ac e c o d e b y au t h o r
2.3

s u b s ub j e c t 5.5
4.3 5.3
S e a r c h b oo k
B i l l i ng Publishers
by
2.4 p ub l i s h e r

Pu b l i s h e r 5.6
4.4 5 .4
d a i ly a n d
S e a r c h b o ok m o n th l y Books by
b y s u b j ec t sa l e s m a n y m e t ho d

33
Library Management System

A.1 Conclusion.

After prepared analysis and design for this system,


we try to replace the manual system by automated one.
In our analysis we used high techniques to prepare a
good design to be easy for implementation phase, so we
hope that this system will appear in a good case. This
new system is required to match new fast technology age
for helping libraries requirement. The new system can be
integrated with other library’s systems to get full benefit.

A.2 References.

1- Elmasri, R. and Navathe,


Fundamentals of Database Systems.
Benjamin / Cummings publishing company,
California, USA

2- Jeffrey A. Hoffer & Joey F. George & Joseph S.


Valacich.
Modern System Analysis & design.

34