Blood Bank

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 62

Blood Bank Management System for CUTM

1. INTRODUCTION
The number of persons who are in need of blood are increasing in large number day by day.
In order to help people who are in need of blood, my Online Blood Bank can be used effectively
for getting the details of blood donors having the same blood group and within the same city.
With the help of my Online Blood Bank people who are having the thought of donating blood
gets registered in my Online Blood Bank giving his total details.

Online Blood Bank site is available to everyone easily. A person who likes to donate blood
gives his entire details i.e., fill in the registration form and can create a username with a
password by which he can modify his details if at all there are any changes in his information
given before.

This site also helps people who are in need of blood by giving the details of the donors by
searching, if at all there are no donors having the same group and within their own city they will
be given the addresses with phone numbers of some contact persons in major cities who
represent a club or an organization with free of cost. If at all the people find any difficulty in
getting blood from the contact persons we will give them a Mobile Link i.e., India’s Largest
Paging Service number through which they can give the message on every ones pagers with the
blood group and city they are living in, such that the donors who view the messages in their
pagers having the same blood group and the in the same city, he contacts the person on phone
who are in need of a blood. Such that the person gets help from us which saves his life

Now-a-days, management and maintenance of Blood Donors and receivers information is hefty
task for any institution. The Blood Bank information consists of maintaining the reports of donors
and receivers information periodically which seems to be a huge workload on lecturers to handle
and update by the concerned. The traditional way is, recording manually in a log book and then
converting into desktop application. Such system can be tedious process and may often lead to
errors while generation reports. Apart from this, sometimes the sheets are lost, misplaced or
information wrongly entered due to various reasons. In order to reduce the manual work and to
achieve more efficiency in managing blood bank information, a “mobile responsive Blood Bank
Management System” can be applied to make this process more easy and beneficial in every way.

TKREC-CSE Dept 1
Blood Bank Management System for CUTM

1.1. Objective
In order to avoid above existing manual register problem, we are planning to design a
system for to automate this process, so that taking the records and report generation becomes more
interactive, automated and effective.

The present project elucidates the following features.

i. Registering the Donors


ii. Modification of Donor Information
iii. Searching a Donor
iv. Life Saving Contacts (in major cities)
v. Mobile link Paging Services
vi. Daily records will be placed through Mobile Responsive Web Application which can be
maintained in the database. It reduces the paper work and storage area.
vii. Save time & work load for Faculties, Heads of Departments and Organisation
Administration.
viii. Easy to access.
ix. Feedback reports can be generated very easily.
x. Easy and quick process.

It will have a user friendly interface.

1.1System Development:

The process of building systems has always been complex with system becoming larger, the
costs and complexities get multiplied. So the need for better methods for developing systems is
widely recognized to be effective and the applied model should meet a few basic requirements.

 The model should be structured and cover the entire system development process from
feasibility study to programming, testing and implementation.

TKREC-CSE Dept 2
Blood Bank Management System for CUTM

 The model should utilize established methods and techniques like database designs,
normalizations and structured programming techniques.
 The model should consist of building blocks, which define tasks, results and interfaces.
 The model should separate the logical system from the physical system.
 Documentation should be a direct result of the development work and should be concise,
precise and as non-redundant as possible.

Based on the above requirements of the system model, system study has been made.
Various methodologies have been applied for system study, evolving design documents, data
modeling, input screen design and report design.

1.2 Project:

The persons who like to donate blood registers in my site as well as he can modify the
details if necessary, giving the Login Id and Password. The persons in need of blood searches
for the persons having the same blood group and within the city.

If he found a donor in his city then he gets the total details of the donor, if he doesn’t
find any donor then he is given the contact numbers a

TKREC-CSE Dept 3
Blood Bank Management System for CUTM

2. LITERATURE SURVEY
2.1. PHP

PHP is a server-side scripting language designed primarily for web development but also
used as a general-purpose programming language. Originally created by Rasmus Lerdorf in 1994,
the PHP reference implementation is now produced by The PHP Development Team. PHP
originally stood for Personal Home Page, but it now stands for the recursive acronym PHP:
Hypertext Preprocessor.

PHP code may be embedded into HTML or HTML5 markup, or it can be used in
combination with various web template systems, web content management systems and web
frameworks. PHP code is usually processed by a PHP interpreter implemented as a module in the
web server or as a Common Gateway Interface (CGI) executable. The web server software
combines the results of the interpreted and executed PHP code, which may be any type of data,
including images, with the generated web page. PHP code may also be executed with a command-
line interface (CLI) and can be used to implement standalone graphical applications.

The standard PHP interpreter, powered by the Zend Engine, is free software released under
the PHP License. PHP has been widely ported and can be deployed on most web servers on almost
every operating system and platform, free of charge.

The PHP language evolved without a written formal specification or standard until 2014,
leaving the canonical PHP interpreter as a de facto standard. Since 2014 work has gone on to create
a formal PHP specification.

PHP stores integers in a platform-dependent range, either a 64-bit or 32-bit signed integer
equivalent to the C-language long type. Unsigned integers are converted to signed values in certain
situations; this behavior is different from that of other programming languages. Integer variables
can be assigned using decimal (positive and negative), octal, hexadecimal, and binary notations.

TKREC-CSE Dept 4
Blood Bank Management System for CUTM

Floating point numbers are also stored in a platform-specific range. They can be specified
using floating point notation, or two forms of scientific notation.[96] PHP has a native Boolean
type that is similar to the native Boolean types in Java and C++. Using the Boolean type conversion
rules, non-zero values are interpreted as true and zero as false, as in Perl and C++. The null data
type represents a variable that has no value; NULL is the only allowed value for this data type.

Variables of the "resource" type represent references to resources from external sources.
These are typically created by functions from a particular extension, and can only be processed by
functions from the same extension; examples include file, image, and database resources.

Arrays can contain elements of any type that PHP can handle, including resources, objects,
and other arrays. Order is preserved in lists of values and in hashes with both keys and values, and
the two can be intermingled. PHP also supports strings, which can be used with single quotes,
double quotes, nowdoc or heredoc syntax. The Standard PHP Library (SPL) attempts to solve
standard problems and implements efficient data access interfaces and classes.

Basic object-oriented programming functionality was added in PHP 3 and improved in


PHP 4. This allowed for PHP to gain further abstraction, making creative tasks easier for
programmers using the language. Object handling was completely rewritten for PHP 5, expanding
the feature set and enhancing performance. In previous versions of PHP, objects were handled like
value types. The drawback of this method was that code had to make heavy use of PHP's
"reference" variables if it wanted to modify an object it was passed rather than creating a copy of
it. In the new approach, objects are referenced by handle, and not by value.

PHP 5 introduced private and protected member variables and methods, along with abstract
classes, final classes, abstract methods, and final methods. It also introduced a standard way of
declaring constructors and destructors, similar to that of other object-oriented languages such as
C++, and a standard exception handling model. Furthermore, PHP 5 added interfaces and allowed
for multiple interfaces to be implemented. There are special interfaces that allow objects to interact
with the runtime system. Objects implementing ArrayAccess can be used with array syntax and
objects implementing Iterator or IteratorAggregate can be used with the foreach language
construct. There is no virtual table feature in the engine, so static variables are bound with a name
instead of a reference at compile time.

