0% found this document useful (0 votes)
507 views66 pages

Blood Bank Management System

This document is a project report for a Blood Bank Management System created by Bushra Rajpoot. The system was created using PHP, HTML, CSS, JavaScript, and MySQL. It allows users to manage blood camps and donors, view donor test results, manage blood components and patients, and process blood issues and billing. The system has features like donor management, test result management, blood component management, and a patient management system. It was created with a user-friendly front end and scalable back end database to provide an efficient blood management solution.

Uploaded by

pubg rewards9821
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
507 views66 pages

Blood Bank Management System

This document is a project report for a Blood Bank Management System created by Bushra Rajpoot. The system was created using PHP, HTML, CSS, JavaScript, and MySQL. It allows users to manage blood camps and donors, view donor test results, manage blood components and patients, and process blood issues and billing. The system has features like donor management, test result management, blood component management, and a patient management system. It was created with a user-friendly front end and scalable back end database to provide an efficient blood management solution.

Uploaded by

pubg rewards9821
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 66

Project Report On

Blood Bank Management System

By

Bushra Rajpoot
(Registration No. 2521-316003)

Under The Guidance Of:


Sir Moiez

2020

Preston University, Gulshan Campus, Karachi, Pakistan


Project Report On

Blood Bank Management System


By

Bushra Rajpoot
(Registration No. 2521-316003)
Under The Guidance Of:
Sir Moiez
2020

A Project Presented to the,


Faculty of Management Science and Technology,
Preston University, Gulshan Campus, Karachi, Pakistan

In partial fulfillment of the requirement of the degree

BSCS
In Specialization

Computer Science

1
ACKNOWLEDGEMENTS 7

DECLARATION 7

3.About Project 7
3.1 Introduction 7
3.2 Need of Blood Bank Management System 8
3.3 Abstract 8
3.4 Benefits 9
3.5 Features: 9
3.5.1 Blood Camp Management And Reporting 9
3.5.2 Donor Management 9
3.5.3 Donor Test Results Management and Adverse Reaction Data Management 10
3.5.3.1 The results displayed in search is highly configurable 10
3.5.4 Blood Components Management 10
3.5.5 Patient Management System 11
3.5.6 Blood Issue and Billing 11
3.6 Applications: 11
3.7 OBJECTIVE: 11

4. About Front End: 12


4.1 Architecture of Front End user: 12
4.1.1 Architecture and Concepts 13
4.1.2 Transparent to use 13
4.1.3 Flexible storage: various storage handler 13
4.1.4 Built-in slam defense to avoid overloading 14
4.1.5 Unique approach to caching 14
4.2 Software & Tools Used: 15
4.2.1 PHP 15
4.2.1.1 Reasons for using PHP 15
4.2.1.1.1 Learning PHP is easy 15
4.2.1.1.2 Its Performance 15
4.2.1.1.3 The low cost 16
4.2.1.1.4 It’s Open Source, We can modify it 16
4.2.1.1.5 Its Portability 16
4.2.1.1.5.1 It has interfaces to a large variety of database systems 16
4.2.1.1.5.2 Support available 16
4.2.1.2 PHP Syntax 16
4.2.1.2.1 Basic PHP Syntax 16
4.2.2 HTML 17
4.2.2.1 a) HTML Images - The <img> Tag and the Src Attribute 17
4.2.2.2 b) HTML FORMS 17

2
4.2.2.3 c) Image tag (<img>) : 18
4.2.2.4 d) HTML Lists : 18
4.2.3 HTML 5 18
4.2.4 CSS 19
4.2.5 JAVASCRIPT 20

5. About Back End: 20


5.1 MySQL’s Logical Architecture 21
5.2 Softwares and tools used: 22
5.2.1 My Sql: 22
5.2.1.1 Introduction: 23
5.2.1.2 These capabilities range across a number of topics, including the
following: 23
5.2.1.3 Reasons to Use MySQL 23
5.2.1.3.1 a) Scalability and Flexibility 23
5.2.1.3.2 b) High Performance 23
5.2.1.3.3 C) High Availability 24
5.2.1.3.4 d) Robust Transactional Support 24
5.2.1.3.5 e) Web and Data Warehouse Strengths 24
5.2.1.3.6 f) Strong Data Protection 24
5.2.1.3.7 g) Management Ease 24
5.2.1.4 PHP Main Features of MySQL 24
5.2.2 WAMP:- 25

6.Minimum Hardware Specification: 31


6.1 Hardware Requirement 31
6.2 Software Requirement 31

7.DETAIL DESCRIPTION OF TECHNOLOGY USED 31


7.1 Reasons for using PHP 32
7.1.1 Learning PHP is easy 32
7.1.2 Its Performance 32
7.1.3 The low cost 32
7.1.4 It’s Open Source, We can modify it 33
7.1.5 Its Portability 33
7.1.6 It has interfaces to a large variety of database systems 33
7.1.7 Support available 33
7.1.8 PHP Syntax 33
7.1.8.1 Basic PHP Syntax 33
7.2 HTML 33
7.2.1 HTML Images - The <img> Tag and the Src Attribute 34
7.2.2 HTML FORMS 34
7.2.3 Image tag (<img>) : 35
7.3 HTML 5 35
7.4 CSS 36

3
7.5 JAVASCRIPT 36
7.6 MySQL’s Logical Architecture 37

8.0 Softwares and tools used: 38


8.1 My Sql: 38
8.1.1 Introduction: 38
8.1.2 These capabilities range across a number of topics, including the following:
38
8.1.3 Reasons to Use MySQL 39
8.1.4 PHP Main Features of MySQL 39

9. Software Development Process: 40


9.1 Life Cycle Used to develop this Project 40
9.1.1 Overview 40
9.2 Systems Development Phases 41
9.2.1 INITIATION PHASE 41
9.2.2 System Concept Development Phase 42
9.2.3 PLANNING PHASE 42
9.2.3.1 Problem Recognition 42
9.2.3.2 Problem Definition And Initial Investigation 42
9.2.3.3 Feasibility study 43
9.2.3.3.1 Behavioral feasibility: 43
9.2.3.3.2 Economic feasibility: 43
9.2.3.3.3 Technical feasibility: 43
9.2.4 ANALYSIS PHASE 43
9.2.4.1 Existing System Details and Problems 43
9.2.5 User Requirements 44
9.2.6 Functional Requirements: 44
9.2.7 Performance Requirements 44
9.2.8 DEVELOPMENT PHASE 44
9.2.9 INTEGRATION AND TEST PHASE 45
9.2.10 IMPLEMENTATION PHASE 45
9.2.11 OPERATIONS AND MAINTENANCE PHASE 45
9.2.12 DISPOSITION PHASE 45

10 Module Description 46
10.1 Login: 46
10.1.1 Admin 46
10.1.2 User 46
10.2 Admin are of a two type: 47
10.2.1 Admin level user: 47
10.2.2 General level user: 48
10.3 Main Page: 48
10.3.1 Main Window:- 48
10.3.2 Registration Page: 49

4
10.3.3 Donor login:- 49

11.Complete DFD & E-R Diagrams 50


11.1 INTRODUCTION ER DIAGRAM 50
11.1.1 Entity 50
11.1.2 Weak Entity 50
11.1.3 Attribute 51
11.1.4 Key attribute 51
11.1.5 Multivalued attribute 51
11.1.6 Derived attribute 51
11.1.7 Relationships 51
11.1.8 Recursive Relationship 51
11.2 Data flow diagram 54
11.2.1 INTRODUCTION OF DFD:- 54
11.2.2 CONTEXT DIAGRAM: 54
11.2.3 NEED OF DFD 54
11.2.4 Primitive Symbols Used for Constructing DFDs 54
11.2.4.1 Function Symbol 55
11.2.4.2 External entity Symbol 55
11.2.4.3 Data flow symbol 55
11.2.4.4 Data Store Symbol 56
11.2.5 DFD FOR ADMIN LOGIN 56
11.2.6 DFD FOR USER LOGIN 56
11.2.7 DFD FOR ACCOUNT CREATION 57

12. SOFTWARE TESTING 59


12.1 LEVELS OF TESTING: 59
12.2 FUNCTIONAL TESTING: 60
12.3 STRUCTURAL TESTING: 60
12.4 UNIT TESTING: 60
12.4.1 Testing admin login form:- 60
12.4.2 Test For Admin Module 60
12.4.3 Book Addition- 61
12.4.4 Test for User login module 61
12.5 INTEGRITY TESTING: 61
12.5.1 Black Box Testing:- 61
12.5.2 White Box Testing:- 62

13.Complete Snapshots 62
13.1 Home page:- 62
13.2 Registration 63
13.3 Request For Blood 64
13.4 Camps 64
13.5 Donor Login 65
13.6 Search 66

5
13.7 Contact 67
13.8 Donor Panel 67
13.9 Change Password 68
13.10 Update Profile 68
13.11 Blood Donated 68
13.12 Admin Panel 69
13.13 Add user 69
13.14 Update User 70
13.15 Add City 70
13.16 Update City 71
13.17 Add Camp 71
13.18 Update Camp 72
13.19 Add State 73
13.20 Update State 73
13.21 View Blood Group 74

14.Summary and Conclusion 75

15.Future Recommendation 75

6
ACKNOWLEDGEMENTS
It is my pleasure to be indebted to various people, who directly or indirectly contributed in the
development of this work and who influenced our thinking, behavior, and acts during the
course of our training.
I express my sincere gratitude to Mr. Moiez, my mentor, guide and a great teacher who
influenced and inspired me in many ways.
Lastly, I would like to thank the almighty and my parents for their moral support and my
friends with whom I shared our day-to-day experience and received lots of suggestions that
improved our quality of work.

DECLARATION
We hereby declare that the project entitled “Blood Bank Management System” submitted for
the Bscs. Computer Science Degree is our original work and the project has not formed the
basis for the award of any degree, associate ship, fellowship or any other similar titles. It is
an authentic record of our own work carried out under the guidance of our Teacher Mr.
Moiez.

3.About Project

3.1 Introduction
The BLOOD BANK MANAGEMENT SYSTEM is a great project. This project is designed for
successful completion of projects on blood bank management systems. The basic building
aim is to provide blood donation service to the city recently. Blood Bank Management
System (BBMS) is a browser-based system that is designed to store, process, retrieve and
analyze information concerned with the administrative and inventory management within a
blood bank. This project aims at maintaining all the information pertaining to blood donors,
different blood groups available in each blood bank and helping them manage in a better
way. Aim is to provide transparency in this field, make the process of obtaining blood from a
blood bank hassle free and corruption free and make the system of blood bank management
effective.
The Blood bank system project report contain information related to blood like
• Blood type

