Library Management System Project Report II.
Library Management System Project Report II.
INTERNSHIP REPORT
ON
LIBRARY MANAGEMENT SYSTEM
PROJECT
BY
KAMAL ACHARYA
(Tribhuvan University)
Date: 2020/05/25
1|Page
1. INTRODUCTION
1.1) Purpose
The purpose of Library Management Pro system is to provide a medium for the public libraries
to computerize their entire functioning and would contribute as a first step in digitalizing their
libraries!
As till now in India, public libraries (medium and small scale) had their entire records on
paper which again required maintenance and the problem of finding relevant information proved
to be a herculean task. Even if the required information was found it was usually at cost of much
valuable time.
Library Management Pro would not only simplify this process but also speedup the entire
functioning of the library. It will also contribute towards increasing the efficiency of the library
as a whole, right from the data entry to maintaining the historical records.
One major purpose is to provide user or the library members the opportunity to not only
search through the books but to reserve books that are issued by other users and also request
newer books.
1.2) Scope
Library Management Pro (Limp) aims at providing a complete solution for all the library
requirements of Medium and small scale libraries. Presently we have few public libraries in the
country with even few of them computerized but the number is sure to grow as the focus shifts
more on education. It would be a great help to these libraries if there is a software available that
would help them with their day to day tasks.
Limp would not only help the librarian in the mundane tasks of the library but will be
providing the scope to add newer user groups like data entry assistants etc. and also newer user
groups depending on their subscriptions.
2|Page
The feature of recording and retrieving user and book history details is going to throw
some very interesting results regarding the books most popular among the users and also their
favourite genre according to age group etc.
The existing system that is being used in majority of public librariesis completely manual in
nature. Information about all te books and members/users is maintained separately in data entry
registers. The entries made in each and every register are having a serial number corresponding
to the register name and year. Also there are separate registers for purchase and sale of booksand
for different user plans. This often leads to redundant information too.
Though some libraries do have computerised systems that provide basic features such as
adding books, user etc and also that of issuing the books, but what they lack is the user
involvement and interactivity.
Users or members in such systems either become dependent on the librarian when they
enquire about the books existing in the library or find themselves helpless when they try
to search the library for their book of interest unknown of even its availability!!
Present day systems involve the users very little in the entire process, and also do not
consider the user wants for newer books etc. This non-involvement of end users, also
mean that either they have to manually ask the librarian whether a particular book is
already issued by some other user or they have to browse through the library.
They are also unable to gather the information about user interests and books that are
more popular than others.
3|Page
1.4) Statement of Problem
The current problem can be solved by automating the manual process followed in managing
libraries with the help of our software. This would not only make the job of storing the data very
easy and fast for the librarian but it would also make the process of retrieving data (regarding
books, users etc.) in the future very convienient. It would also give users the facility to search the
entire books of the library. He can also reserve books that he want to get issued (not currently
available in the library).
4|Page
2. SYSTEM REQUIREMENT ANALYSIS
If you have any previous version of this system then what are the problems in that?
The previous versions of this system didn’t have the flexibility to create newer user
groups. Also they didn’t involved the user dynamically.
5|Page
2.2. Technology Specifications
Hardware Requirements
Software Requirements
Implementation Language
6|Page
Whether the required resources are available?
The system does not have any rigid hard-ware and software requirements and there is
availability of the people who can perform the software engineering activities required
for the development of the system.
Hence, the system is technically feasible.
7|Page
It has got an egoless approach in which each and every member is involved throughout
the development of the software and also in the decision making process. The structure results in
many communication paths between people.
8|Page
3. ANALYSIS
The project plan is to carry the design and implementation of the project in a completely step-by-
step manner. The entire project is divided in the following phases.
Designing the logical model of the system and normalizing the relations.
10 | P a g e
3.2) ER Model
Fig 3
11 | P a g e
3.3) DFD- Data Flow Diagram
12 | P a g e
Fig 6: Level 2 DFD
13 | P a g e
3.4) Process Specification
14 | P a g e
Fig 8: Process Specification for User Control Panel
15 | P a g e
3.5 CFD- Control Flow Diagram
16 | P a g e
Fig 11: Level 2 CFD
17 | P a g e
4. DESIGN
18 | P a g e
4.1.2) Architecture Context Diagram
Two-tier architecture is where a client talks directly to a server, with no intervening server. It is
simple to build. In our project this architecture is implemented because the client that is the user
sends a request to the server that the server fulfill by simply referring to the database and
retrieving the information asked for.
The most important limitation of the two-tier architecture is that it is not scalable,
because each client requires its own database session that is 2-tier applications become complex
and hard to support as the number of users increases in size.
19 | P a g e
4.2 Database Design
user_id int 50
user_username varchar 50
user_password varchar 50
user_fname varchar 50
user_lname varchar 50
user_sex varchar 1
user_dob datetime
user_contactno varchar 15
user_email varchar 30
user_doj datetime
user_group_id int 50
user_acc_expire datetime
Table – 1
bi_id int 50
bi_title varchar 50
20 | P a g e
bi_author varchar 50
bi_publisher varchar 50
bi_edition varchar 50
bi_price int
bi_pages int 50
bi_billno int 50
Table – 2
book_accession_id int 50
book_bi_id int 50
book_user_id int 50
book_doi datetime
Table – 3
21 | P a g e
Table name: group
group_name varchar 50
group_book_limit int 50
group_bookdays_limit int 50
group_add_user varchar 1
group_add_book varchar 1
group_edit_book varchar 1
group_del_book varchar 1
group_add_mag varchar 1
group_edit_mag varchar 1
group_del_mag varchar 1
group_add_news varchar 1
group_edit_news varchar 1
group_del_news varchar 1
group_tip varchar 1
group_add varchar 1
group_can_change varchar 1
22 | P a g e
group_changeable varchar 1
group_view_history varchar 1
group_issue_book varchar 1
Table – 4
hstr_id int 50
hstr_user_id int 50
hstr_book_accession_id int 50
hstr_magz_id int 50
Hstr_news_id int 50
hstr_doi datetime
hstr_desc varchar 50
Table 5
magz_id int 50
magz_tilte varchar 50
magz_cover_topic varchar 50
magz_publisher varchar 50
magz_date datetime
23 | P a g e
magz_price int
magz_summary text
magz_billno int
magz_pages int
magz_vol int
magz_issue int
magz_user_doi int
magz_doi datetime
Table 6
paper_id int
paper_name varchar 50
paper_date datetime
paper_publisher varchar 50
paper_price int
paper_summary varchar 50
paper_category varchar 50
paper_billno int
paper_user_id int
paper_doi datetime
24 | P a g e
Table 7
resv_id int 50
resv_bi_id int 50
resv_user_id int 50
res_doi datetime
Table – 8
4.2.2 Normalization
25 | P a g e
Third Normal Form (3NF)
Third normal form (3NF) goes one large step further:
Meet all the requirements of the second normal form.
Remove columns that are not dependent upon the primary key.
26 | P a g e
4.3 Component Design
4.3.1 Flow Chart
Fig 14(a)
27 | P a g e
Fig 14(b)
28 | P a g e
Fig 16(c)
29 | P a g e
Fig 14(d)
30 | P a g e
4.4 Interface Design
4.4.1 Screenshots
Login Screen
31 | P a g e
Home Screen
32 | P a g e
User Profile
33 | P a g e
Book Search
Book History
34 | P a g e
Edit User
35 | P a g e
Adding New User Group
36 | P a g e
5.) IMPLEMENTATION
37 | P a g e
5.2.1.2) .NET Framework
.NET is a "Software Platform". It is a language-neutral environment for developing rich .NET
experiences and building applications that can easily and securely operate within it. When
developed applications are deployed, those applications will target .NET and will execute
wherever .NET is implemented instead of targeting a particular Hardware/OS combination. The
components that make up the .NET platform are collectively called the .NET Framework.
The .NET Framework is a managed, type-safe environment for developing and executing
applications. The .NET Framework manages all aspects of program execution, like, allocation of
memory for the storage of data and instructions, granting and denying permissions to the
application, managing execution of the application and reallocation of memory for resources that
are not needed.
The .NET Framework is designed for cross-language compatibility. Cross-language
compatibility means, an application written in Visual Basic .NET may reference a DLL file
written in C# (C-Sharp). A Visual Basic .NET class might be derived from a C# class or vice
versa.
The .NET Framework consists of two main components:
Common Language Runtime )CLR)
Class Libraries
38 | P a g e
5.2.1.4) Working of the CLR
When the .NET program is compiled, the output of the compiler is not an executable file but a
file that contains a special type of code called the Microsoft Intermediate Language (MSIL),
which is a low-level set of instructions understood by the common language run time. This MSIL
defines a set of portable instructions that are independent of any specific CPU. It's the job of the
CLR to translate this Intermediate code into a executable code when the program is executed
making the program to run in any environment for which the CLR is implemented. And that's
how the .NET Framework achieves Portability. This MSIL is turned into executable code using a
JIT (Just In Time) complier. The process goes like this, when .NET programs are executed, the
CLR activates the JIT complier. The JIT complier converts MSIL into native code on a demand
basis as each part of the program is needed. Thus the program executes as a native code even
though it is compiled into MSIL making the program to run as fast as it would if it is compiled to
native code but achieves the portability benefits of MSIL.
39 | P a g e
5.2.2) MS- SQL
Fast Recovery:
A new faster recovery option improves availability of SQL Server databases.
Administrators can reconnect to a recovering database after the transaction log has been
rolled forward.
Data Mining:
Microsoft SQL Server 2005 Analysis Services (SSAS) provides tools for data mining
with which you can identify rules and patterns in your data, so that you can determine
why things happen and predict what will happen in the future – giving you powerful
insight that will help your company make better business decisions.
40 | P a g e
6. TESTING
Our project has been tested using Black box and White box testing on all interfaces and loops.
41 | P a g e
Fig 15(b)
42 | P a g e
Fig 15(c)
43 | P a g e
Fig 15(d)
44 | P a g e
6.2) Cyclomatic complexity
We have calculated cyclomatic complexity for our project. Cyclomatic complexity is a software
metric that provides a quantitative measure of the logical complexity of a program. The value
computed for Cyclomatic complexity defines the number of independent paths in the basis set of
a program and provides us with an upper bound for the number of tests that must be conducted to
ensure that all statements have executed at least once. Cyclomatic complexity has a foundation in
graph theory and it can be computed as the number of regions corresponds to the cyclomatic
complexity.
Cyclomatic complexity can be computed in the following ways:
• By counting the number of regions.
• Cyclomatic Complexity V(G) ,is given by : V(G) = E – N + 2 ,
Where E = number of edges, N = number of nodes.
45 | P a g e
.
Fig 16(c)
Fig 16(b)
Fig 16(d)
46 | P a g e
6.3) Black Box Testing
Black Box Testing is testing without knowledge of the internal workings of the item being
tested. For example, when black box testing is applied to software engineering, the tester would
only know the "legal" inputs and what the expected outputs should be, but not how the program
actually arrives at those outputs. It is because of this that black box testing can be considered
testing with respect to the specifications, no other knowledge of the program is necessary.
47 | P a g e
48 | P a g e
49 | P a g e
7. FUTURE SCOPE AND LIMITATIONS.
Library Management Pro is in itself a complete system, though it has a few limitations but it has
a lot of future scope and features that could be added to make it more widely acceptable.
One limitation is that our software is limited to small and medium scaled libraries. Also apart
from Books, Magazine and Newspaper no new category can be added in the system (or in turn be
issued) like CDs etc.
One of the major future scope is making our system online. Connecting libraries to a common
data centre will provide globalization to the libraries, and then the user will be able to search
books all over the city and nearby areas.
Reviews, rating, comparing of books and libraries can also be incorporated. This would
help the user to browse through popular books and make his selection based on the books rating.
Also data obtained from this can be used to discover topics, genre and books that the readers are
interested in reading!
Usage of advanced [BOT]s for retrieval of information about new titles available
throughout the world.
50 | P a g e
8.) CONCLUSION
Library Management Pro has been created keeping in mind the needs of Small and Medium scale
libraries. Its an efficient software that includes all the basic functionalities like making data
entries for new books, newspapers and magazines, registering a new user, editing and deleting
records that are required for smooth functioning of a library. Additionally the user login and
book history are also stored and can be accessed by the administrator.
It also facilitates the librarian to create new user groups and edit their access levels and
functions (like that of the assistants). Apart from this the general users are also given the rights to
not only keep track of the books that they have issued and fines due but they too can search for
the books/magazines/newspapers that interest them.
51 | P a g e
9. REFERENCE
Acharya, Kamal. "STUDENT INFORMATION MANAGEMENT
SYSTEM." Authorea Preprints (2023).
Acharya, Kamal. "Library Management System." Available at SSRN4807104 (2019).
ACHARYA, KAMAL, et al. "LIBRARY MANAGEMENT SYSTEM." (2019).
Acharya, Kamal. "Online bus reservation system project report." Authorea
Preprints (2024).
Acharya, Kamal. "Online bus reservation system project report." (2024).
Acharya, Kamal. “Online Bus Reservation System.” SSRN ElectroNIC ASIA
Journal (2024): n. pag.
Acharya, Kamal. “Student Information Management System Project.” SSRN
ElectroNIC ASIA Journal (2024): n. pag.
Acharya, Kamal. “ATTENDANCE MANAGEMENT SYSTEM.” International
Research Journal of Modernization in Engineering Technology and
Science (2023): n. pag.
52 | P a g e
Acharya, Kamal, Online electricity billing project report. (May 7, 2024). Available at
SSRN: https://ssrn.com/abstract=4819630 or http://dx.doi.org/10.2139/ssrn.4819630
Acharya, Kamal, POLICY MANAGEMENT SYSTEM PROJECT REPORT. (December 10, 2023).
Available at
SSRN: https://ssrn.com/abstract=4831694 or http://dx.doi.org/10.2139/ssrn.4831694
Acharya, Kamal, Online job placement system project report. (January 10, 2023). Available at
SSRN: https://ssrn.com/abstract=4831638 or http://dx.doi.org/10.2139/ssrn.4831638
Acharya, Kamal, Software testing for project report. (May 16, 2023). Available at
SSRN: https://ssrn.com/abstract=4831028 or http://dx.doi.org/10.2139/ssrn.4831028
Acharya, Kamal, ONLINE CRIME REPORTING SYSTEM PROJECT. (August 10, 2022).
Available at
SSRN: https://ssrn.com/abstract=4831015 or http://dx.doi.org/10.2139/ssrn.4831015
Acharya, Kamal, Burber ordering system project report. (October 10, 2022). Available at
SSRN: https://ssrn.com/abstract=4832704 or http://dx.doi.org/10.2139/ssrn.4832704
Acharya, Kamal, Teachers Record Management System Project Report (December 10, 2023).
Available at
SSRN: https://ssrn.com/abstract=4833821 or http://dx.doi.org/10.2139/ssrn.4833821
Acharya, Kamal, Dairy Management System Project Report (December 20, 2020). Available at
SSRN: https://ssrn.com/abstract=4835231 or http://dx.doi.org/10.2139/ssrn.4835231
Acharya, Kamal, Electrical Shop Management System Project (December 10, 2019). Available
at SSRN: https://ssrn.com/abstract=4835238 or http://dx.doi.org/10.2139/ssrn.4835238
Acharya, Kamal, Online book store management system project report. (Febuary 10, 2020).
Available at
SSRN: https://ssrn.com/abstract=4835277 or http://dx.doi.org/10.2139/ssrn.4835277
Acharya, Kamal, Paint shop management system project report. (January 10, 2019). Available
at SSRN: https://ssrn.com/abstract=4835441 or http://dx.doi.org/10.2139/ssrn.4835441
Acharya, Kamal, Supermarket billing system project report. (August 10, 2021). Available at
SSRN: https://ssrn.com/abstract=4835474 or http://dx.doi.org/10.2139/ssrn.4835474
Acharya, Kamal, Online texi booking system project report. (March 10, 2022). Available at
SSRN: https://ssrn.com/abstract=4837729 or http://dx.doi.org/10.2139/ssrn.4837729
53 | P a g e
Acharya, Kamal, Online car servicing system project report. (March 10, 2023). Available at
SSRN: https://ssrn.com/abstract=4837832 or http://dx.doi.org/10.2139/ssrn.4837832
Acharya, Kamal, School management system project report. (July 10, 2021). Available at
SSRN: https://ssrn.com/abstract=4837837 or http://dx.doi.org/10.2139/ssrn.4837837
Acharya, Kamal, Furniture Showroom Management System Project Report (March 21, 2021).
Available at
SSRN: https://ssrn.com/abstract=4839422 or http://dx.doi.org/10.2139/ssrn.4839422
Acharya, Kamal, Online Vehicle Rental System Project Report (March 21, 2019). Available at
SSRN: https://ssrn.com/abstract=4839429 or http://dx.doi.org/10.2139/ssrn.4839429
54 | P a g e