TKREC-CSE Dept 5
Blood Bank Management System for CUTM

If the developer creates a copy of an object using the reserved word clone, the Zend engine
will check whether a __clone() method has been defined. If not, it will call a default __clone()
which will copy the object's properties. If a __clone() method is defined, then it will be responsible
for setting the necessary properties in the created object. For convenience, the engine will supply
a function that imports the properties of the source object, so the programmer can start with a by-
value replica of the source object and only override properties that need to be changed.

2.2. Codeigniter

CodeIgniter is a PHP-driven framework, containing a grab-bag of libraries, helpers, plug-


ins and other resources, that takes care of many of the more complex procedures and functions for
which PHP is famous. CodeIgniter does all the heavy lifting for you while maintaining high
performance. It will simplify PHP syntax, streamline the code underlying your web pages, and—
best of all—have you churning out dynamic, interactive, professional websites in no time. It is a
powerful PHP framework with a very small footprint, built for developers who need a simple and
elegant toolkit to create full-featured web applications. CodeIgniter was created by EllisLab, and
is now a project of the British Columbia Institute of Technology.

Here are some of the principal benefits of CodeIgniter

i. It makes coding in PHP simple, quick and user-friendly.


ii. It’s an excellent framework for learning more about how PHP works as you code.
iii. It underpins the Model/View/Controller (MVC) approach to web development—a best
practice philosophy all developers should adhere to.
iv. It’s built on a linear, easy-to-use folder structure.
v. It’s open source and simple to configure and customize for your own needs.
vi. You can construct your own cleaner URI lines in CodeIgniter.

The Model/View/Controller approach to programming aims to keep the business logic of


an application separate from the display logic, splitting the presentation aspect of an application

TKREC-CSE Dept 6
Blood Bank Management System for CUTM

(what the user sees in their browser) and the nuts and bolts that drive that application into three
interconnected tiers

i. The Model, which represents data structures. Classes contained within the Model tier will
contain methods that interact with a database.
ii. The View, which looks after presentation. A View will normally be a web page, but can
also be a page fragment like a header or footer.
iii. The Controller, which does most of the hard work, and is an intermediary between the
Model, the View, and any other resources needed to run your application.
Separating a project in this manner means each tier does its job extremely efficiently,
maintaining its relationship with other tiers yet operating within clearly defined boundaries. It also
means multiple Views and Controllers can interface with the same Model, and new or different
Views and Controllers can interface with a Model without forcing a change in the Model design.

2.3. Bootstrap

Bootstrap is a free and open-source front-end web framework for


designing websites and web applications. It contains HTML- and CSS-based design templates
for typography, forms, buttons, navigation and other interface components, as well as
optional JavaScript extensions. Unlike many web frameworks, it concerns itself with front-end
development only. Twitter Bootstrap is the most popular front end framework in the recent time.
It is sleek, intuitive, and powerful mobile first front-end framework for faster and easier web
development. It uses HTML, CSS and Javascript. This tutorial will teach you the basics of
Bootstrap Framework using which you can create web projects with ease. The tutorial is divided
into sections such as Bootstrap Basic Structure, Bootstrap CSS, Bootstrap Layout Components
and Bootstrap Plugins. Each of these sections contain related topics with simple and useful
examples. Bootstrap is a sleek, intuitive, and powerful, mobile first front-end framework for faster
and easier web development. It uses HTML, CSS and Javascript.

Features

TKREC-CSE Dept 7
Blood Bank Management System for CUTM

i. Mobile first approach

Bootstrap 3, framework consists of Mobile first styles throughout the entire library instead
them of in separate files.

ii. Browser Support

It is supported by all popular browsers.

iii. Easy to get started

With just the knowledge of HTML and CSS anyone can get started with Bootstrap. Also the
Bootstrap official site has a good documentation.

iv. Responsive design

Bootstrap's responsive CSS adjusts to Desktops, Tablets and Mobiles. More about the
responsive design is in the chapter Bootstrap Responsive Design.

v. Provides a clean and uniform solution for building an interface for developers.

vi. It contains beautiful and functional built-in components which are easy to customize.

vii. It also provides web based customization.

viii. And best of all it is an open source.

Bootstrap includes

i. Scaffolding

Bootstrap provides a basic structure with Grid System, link styles, and background. This is is
covered in detail in the section Bootstrap Basic Structure.

ii. CSS

Bootstrap comes with the feature of global CSS settings, fundamental HTML elements styled
and enhanced with extensible classes, and an advanced grid system. This is covered in detail in
the section Bootstrap with CSS.

TKREC-CSE Dept 8
Blood Bank Management System for CUTM

iii. Components

Bootstrap contains over a dozen reusable components built to provide iconography,


dropdowns, navigation, alerts, pop-overs, and much more. This is covered in detail in the
section Layout Components.

iv. JavaScript Plugins

Bootstrap contains over a dozen custom jQuery plugins. You can easily include them all, or
one by one. This is covered in details in the section Bootstrap Plugins.

v. Customize

You can customize Bootstrap's components, LESS variables, and jQuery plugins to get your
very own version.

2.4. Javascript

Javascript is a dynamic computer programming language. It is lightweight and most


commonly used as a part of web pages, whose implementations allow client-side script to interact
with the user and make dynamic pages. It is an interpreted programming language with object-
oriented capabilities. JavaScript was first known as LiveScript, but Netscape changed its name to
JavaScript, possibly because of the excitement being generated by Java. JavaScript made its first
appearance in Netscape 2.0 in 1995 with the name LiveScript. The general-purpose core of the
language has been embedded in Netscape, Internet Explorer, and other web browsers.

The ECMA-262 Specification defined a standard version of the core JavaScript language.

i. JavaScript is a lightweight, interpreted programming language.

ii. Designed for creating network-centric applications.

iii. Complementary to and integrated with Java.

iv. Complementary to and integrated with HTML.

v. Open and cross-platform

TKREC-CSE Dept 9
Blood Bank Management System for CUTM

Client-side JavaScript

Client-side JavaScript is the most common form of the language. The script should be
included in or referenced by an HTML document for the code to be interpreted by the browser. It
means that a web page need not be a static HTML, but can include programs that interact with the
user, control the browser, and dynamically create HTML content.

The JavaScript client-side mechanism provides many advantages over traditional CGI
server-side scripts. For example, you might use JavaScript to check if the user has entered a valid
e-mail address in a form field.

The JavaScript code is executed when the user submits the form, and only if all the entries
are valid, they would be submitted to the Web Server. JavaScript can be used to trap user-initiated
events such as button clicks, link navigation, and other actions that the user initiates explicitly or
implicitly.

Advantages of JavaScript
i. Less server interaction

You can validate user input before sending the page off to the server. This saves server traffic,
which means less load on your server.