7
• Date of Donation of blood
• validity of Blood s
• Available Blood group

3.2 Need of Blood Bank Management


System
Bank blood donation system in java is planned to collect blood from many donors in short
from various sources and distribute that blood to needy people who require blood. To do all
this we require high quality software to manage those jobs. The government is spending a
lot of money to develop high quality “Blood Bank management system projects”. For do all
those kinds of need blood bank management system project in java contain modules which
are include the detail of following areas:

• Blood Donor
• Equipment
• Stick
• Blood Recipient
• Blood collection
• Camp
• Stock details
• blood bank system project Reports
• Blood issued
• Blood bank system project

3.3 Abstract
Help Line is a voluntary and non-governmental organization. that maintains an Online library
of blood donors in India. Sometimes Doctors and Blood bank projects have to face the
difficulty in finding the blood group Donors at the right time. Help Line has attempted to
provide the answer by taking upon itself the task of collecting Blood bank projects nationwide
for the cause and care of people in need.
At any point of time the people who are in need can reach the donors through our search
facility. By mobilizing people and organizations who desire to make a difference in the lives
of people in need. On the basis of humanity, Everyone is welcome to register as a blood
donor.
Blood Bank Management System (BBMS) is a browser based system that is designed to
store, process, retrieve and analyze information concerned with the administrative and
inventory management within a blood bank. This project aims at maintaining all the
information pertaining to blood donors, different blood groups available in each blood bank
and helping them manage in a better way. Aim is to provide transparency in this field, make

8
the process of obtaining blood from a blood bank hassle free and corruption free and make
the system of blood bank management effective.

3.4 Benefits
This project aims at maintaining all the information pertaining to blood donors, different blood
groups available in each blood bank and helping them manage in a better way. Aim is to
provide transparency in this field, make the process of obtaining blood from a blood bank
hassle free and corruption free and make the system of blood bank management effective.
The Blood bank system project contain information related to blood like
• Blood type
• Donar details
• Requestor details
• Available Blood group

3.5 Features:
3.5.1 Blood Camp Management And
Reporting
• Provides recording of details of camp beginning from allocation of staff, details of
facilities available in the camp venue.
• Provides assigning of donor to a particular camp and generate camp organizer
report
• Automated report generation of camp details for submission to the Government

3.5.2 Donor Management


● The system allows automatic component data generation based on the
component selected in the blood donor form.
● The system allows bulk update for serology for blood units. Serology results
for many donors can be updated at once.
● The system allows for either component creation before serology test or vice
versa. Based on the serology test, the component created are updated
automatically
● The system allows bar-coded blood bag number entry

9
● All donor related reports are excel downloadable
● All Reports provide filtering over many factors like Blood Group, gender, area,
blood Camp, date of donation, donor type etc.
● The system provides easy link for easy edit or adding details for various
sections of the donor form
● During form filling, the system notifies the user how much percentage of donor
data has been updated

3.5.3 Donor Test Results Management and


Adverse Reaction Data Management
● Provides filterable selections for donor selections
● Excel download of all reports
● The reports are highly configurable and can be configured to display data as per
institution requirements.
● Search based on Component ID, Donor Registration ID, Donor BloodBag Number
and Donor Name

3.5.3.1 The results displayed in search is highly configurable


● The search functionality also allows for site-wide search. It means a user can
search for any data available in the system
● Custom links can be added in the search results to allow easier navigation
and accessibility

3.5.4 Blood Components Management


• Automatic generation of components form donor form
• Based on the date of collection, the system automatically derives the date
of expiry and disallows issue of component if unit has expired
• Until the serology test is done, the system marks the status of the
component as the test awaited. And only after serology test is done, the
component is marked for Ready for Issue
• The Available components list is available and the system automatically
generates the list of components that are ready for issue to be available.

3.5.5 Patient Management System


• Captures patient personal information as well as the hospital where blood
is required)
• The system allows for reserving a unit for 24 hours for a patient)

10
• The blood component issued, the payment made as well as link to the
final bill is available when the patient page is opened
• The data allows reports like: Issue Register, Reserved Units and Patient
Inventory Liste)
• The system allows for capturing transfusion reaction data

3.5.6 Blood Issue and Billing


• Ability to provide adjustments in the final payment receipt for concession
for blood unit

3.6 Applications:
This application is built in such a way that it should suit all types of blood banks in the future.
So every effort is taken to implement this project in this blood bank, on successful
implementation in this blood bank, we can target other blood banks in the city.

3.7 OBJECTIVE:
The main objective of this application is to automate the complete operations of the
blood bank. They need to maintain hundreds of thousands of records. Also searching should
be very fast so they can find required details instantly.
To develop a web-based portal to facilitate the coordination between supply and demand of
blood . This system makes conveniently available good quality, safe blood and other blood
components, which can be provided in a sound, ethical and acceptable manner, consistent
with the long-term well being of the community. It actively encourages voluntary blood
donation, motivates and maintains a well-indexed record of blood donors and educates the
community on the benefits of blood donation. This will also serve as the site for interaction of
best practices in reducing unnecessary utilization of blood and help the state work more
efficiently towards self-sufficiency in blood.
The system will provide the user the option to look at the details of the existing Donor List,
Blood Group and to add a new Donor. It also allows the user to modify the record. The
administrator can alter all the system data.

4. About Front End:


The front end is an interface between the user and the back end. The front and back ends
may be distributed amongst one or more systems.

11
In network computing, front end can refer to any hardware that optimizes or protects network
traffic. It is called application front-end hardware because it is placed on the network's
outward-facing front end or boundary. Network traffic passes through the front-end hardware
before entering the network.
In compilers, the front end translates a computer programming source code into an
intermediate representation, and the back end works with the intermediate representation to
produce code in a computer output language. The back end usually optimizes to produce
code that runs faster. The front-end/back-end distinction can separate the parser section
that deals with source code and the back end that generates code and optimizes.
These days, front-end development refers to the part of the web users interact with. In the
past, web development consisted of people who worked with Photoshop and those who
could code HTML and CSS. Now, developers need a handle of programs like Photoshop
and be able to code not only in HTML and CSS, but also JavaScript or jQuery, which is a
compiled library of JavaScript.
Most of everything you see on any website is a mixture of HTML, CSS, and JavaScript,
which are all controlled by the browser. For example, if you’re using Google Chrome or
Firefox, the browser is what translates all of the code in a manner for you to see and with
which to interact, such as fonts, colors, drop-down menus, sliders, forms, etc. In order for all
of this to work, though, there has to be something to support the front-end; this is where the
backend comes into play.

4.1 Architecture of Front End user:

4.1.1 Architecture and Concepts


The query cache plugin is implemented as a PHP extension. It is written in C and operates
under the hood of PHP. During the startup of the PHP interpreter, it gets registered as a
mysqlnd plugin to replace selected mysqlnd C methods. Hereby, it can change the
behaviour of any PHP MySQL extension (mysqli, PDO_MYSQL, mysql) compiled to use the
mysqlnd library without changing the extensions API. This makes the plugin compatible with
each and every PHP MySQL application. Because existing APIs are not changed, it is
almost transparent to use. Please, see the mysqlnd plugin API description for a discussion of
the advantages of the plugin architecture and a comparison with proxy based solutions.

4.1.2 Transparent to use


At PHP run time PECL/mysqlnd_qc can proxy queries sent from PHP (mysqlnd) to the
MySQL server. It then inspects the statement string to find whether it shall cache its results.
If so, the result set is cached using a storage handler and further executions of the statement
are served from the cache for a user-defined period. The Time to Live (TTL) of the cache
entry can either be set globally or on a per statement basis.

12
A statement is either cached if the plugin is instructed to cache all statements globally using
a or, if the query string starts with the SQL hint (/*qc=on*/). The plugin is capable of caching
any query issued by calling appropriate API calls of any of the existing PHP MySQL
extensions.

4.1.3 Flexible storage: various storage


handler
Various storage handlers are supported to offer different scopes for cache entries. Different
scopes allow for different degrees in sharing cache entries among clients.
• default (built-in): process memory, scope: process, one or more web requests
depending on PHP deployment model used
• APC: shared memory, scope: single server, multiple web requests
• SQLite: memory or file, scope: single server, multiple web requests
• MEMCACHE: main memory, scope: single or multiple server, multiple web requests
• user (built-in): user-defined - any, scope: user-defined - any
Support for the APC, SQLite and MEMCACHE storage handler has to be enabled at compile
time. The default and user handler are built-in. It is possible to switch between compiled-in
storage handlers on a per query basis at run time. However, it is recommended to pick one
storage handler and use it for all cache entries.

4.1.4 Built-in slam defense to avoid


overloading
To avoid overload situations the cache plugin has a built-in slam defense mechanism. If a
popular cache entry expires many clients using the cache entries will try to refresh the cache
entry. For the duration of the refresh many clients may access the database server
concurrently. In the worst case, the database server becomes overloaded and it takes more
and more time to refresh the cache entry, which in turn lets more and more clients try to
refresh the cache entry. To prevent this from happening the plugin has a slam defense
mechanism. If slam defense is enabled and the plugin detects an expired cache entry it
extends the lifetime of the cache entry before it refreshes the cache entry. This way other
concurrent accesses to the expired cache entry are still served from the cache for a certain
time.The other concurrent accesses do not trigger a concurrent refresh. Ideally, the cache
entry gets refreshed by the client which extends the cache entries lifespan before other
clients try to refresh the cache and potentially cause an overload situation.

4.1.5 Unique approach to caching


PECL/mysqlnd_qc has a unique approach to caching result sets that is superior to
application based cache solutions. Application based solutions first fetch a result set into
PHP variables. Then, the PHP variables are serialized for storage in a persistent cache, and
then unserialized when fetching. The mysqlnd query cache stores the raw wire protocol data

13
sent from MySQL to PHP in its cache and replays it, if still valid, on a cache hit. This way, it
saves an extra serialization step for a cache put that all application based solutions have to
do. It can store the raw wire protocol data in the cache without having to serialize into a PHP
variable first and deserializing the PHP variable for storing in the cache a

4.2 Software & Tools Used:


