Library Managment System
Library Managment System
MENTOR
ARCITA BASU
The guidance and support received from all the group members who contributed to this
project, are vital for the success of the project. We are grateful for their constant support and
help.
----------------------------------------------------
Name: Atul Raj
----------------------------------------------------
Name: Koushik shit
----------------------------------------------------
Name: Rebati Sarkar
--------------------------------------------------------------
Name: Emtiaz Ahmed
-----------------------------------------------
Signature of Mentor
INTRODUCTION
Our project focuses on the overall development of the students. In our project we are
designing a website Library Management System which was divided into two-phase, the First
one is AdPhaseshase and the second one is the students (User) Phase. A library management
system is software that is designed to manage all the functions of a library. It helps the
librarian to maintain the database of new books and the books that are borrowed by members
along with their due dates. This system completely automates all your library's activities.
There are two broad divisions of web development – front-end development (also called
client-side development) and back-end development (also called server-side development).
The front end is done with three codes- HTML, CSS, and JavaScript.
HTML - HTML was created by Sir Tim Berners-Lee in late 1991 but was not released officially,
published in 1995 as HTML 2.0. HTML 4.01 was published in late 1999 and was a major version
of HTML.
HTML is a very evolving markup language and has evolved with various versions updating.
Long before its revised standards and specifications are carried in, each version has allowed its
user to create web pages in a much easier and prettier way and make sites very efficient.
CSS – Cascading Style Sheets is a code for setting style rules for the appearance of the web
page. CSS handles the cosmetic side of the web.
JavaScript – JavaScript is a scripting language that’s widely used to add functionality and
interactivity to web pages.
Back-end development controls what goes on behind the scenes of a web application. A back
end often uses a database to generate the front end. Back-end scripts are written in PHP.
PHP- PHP is a general-purpose scripting language especially suited to web development. It was
created by Danish-Canadian programmer Rasmus Lerdorf in 1994. The PHP reference
implementation is now produced by The PHP Group. PHP originally stood for Personal Home
Page, but it now stands for the recursive initialism PHP: Hypertext Preprocessor.
IMPLEMENTATION TECHNOLOGIES
HTML
Hypertext Markup Language (HTML) is the standard markup language for documents
designed to be displayed in a web browser. It can be assisted by technologies such
as Cascading Style Sheets (CSS) and scripting languages such as JavaScript.
Web browsers receive HTML documents from a web server or local storage and render the
documents into multimedia web pages. HTML describes the structure of a web
page semantically and originally included cues for the appearance of the document.
HTML elements are the building blocks of HTML pages. With HTML constructs, images and
other objects such as interactive forms may be embedded into the rendered page. HTML
provides a means to create structured documents by denoting structural semantics for text
such as headings, paragraphs, lists, links, quotes, and other items. HTML elements are
delineated by tags, written using angle brackets. Tags such as <img /> and <input /> directly
introduce content to the page. Other tags such as <p> surround and provide information
about document text and may include other tags as sub-elements. Browsers do not display the
HTML tags, ut use them to interpret the content of the page.
HTML can embed programs written in a scripting language such as JavaScript, which affects
the behavior and content of web pages. The inclusion of CSS defines the look and layout of
content. The World Wide Web Consortium (W3the C), former maintainer of the HTML and
current maintainer of the CSS standards, has encouraged the use of CSS over explicit
presentational HTML since 1997.
CSS
CSS. Stands for "Cascading Style Sheet." Cascading style sheets are used to format
the layout of Web pages. They can be used to define text styles, table sizes, and other
aspects of Web pages that previously could only be defined in a page's HTML.
SOFTWARE DEVELOPMENT LIFE CYCLE
The process itself can be divided into several phases, which can be further subdivided. The
seven major phases of the project can be spelled out as:
Feasibility Study
Requirement Analysis and Specification
Designing
Coding Testing
Implementation
Maintenance
Feasibility Study
Requirement Analysis
Designing
Coding
Testing
Implemantation
Maintenance
Technical Feasibility:
This is concerned with specifying equipment and software that will successfully satisfy the user
requirements. The technical needs of the system may vary considerably but might include: The
facility to produce outputs in a given time. Response time under certain conditions. Ability to
process a certain volume of ttransactionsat a particular speed. Facility to communicate data to
distant locations. In examining technical feasibility, the configuration of the system is given
more importance than the actual makes of hardware. The configuration should give a
complete picture of the system’s requirements. How many workstations are required, howand
these units are interconnected so that they could operate and communicate smoothly? What
speeds of input and output should be achieved at the particular quality of printing?
Economic Feasibility:
Economic analysis is the most frequently used technique for evaluating the effectiveness of a
proposed system. More commonly known as cost/Benefit analysis, the procedure is to
determine the benefits and savings that are expected from a proposed system and compare
them with costs. If the benefits out-weight the costs, a decision is taken to design and
implement the system. Otherwise, further justification or alternative in the proposed system
will have to be made if it is to have a chance of being approved. This is an outgoing effort that
improves accuracy at each phase of the system life cycle.
Operational Feasibility:
This is mainly related to human organizational and political aspects. The points to be
considered are: What changes will be brought with the system? What organizational structure
is disturbed? What new skills will be required? Do the existing staff members have these skills?
If not, can they be trained in due course of time? This feasibility study is carried out by a small
group of people who are familiar with information system techniques and are skilled in system
analysis and design processes. Proposed projects are beneficial only if they can be turned
intthe o information system that will meet the operating requirements of the organization.
This test of feasibility asks if the system will work when it is developed and installed.
PROJECT REQUIREMENTS
After analyzing the existing system to see which of their features were useful and how they
could be improved. The hardware and software requirements aresufficient for installing
and running the application however for best resultsexpands the hardware and software
requirements to get an optimumperformance. Requirement for this project are:
Hardware Requirement:
1. Intel Pentium 3 processor or higher
2. RAM 256 MB
3. 40 GB HDD (Hard Disk)
4. CD Drive 16X or higher
Software Requirement:
1. Frontend Tool: Notepad++
2. Web Browser: Google Chrome
3. Documentation: MS Word 2007
4. Project presentation: MS PowerPoint 2007
Platform:
1. Windows 10
2. Linux
DESIGN
Software design is the process of implementing software solution to one or more seats of
problems. Software design usually involves problem solving and planning a software
solution. This includes both a low-level component and algorithm design and a high-level,
architecture design.
Data Flow Diagram (DFD)
Entity Relationship Diagram (ERD)
A data flow diagram (DFD) is a graphical representation of the “flow” of data through an
information system, modeling its process aspects. A DFD is often used as a preliminary step
to create an overview of the system, which can later be elaborated. DFDs can also be used
for the visualization of data processing (structured design). A DFD shows what kind of
information will be input to and output from the system, where the data will come from
and go to, and where the data will be stored.
Level 0 DFD
Entity Relationship Diagram (ERD)
TESTING
TYPES OF TESTING:
• Unit testing
• Integration testing
• System testing
• Smoke testing
• Regression testing
• Beta testing
• Acceptance testing
1. UNIT TESTING:
It focuses on smallest unit of software design. In this we test an individual unitor group of
inter related units. It is often done by programmer by using sampleinput and observing its
corresponding outputs.
2. INTEGRATION TESTING:
Testing is a very important process which is done before implementation ofany to make an
accurate user friendly, client requirement satisfying software.Testing is a process of
executing a program with the aim of finding error. Tomake our software perform well it
should be error free. If testing is donesuccessfully it will remove all the errors from the
software. The objective is totake unit tested components and build a program structure
that has beendictated by design. Integration testing is testing in which a group
ofcomponents are combined to produce output.Integration testing is any type of software
testing that seeks to verify theinterfaces between components against a software design.
Softwarecomponents may be integrated in an iterative way or all together ("big bang").
Normally the former is considered a better practice since it allows interfaceissues to be
located more quickly and fixed.Integration testing works to expose defects in the interfaces
and interactionbetween integrated components (modules). Progressively larger groups
oftested software components corresponding to elements of the architecturaldesigns are
integrated and tested until the software works as a system.
3. SYSTEM TESTING:
System testing of software or hardware is testing conducted on a complete,integrated
system to evaluate the system's compliance with its specifiedrequirements. System testing
falls within the scope of black-box testing and assuch, should require no knowledge of the
inner design of the code or logic.
4. SMOKE TESTING:
In software testing, smoke testing is preliminary testing to reveal simplefailures severe
enough to, for example, reject a prospective software release.Smoke tests are a subset of
test cases that cover the most importantfunctionality of a component or system, used to
aid assessment if mainfunctions of the software appear to work correctly. When used to
determine ifa computer program should be subjected to further, more fine-grained
testing.Alternately, it is a set of tests run on each new build of a product to verify thatthe
build is testable before the build is released into the hands of the testteam.
5. Regression testing:
Regression testing is the process of testing changes to computer programs to make sure
that the older programming still works with the new changes. Regression testing is a
normal part of the program development process and in larger companies, is done by code
testing specialists. Test department coders develop code test scenarios and exercises that
will test new units of code after they have been written. These test cases form what
becomes the test bucket. Before a new version of a software product is released, the old
test cases are run against the new version to make sure that all the old capabilities still
work. The reason they might not work is because changing or adding new code to a
program can easily introduce errors into code that is not intended to be changed.
6. Beta testing:
Beta Testing is one of the Acceptance Testing types, which adds value to the product as the
end-user (intended real user) validates the product for functionality, usability, reliability,
and compatibility. Since Beta Testing happens at the end user’s side, it cannot be the
controlled activity.
7. Acceptance testing:
Acceptance testing, a testing technique performed to determine whether or not the
software system has met the requirement specifications. The main purpose of this test is to
evaluate the system's compliance with the business requirements and verify if it is has met
the required criteria for delivery to end users.
Textbooks Guide:
1. https://www.google.co.in
2. https://www.wikipedia.com
3. https://www.geeksforgeeks.org
Remarks:
---------------------------------------