ii. Immediate feedback to the visitors

They don't have to wait for a page reload to see if they have forgotten to enter something.

iii. Increased interactivity

You can create interfaces that react when the user hovers over them with a mouse or
activates them via the keyboard.

iv. Richer interfaces

You can use JavaScript to include such items as drag-and-drop components and sliders to
give a Rich Interface to your site visitors.

TKREC-CSE Dept 10
Blood Bank Management System for CUTM

Limitations of JavaScript

We cannot treat JavaScript as a full-fledged programming language. It lacks the following


important features

i. Client-side JavaScript does not allow the reading or writing of files. This has been kept
for security reason.

ii. JavaScript cannot be used for networking applications because there is no such support
available.

iii. JavaScript doesn't have any multithreading or multiprocessor capabilities.

Once again, JavaScript is a lightweight, interpreted programming language that allows you
to build interactivity into otherwise static HTML pages.

JavaScript Development Tools

One of major strengths of JavaScript is that it does not require expensive development
tools. You can start with a simple text editor such as Notepad. Since it is an interpreted language
inside the context of a web browser, you don't even need to buy a compiler.

To make our life simpler, various vendors have come up with very nice JavaScript editing
tools. Some of them are listed here

Microsoft FrontPage

Microsoft has developed a popular HTML editor called FrontPage. FrontPage also provides
web developers with a number of JavaScript tools to assist in the creation of interactive websites.

i. Macromedia Dreamweaver MX

6Macromedia Dreamweaver MX is a very popular HTML and JavaScript editor in the


professional web development crowd. It provides several handy prebuilt JavaScript components,
integrates well with databases, and conforms to new standards such as XHTML and XML.

TKREC-CSE Dept 11
Blood Bank Management System for CUTM

ii. Macromedia HomeSite 5

HomeSite 5 is a well-liked HTML and JavaScript editor from Macromedia that can be used
to manage personal websites effectively.

2.5. Apache HTTP Server

The Apache HTTP Server, colloquially called Apache, is the world's most used web server
software. Originally based on the NCSA HTTPd server, development of Apache began in early
1995 after work on the NCSA code stalled. Apache played a key role in the initial growth of the
World Wide Web, quickly overtaking NCSA HTTPd as the dominant HTTP server, and has
remained most popular since April 1996. In 2009, it became the first web server software to serve
more than 100 million websites. Apache is developed and maintained by an open community of
developers under the auspices of the Apache Software Foundation. Most commonly used on a
Unix-like system (usually Linux), the software is available for a variety of operating systems
besides Unix, including Microsoft Windows. Version 2.0 improved support for non-Unix, e.g.
Windows and OS/2 (and eComStation). Old versions of Apache were ported to run on e.g.
OpenVMS, and NetWare. Released under the Apache License, Apache is free and open-source
software.

Apache supports a variety of features, many implemented as compiled modules which


extend the core functionality. These can range from server-side programming language support to
authentication schemes. Some common language interfaces support Perl, Python, Tcl, and PHP.
Popular authentication modules include mod_access, mod_auth, mod_digest, and
mod_auth_digest, the successor to mod_digest. A sample of other features include Secure Sockets
Layer and Transport Layer Security support (mod_ssl), a proxy module (mod_proxy), a URL
rewriting module (mod_rewrite), custom log files (mod_log_config), and filtering support
(mod_include and mod_ext_filter).

Popular compression methods on Apache include the external extension module,


mod_gzip, implemented to help with reduction of the size (weight) of Web pages served over

TKREC-CSE Dept 12
Blood Bank Management System for CUTM

HTTP. ModSecurity is an open source intrusion detection and prevention engine for Web
applications. Apache logs can be analyzed through a Web browser using free scripts, such as
AWStats/W3Perl or Visitors.

Virtual hosting allows one Apache installation to serve many different Web sites. For
example, one machine with one Apache installation could simultaneously serve
www.example.com, www.example.org, test47.test-server.example.edu, etc.

Apache features configurable error messages, DBMS-based authentication databases, and


content negotiation. It is also supported by several graphical user interfaces (GUIs).

It supports password authentication and digital certificate authentication. Because the


source code is freely available, anyone can adapt the server for specific needs, and there is a large
public library of Apache add-ons.

2.6. MySQL

A database is a separate application that stores a collection of data. Each database has one
or more distinct APIs for creating, accessing, managing, searching and replicating the data it holds.
Other kinds of data stores can be used, such as files on the file system or large hash tables in
memory but data fetching and writing would not be so fast and easy with those types of systems.

So nowadays, we use relational database management systems (RDBMS) to store and


manage huge volume of data. This is called relational database because all the data is stored into
different tables and relations are established using primary keys or other keys known as foreign
keys.

A Relational Database Management System (RDBMS) is a software that

i. Enables you to implement a database with tables, columns and indexes.


ii. Guarantees the Referential Integrity between rows of various tables.
iii. Updates the indexes automatically.
iv. Interprets an SQL query and combines information from various tables.

TKREC-CSE Dept 13
Blood Bank Management System for CUTM

RDBMS Terminology
i. Database

A database is a collection of tables, with related data.

ii. Table

A table is a matrix with data. A table in a database looks like a simple spreadsheet.

iii. Column

One column (data element) contains data of one and the same kind, for example the column
postcode.

iv. Row

A row (= tuple, entry or record) is a group of related data, for example the data of one
subscription.

v. Redundancy

Storing data twice, redundantly to make the system faster.

vi. Primary Key

A primary key is unique. A key value can not occur twice in one table. With a key, you can
find at most one row.

vii. Foreign Key

A foreign key is the linking pin between two tables.

viii. Compound Key

TKREC-CSE Dept 14
Blood Bank Management System for CUTM

A compound key (composite key) is a key that consists of multiple columns, because one
column is not sufficiently unique.

ix. Index

An index in a database resembles an index at the back of a book.

MySQL Database
MySQL is a fast, easy-to-use RDBMS being used for many small and big businesses.
MySQL is developed, marketed, and supported by MySQL AB, which is a Swedish company.
MySQL is becoming so popular because of many good reasons:

i. MySQL is released under an open-source license. So you have nothing to pay to use it.
ii. MySQL is a very powerful program in its own right. It handles a large subset of the
functionality of the most expensive and powerful database packages.
iii. MySQL uses a standard form of the well-known SQL data language.
iv. MySQL works on many operating systems and with many languages including PHP,
PERL, C, C++, JAVA, etc.
v. MySQL works very quickly and works well even with large data sets.
vi. MySQL is very friendly to PHP, the most appreciated language for web development.
vii. MySQL supports large databases, up to 50 million rows or more in a table. The default file
size limit for a table is 4GB, but you can increase this (if your operating system can handle it) to
a theoretical limit of 8 million terabytes (TB).
viii. MySQL is customizable. The open-source GPL license allows programmers to modify the
MySQL software to fit their own specific environments.

2.7. Ionic Framework