4.2.1 PHP
PHP is now officially known as “PHP: Hypertext Preprocessor”. It is a server-side scripting
language usually written in an HTML context. Unlike an ordinary HTML page, a PHP script is
not sent directly to a client by the server; instead, it is parsed by the PHP binary or module,
which is server-side installed. HTML elements in the script are left alone, but PHP code is
interpreted and executed. PHP code in a script can query databases, create images, read
and write files, talk to remote servers – the possibilities are endless. The output from PHP
code is combined with the HTML in the script and the result sent to the user’s web-browser,
therefore it can never tell the user whether the web-server uses PHP or not, because the
entire browser sees it as HTML.
PHP’s support for Apache and MySQL further increases its popularity. Apache is now the
most-used web-server in the world, and PHP can be compiled as an Apache module.
MySQL is a powerful free SQL database, and PHP provides a comprehensive set of
functions for working with it. The combination of Apache, MySQL and PHP is all but
unbeatable.
That doesn’t mean that PHP cannot work in other environments or with other tools. In fact,
PHP supports an extensive list of databases and web-servers. While in the mid-1990s it was
ok to build sites, even relatively large sites, with hundreds of individual hard-coded HTML
pages, today’s webmasters are making the most of the power of databases to manage their
content more effectively and to personalize their sites according to individual user
preferences.

4.2.1.1 Reasons for using PHP


There are some indisputable great reasons to work with PHP. As an open source product,
PHP is well supported by a talented production team and a committed user community.
Furthermore, PHP can be run on all the major operating systems with most servers.

4.2.1.1.1 Learning PHP is easy


Basic is easy, any interpreted language should be easy to learn. Since you are isolated from
the system (no pointers to use, no memory to allocate). The other advantage that all modern
interpreted languages share is good associative array constructs.

14
4.2.1.1.2 Its Performance
While we can build an application that serves millions of pages a day on a server, when we
really look at the performance of the language it sucks. We are still orders of magnitude from
real performance. Not only that, but since PHP is designed around a single process model
our ability to share data structures or connection pool resources is left to native code
libraries.

4.2.1.1.3 The low cost

There are many languages which are available at very less cost. There are some languages
which are available at very less cost like below:
• PHP
• C
• C++ etc

4.2.1.1.4 It’s Open Source, We can modify it


We can modify it if you need a hole in your head! Technically the point is that it’s an open
source project and they release patches often. Your point is that the community is actively
working out the bugs. So, what any active language is doing this...
Unfortunately C, C++ and Perl have all “died” at this point and will pretty much remain static
at their current functionality.

4.2.1.1.5 Its Portability


C is portable; it’s just the OS bits that aren’t. A lot of PHP isn’t portable to Windows since
people don’t use the OS abstractions to avoid some problems.

4.2.1.1.5.1 It has interfaces to a large variety of database


systems
PHP supports a large variety of the database.

4.2.1.1.5.2 Support available


Online Support is available for using PHP.

4.2.1.2 PHP Syntax


You cannot view the PHP source code by selecting “View source” in the browser – you will
only see the output from the PHP file, which is plain HTML. This is because the scripts are
executed on the server before the result is sent back to the browser.

15
4.2.1.2.1 Basic PHP Syntax
A PHP scripting block always starts with <?php and ends with ?>. A PHP scripting block can
be placed anywhere in the document.
On servers with shorthand support enabled you can start a scripting block
with <? And end with ?>. However, for maximum compatibility, we recommend that you
use the standard form (<?php) rather than the shorthand form.
A PHP file normally contains HTML tags, just like an HTML file, and some PHP scripting
code.

4.2.2 HTML
HTML or HyperText Markup Language is the standard markup language used to create web
pages.
HTML was created in 1991 by Tim Berners-Lee at CERN in Switzerland. It was designed to
allow scientists to display and share their research.
HTML is written in the form of HTML elements consisting of tags enclosed in angle
brackets(like <html>). HTML tags most commonly come in pairs like <h1> and </h1>,
although some tags represent empty elements and so are unpaired, for example <img>. The
first tag in a pair is the start tag, and the second tag is the end tag (they are also called
opening tags and closing tags).
The purpose of a web browser is to read HTML documents and compose them into visible or
audible web pages. The browser does not display the HTML tags, but uses the tags to
interpret the content of the page. HTML describes the structure of a website semantically
along with cues for presentation, making it a markup language rather than a programming
language.
HTML elements form the building blocks of all websites. HTML allows images and objects to
be embedded and can be used to create interactive forms. It provides a means to create
structured documents by denoting structural semantics for text such as headings,
paragraphs, lists, links, quotes and other items. It can embed scripts written in languages
such as Java Script which affect the behavior of HTML web pages.
HTML is a descriptive markup language. Library of various markup languages is defined in
various browsers.

4.2.2.1 a) HTML Images - The <img> Tag and the Src Attribute
In HTML, images are defined with the <img> tag.
The <img> tag is empty, which means that it contains attributes only, and has no closing tag.
To display an image on a page, you need to use the src attribute. Src stands for "source".
The value of the src attribute is the URL of the image you want to display.
Syntax for defining an image:
<img src="url" alt="some_text">

4.2.2.2 b) HTML FORMS


HTML forms are used to pass data to a server.

16
The <form> tag is used to create an
HTML form:
<form>
.
input elements
.
</form>

An HTML form can contain input elements like text fields, checkboxes, radio-buttons, submit
buttons and more. A form can also contain select lists, textarea, fieldset, legend, and label
elements.

4.2.2.3 c) Image tag (<img>) :


To add an image to an HTML document, we just need to include an <IMG> tag with a
reference to the desired image. The <IMG> tag is an empty element i.e. it doesn’t require a
closing tag and we can use it to include from small icons to large images.

Syntax: <img src=”URL” alt=”alternative text”>

4.2.2.4 d) HTML Lists :


An ordered list: An unordered list:
• The first list item • List item
• The second list item • List item
• The third list item • List item

4.2.3 HTML 5
HTML5 will be the new standard for HTML. The previous version of HTML, HTML 4.01,
came in 1999. The web has changed a lot since then. HTML5 is still a work in progress.
However, the major browsers support many of the new HTML5 elements and APIs.
HTML5 is cooperation between the World Wide Web Consortium (W3C) and the Web
Hypertext Application Technology Working Group (WHATWG).
WHATWG was working with web forms and applications, and W3C was working with

17
XHTML 2.0. In 2006, they decided to cooperate and create a new version of HTML.
Some rules for HTML5 were established:
a) New features should be based on HTML, CSS, DOM, and JavaScript
b) Reduce the need for external plug-ins (like Flash)
c) Better error handling
d) More markup to replace scripting
e) HTML5 should be device independent
f) The development process should be visible to the public

4.2.4 CSS
CSS tutorial for CSS 3 tutorial provides basic and advanced concepts of CSS technology.
Our CSS tutorial is developed for beginners and professionals. The major points of CSS are
given below:

• CSS stands for Cascading Style Sheet.


• CSS is used to design HTML tags.
• CSS is a widely used language on the web.
• HTML, CSS and JavaScript are used for web designing. It helps the web designers to
apply style on HTML tags.
Cascading Style Sheets (CSS) is a style sheet language used for describing the look and
formatting of a document written in a markup language. While most often used to style web
pages and user interfaces written in HTML and XHTML, the language can be applied to any
kind of XML document, including plain XML, SVG and XUL. CSS is a cornerstone
specification of the web and almost all web pages use CSS style sheets to describe their
presentation.
CSS is designed primarily to enable the separation of document content from document
presentation, including elements such as the layout, colors, and fonts. This separation can
improve content accessibility, provide more flexibility and control in the specification of
presentation characteristics, enable multiple pages to share formatting, and reduce
complexity and repetition in the structural content (such as by allowing for table less web
design).
CSS can also allow the same markup page to be presented in different styles for different
rendering methods, such as on-screen, in print, by voice (when read out by a speech-based
browser or screen reader) and on Braille-based, tactile devices. It can also be used to allow
the web page to display differently depending on the screen size or device on which it is
being viewed. While the author of a document typically links that document to a CSS file,
readers can use a different style sheet, perhaps one on their own computer, to override the
one the author has specified.
With plain HTML you define the colors and sizes of text and tables throughout your pages. If
you want to change a certain element you will therefore have to work your way through the
document and change it. With CSS you define the colors and sizes in "styles". Then as you
write your documents you refer to the styles. Therefore: if you change a certain style it will
change the look of your entire site. Another big advantage is that CSS offers much more
detailed attributes than plain HTML for defining the look and feel of your site.

18
4.2.5 JAVASCRIPT
JavaScript (JS) is a dynamic computer programming language. It is most commonly used as
part of web browsers, whose implementations allow client-side scripts to interact with the
user, control the browser, communicate asynchronously, and alter the document content that
is displayed. It is also being used in server-side network programming (with Node.js), game
development and the creation of desktop and mobile applications.
JavaScript is a prototype-based scripting language with dynamic typing and has first-class
functions. Its syntax was influenced by C. JavaScript copies many names and naming
conventions from Java, but the two languages are otherwise unrelated and have very
different semantics. The key design principles within JavaScript are taken from the Self and
Scheme programming languages. It is a multi-paradigm language, supporting object-
oriented, imperative, and functional programming styles.
The application of JavaScript in use outside of web pages—for example, in PDF documents,
site-specific browsers, and desktop widgets—is also significant. Newer and faster JavaScript
VMs and platforms built upon them (notably Node.js) have also increased the popularity of
JavaScript for server-side web applications. On the client side, JavaScript was traditionally
implemented as an interpreted language but just-in-time compilation is now performed by
recent (post-2012) browsers.
JavaScript was formalized in the ECMA Script language standard and is primarily used as
part of a web browser (client-side JavaScript). This enables programmatic access to objects
within a host environment.
JavaScript is the most popular programming language in the world.
It is the language for HTML, for the Web, for computers, servers, laptops, tablets, smart
phones, and more.
You can use JavaScript to:
a) Change HTML elements
• Delete HTML elements
• Create new HTML elements
• Copy and clone HTML elements

5. About Back End:


In a previous blog, we talked about how web programmers are concerned with launching
websites, updates, and maintenance, among other things. All of that works to support the
front-end of the website. The back-end has three parts to it: server, application, and
database.
To better explain how all of this works, let’s use the example of a customer trying to
purchase a plane ticket using a website. Everything that the customer sees on the webpage
is the front-end, as we have explained before, but once that customer enters all of his or her