Ionic is front end HTML framework built on top of AngularJS and Cordova. As per
official document following is the definition of the Ionic Framework: Ionic is an HTML5 mobile
app development framework targeted at building hybrid mobile apps. Think of Ionic as the front-
end UI framework that handles all the look and feel and UI interactions your app needs in order

TKREC-CSE Dept 15
Blood Bank Management System for CUTM

to be compelling. Kind of like "Bootstrap for Native," but with support for a broad range of
common native mobile components, slick animations, and beautiful design.

Ionic Framework Features


Following are the most important features of Ionic:

i. AngularJS

Ionic is using AngularJS MVC architecture for building rich single page applications
optimized for mobile devices.

ii. CSS components

With native look and feel, these components offer almost all elements that mobile application
needs. Components default styling can be easily overridden to accommodate your own design.

iii. JavaScript components

These components are extending CSS components with JavaScript functionalities to cover
all mobile elements that can't be done only with HTML and CSS.

iv. Ionic CLI

This is NodeJS utility powered with commands for starting, building, running and emulating
Ionic applications.

v. Ionic View

Very useful platform for uploading, sharing and testing your application on native devices.

vi. Licence

Ionic is released under MIT license.

Ionic Framework Advantages


i. Ionic is used for hybrid app development. This means that you can package your
applications for IOS, Android, Windows Phone and Firefox OS which can save you a
lot of working time.

TKREC-CSE Dept 16
Blood Bank Management System for CUTM

ii. Starting your app is very easy since Ionic provides useful pre-generated app setup with
simple layouts.
iii. The apps are built in very clean and modular way, so it's very maintainable and easy to
update.
iv. Ionic developers team have very good relationship with google developers team and
they are working together to improve the framework. The updates are coming out
regularly and Ionic support group is always willing to help when needed.

TKREC-CSE Dept 17
Blood Bank Management System for CUTM

3. SYSTEM ANALYSIS

3.1. Existing System

There are certain features limiting the process of the present system.
The drawbacks of the present system are listed below.
I. The increase in number of vehicles now a days.
II. The increase in number of accidents now a days.
III. The patients cannot get the information of donors easily.

In the present system all work is done on paper. The whole blood bank information is stored
in register and at the end of the session the reports are generated. We are not interested in
generating report in the middle of the session or as per the requirement because it takes more time
in calculation. At the end we are allowed to prepare the report on the record of blood bank donation
process.

3.1.1. Disadvantages In Existing System

i. Not User Friendly

The existing system is not user friendly because the retrieval of data is very slow and data
is not maintained efficiently.

ii. Difficulty In Report Generating

We require more calculations to generate the report so it is generated at the end of the
session.

iii. Manual Control

All calculations to generate report is done manually so there is greater chance of errors.

iv. Lots Of Paperwork

Existing system requires lot of paper work. Loss of even a single register/record led to
difficult situation because all the papers are needed to generate the reports.

v. Time Consuming

TKREC-CSE Dept 18
Blood Bank Management System for CUTM

Every work is done manually so we cannot generate report in the middle of the session or
as per the requirement because it is very time consuming.

3.2. Proposed System


The proposed system, Online Blood Bank site overcomes the drawbacks of the present
system. The Blood Bank helps the people who are in need of a blood by giving them overall
details regarding the donors with the same blood group and within their city/campus.

The advantages of the proposed system are listed below:

I. The people in need of blood can search for the donors by giving their blood group
and city name.
II. It is very flexible and user friendly.
III. The person’s time and work is reduced very much which prevails in the present
system.
IV. Easy and Helpful.
V. The people are not limited to receive or provide services in working hours of the
branch only; he is serviced 24 hours a day, 7 days of week and 365 days of the year.

In order to overcome the above mentioned problem we introduce this system. There is an urgent
need for the solution to any or organization “Online Blood Bank Management System” comes in
handy. It has various dynamic features that are listed below as follows:

i. A step towards futuristic donations.


ii. More secure than traditional systems.
iii. Donors and receivers information is available 24x7.
3.2.1. Advantages In Proposed System

i. User Friendly

The proposed system is user friendly because the retrieval and storing of data is fast and data
is maintained efficiently. Moreover the graphical user interface is provided in the proposed system,
which provides user to deal with the system very easily.

TKREC-CSE Dept 19
Blood Bank Management System for CUTM

ii. Reports Are Easily Generated

Reports can be easily generated in the proposed system so user can generate the report as per
the requirement (monthly) or in the middle of the session. User can give the notice to the enrolled
donors for updates of next blood donation camp.

iii. Very Less Paper Work

The proposed system requires very less paper work. All the data is feted into the computer
immediately and reports can be generated through computers. Moreover work become very easy
because there is no need to keep data on papers.

iv. Computer Operator Control

Computer operator control will be there so no chance of errors. Moreover storing and
retrieving of information is easy. So work can be done speedily and in time.

3.2.2. Limitation:

In this project the searching can be done for donors for majority of cities but not for every
city.
In this project the contact person’s details are given for the limited cities only.

3.3. Feasibility Study

The feasibility of the project is analysed in this phase and business proposal is put forth with
a very general plan for the project and some cost estimates. During system analysis the feasibility
study of the proposed system is to be carried out. This is to ensure that the proposed system is not
a burden to the company. For feasibility analysis, some understanding of the major requirements
for the system is essential.

Three key considerations involved in the feasibility analysis are

i. Economical Feasibility

TKREC-CSE Dept 20
Blood Bank Management System for CUTM

ii. Technical Feasibility


iii. Social Feasibility

3.3.1 .Economical Feasibility

This study is carried out to check the economic impact that the system will have on the
organization. The amount of fund that the company can pour into the research and development of
the system is limited. The expenditures must be justified. Thus the developed system as well within
the budget and this was achieved because most of the technologies used are freely available. Only
the customized products had to be purchased.

3.3.2. Technical Feasibility

The proposed system is developed using Active Server Page, VB Script and HTML as front-end
tool and Oracle 8 as the back end. The proposed system needs a Personal Web Server to serve
the requests submitted by the users. The Web browser is used to view the web page that is
available within the Windows operating system itself. The proposed system will run under
Win9x, NT, and win2000 environment. As Windows is very user friendly and GUI OS it is very
easy to use. All the required hardware and software are readily available in the market. Hence the
system is technically feasible.

This study is carried out to check the technical feasibility, that is, the technical requirements of the
system. Any system developed must not have a high demand on the available technical resources.
This will lead to high demands on the available technical resources. This will lead to high demands
being placed on the client. The developed system must have a modest requirement, as only minimal
or null changes are required for implementing this system.

3.3.3. Social Feasibility

The aspect of study is to check the level of acceptance of the system by the user. This
includes the process of training the user to use the system efficiently. The user must not feel
threatened by the system, instead must accept it as a necessity. The level of acceptance by the users
solely depends on the methods that are employed to educate the user about the system and to make
him familiar with it. His level of confidence must be raised so that he is also able to make some
constructive criticism, which is welcomed, as he is the final user of the system.

TKREC-CSE Dept 21
Blood Bank Management System for CUTM

3.3.4. Operational Feasibility:

The proposed system is operationally feasible because of the following reasons.


The customer is benefited more as most of his time is saved. The customer is serviced at his
place of work.
The cost of the proposed system is almost negligible when compared to the benefits gained.

3.4. Requirements Specification

3.4.1. Functional Requirements

3.4.1.1. Feedback
Now-a-days taking feedback became a big task and generating aggregate from that has
been a challenging task for both the faculty and also for the administration. So, in this Web
Application students can simply give the feedback which will be stored in the database. This
feedback report can be viewed by the faculty and by the admin.

3.4.1.2. Notifications

Admin can place notifications in this Web Application in order to inform the faculty and
even students about the organization functionalities. These notifications can be seen by the faculty
and the students as soon as when they login to their accounts.

3.4.2. Non-Functional Requirements

They specify criteria that judge the operation of a system, rather than specific behaviours.
The non - functional requirements provide specific measurements that the software must meet.
The maximum number of seconds it must take to perform a task, the maximum size of a database
on disk, the number of hours per day a system must be available, and the number of concurrent
users supported are examples of requirements that the software must implement but do not change
its behaviour.

3.4.2.1. Availability

TKREC-CSE Dept 22
Blood Bank Management System for CUTM

Our project achieves availability as the amount of time the system is operational and
available for use depends on the availability of network. The speed of the network plays a key role
in the availability of the system. This is specified because some systems are designed with expected
down - time for activities like database upgrades and backups.

3.4.2.2. Usability

We should get response within seconds. The application must have a simple, user-friendly
interface to save time and confusion.

3.4.2.3. Reliability

The system will be reliable because of the qualities that are inherited by the MVC
Architecture. The PHP code built using MVC is more reliable.

3.4.2.4. Supportability

The system should be designed to be cross platform supportable. The system is supported
by a wide range of hardware and software platform. The system should be Mobile Optimised.

3.4.2.5. Implementation

Our system will be developed in PHP scripting language so it has few dependencies like
Web Environment and Database. Apache HTTP Server is used as the web server environment and
MySQL is used for database.

3.4.2.6. Interface

The user interface is based on web browser. The Frontend interface of application is
developed using HTML, JavaScript, CSS and Bootstrap Framework. The interface design is aimed
at flexible front-end communication to provide the user with clear information in navigating a
user-friendly interface.

3.4.3. Software Requirements

Technology : PHP, Apache Cordova

TKREC-CSE Dept 23
Blood Bank Management System for CUTM

Frontend : HTML, CSS, JavaScript, Bootstrap

Server : Apache HTTP Server

IDE : Sublime Text

Database : MySQL

Operating System : Windows 98

Web Browser : Internet Explorer5.0

Designing Tool : Dreamweaver3.0, HTML

Server Side Scripting : ASP2.0

Client Side Scripting : VBScript

Backend : Oracle 8

3.4.4. Hardware Requirements

Processor : Intel Core i5

RAM : 2 GB

Hard Disk : 80 GB

Mouse : Logitech Mouse

Monitor : 15” digital color monitor\

Display Type : VGA

TKREC-CSE Dept 24
Blood Bank Management System for CUTM

4. SYSTEM DESIGN

4.1. System Architecture

System design is the process of planning a new system or to replace the existing system. Simply,
system design is like the blueprint for building, it specifies all the features that are to be in the
finished product.

System design phase follows system analysis phase. Design is concerned with identifying
functions, data streams among those functions, maintaining a record of the design decisions and
providing a blueprint the implementation phase.

The development of the proposed model is not only depending on how the system works. It also
depends on the working flow process that being identified and need to be implemented and
followed. The proposed “Online Blood Bank Management System” is a web-application which
is intended to produce an automated solution for Blood Bank Management”

Design is the bridge between system analysis and system implementation. Some of the essential
fundamental concepts involved in the design of application software are:

 Abstraction
 Modularity
 Verification

Abstraction is used to construct solutions to problem without having to take account of the
intricate details of the various component sub problems. Abstraction allows system designer to
make step-wise refinement, which at each stage of the design may hide, unnecessary details
associated with representation or implementation from the surrounding environment.

Modularity is concerned with decomposing of main module into well-defined manageable units
with well-defined interfaces among the units. This enhances design clarity, which in turn eases
implementation, Debugging, Testing, Documenting and Maintenance of the software product.
Modularity viewed in this sense is a vital tool in the construction of large software projects.

TKREC-CSE Dept 25
Blood Bank Management System for CUTM

Verification is fundamental concept in software design. A design is verifiable if it can be


demonstrated that the design will result in implementation that satisfies the customer’s
requirements. Verification is of two types namely.

 Verification that the software requirements analysis satisfies the customer’s needs.
 Verification that the design satisfies the requirement analysis.

Some of the important factors of quality that are to be considered in the design of application
software are:

Reliability:

The software should behave strictly according to the original specification and should function
smoothly under normal conditions.

Extensibility:

The software should be capable of adapting easily to changes in the specification.

Reusability:

The software should be developed using a modular approach, which permits modules to be
reused by other application, if possible.

The System Design briefly describes the concept of system design and it contains four sections.
The first section briefly describes the features that the system is going to provide to the user and
the outputs that the proposed system is going to offer.

The second section namely Logical Design describes the Data Flow Diagrams, which show
clearly the data movements, the processes and the data sources, and sinks, E-R diagrams which
represent the overall logical design of the database, and high-level process structure of the
system.

The process of design involves “conceiving and planning out in the mind” and making a drawing
pattern, or sketch of the system. In software design there are two types of major activities,
Conceptual Design and Detailed Design.

TKREC-CSE Dept 26
Blood Bank Management System for CUTM

Conceptual or logical or external design of software involves conceiving, planning out, and
specifying the externally observable characteristics of a software product. These characteristics
include user displays, external data sources, functional characteristics and high-level process
structure for the product.

Details or internal design involves conceiving, planning out, and specifying the internal structure
and processing details of the software product. The goal of internal design is to specify internal
structure, processing details, blueprint of implementation, testing, and maintenance activities.

One of the important fundamental concepts of software design is modularity. A modularity


system consists interfaces among the units. Modularity enhances design clarity, which in turn
eases implementation, debugging, testing, documentation, and maintenance of the software
product.

The other fundamental concepts of software design include abstraction, structure, information
hiding, concurrency and verification. The use of structuring permits decomposition of a large
system into smaller, more manageable units with well-defined relationships to the other units.
The system design is verifiable if it can be demonstrated that the design will result in an
implementation that satisfies the customer’s requirements.

Preliminary Design:

Preliminary design is basically concerned with deriving an overall picture of the system.
Deriving entire system into modules and sub-modules while keeping Cohesion and Coupling
factors in mind. Tools, which assist in preliminary design process, are Data Flow Diagrams.

Code design:

The purpose of code is to facilitate the identification and retrieval for items of information. A
code is an ordered collection of symbols designed to provide unique identification of an entity or
attribute. To achieve unique identification there must be only one place where the identified
entity or the attribute can be entered in the code; conversely there must be a place in the code for
everything that is to be identified. This mutually exclusive feature must be built into any coding
system.