19
information, ss such as their name, billing address, destination, etc, the web application
stores the information in a database that was created previously on the server in which the
website is calling for information.
The web application creates, deletes, changes, renames, etc items in the database. For
example, when a customer purchases a ticket, that creates an item in the database, but
when they have a change in their order or they wish to cancel, the item in the database is
changed.
.In short, when a customer wants to buy a ticket, the backend operation is the web
application communicating with the server to make a change in a database stored on said
server. Technologies like PHP, Ruby, Python, and others are the ones backend
programmers use to make this communication work smoothly, allowing the customer to
purchase his or her ticket with ease.

5.1 MySQL’s Logical Architecture


The topmost layer contains the services that aren’t unique to MySQL. They’re services most
network-based client/server tools or servers need: connection handling, authentication,
security, and so forth.

The third layer contains the storage engines. They are responsible for storing and retrieving
all data stored “in'' MySQL. Like the various file systems available for GNU/Linux, each
storage engine has its own benefits and drawbacks. The server communicates with them
through the storage engine API. This interface hides differences between storage engines
and makes them largely transparent at the query layer. The API contains a couple of dozen
low-level functions that perform operations such as “begin a transaction” or “fetch the row
that has this primary key.” The storage engines don’t parse SQL or communicate with each
other; they simply respond to requests from the server.

5.2 Softwares and tools used:


5.2.1 My Sql:

20
5.2.1.1 Introduction:
The database has become an integral part of almost every human's life. Without it, many
things we do would become very tedious, perhaps impossible tasks. Banks, universities, and
libraries are three examples of organizations that depend heavily on some sort of database
system. On the Internet, search engines, online shopping, and even the website naming
convention would be impossible without the use of a database. A database that is
implemented and interfaced on a computer is often termed a database server.
One of the fastest SQL (Structured Query Language) database servers currently on
the market is the MySQL server, developed by T.c.X. DataKonsultAB. MySQL, available for
download at www.mysql.com, offers the database programmer with an array of options and
capabilities rarely seen in other database servers. MySQL is free of charge for those wishing
to use it for private and commercial use. Those wishing to develop applications specifically
using MySQL should consult MySQL's licensing section, as there is a charge for licensing
the product.

5.2.1.2 These capabilities range across a number of topics,


including the following:
a) Ability to handle an unlimited number of simultaneous users.
b) Capacity to handle 50,000,000+ records.
c) Very fast command execution, perhaps the fastest to be found on the market.
d)Easy and efficient user privilege system.

However, perhaps the most interesting characteristic of all is the fact that it's free. That's
right, T.c.X offers MySQL as a free product to the general public.

5.2.1.3 Reasons to Use MySQL


5.2.1.3.1 a) Scalability and Flexibility
The MySQL database server provides the ultimate in scalability, sporting the capacity to
handle deeply embedded applications with a footprint of only 1MB to running massive data
warehouses holding terabytes of information. Platform flexibility is a stalwart feature of
MySQL with all flavors of Linux, UNIX, and Windows being supported.

5.2.1.3.2 b) High Performance


A unique storage-engine architecture allows database professionals to configure the MySQL
database server specifically for particular applications, with the end result being amazing
performance results.

21
5.2.1.3.3 C) High Availability
Rock-solid reliability and constant availability are hallmarks of MySQL, with customers
relying on MySQL to guarantee around-the-clock uptime. MySQL offers a variety of high-
availability options from high-speed master/slave replication configurations, to specialized
Cluster servers offering instant failover, to third party vendors offering unique high-availability
solutions for the MySQL database server.

5.2.1.3.4 d) Robust Transactional Support


MySQL offers one of the most powerful transactional database engines on the market.
Features include complete ACID (atomic, consistent, isolated, durable) transaction support,
unlimited row-level locking, distributed transaction capability, and multi-version transaction
support where readers never block writers and vice-versa.

5.2.1.3.5 e) Web and Data Warehouse Strengths


MySQL is the de-facto standard for high-traffic web sites because of its high-performance
query engine, tremendously fast data insert capability, and strong support for specialized
web functions like fast full text searches.

5.2.1.3.6 f) Strong Data Protection


Because guarding the data assets of corporations is the number one job of database
professionals, MySQL offers exceptional security features that ensure absolute data
protection. In terms of database authentication, MySQL provides powerful mechanisms for
ensuring only authorized users have entry to the database server, with the ability to block
users down to the client machine level being possible.

5.2.1.3.7 g) Management Ease


MySQL offers exceptional quick-start capability with the average time from software
download to installation completion being less than fifteen minutes. This rule holds true
whether the platform is Microsoft Windows, Linux, Macintosh, or UNIX.

5.2.1.4 PHP Main Features of MySQL


• Tested with a broad range of different compilers.
• Works on many different platforms.
• The MySQL Server design is multi-layered with independent modules.
• Fully multi-threaded using kernel threads. It can easily use multiple CPUs if they are
available.
• Provides transactional and non-transactional storage engines.
• Uses very fast B-tree disk tables with index compression.
• Relatively easy to add other storage engines. This is useful if you want to provide an
SQL interface for an in-house database.
• A very fast thread-based memory allocation system.
• Very fast joins using an optimized one-sweep multi-join.
• In-memory hash tables, which are used as temporary tables.

22
• SQL functions are implemented using a highly optimized class library and should be as
fast as possible. Usually there is no memory allocation at all after query initialization.
• The server is available as a separate program for use in a client/server networked
environment.

5.2.2 WAMP:-
A. Install WAMP by double clicking on the icon, an installation wizard will be opened.

B. Click on the next button to continue , and then again a box will appear on the screen
asking you for acceptance or not acceptance of the license agreement.

C. For this select option “I accept the terms in the license agreement”. Click on the next
button.

D. Then again a wizard will be opened asking you about the location of placing the
folder. For selecting location click on browse and click next.

E. The next wizard will ask you about auto start the WAMP i.e. if you want to start the
WAMP automatically then click on the checkbox and if you do not want then it
remains unchecked.
F. Click on the next button to proceed further, the next wizard will display you the
summary of the setting . Click on the install button for installation.

G. After installation the next wizard will be opened asking you about the directory for
your root folder .If you are not sure , just leave the default directory for proceeding
further click on the next button.

H. The next wizard will ask you about your server, just fill localhost and click on the next
button.

I. The next wizard will appear on the screen asking you about the email address for
sending mails. Just leave the default email address if you are not sure. Click on the
next button.

J. This wizard will ask you about the browser. By default the browser is an internet
explorer. You can set the default browser according to your requirement .Click on the
next button.

23
K. On clicking next a popup menu will be displayed asking you “would you like to install
the new WAMP homepage ?” click on yes option.

L. Finally click on finish after complete installation of WAMP on your system.

6.Minimum Hardware Specification:

6.1 Hardware Requirement


Processor : Intel Core Duo 2.0 GHz or more
RAM : 1 GB or More
Harddisk : 80GB or more
Monitor : 15” CRT, or LCD monitor
Keyboard : Normal or Multimedia
Mouse : Compatible mouse

6.2 Software Requirement


Front End : Visual Basic 2005 Express edition
: With Sql Server Compact Edition
: Microsoft SDK 2.0

Or

Visual Basic 2008 Express edition : With Sql Server Compact Edition
Microsoft SDK 3.0

24
Back End : MS Sql Server

Operation System : Windows 7 with server pack 2


Or
Windows 8.1

7.DETAIL DESCRIPTION OF
TECHNOLOGY USED
PHP is now officially known as “PHP: Hypertext Preprocessor”. It is a server-side scripting
language usually written in an HTML context. Unlike an ordinary HTML page, a PHP script is
not sent directly to a client by the server; instead, it is parsed by the PHP binary or module,
which is server-side installed. HTML elements in the script are left alone, but PHP code is
interpreted and executed. PHP code in a script can query databases, create images, read
and write files, talk to remote servers – the possibilities are endless. The output from PHP
code is combined with the HTML in the script and the result sent to the user’s web-browser,
therefore it can never tell the user whether the web-server uses PHP or not, because the
entire browser sees it as HTML.
PHP’s support for Apache and MySQL further increases its popularity. Apache is now the
most-used web-server in the world, and PHP can be compiled as an Apache module.
MySQL is a powerful free SQL database, and PHP provides a comprehensive set of
functions for working with it. The combination of Apache, MySQL and PHP is all but
unbeatable.
That doesn’t mean that PHP cannot work in other environments or with other tools. In fact,
PHP supports an extensive list of databases and web-servers. While in the mid-1990s it was
ok to build sites, even relatively large sites, with hundreds of individual hard-coded HTML
pages, today’s webmasters are making the most of the power of databases to manage their
content more effectively and to personalize their sites according to individual user
preferences.

7.1 Reasons for using PHP


There are some indisputable great reasons to work with PHP. As an open source product,
PHP is well supported by a talented production team and a committed user community.
Furthermore, PHP can be run on all the major operating systems with most servers.

25
7.1.1 Learning PHP is easy
Basic is easy, any interpreted language should be easy to learn. Since you are isolated from
the system (no pointers to use, no memory to allocate). The other advantage that all modern
interpreted languages share is good associative array constructs.

7.1.2 Its Performance


While we can build an application that serves millions of pages a day on a server, when we
really look at the performance of the language it sucks. We are still orders of magnitude from
real performance. Not only that, but since PHP is designed around a single process model
our ability to share data structures or connection pool resources is left to native code
libraries.

7.1.3 The low cost


There are many languages which are available at very less cost. There are some languages
which are available at very less cost like below:
PHP
C
C++ etc

7.1.4 It’s Open Source, We can modify it


We can modify it if you need a hole in your head! Technically the point is that it’s an open
source project and they release patches often. Your point is that the community is actively
working out the bugs. So, what any active language is doing this...
Unfortunately C, C++ and Perl have all “died” at this point and will pretty much remain static
at their current functionality.

7.1.5 Its Portability


C is portable; it’s just the OS bits that aren’t. A lot of PHP isn’t portable to Windows since
people don’t use the OS abstractions to avoid some problems.

7.1.6 It has interfaces to a large variety of


database systems
PHP supports a large variety of the database.

26
7.1.7 Support available
Online Support is available for using PHP.

7.1.8 PHP Syntax


You cannot view the PHP source code by selecting “View source” in the browser – you will
only see the output from the PHP file, which is plain HTML. This is because the scripts are
executed on the server before the result is sent back to the browser.

7.1.8.1 Basic PHP Syntax