TKREC-CSE Dept 27
Blood Bank Management System for CUTM

The codes for this system are designed with two features in mind. Optimum human oriented use
and machine efficiency. Length of the code range from length of one to length of five
characteristics:

 The code structure is unique; ensuring that only one value of the code with a single
meaning may be correctly applied to a given entity or attributes.
 The code structure is expansible allowing for growth of its set of entities and attributes.
 The code is concise and brief for recording, communication, transmission and storage
efficiencies.
 They have a uniform size and format.
 The codes are simple so that the user can easily understand it.
 The codes are also versatile i.e., it is easy to modify to reflect necessary changes in
condition, chart eristic and relationships of the encode entities.
 The codes are also easily storable for producing reports in a predetermined order of
format.
 The codes are also stable and do not require being frequently updated thereby promoting
user efficiency.
 The codes are also meaningful.
 They are also operable i.e., they are adequate for present and anticipate data processing
both for machine and human use.

Input Design:

Input design is a part of overall system design, which requires very careful attention. The main
objectives of input design are:

 To produce a cost-effective method of input.


 To achieve the highest possible level of accuracy.
 To ensure that the input is acceptable to and understood by the user staff.

TKREC-CSE Dept 28
Blood Bank Management System for CUTM

In this system input screens are designed very carefully so that no inaccurate data will enter the
database. The data is made as easy as possible. For simplifying the data entry many facilities are
given.

Each and every screen in this system is facilitated by many pushbuttons so that the user can
easily work with this system.

Output Design:

Outputs from computer systems are required primarily to communicate the results of processing
to users. They are also to provide a permanent hard copy of these results for later consultation.

The various types of outputs are required by this system are given below:

External outputs, whose destination is outside the concern and which require special attention
because they, project the image of the concern.

Internal outputs, whose destination is within the concern and which require careful design
because they are the user’s main interface within the computer.

Operation outputs, whose use is purely within the computer department, example: program
listings, usage statistics etc.,

Interactive outputs, which involves the user in communicating directly with the computers.

TKREC-CSE Dept 29
Blood Bank Management System for CUTM

5. IMPLEMENTATION

5.1. MODULES

My project Online Blood Bank is to provide services for the people who are in need of blood by
getting help from the donors who are interested in donating blood for the people. This project
mainly elucidates the modules such as:

 Donor Registration
 Modifying Donor Information
 Donor Search
 Life Saving Contacts (in major cities)
 Mobile SMS

These modules can be explained in detail as follows:

Donor Registration:

In this module, people who are interested in donating blood get registered in my site and give his
overall details related to him, i.e. he fills in a registration form by giving the total details such as
name, address, city, sex, wt, dob, blood group, telephone numbers, e-mail address, etc. He was
also given two fields’ username and password to fill such that he was a registered donor and he
can enter the login form with his username and password and can modify his details if needed.

Modifying Donor Information:

The registered donor only is able to modify his details; no other person can modify his details as
there was a login form which restricts others from entering the username and password providing
high security for the details given by the donor. If at all the donor wants to modify his details, he
was forced to give his username and password to enter in. After giving the username and
password it checks for the donor whether he is an existing donor or not and if the username and
password matches, he can then able to modify his total details. If the username and password do
not exist then he gets a message as ‘Wrong ID and Password Entered, Try Again’.

Donor Search:

TKREC-CSE Dept 30
Blood Bank Management System for CUTM

The people who are in need of blood can search in our site for getting the details of donors
having the same blood group and within the same city. They can directly click on the link search
a donor and can select a city name as well as the blood group which he needs. He then gets the
details of the donors who exist within the city and the same blood group that he has selected. If
no match was are found for the city and group selected by him he gets a message ‘SORRY
DONORS ARE NOT AVAILABE WITH THE FOLLOWING BLOOD GROUP AND AREA’.

Life Saving Contacts:

If at all the people in search of a donor doesn’t get any match for their area and group then they
will be provided a service i.e. he will be given a Contact Person details for their nearby cities
who have the details of many other donors with him. The people in search can call him and can
get the details of the donors and can be provided services in this manner. But this life saving
contact persons can be available only for a limited number of cities but not for all. These contact
persons are the authorized persons of my blood bank.

Feedback

Now-a-days taking feedback became a big task and generating aggregate from that has been a
challenging task for both the faculty and also for the administration. So, in this Web Application
students can simply give the feedback which will be stored in the database. This feedback report
can be viewed by the faculty and by the admin.

Notifications

Admin can place notifications in this Web Application in order to inform the faculty and even
students about the organization functionalities. These notifications can be seen by the faculty and
the students as soon as when they login to their accounts.

5.3. Dashboard Algorithm

Algorithm for a Login Scenario

TKREC-CSE Dept 31
Blood Bank Management System for CUTM

Step 1 Start

Step 2 Create variables to receive the post data from user submission.

Step 3 Store the Email and Password in variables

Step 4 Check the number of rows in Users table with the received Email and Password in the
database.

Step 5 If number of rows > 0 Go to Step 6 else Step 1

Step 6 Initialise session and store email id as a session variable

Step 7 Redirect to dashboard

Step 8 End

5.4. Front End Code

As our application is developed in MVC Framework the frontend code is present in the view.
<?php if($error){?><div class="errorWrap"><strong>ERROR</strong>:<?php echo htmlentities($error);
?> </div><?php }

else if($msg){?><div class="succWrap"><strong>SUCCESS</strong>:<?php echo


htmlentities($msg); ?> </div><?php }?>

<!-- Content Row -->

<form name="donar" method="post">

<div class="row">

<div class="col-lg-4 mb-4">

<div class="font-italic">Full Name<span style="color:red">*</span></div>

<div><input type="text" name="fullname" class="form-control" required></div>

TKREC-CSE Dept 32
Blood Bank Management System for CUTM

</div>

<div class="col-lg-4 mb-4">

<div class="font-italic">Mobile Number<span style="color:red">*</span></div>

<div><input type="text" name="mobileno" class="form-control" required></div>

</div>

<div class="col-lg-4 mb-4">

<div class="font-italic">Email Id</div>

<div><input type="email" name="emailid" class="form-control"></div>

</div>

</div>

<div class="row">

<div class="col-lg-4 mb-4">

<div class="font-italic">Age<span style="color:red">*

</span></div>

<div><input type="text" name="age" class="form-control" required></div>

</div>

<div class="col-lg-4 mb-4">

TKREC-CSE Dept 33
Blood Bank Management System for CUTM

<div class="font-italic">Gender<span style="color:red">*

<select name="gender" class="form-control" required>

<option value="">Select</option>

<option value="Male">Male</option>

<option value="Female">Female</option>

</select>

</span></div>

<div></div>

</div>

<div class="col-lg-4 mb-4">

<div class="font-italic">Blood Group<span style="color:red">*</span> </div>

<div><select name="bloodgroup" class="form-control" required>

<?php $sql = "SELECT * from tblbloodgroup ";

$query = $dbh -> prepare($sql);

$query->execute();

$results=$query->fetchAll(PDO::FETCH_OBJ);

$cnt=1;

if($query->rowCount() > 0)

foreach($results as $result)

TKREC-CSE Dept 34
Blood Bank Management System for CUTM

{ ?>

<option value="<?php echo htmlentities($result->BloodGroup);?>"><?php echo htmlentities($result-


>BloodGroup);?></option>

<?php }} ?>

</select>

</div>

</div>

</div>

<div class="row">

<div class="col-lg-4 mb-4">

<div class="font-italic">Address</div>

<div><textarea class="form-control" name="address"></textarea></div>

</div>

<div class="col-lg-8 mb-4">

<div class="font-italic">Message<span style="color:red">*</span></div>

<div><textarea class="form-control" name="message" required> </textarea></div>

</div>

</div>

TKREC-CSE Dept 35
Blood Bank Management System for CUTM

<div class="row">

<div class="col-lg-4 mb-4">

<div><input type="submit" name="submit" class="btn btn-primary" value="submit"


style="cursor:pointer"></div>

</div>

</div>

<!-- /.row -->

</form>

<!-- /.row -->

</div>

<?php include('includes/footer.php');?>

<!-- Bootstrap core JavaScript -->

<script src="vendor/jquery/jquery.min.js"></script>

<script src="vendor/tether/tether.min.js"></script>

<script src="vendor/bootstrap/js/bootstrap.min.js"></script>

TKREC-CSE Dept 36
Blood Bank Management System for CUTM

</body>

</html>

5.5. Back End Code

As our application is developed in MVC Framework the backend code is present in Controller and
Model.

Controller

<?php

error_reporting(0);

include('includes/config.php');

if(isset($_POST['submit']))

$fullname=$_POST['fullname'];

$mobile=$_POST['mobileno'];

$email=$_POST['emailid'];

$age=$_POST['age'];

$gender=$_POST['gender'];

$blodgroup=$_POST['bloodgroup'];

$address=$_POST['address'];

$message=$_POST['message'];

TKREC-CSE Dept 37
Blood Bank Management System for CUTM

$status=1;

$sql="INSERT INTO
tblblooddonars(FullName,MobileNumber,EmailId,Age,Gender,BloodGroup,Address,Message,st
atus) VALUES(:fullname,:mobile,:email,:age,:gender,:blodgroup,:address,:message,:status)";

$query = $dbh->prepare($sql);

$query->bindParam(':fullname',$fullname,PDO::PARAM_STR);

$query->bindParam(':mobile',$mobile,PDO::PARAM_STR);

$query->bindParam(':email',$email,PDO::PARAM_STR);

$query->bindParam(':age',$age,PDO::PARAM_STR);

$query->bindParam(':gender',$gender,PDO::PARAM_STR);

$query->bindParam(':blodgroup',$blodgroup,PDO::PARAM_STR);

$query->bindParam(':address',$address,PDO::PARAM_STR);

$query->bindParam(':message',$message,PDO::PARAM_STR);

$query->bindParam(':status',$status,PDO::PARAM_STR);

$query->execute();

$lastInsertId = $dbh->lastInsertId();

if($lastInsertId)

$msg="Your info submitted successfully";

else

$error="Something went wrong. Please try again";

TKREC-CSE Dept 38
Blood Bank Management System for CUTM

?>

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="utf-8">

<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

<meta name="description" content="">

<meta name="author" content="">

<title>BloodBank & Donor Management System | Become A Donar</title>

<link href="vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">

<link href="vendor/font-awesome/css/font-awesome.min.css" rel="stylesheet"


type="text/css">

<link href="css/modern-business.css" rel="stylesheet">

<style>