A PHP scripting block always starts with <?php and ends with ?>. A PHP scripting block can
be placed anywhere in the document.
On servers with shorthand support enabled you can start a scripting block
with <? And end with ?>. However, for maximum compatibility, we recommend that you
use the standard form (<?php) rather than the shorthand form.
A PHP file normally contains HTML tags, just like an HTML file, and some PHP scripting
code.

7.2 HTML
HTML or HyperText Markup Language is the standard markup language used to create web
pages.
HTML was created in 1991 by Tim Berners-Lee at CERN in Switzerland. It was designed to
allow scientists to display and share their research.
HTML is written in the form of HTML elements consisting of tags enclosed in angle
brackets(like <html>). HTML tags most commonly come in pairs like <h1> and </h1>,
although some tags represent empty elements and so are unpaired, for example <img>. The
first tag in a pair is the start tag, and the second tag is the end tag (they are also called
opening tags and closing tags).
The purpose of a web browser is to read HTML documents and compose them into visible or
audible web pages. The browser does not display the HTML tags, but uses the tags to
interpret the content of the page. HTML describes the structure of a website semantically
along with cues for presentation, making it a markup language rather than a programming
language.
HTML elements form the building blocks of all websites. HTML allows images and objects to
be embedded and can be used to create interactive forms. It provides a means to create
structured documents by denoting structural semantics for text such as headings,
paragraphs, lists, links, quotes and other items. It can embed scripts written in languages
such as Java Script which affect the behavior of HTML web pages.
HTML is a descriptive markup language. Library of various markup languages is defined in
various browsers.

27
7.2.1 HTML Images - The <img> Tag and the Src
Attribute
In HTML, images are defined with the <img> tag.
The <img> tag is empty, which means that it contains attributes only, and has no closing tag.
To display an image on a page, you need to use the src attribute. Src stands for "source".
The value of the src attribute is the URL of the image you want to display.
Syntax for defining an image:
<img src="url" alt="some_text">

7.2.2 HTML FORMS


HTML forms are used to pass data to a server.
An HTML form can contain input elements like text fields, checkboxes, radio-buttons, submit
buttons and more. A form can also contain select lists, textarea, fieldset, legend, and label
elements.

7.2.3 Image tag (<img>) :


To add an image to an HTML document, we just need to include an <IMG> tag with a
reference to the desired image. The <IMG> tag is an empty element i.e. it doesn’t require a
closing tag and we can use it to include from small icons to large images.

Syntax: <img src=”URL” alt=”alternative text”>

7.2.4 HTML Lists :

An ordered list: An unordered list:


• The first list item • List item
• The second list item • List item
• The third list item • List item

28
7.3 HTML 5
HTML5 will be the new standard for HTML. The previous version of HTML, HTML 4.01,
came in 1999. The web has changed a lot since then. HTML5 is still a work in progress.
However, the major browsers support many of the new HTML5 elements and APIs.
HTML5 is cooperation between the World Wide Web Consortium (W3C) and the Web
Hypertext Application Technology Working Group (WHATWG).
WHATWG was working with web forms and applications, and W3C was working with
XHTML 2.0. In 2006, they decided to cooperate and create a new version of HTML.
Some rules for HTML5 were established:
a) New features should be based on HTML, CSS, DOM, and JavaScript
b) Reduce the need for external plug-ins (like Flash)
c) Better error handling
d) More markup to replace scripting
e) HTML5 should be device independent
f) The development process should be visible to the public

7.4 CSS
CSS tutorial for CSS 3 tutorial provides basic and advanced concepts of CSS technology.
Our CSS tutorial is developed for beginners and professionals. The major points of CSS are
given below:
CSS stands for Cascading Style Sheet.
CSS is used to design HTML tags.
CSS is a widely used language on the web.
HTML, CSS and JavaScript are used for web designing. It helps the web designers to apply
style on HTML tags.
Cascading Style Sheets (CSS) is a style sheet language used for describing the look and
formatting of a document written in a markup language. While most often used to style web
pages and user interfaces written in HTML and XHTML, the language can be applied to any
kind of XML document, including plain XML, SVG and XUL. CSS is a cornerstone
specification of the web and almost all web pages use CSS style sheets to describe their
presentation.
CSS is designed primarily to enable the separation of document content from document
presentation, including elements such as the layout, colors, and fonts. This separation can
improve content accessibility, provide more flexibility and control in the specification of
presentation characteristics, enable multiple pages to share formatting, and reduce
complexity and repetition in the structural content (such as by allowing for table less web
design).
CSS can also allow the same markup page to be presented in different styles for different
rendering methods, such as on-screen, in print, by voice (when read out by a speech-based
browser or screen reader) and on Braille-based, tactile devices. It can also be used to allow
the web page to display differently depending on the screen size or device on which it is

29
being viewed. While the author of a document typically links that document to a CSS file,
readers can use a different style sheet, perhaps one on their own computer, to override the
one the author has specified.
With plain HTML you define the colors and sizes of text and tables throughout your pages. If
you want to change a certain element you will therefore have to work your way through the
document and change it. With CSS you define the colors and sizes in "styles". Then as you
write your documents you refer to the styles. Therefore: if you change a certain style it will
change the look of your entire site. Another big advantage is that CSS offers much more
detailed attributes than plain HTML for defining the look and feel of your site.

7.5 JAVASCRIPT
JavaScript (JS) is a dynamic computer programming language. It is most commonly used as
part of web browsers, whose implementations allow client-side scripts to interact with the
user, control the browser, communicate asynchronously, and alter the document content that
is displayed. It is also being used in server-side network programming (with Node.js), game
development and the creation of desktop and mobile applications.
JavaScript is a prototype-based scripting language with dynamic typing and has first-class
functions. Its syntax was influenced by C. JavaScript copies many names and naming
conventions from Java, but the two languages are otherwise unrelated and have very
different semantics. The key design principles within JavaScript are taken from the Self and
Scheme programming languages. It is a multi-paradigm language, supporting object-
oriented, imperative, and functional programming styles.
The application of JavaScript in use outside of web pages—for example, in PDF documents,
site-specific browsers, and desktop widgets—is also significant. Newer and faster JavaScript
VMs and platforms built upon them (notably Node.js) have also increased the popularity of
JavaScript for server-side web applications. On the client side, JavaScript was traditionally
implemented as an interpreted language but just-in-time compilation is now performed by
recent (post-2012) browsers.
JavaScript was formalized in the ECMA Script language standard and is primarily used as
part of a web browser (client-side JavaScript). This enables programmatic access to objects
within a host environment.
JavaScript is the most popular programming language in the world.
It is the language for HTML, for the Web, for computers, servers, laptops, tablets, smart
phones, and more.
You can use JavaScript to:
a) Change HTML elements
• Delete HTML elements
• Create new HTML elements
• Copy and clone HTML elements

30
7.6 MySQL’s Logical Architecture
The database has become an integral part of almost every human's life. Without it, many
things we do would become very tedious, perhaps impossible tasks. Banks, universities, and
libraries are three examples of organizations that depend heavily on some sort of database
system. On the Internet, search engines, online shopping, and even the website naming
convention would be impossible without the use of a database. A database that is
implemented and interfaced on a computer is often termed a database server.

The topmost layer contains the services that aren’t unique to MySQL. They’re services most
network-based client/server tools or servers need: connection handling, authentication,
security, and so forth

The third layer contains the storage engines. They are responsible for storing and retrieving
all data stored “in'' MySQL. Like the various file systems available for GNU/Linux, each
storage engine has its own benefits and drawbacks. The server communicates with them
through the storage engine API. This interface hides differences between storage engines
and makes them largely transparent at the query layer. The API contains a couple of dozen
low-level functions that perform operations such as “begin a transaction” or “fetch the row
that has this primary key.” The storage engines don’t parse SQL[4] or communicate with each
other; they simply respond to requests from the server.

8.0 Softwares and tools used:

8.1 My Sql:

8.1.1 Introduction:
The database has become an integral part of almost every human's life. Without it, many
things we do would become very tedious, perhaps impossible tasks. Banks, universities, and
libraries are three examples of organizations that depend heavily on some sort of database
system. On the Internet, search engines, online shopping, and even the website naming
convention would be impossible without the use of a database. A database that is
implemented and interfaced on a computer is often termed a database server.
One of the fastest SQL (Structured Query Language) database servers currently on
the market is the MySQL server, developed by T.c.X. DataKonsultAB. MySQL, available for
download at www.mysql.com, offers the database programmer with an array of options and
capabilities rarely seen in other database servers. MySQL is free of charge for those wishing
to use it for private and commercial use. Those wishing to develop applications specifically

31
using MySQL should consult MySQL's licensing section, as there is a charge for licensing
the product.

8.1.2 These capabilities range across a number


of topics, including the following:
a) Ability to handle an unlimited number of simultaneous users.
b) Capacity to handle 50,000,000+ records.
c) Very fast command execution, perhaps the fastest to be found on the market.
d)Easy and efficient user privilege system.
However, perhaps the most interesting characteristic of all is the fact that it's free. That's
right, T.c.X offers MySQL as a free product to the general public.

8.1.3 Reasons to Use MySQL


a) Scalability and Flexibility
The MySQL database server provides the ultimate in scalability, sporting the capacity to
handle deeply embedded applications with a footprint of only 1MB to running massive data
warehouses holding terabytes of information. Platform flexibility is a stalwart feature of
MySQL with all flavors of Linux, UNIX, and Windows being supported.
b) High Performance
A unique storage-engine architecture allows database professionals to configure the MySQL
database server specifically for particular applications, with the end result being amazing
performance results.
C) High Availability
Rock-solid reliability and constant availability are hallmarks of MySQL, with customers
relying on MySQL to guarantee around-the-clock uptime. MySQL offers a variety of high-
availability options from high-speed master/slave replication configurations, to specialized
Cluster servers offering instant failover, to third party vendors offering unique high-availability
solutions for the MySQL database server.
d) Robust Transactional Support
MySQL offers one of the most powerful transactional database engines on the market.
Features include complete ACID (atomic, consistent, isolated, durable) transaction support,
unlimited row-level locking, distributed transaction capability, and multi-version transaction
support where readers never block writers and vice-versa.
e) Web and Data Warehouse Strengths
MySQL is the de-facto standard for high-traffic web sites because of its high-performance
query engine, tremendously fast data insert capability, and strong support for specialized
web functions like fast full text searches.
f) Strong Data Protection
Because guarding the data assets of corporations is the number one job of database
professionals, MySQL offers exceptional security features that ensure absolute data
protection. In terms of database authentication, MySQL provides powerful mechanisms for
ensuring only authorized users have entry to the database server, with the ability to block
users down to the client machine level being possible.

32
g) Management Ease
MySQL offers exceptional quick-start capability with the average time from software
download to installation completion being less than fifteen minutes. This rule holds true
whether the platform is Microsoft Windows, Linux, Macintosh, or UNIX.

8.1.4 PHP Main Features of MySQL


• Tested with a broad range of different compilers.
• Works on many different platforms.
• The MySQL Server design is multi-layered with independent modules.
• Fully multi-threaded using kernel threads. It can easily use multiple CPUs if they are
available.
• Provides transactional and non-transactional storage engines.
• Uses very fast B-tree disk tables with index compression.
• Relatively easy to add other storage engines. This is useful if you want to provide an
SQL interface for an in-house database.
• A very fast thread-based memory allocation system.
• Very fast joins using an optimized one-sweep multi-join.
• In-memory hash tables, which are used as temporary tables.
• SQL functions are implemented using a highly optimized class library and should be as
fast as possible. Usually there is no memory allocation at all after query initialization.

9. Software Development Process:

9.1 Life Cycle Used to develop this Project

Life cycle used ---- SDLC


Systems Development Life Cycle (SDLC), or Software Development Life Cycle, in systems
engineering and software engineering relates to the process of developing systems, and the
models and methodologies that people use to develop these systems, generally computer or
information systems.
In software engineering this SDLC concept is developed into all kinds of software
development methodologies, the framework that is used to structure, plan, and control the
process of dev

9.1.1 Overview
Systems Development Life Cycle (SDLC) is any logical process used by a systems analyst
to develop an information system, including requirements, validation, training, and user
ownership. An SDLC should result in a high quality system that meets or exceeds customer

33
expectations, within time and cost estimates, works effectively and efficiently in the current
and planned Information Technology infrastructure, and is cheap to maintain and cost-
effective to enhance.
Computer systems have become more complex and usually (especially with the advent of
Service-Oriented Architecture) link multiple traditional systems often supplied by different
software vendors. To manage this, a number of system development life cycle (SDLC)
models have been created: waterfall, fountain, spiral, build and fix, rapid prototyping,
incremental, and synchronize and stabilize. Although in the academic sense, SDLC can be
used to refer to various models, SDLC is typically used to refer to a waterfall methodology.
In project management a project has both a life cycle and a "systems development life cycle"
during which a number of typical activities occur. The project life cycle (PLC) encompasses
all the activities of the project, while the systems development life cycle (SDLC) is focused
on accomplishing the product requirements.

9.2 Systems Development Phases


Systems Development Life Cycle (SDLC) adheres to important phases that are essential for
developers, such as planning, analysis, design, and implementation, and are explained in
the section below. There are several Systems Development Life Cycle Models in existence.
The oldest model, that was originally regarded as "the Systems Development Life Cycle" is
the waterfall model: a sequence of stages in which the output of each stage becomes the
input for the next. These stages generally follow the same basic steps but many different
waterfall methodologies give the steps different names and the number of steps seems to
vary between 4 and 7. There is no definitively correct Systems Development Life Cycle
model, but the steps can be characterized and divided in several steps.
8.2.1 Initiation
8.2.2 System Concept Development
8.2.3 Planning Requirement Analysis
8.2.4 Design
8.2.5 Development
8.2.6 Integration Test
8.2.7 Implementation
8.2.8 Operation & Maintenance

9.2.1 INITIATION PHASE


The Initiation Phase begins when a business sponsor identifies a need or an opportunity.
The purpose of the Initiation Phase is to:
· Identify and validate an opportunity to improve business accomplishments of the
organization or a deficiency related to a business need.
· Identify significant assumptions and constraints on solutions to that need.

34
· Recommend the exploration of alternative concepts and methods to satisfy the need
including questioning the need for technology, i.e., will a change in the business process
offer a solution?
· Assure executive business and executive technical sponsorship.

9.2.2 System Concept Development Phase


The System Concept Development Phase begins after a business need or opportunity is
validated by the Agency/Organization Program Leadership and the Agency/Organization
CIO. The purpose of the System Concept Development Phase is to:
· Determine the feasibility and appropriateness of the alternatives.
· Identify system interfaces.
· Identify basic functional and data requirements to satisfy the business need.
· Establish system boundaries; identify goals, objectives, critical success factors, and
performance measures.
· Evaluate costs and benefits of alternative approaches to satisfy the basic functional
requirements
· Assess project risks
· Identify and initiate risk mitigation actions, and
· Develop high-level technical architecture, process models, data models, and a concept of
operations.

9.2.3 PLANNING PHASE


9.2.3.1 Problem Recognition
A problem is well defined very rarely. It corps out with a vague feeling of some statements
that lead to vague conclusions. So the first task is to get more crucial information by
interviewing and meeting concerned people. It clarifies how the problem is felt, how often it
occurs, how it affects the business and which departments are suffering with this. This phase
consists of the following tasks.

9.2.3.2 Problem Definition And Initial Investigation


This was a preliminary investigation done with a view to have a “feel” of the working of the
proposed system. This phase has identified the end-user directly involved in the system who
were the managers, assistant officer and database administrator, and the development
department. By understanding the working of the database, its flow and also after conducting
meetings and interviews with the concerned persons of the department, a clear idea about
the working was obtained. A flexible approach is adapted towards people who are
interviewed. Short hand written notes are prepared based on the response of the
employees. The interviews are preferably conducted at the workplace of the person being
interviewed. Detailed investigation is done in order to define the scope of the problem .The
interview is concluded with a quick resume of the ground covered during the interview .The
Questionnaire technique is combined with interviews to get the best result. Proper care has

35
been taken in the design of such questionnaires so that the persons answering these
questions do not feel hesitant. An explanatory note that serves to gain cooperation and
avoid misunderstanding by setting out the purpose of the exercise clearly accomplishes
each questionnaire.

9.2.3.3 Feasibility study


A feasibility study is a test of a system proposal according to its workability impact on
organization, ability to meet user needs and effective use of resources. The objective of a
feasibility study is not to solve a problem but to acquire a sense of its scope. During the
study, the problem definition is crystallized and the aspects of the problem to be included in
the system are determined. After the initial investigation of the system that helped to have in-
depth study of the existing system, understanding its strength and weaknesses and the
requirements for the new proposed system.

Feasibility study was done in three phases documented below.

9.2.3.3.1 Behavioral feasibility:


People are inherently resistant to change and computers have been known to facilitate
change. There is always some reluctance among the users against the introduction of a new
system but they were told that this system would eliminate the unnecessary overhead of
database migration and conversion, which presently had to be carried out on a daily basis to
facilitate transactions between the different departments. The objective this feasibility phase
is to take the operational staff into confidence

9.2.3.3.2 Economic feasibility:


Economic feasibility is the most frequently used method for evaluating the effectiveness of
the candidate system. More commonly known as cost\benefit analysis, the procedure is to
determine the benefits and savings that are expected from a candidate system and compare
them with the costs. If benefits outweigh the costs, then the decision is made to design and
implement the system. A cost\benefit analysis was done for the proposed system to evaluate
whether it would be economically viable or not.

9.2.3.3.3 Technical feasibility:


Technical feasibility centers on the existing computer system. (Hardware/software) and to
what extent it can support the proposed addition also the organization already has sufficient
high-end machines to serve the processing requirements of the proposed system. So there
is no need to purchase new software as the organization has necessary software
i.e.tomcat5.0, j2ee1.4, Microsoft SQL Server or hardware to support the proposed system

36
9.2.4 ANALYSIS PHASE
9.2.4.1 Existing System Details and Problems
It was difficult to set the JDK information on the system in the meantime. Moreover it was a
time consuming affair if a person is new to start working with java.
• It was difficult to solve the problems those were arising during a particular
installation of the software because of hardware compatibility issues.
• Also there is usage of an issue concerning the software .This issue has been
resolved by the WEB-IDE by providing Integrated Environment facility to its users.
• This system provides the feature of uploading a java file already on the local
machine of the user or he can make altogether a new java program using this IDE and save
it on his local machine also..

9.2.5 User Requirements


Since end users are the ones who are finally going to use the system, their requirements
need to be identified. This involves questioning the end users what their expectations were.
The main requirement of the end user is that the system should be easy to use and take less
time. In addition to these another important factor was to eliminate the need for database
conversion and migration that had to be carried out presently. After conducting interviews
with the users a document called the software requirement specification was created. This is
the most important document that forms the basis for system development. It should be
consistent, complete, unambiguous, traceable and inter-related.
This document has the following components:

9.2.6 Functional Requirements:


The functional requirements specify the relationship between the inputs and outputs. All the
operations to be performed on the input data to obtain output are to be specified. This
includes specifying the validity checks on the input and output data, parameters affected by
the operations and the other operations, which must be used to transform the inputs into
outputs. Functional requirements specify the behavior of the system for valid input and
outputs.

9.2.7 Performance Requirements


This section includes performance of the product that is set by user interaction and studying
the existing system of the organization. These are stated in complete measurable terms, so
that they can be verified during the system evaluation phase. Some of the performance
requirements are stated below.

37
9.2.8 DEVELOPMENT PHASE
Effective completion of the previous stages is a key factor in the success of the Development
phase. The Development phase consists of:
· Translating the detailed requirements and design into system components.
· Testing individual elements (units) for usability.
· Preparing for integration and testing of the IT system.

9.2.9 INTEGRATION AND TEST PHASE


Subsystem integration, system, security, and user acceptance testing is conducted during
the integration and test phase. The user, with those responsible for quality assurance,
validates that the functional requirements, as defined in the functional requirements
document, are satisfied by the developed or modified system. OIT Security staff assess the
system security and issue a security certification and accreditation prior to
installation/implementation. Multiple levels of testing are performed, including:
· Testing at the development facility by the contractor and possibly supported by end users
· Testing as a deployed system with end users working together with contract personnel
· Operational testing by the end user alone performing all functions.

9.2.10 IMPLEMENTATION PHASE


This phase is initiated after the system has been tested and accepted by the user. In this
phase, the system is installed to support the intended business functions. System
performance is compared to performance objectives established during the planning phase.
Implementation includes user notification, user training, installation of hardware, installation
of software onto production computers, and integration of the system into daily work
processes.
This phase continues until the system is operating in production in accordance with the
defined user requirements.