.navbar-toggler {

z-index: 1;

@media (max-width: 576px) {

TKREC-CSE Dept 39
Blood Bank Management System for CUTM

nav > .container {

width: 100%;

</style>

<style>

.errorWrap {

padding: 10px;

margin: 0 0 20px 0;

background: #fff;

border-left: 4px solid #dd3d36;

-webkit-box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);

box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);

.succWrap{

padding: 10px;

margin: 0 0 20px 0;

background: #fff;

border-left: 4px solid #5cb85c;

-webkit-box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);

box-shadow: 0 1px 1px 0 rgba(0,0,0,.1);

TKREC-CSE Dept 40
Blood Bank Management System for CUTM

</style>

</head>

<body>

<?php include('includes/header.php');?>

<!-- Page Content -->

<div class="container">

<!-- Page Heading/Breadcrumbs -->

<h1 class="mt-4 mb-3">Become a <small>Donor</small></h1>

<ol class="breadcrumb">

<li class="breadcrumb-item">

<a href="index.php">Home</a>

</li>

<li class="breadcrumb-item active">Become a Donor</li>

</ol>

TKREC-CSE Dept 41
Blood Bank Management System for CUTM

System Flow Diagram:

Blood Bank

Blood Blood Seekers

Donors

Donor
Registration
Search

Login Check
Life Mobile SMS
Services
Saving
Details

Modification

General FAQ’s Terms Of

Information Service

TKREC-CSE Dept 42
Blood Bank Management System for CUTM

Data - Flow Diagrams:


Context Level - DFD:

Blood
Blood Blood
Donors Bank Seekers

I Level – DFD:

Registration

Blood
Donors
Life Saving
Contacts

Blood

Mobile SMS
Blood Services
Seekers

Search

TKREC-CSE Dept 43
Blood Bank Management System for CUTM

II Level – DFD:

Registration

Blood
Donors
Life Saving
Contacts

Blood

Bank

Mobile SMS
Blood
Services
Seekers

Search

Receive
Donor
Details

TKREC-CSE Dept 44
Blood Bank Management System for CUTM

6. SYSTEM TESTING

6.1. Testing

The purpose of testing is to discover errors. Testing is the process of trying to discover
every conceivable fault or weakness in a work product. It is the process of exercising software
with the intent of ensuring that the Software system meets its requirements and user expectations
and does not fail in an unacceptable manner. There are various types of test. Each test type
addresses a specific testing requirement.

6.1.1. Black Box Testing

In this system black box testing is performed by giving random inputs to the functionalities
and verified whether expected results are obtained. For example random inputs are given to a
login page and verified whether it’s accepting even the wrong credentials. When these kinds of
bugs are detected then these are fortified. In this testing we verified whether our application is
according to the requirement specification. Any missing functionalities can be detected in this
phase.

6.1.2. White Box Testing

White box testing is performed by verifying the internal code of the application. Syntactic
errors, Decisions, Control Flow and statements of the code are verified line by line for all the
modules involved in our system such as Admin, Faculty and Students. We could detect control
flow errors such as wrong redirection using white box testing.

6.2. Level Of Testing

6.2.1. Component Testing

This system has 3 Modules i.e. Student Module, Faculty Module and Admin Module. All
the modules are independently tested by isolating other modules. Each functionality of the
Modules is verified. All the individual pages like Update Profile, Feedback, Messages etc. are
verified whether the input data is forwarded to action page.

TKREC-CSE Dept 45
Blood Bank Management System for CUTM

6.2.2. Unit Testing

Each functionality is verified if it is according to the specified requirements or not.


Sometimes input validations are missed, these are solved in unit testing. For example student
registration needs Roll Number, This input must be unique in database so that other students can
be restricted from using the same Roll Number.

6.2.3. Integration Testing

Our system has different modules involved i.e. Admin, Student and Faculty. Though
component testing is performed on each module sometimes error generate due to incompatibility
between the interfaces. This kind of errors can be detected in Integration Testing and resolved.

Test Results: All the test cases mentioned above passed successfully. No defects encountered.

6.3. Test Cases

In general a test case is a set of test data and test programs and their expected results. A
test case in software engineering normally consists of a unique identifier, requirement references
from a design specification, preconditions, events, a series of steps (also known as actions) to
follow, input, output and it validates one or more system requirements and generates a pass or fail.

The mechanism for determining whether a software program or system has passed or failed
such a test is known as a test oracle. In some settings, an oracle could be a requirement or use case,
while in others it could be a heuristic. It may take many test cases to determine that a software
program or system is considered sufficiently scrutinized to be released. Test cases are often
referred to as test scripts, particularly when written. Written test cases are usually collected into
test suites. If a requirement has subrequirements, each sub-requirement must have at least two test
cases. Written test cases should include a description of the functionality to be tested, and the
preparation required to ensure that the test can be conducted

Test case format

Test Cases usually have the following components

i. Test Case Summary

TKREC-CSE Dept 46
Blood Bank Management System for CUTM

ii. Initial Condition


iii. Steps to run the test case
iv. Expected behavior/outcome
6.3.1.Test case 1

Test Aspect Admin enters his login details

Test Aspect Admin enters his login details

Intial condition Review data

Steps to run Fill the login details in the page and click SUBMIT button

Expected Output It should open the home page

Actual Output It opens home page as shown below

Table 6.3.1.1. Test case 1

Fig 6.3.1.1. Admin Login databasePage

TKREC-CSE Dept 47
Blood Bank Management System for CUTM

Fig 6.3.1.2. Admin database Page

6.3.3. Test case 3

Test Aspect Donor enters donor details

Test Aspect Donor enters the donor details of his/her.

Initial condition Review data

Steps to run Click SUBMIT button

Expected Output It should show that details has successfully submitted.

Actual Output It displays a message showing successfully submitted

Table 6.3.3.1. Test case 3

TKREC-CSE Dept 48
Blood Bank Management System for CUTM

Fig 6.3.3.1. Donor registration form.

Fig: Donor entering his/her details.

TKREC-CSE Dept 49
Blood Bank Management System for CUTM

Fig 6.3.3.2Details Successfully Added.

Fig: Donor database.

TKREC-CSE Dept 50
Blood Bank Management System for CUTM

6.3.4. Test case 4

Test Aspect Faculty enters Invalid Attendance details

Test Aspect Faculty enters the invalid details entered.

Intial condition Review data

Steps to run click SUBMIT button

Expected Output It should show an error message/pop up notification.

Actual Output It displays a message showing “please enter any of these details”

Table 6.3.4.1. Test case 4

Fig 6.3.4.1. Donor Gives Invalid details.

TKREC-CSE Dept 51
Blood Bank Management System for CUTM

Fig 6.3.4.2. Showing pop up Message For Invalid details.

6.3.5. Test case 5

Test Aspect Blood search

Test Aspect Receiver enters required blood type or location where they need the blood.

Initial condition Review data

Steps to run After entering the details click SUBMIT button.

Expected Output It should show the requested donor details.

Actual Output If donor is not available then it should show “Donor not available”

TKREC-CSE Dept 52
Blood Bank Management System for CUTM

Fig 6.3.5.1. Requesting for required blood.

Fig: Requested blood found

TKREC-CSE Dept 53
Blood Bank Management System for CUTM

Fig: If donor is not available

7. INPUT OUTPUT SCREENS

Fig 7.1 Home page

TKREC-CSE Dept 54
Blood Bank Management System for CUTM

Fig 7.2. Home page Notification for further blood camps.

Fig 7.3. Through information on blood groups.

TKREC-CSE Dept 55
Blood Bank Management System for CUTM

Fig 7.4. Some of the donors details in scrolling manner in home page.

Fig: Blood groups database

TKREC-CSE Dept 56
Blood Bank Management System for CUTM

Fig 7.5. Contact page

The feedback given by all will be successfully stored in the database. The average feedback
rating can be visible to both faculty and the admin.

Fig 7.6. Message box

Here anyone can send their queries or feedback regarding the page or blood issues.

TKREC-CSE Dept 57
Blood Bank Management System for CUTM

Fig 7.7. After entering the feedback

This shows the feedback is given successfully and we get a message as successful.

Fig: contact database

TKREC-CSE Dept 58
Blood Bank Management System for CUTM

Fig 7.8. Admin Profile Page

We can see all the tables present in the database.

TKREC-CSE Dept 59
Blood Bank Management System for CUTM

9. CONCLUSION
This system is aimed at providing a cheaper and secured way of maintain the blood bank
details.The details can't be mis-conducted or mis-interpreted. The designed system fulfills all the
necessary requirements of the blood bank in maintaining records

BBMS is a management system that is developed to manage blood bank. The BBMS had been
developed in accordance to user requirement. This is to make sure that the management of the
blood stock became effective, systematic and meeting user requirements.

The functional services provided in the current version are profile management, blood stock
management, and blood analysis management.

TKREC-CSE Dept 60
Blood Bank Management System for CUTM

10. FUTURE ENHANCEMENT

In Future we can implement this project by the subsequent traditions as follows:

i. Can be developed into mobile application.


ii. Can provide SMS notifications.
iii. Can provide call services.

TKREC-CSE Dept 61
Blood Bank Management System for CUTM

11. REFERENCES

[1]http://www.w3schools.com/sql/
[2]http://www.w3schools.com/php/
[3]https://en.wikipedia.org/wiki/Bloood_Bank_Management_system
[4]https://en.wikipedia.org/wiki/Feedback
[5]https://en.wikipedia.org/wiki/Cloud_computing
[6]https://en.wikipedia.org/wiki/Cloud_storage

[7]https://support.rackspace.com/white-paper/understanding-the-cloud-computing-stack-saas-
paas-iaas/

[8]http://www.iisjaipur.org/iiim-current-
08/mca_iv_sem_pro_eva/15.project%20attendence%20managemnt%20system.pdf
[9]http://en.wikipedia.org/wiki/Symbian
[10] Symbian Developer Community wiki
[11]http://christoph33r.com/groupproject/techni cal.html

[12] http://www.iisjaipur.org/iiim-current-08/MCA_IV_Sem_Pro_Eva/15.Project%20
Attendence%20managemnt%20system.pdf
[13] https://edupediapublications.org/journals/index.php/IJR/article/view/7357/7137

TKREC-CSE Dept 62

You might also like