9.2.11 OPERATIONS AND MAINTENANCE


PHASE
The system operation is ongoing. The system is monitored for continued performance in
accordance with user requirements and needed system modifications are incorporated.
Operations continue as long as the system can be effectively adapted to respond to the
organization’s needs. When modifications or changes are identified, the system may reenter
the planning phase. The purpose of this phase is to:
· Operate, maintain, and enhance the system.
· Certify that the system can process sensitive information.

38
· Conduct periodic assessments of the system to ensure the functional requirements
continue to be satisfied.
· Determine when the system needs to be modernized, replaced, or retired.

9.2.12 DISPOSITION PHASE


Disposition activities ensure the orderly termination of the system and preserve the vital
information about the system so that some or all of the information may be reactivated in the
future if necessary. Particular emphasis is given to proper preservation of the data
processed by the system, so that the data can be effectively migrated to another system or
archived for potential future access in accordance with applicable records management
regulations and policies. Each system should have an interface control document defining
inputs and outputs and data exchange. Signatures should be required to verify that all
dependent users and impacted systems are aware of disposition.

10 Module Description
BLOOD DONATION
is a website based on PHP The purpose of this project was to develop a blood management
information system to assist in the management of blood donor records and ease or control
the distribution of blood in various parts of the country based on the hospital's demand. .
This project includes mainly two modules i.e login and main page.

10.1 Login:
10.1.1 Admin

10.1.2 User
10.1Admin: The page requires a username and password to start the application. Login is a
process by which individual access to a computer system is controlled by identifying and
authenticating the user through the cardinalities presented by the user. Admin can add
update or delete the user, city, state, camp etc.

39
10.2 User: User can register the account by filling the information about you and clicking on
the save button. He/she can add the account for the further enquiry of the blood donation.
The user has to login to get more information about the blood bank.

10.2 Admin are of a two type:


1. Admin level user
2. General level user

40
10.2.1 Admin level user:
Admin level users are an admin user, if he/she logs in an admin panel they work on all the
pages of the admin site like add user, update user, delete user, add city, update city, delete
city etc.

10.2.2 General level user:


General level users are a general user, if he/she logs in an admin panel they don't see all
the pages of the admin site like add user, update user, delete user, add city, update city,
delete city etc. They work on only the addition of the new user, city, state, camp etc.

41
10.3 Main Page:
● 10.3.1 Main Window
● 10.3.2 Registration Page
● 10.3.3 Donor login

10.3.1 Main Window:-


The BLOOD BANK MANAGEMENT SYSTEM is a great project. This project is designed
for successful completion of projects on the blood bank management system. The basic
building aim is to provide blood donation service to the city recently. Blood Bank
Management System (BBMS) is a browser based system that is designed to store, process,
retrieve and analyze information concerned with the administrative and inventory
management within a blood bank. This project aims at maintaining all the information
pertaining to blood donors, different blood groups available in each blood bank and helping
them manage in a better way.

10.3.2 Registration Page:


Registration page includes the information of the donor who wants to register. Donors can
register the account by clicking on the new register. He/she can add the account for the
further enquiry of the blood donation.

42
10.3.3 Donor login:-
The page requires a donor id and password to open the door panel. Login is a process by
which individual access to a computer system is controlled by identifying and authenticating
the user through the cardinalities presented by the user. Donors can change passwords,
update profiles or view donations etc.

11.Complete DFD & E-R Diagrams

11.1 INTRODUCTION ER DIAGRAM


The entity-relationship data model is based on a perception of a real world that consists of a
collection of basic objects called entities and of relationships among these objects. An entity

43
is an “object” in the real world that is distinguishable from other objects. For e.g. each
customer is an entity and rooms can be considered to be entities. Entities are described by a
set of attributes. For e.g. the attributes Room no. and Room type describes a particular
Room in a hotel. The set of all entities of the same type and the set of all relationships of the
same type are termed as an entity set and relationship set respectively.
The logical structure of a database can be expressed graphically by an E- R diagram
consists of the following major components:

11.1.1 Entity
Entity
An entity is an “object” in the real world that is distinguishable from all other objects. An
entity set is a set of entities of the same type that share the same attributes.

11.1.2 Weak Entity


An entity set that may not have sufficient attributes to form a primary key is termed as a
weak entity set.
Entity

11.1.3 Attribute
Attributes are descriptive properties possessed by each member of an entity set.

11.1.4 Key attribute


A key attribute is the unique, distinguishing characteristic of the entity. For example, Guest
ID might be the guest’s key attribute.

11.1.5 Multivalued attribute


In an instance where an attribute has a set of values for a specific entity is called multivalued
attribute.

11.1.6 Derived attribute


In these attributes the value can be derived from the values of other related attributes.

11.1.7 Relationships
A relationship is an association among several entities.

44
Relationship
For e.g., we can define a relationship that associates customer Job with Room 142.This
relationship specifies that Jon is a customer with Room No.142.

11.1.8 Recursive Relationship


In some cases, entities can be self-linked. For example, Employees can supervise other
employees in a hotel.

Employee

● While using E-R diagrams, we can follow certain guidelines, which are as follows:
● Unnecessary attributes should not be introduced.
● Entities should be merged with common attributes.
● A complex entity should be simplified by decomposing a complex attribute into sub
attributes.
● We should generalize or specialize wherever possible and appropriate.
Generalization is the result of taking the union of several lower entity sets to produce
higher- level entity sets.

11.2 Data flow diagram


11.2.1 INTRODUCTION OF DFD:-
A DFD, in simple words, is a hierarchical graphical model of a system that shows the
different processing activities or functions that the system performs and the data interchange
among these functions. In the DFD terminology, it is useful to consider each function as a
process that consumes some input data and produces some output data.
The DFD (also known as the bubble chart) is a simple graphical formalism that can be used
to represent a system in terms of the input data to the system, various processing carried out
on these data, and the output data generated by the system) The main reason why the DFD
technique is so popular is probably because of the fact that DFD is a very simple formalism-
it is simple to understand and use. A DFD model uses a very limited number of primitive
symbols to represent the functions performed by a system and the data flow among these
functions. Starting with a set of high-level functions that a system performs, a DFD model
hierarchically represents various sub functions. In fact, any hierarchical model is simple to
understand. Human mind is such that it can easily understand any hierarchical model of a

45
system-because in a hierarchical model, starting with a very simple and abstract model of a
system; different details of the system can be slowly introduced through different hierarchies.

11.2.2 CONTEXT DIAGRAM:


A special data flow diagram(DFD) known as context diagram that represents an entire
system as a single process and highlights the interfaces between the system and the outside
entities.

11.2.3 NEED OF DFD


DFD aim’s to capture the transformation that takes place within a system to the input data so
that eventually output is produced. It makes it easier for users to understand the flow of data.

11.2.4 Primitive Symbols Used for Constructing


DFDs

SYMBOLS NAME SYMBOLS USED DESCRIPTION

FUNCTION OR Shows a part of the system


PROCESS (CIRCLE) that transforms input into
output.

EXTERNAL ENTITY Source or destination of data


flow.

DATA FLOW (ARROW) Shows movement of data


from one part of the system
to another.

46
DATA STORE To model collection of data
at rest.

11.2.4.1 Function Symbol


A function symbol is represented as a circle. This symbol is called a Process or a bubble.
Bubbles are annotated with the names of corresponding functions.

11.2.4.2 External entity Symbol


An external entity such as a manager, customer, etc. is represented by a rectangle. The
external entities are essentially those physical entities external to the software system, which
interact with the system by inputting data to the system or by consuming the data produced
by the system. In addition to the human users, the external entity symbols can be used to
represent external hardware and software such as another application software.
External
Entity

11.2.4.3 Data flow symbol


A directed arc or an arrow is used as a data flow symbol. A data flow symbol represents the
data flow occurring between two processes, or between an external entity and a process, in
the direction of the data flow arrow. Data flow symbols are usually annotated with the
corresponding data names.

11.2.4.4 Data Store Symbol


A data store represents a logical file. It is represented using two parallel lines. A logical file
can represent either a data store symbol which can represent either a data structure or a
physical file on disk. Each data store is connected to a process by means of a data flow
symbol. The direction of the data flow arrow shows whether data is being read from or
written into a data store. An arrow flowing in or out of a data store implicitly represents the
entire data of the data store and hence arrows connecting to a data store need not to be
annotated with the name of the corresponding data items.

11.2.5 DFD FOR ADMIN LOGIN


After entering the homepage of the website , admin can choose the ADMIN LOGIN option
where they are asked to enter username & password , and if he/she is a valid user then
admin login page will be displayed.

47
11.2.6 DFD FOR USER LOGIN
After entering the homepage of the website , students can choose the USER LOGIN option
where they are asked to enter username & password , and if he/she is a valid user then a
user login page will be displayed.

11.2.7 DFD FOR ACCOUNT CREATION


After the home page login there will be an option of CREATE AN ACCOUNT where after
entering user detail ,if all the fields are filled then a request will be sent to the librarian who
will approve him as a registered member of the website.

12. SOFTWARE TESTING


Testing is the process of executing programs with the intention of finding out errors. During
the process, the project is executed with a set of tests and the output of the website is
evaluated to determine if the project is performing as expected. Testing makes a logical
assumption that if all the parts of the module are correct then the goal will be successfully
achieved. Testing includes after the completion of the coding phase. The project was tested
from the very beginning and also at each step by entering different types of data. In the
testing phase some mistakes were found, which did not come to knowledge at the time of
coding the project. Then changes were made in the project coding so that it may take all the
relevant data and gives the required result. All the forms were tested one by one and made
all the required changes.
Testing is vital to the success of the system. Testing makes a logical assumption that if all
the parts of the system are correct, the goal will be successfully achieved. A small system
error can conceivably explode into a much larger problem. Effective testing early in the
process translates directly into long-term cost savings from a reduced number of errors. For
the verification and validation of data various-nesting tasks are performed. Testing is itself
capable of finding the syntactical mistakes in the system but users need to test the system
for logical checking.

48
12.1 LEVELS OF TESTING:
The aim of the testing process is to identify all the defects in the website. It is not practical to
test the website with respect to each value that the input request data may assume. Testing
provides a practical way of reducing defects in the website and increasing the user’s
confidence in a developed system. Testing consists of subjecting the website to a set of test
inputs and observing if the program behaves as expected. If the program fails to Testing
behave as expected then conditions under which failure occurs are noted for later debugging
and correction. The following things are associated with testing:
Failure is a manifestation of an error. But the mere presence of an error may not necessarily
lead to a failure. A test case is the triplet [I, S, O] where I am data input to the system. S is
the state of the state of the system at which the data is input, O is the expected output of the
system A test suite is the set of all test cases with which a given software product is to be
tested.

12.2 FUNCTIONAL TESTING:


Here the system is a black box whose behavior is determined by studying its inputs and
related outputs. The key problem is to select the inputs that have a huge probability of being
members of a set in many cases; the selection of these test cases is based on the previous
studies.

12.3 STRUCTURAL TESTING:


A great deal can be learnt about the strength and the limitation of the application by
examining the manner in which the system breaks. This type of testing has two limitations.
It tests failure behavior of the system circumstances may arise through an unexpected
combination of events where the node placed on the system exceeds the maximum
anticipated load.
The structure of each module was checked at every step. Some structures were firstly
wrong, which came to notice at the time of the connectivity.

12.4 UNIT TESTING:


In unit testing the entire individual functions and modules were tested independently. By
following this strategy all the errors in coding were identified and corrected. This method was
applied in combination with the white and black box testing techniques to find the errors in
each module.
Unit testing is normally considered an adjunct to the coding step. Unit test case design was
started after source level code had been developed, reviewed, and verified for correct
syntax. A review of design information provides guidance for establishing test cases that

49
were likely to uncover errors in each of the categories discussed above. Each test case was
coupled with a set of expected results.

12.4.1 Testing admin login form:-


This form is used for login of administrator of the system.In this we enter the username and
password if both are correct administration page will open otherwise if any of data is wrong it
will get redirected back to the login page and again ask for username and password

12.4.2 Test For Admin Module


User Account Addition:- In this section the admin can verify User details from student
academic info and then only add student details to main library database it contains add and
delete buttons if user click add button data will be added to student database and if he clicks
delete button the student data will be deleted

12.4.3 Book Addition-


Admin can enter details of books and can add the details to the main book table also he can
view the books requests .

12.4.4 Test for User login module


Test for User login Form:-This form is used for login of user .In this we enter the, username
and password if all these are correct User login page will open otherwise if any of data is
wrong it will get redirected back to the login page and again ask for username and
password.
Test for account creation:- This form is used for new account creation when the user does
not fill the form completely it asks again to fill the whole form when he fills the form fully it
gets redirected to the page which shows waiting for confirmation message as his data will be
only added by administrator after verification.

12.5 INTEGRITY TESTING:


Integrity phases the entire module using the bottom-up approach and tests them. Integrity
testing is a systematic technique for constructing the program structure while at the same
time conducting tests to uncover errors associated with interfacing. The objective was to
take unit tested modules and build a program structure that has been dictated by design.
The testing strategy has two different approaches namely the top-down approach in which
the integration is carried out from the top-level module to the bottom and the bottom-up
approach in which the integration is carried out from the low-level module to the top.
The modules were tested using the bottom-up approach by introducing stubs for the top-
level functions. This test was used to identify the errors in the interfaces, the errors in
passing the parameters between the functions and to correct them.

50
• There are two types of testing available:

12.5.1 Black Box Testing:-

In black box testing the structure of the program is not considered. Test cases are decided
solely on the basis of the requirements or specifications of the program or module, and the
consideration for selection of test classes. In this section, we will present some techniques
for generating test cases for black-box testing. In black-box testing, the testing only knows
the inputs that can be given to the system and what output the system can give. In other
words the basis for deciding test cases in functional testing is the requirement or
specification of the system module. This form of testing is obvious functional or behavioral
testing.
The most obvious functional testing procedure is exhaustive testing, which as we have
stated, is empirical. One criterion for generating test causes is that strategy has little chance
of resulting in a set of test causes that is close to optimal(i.e. that detects the maximum
errors with minimum test cases). Hence we need some other criterion or rule for selecting
test cases. There are no formal rules for designing test cases for functional testing. In fact
there are no precise criteria for selecting test cases however, they have been found to be
very successful in detecting errors. Here we mention some of these techniques.

12.5.2 White Box Testing:-

In the previous section we discussed testing, which is concerned with the function that the
tested program is proposed to program and does not deal with the internal structure of the
program responsible for actually implementing that function. Those black-box testing is
concerned with functionality rather than implementation of the program. On the other hand,
white-box testing is concerned with testing implementation of the program. The intent of this
testing is not to exercise all the different input or output conditions(although that may be to
buy products) but to exercise the different programming structures and data structures used
in the program. White-box testing is also called structure testing and we will use the two
terms interchangeably to test the structures of a program, structural testing aims to achieve
test cases that force the desired coverage of different structures various criteria have been
proposed for this. Unlike the criteria for functional testing which are frequently imprecise, the
criteria for structural testing are generally quite precise as they are based on program
structures, which are formal and precise.

51
13.Complete Snapshots

13.1 Home page:-


This is the home page or the main page of a blood bank management system. This is the
main page of a client side. This page defines everything related to the project. This page
also includes the gallery of the camps.
● Blood Donor
● Equipments
● Stick
● Blood Recipient
● Blood collection
● Camp
● Stock details
● blood bank system project Reports
● Blood issued
● Blood bank system project

Figure 13.1:Home Page of life saver

13.2 Registration
Registration page includes the information of the donor who wants to register. Donors can
register the account by clicking on the new register. He/she can add the account for the
further enquiry of the blood donation.

52
Figure 13.2:Registration page of Life Saver

13.3 Request For Blood


Request for blood page includes the information of the donor who wants to register. Donors
can register the account by clicking on the new register. He/she can send requests for the
further enquiry of the blood donation.

Figure 13.3:Request for Blood page

53
13.4 Camps
Camp page includes the information about camps, these camps organised the blood
donation camp. Donors can register the account by clicking on the new register.

Request for blood page includes the information of the donor who wants to register. Donors
can register the account by clicking on the new register. He/she can send requests for the
further enquiry of the blood donation.

Figure 13.4:Camps of Blood group

13.5 Donor Login


It is the login menu, I have set a default Email and password for it. This mail id and password
are stored in a binary file inside this project. For Password security I have replaced the
password's alphanumeric character with a special symbol, Dollar ($) symbol.
If you enter the correct mail id and password, It will allow you to move to the next menu,
otherwise it will show you an error message and ask you to invalid mail id and password.
Request for blood page includes the information of the donor who wants to register. Donors
can register the account by clicking on the new register. He/she can send requests for the
further enquiry of the blood donation.

54
Figure 13.5:DONOR Login

13.6 Search
Search button is used for searching the donations of blood for different blood groups.
Blood groups name
• A
• A+
• B
• B+
• AB+
• AB_
• O+
• O-

55
Figure 13.6:Search for Blood

13.7 Contact
In contact page any one who wants to need blood or gain information about this system then
he/she can contact us.
Person will get the blood immediately he/she requested for the particular blood group he/she
Has requested.

Figure 13.7:Contact Us

13.8 Donor Panel


This page is the welcome page of the donor panel. In this page include all the module
related to Donor like :
Change password
Update profile
Blood donated
View donation
View requested
Logout

Figure 13.8:Welcome To Donor Panel

56
13.9 Change Password
Above snap short describes how the donor changes our password .This is only used by a
donor.

Figure 13.9:Change Password

13.10 Update Profile


Above snap short describes how the donor updates our profile .This is only used by a donor.

Figure 13.10:update Profile

13.11 Blood Donated


Above snap short description about donation from donor.This is only used by a donor.
Person will get the blood immediately he/she requested for the particular blood group he/she
has requested.

57
Figure 13.11:Blood Donated

13.12 Admin Panel


This is the admin side of the project, shows all the admin pages like addition , updation,
deletion of the user, city,state,camps etc.
Person will get the blood immediately he/she requested for the particular blood group he/she
has requested.

Figure 13.12:Admin Panel

58
13.13 Add user
Show the addition of users.
Person will get the blood immediately he/she requested for the particular blood group he/she
has requested.

Figure 13.13:Admin Panel

13.14 Update User


Show the update of the user.

Figure 13.14:Update User

59
13.15 Add City
Show the addition of the city.
Person will get the blood immediately he/she requested for the particular blood group he/she
has requested.

Figure 13.15:Add City

13.16 Update City


Show the update of the city.
Person will get the blood immediately he/she requested for the particular blood group he/she
has requested.

60
Figure 13.16:Update City

13.17 Add Camp


Show the addition of camp.
Person will get the blood immediately he/she requested for the particular blood group he/she
has requested.

Figure 13.17:Add Camp

61
13.18 Update Camp
Show the update of camp.
Person will get the blood immediately he/she requested for the particular blood group he/she
has requested.

Figure 13.18:Update Camp

13.19 Add State


Show the addition of state.
Person will get the blood immediately he/she requested for the particular blood group he/she

62
has requested.

Figure 13.19:Add State

13.20 Update State


Show the update of state.
Person will get the blood immediately he/she requested for the particular blood group he/she
has requested.

Figure 13.20:Update State

63
13.21 View Blood Group
This snapshot shows all the blood groups. This shows the blood group name and id.
Person will get the blood immediately he/she requested for the particular blood group he/she
has requested.

Figure 13.21: View Blood Group

14.Summary and Conclusion


With the theoretical inclination of our syllabus it becomes very essential to take the utmost
advantage of any opportunity of gaining practical experience that comes along. The building
blocks of this Major Project ”BLOOD BANK Management System'' was one of these
opportunities. It gave us the requisite practical knowledge to supplement the already taught
theoretical concepts thus making us more competent as a computer engineer. The project
from a personal point of view also helped us in understanding the following aspects of
project development:

64
• The planning that goes into implementing a project.
• The importance of proper planning and an organized methodology.
• The key element of team spirit and coordination in a successful project.

The project also provided us the opportunity of interacting with our teachers and to gain from
their best experience

15.Future Recommendation
BLOOD BANK MANAGEMENT is a software application built in such a way that it should
suit all types of blood banks in the future.
One important future scope is availability of location based blood bank details and extraction
of location based donor’s detail, which is very helpful to the acceptant people. All the time
the network facilities cannot be used. This time donor request does not reach in proper time,
this can be avoided through adding some message sending procedure that will help to find a
proper blood donor in time. This will provide availability of blood in time.

65

You might also like