Computer Science

Design and Implementation of an Online Blood Bank Management System

Design and Implementation of an Online Blood Bank Management System

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.

My 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.

My 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 with in 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 MobiLink 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.

The present project elucidates the following features.

–   Registering the Donors

–   Modification of Donor Information

–   Searching a Donor

–   Life Saving Contacts (in major cities)

–  Mobilink Paging Services


System 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.
  • 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.


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 with in 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 and addresses of the Life Saving Contact Persons for major cities.  If he doesn’t have any chance to contact them then he will be provided with Mobilink Paging Services in order to get the blood.


Preliminary Investigation:

First in the system development process is preliminary Investigation.  Preliminary Investigation is conducted in the following phases.

  • Project clarification
  • Feasibility study
  • Project appraisal

Project clarification is the process of selecting a project request for further study.  When a system development or modification request is made, the first systems activity, the preliminary investigation, begins the activity has three parts: Request clarification, feasibility study and project appraisal.  Many request from employees and users in organization are not clearly stated.

Therefore before any systems investigation can be considered,  the project request must be examined to determine preciously what the originator wants.  This is called Request clarification.

As important outcome of the preliminary investigation is the determination that the system request in feasible.

Feasibility Study:

The feasibility study is performed to determine whether the proposed system is viable considering the Technical, Operational and Economical factors. After going through feasibility study we can have a clear-cut view of the system’s benefits and drawbacks.

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.

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.

Economical Feasibility:

As the necessary hardware and software are available in the market at a low cost, the initial investment is the only cost incurred and does not need any further enhancements.  Hence it is economically feasible.

The system is feasible in all respects and hence it encourages taking up the system design.

Gathering Information:

The analysis through collection of data plays the wider role in the analysis of the system.  So the data is collected at different levels of management to keep track of full information of the system.

The collection of data is done from:

  • Top Level Management
  • Middle Level Management
  • Low Level Management

Different methods used to collect the data:


The data is collected through questioners by filling a set of questions from the different levels of management. The questions made by questioners are three different types.

They are,

Structured questioners:

Unstructured questioners:

Semi-structured questioners:


Interviews were conducted to collect the information.  The interviews were conducted at two levels.

  1. Formal Group Interviews:  the interviews conducted for formal groups i.e., the hierarchical (official) groups in the firm.
  2. Informal Group Interviews:  the interviews were conducted for informal groups   i.e., the groups formed out side the company.


The data is also collected by observation of the firm.  The data is collected by observing on the site at different timings and at different situations like when the firm is busy and when the firm hasn’t much work to do.

Record Review:

To collect the data and to get a clear idea of the firm some of the data is also collected from the past records of the firm. This information helps very much to get a clear idea of the firm i.e., the different problems occurred in different seasons and some exception conditions.  This very much gives a clear idea of exceptional conditions.

System Study:

Present system:

There are certain features limiting the process of the present system.

The drawbacks of the present system are listed below.

q  The increase in number of vehicles now a days.

q  The increase in number of accidents now a days.

q  The patients cannot get the information of donors easily.

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 with in their city.

The advantages of the proposed system are listed below.

q  The people in need of blood can search for the donors by giving their blood group and city name.

q  It is very flexible and user friendly.

q  The person’s time and work is reduced very much which prevails in the present system.

q  Easy and Helpful.

q  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.


q  In this project the searching can be done for donors for majority of cities but not for every city.

q  In this project the contact person’s details are given for the limited cities only.


Software Environment:

Software Environment is a technical specification of requirement of software product. This specifies the environment for development, operation and maintenance of the product.

Technology used:


Http Basics

ASP 2.0

Oracle 8





The Hypertext Transfer Protocol is stateless, TCP/IP based protocol used for communicating on the World Wide Web. HTTP defines the precise manner in which Web clients communicate with Web servers. HTTP/1.0 is the most common version in use today. Oddly enough, this protocol is not officially recognized as an Internet standard. It is documented in the informational RFC 1945. Its successor, HTTP/1.1, is currently a proposed Internet standard and many browsers and servers now support this new version.

HTTP Basics:

The HTTP protocol follows a very simple request/response paradigm. In short, a conversation between a Web browser and Web server goes something like this: the client opens a connection to the server, the client makes a request to the server, the server responds to the request, and the connection is closed.

The four stages of a simple Web transaction:

1. The client opens a connection to the server.

2. The client makes a request to the server.

3. The server responds to the request.

4. The connection is closed.

Connectionless Protocol:

HTTP is a connectionless protocol. As you may have guessed, the difference between a connectionless and a connection-oriented protocol is in the way they handle connections. Using a connectionless protocol, the client opens a connection with the server, sends a request, receives a response, and closes the connection. Each request requires its own connection. With a connection-oriented protocol, the client connects to the server, sends a request, receives response, and then holds the connection open in order to service future requests.

The connectionless nature of HTTP is both strength and a weakness. Because it holds a connection open only long enough to service the request, very few server resources are required to service large numbers of users. In fact many popular Web sites service millions of users in a single day. The drawback to a connectionless protocol is that a connection must be established with every request. Opening a new connection with each request incurs a performance penalty that translates into additional delays for the user.

Alternatively, a connectionless protocol such as FTP has a strong performance advantage over a connectionless protocol. This is due to the fact that the overhead required to open a new connection is incurred only once rather than with every request. Unfortunately, each open connection consumes some amount of server resources. These finite resources, such as memory and disk space, limit the number of concurrent users the server can handle. In contrast to a Web site, an FTP site can rarely support more than a few hundred users at a time.

Stateless Protocol:

As stated in the definition, HTTP is a stateless protocol. A protocol is said to be stateless if it has no memory of prior connections and cannot distinguish one client’s request from that of another. In contrast, FTP is a stateful protocol, because the connection is not opened and closed with every request. After the initial login, the FTP server maintains the user’s credentials throughout the session. On the other hand, due to its stateless nature, there is no inherent method in HTTP for tracking a client’s traversal of a Web site. Every connection is a new request from an anonymous client.

The stateless nature of HTTP is both strength and a weakness. It is strength in that its stateless nature keeps the protocol simple and straightforward. It also consumes fewer resources on the server and can support more simultaneous users since there are no client credentials and connections to maintain. The disadvantage is in the overhead required to create a new connection with each request and the inability to track a single user as he traverses a Web site.

Active Server Page 2.0:

What is ASP?

ASP is a server-side software component, used for Sever-side Validations for Microsoft Products.  This dynamically extends the functionality of a server. Similar to the manner in which VBScript is used for the making Validations on the client.


Since its introduction, the use of Microsoft’s Active Server Pages or ASP has grown rapidly. Many programmers consider it the tool for dynamic, easily maintainable web content. The real power of ASP derives firstly from the fact that he html for the page is only generated when the specific page is requested by the user, and secondly from purely html, rather than relying on the browser to support a particular language or application.

ASP enables us to tailor our web pages to the specific requirements of our users and their browser’s type as well as our own needs. It allows us to Interact with the user, which helps to keep our site intersection and up-to-date. Although it is not first technology to offer dynamic page creation, it is one of the fastest and most powerful.

An Active Server Page is a standard HTML file that is extended with additional features. Like a standard HTML file, an ASP contains HTML tags that can be interpreted and displayed by a web browser.

The ASP has three important features. They are

An ASP can contain server-side scripts by including server-side scripts in ASP we can create web pages with dynamic context.

An ASP provides several built-in objects

By using the built-in objects accessible in the ASP we can make our script much more powerful. Among other things, there objects enable us to retrieve information from and send information to the browsers.

An ASP can be included with additional components.

ASP comes bundled with several standard, server-side Active-x components. These components enable us to do such things as work with databases, send e-mail, and access the file system.

Hypertext transfer protocol is that handles request and response sent between a web server and browser. The HTTP request is the format of any message sent from the client to a server. It includes the URL of the required resource and information about the client and the platform they are using. The HTTP response can contain a resource, a redirection to another page or site, an error message, etc.

ASP provides its own request and response objects, which enables us to access the information stored in the HTTP request message and response headers respectively. Using these objects we can check for certificates, read and writes cookies, and gets access to Browser information and forms data.

The relationship between ASP and html can be described as follows:

An Active Server Page is a technology that allows for the programmatic construction of html pages for delivery to the browser.

In other words, with ASP we can write a set of instruction that can be used to generate html and other content just before it is delivered. This makes it a good for html developers, because of its power and flexibility to generate html, and ultimately product more spectacular, interactive personalized and up-to-date web sites.

The increasing integration between the windows operating system, database other Aspects including web services, had a great impact on ASP 3.0. Many more packages, applications and services expose interfaces that enable ASP to utilize them.  This increasing complexity, and increased opportunities, means that the destinations between resources on the local system or network and the internet are blurring and we, as developers, must be aware of it.

This increased access to resources means that much of the infrastructure has been built and debugged and if we choose to we can use this to our advantage.  In fact everywhere we look, much of the hard work has been done and we are left to concentrate on the business specific implementation of our applications. The popularity of ASP has placed at our disposal a great wealth of expertise. We are also not dependent on Microsoft the prevalence of systems and companies, which use ASP as the core technology, mean that any problems will be resolved quickly, and in fact many of them already have.

Why to Use?

By using Active server pages, we can create web sites with dynamic context.  The parameters submitted by a client can by anything registration data, search arguments, customization, anything. Businesses are interested in the information that is stored in databases. This information must be retrieved from a database. The requested information must be extracted from the database when it’s requested, encoded in HTML format on the fly and transmitted to the client.

The simplest way to create an ASP page is to change the extension of an existing HTML document from HTML to ASP. Then place the file in a new folder under our server’s root folder.

Oracle 8:

Oracle is a comprehensive operating environment that packs the power of a mainframe Relational Database Management system into user microcomputer. It provides a set of functional programs that user can use as tools to build structures and perform tasks, became applications developed in oracle are completely portable to other versions of the programmer who can create a complex application in a single user environment and then move it to a multi user platform. User do not have to be an expert to appreciate oracle but the better user understands the program, the productively and creatively can use the tools it provides.

Support for CODD’S Rules:

Oracle supports the following rules of Dr.E.F.Codd:

Rule1: Information Rule                                      YES

Rule2: Guaranteed Access                                     YES

Rule3: Systematic Representation of missing information      YES

Rule4: Comprehensive Online Catalogue                        YES

Rule5: Comprehensive Data Sub-Language                       YES

Rule6: View Updating                                         Partially

Rule7: High level Insert, Update, Delete                     YES

Rule8: Physical Data Independence                            Partially

Rule9: Logical Data Independence                             Partially

Rule10: Integrity Independence                               Partially

Rule11: Distribution Dependence                             YES

Rule12:  Non Subversion                                      YES

Features of Oracle:

  1. Oracle is portable:

The oracle RDBMS is available on wide range of platforms ranging from pc’s to super computers and as a multi-user network loadable module for Novell Netware. If you run the same application on one system you can run the same application on other systems without any modifications.

  1. Oracle is Compatible:

The Oracle command can be used for COM indicating with IBM, DB/2, Mainframe RDBMS, which is different from Oracle, i.e., Oracle is compatible with DB/2. Oracle RDBMS is a high performances fault tolerant DBMS, which is specially designed for online transaction processing and for handling the large database applications.

  1. Oracle RDBMS is available with two options:

Oracle RDBMS version 8 with transaction processing option and oracle RDBMS version 8 without transaction processing option. Oracle with transaction processing option offers three features, which contributes to a very high level of transaction processing throughout.


The name SQL stands for Structural Query Language. SQL is a data access language, like any other language, it is used for communication. SQL communicates with database manager. The database manager could be Oracle, Informix, DB2 and SQL database.  SQL is easy to learn. Despite the fact that SQL is a computer programming language, it is much simpler than traditional programming language like COBOL, BASIC, FORTRAN or API. This is due to the fact that SQL is a non-procedural language.

SQL is one of the Oracle facilities. It is important to understand in each case its differences, purpose and place in the Oracle family.

1. SQL is the language used to access a relational database, including Oracle.

2. SQL May be used with each of the Oracle tools, where access to the database is required.

Overview of SQL:

A database management system requires a query language to enable users to access data. Structured Query Language (SQL – pronounced ‘sequel’) is the language used by most relational database systems.

IBM developed the SQL language in a prototype relational database management system –System R – in the mid-1970s. In 1979, Oracle Corporation introduced the first commercially available implementation of SQL.

Features of SQL:

  1. SQL is an English-like language. It uses words such as select, insert, delete as part of its command set.

2. SQL is a non-procedural language: you specify what information you require, not how to get it. In other words, SQL does not require you to specify the access method to the data. All SQL statements use the query optimizer – a part of the RDBMS – to determine the fastest means of retrieving the specified data. This feature makes it easier for you to concentrate on obtaining the desired result.

3. SQL processes sets of records rather than a single record at a time. The most common form of a set of records is a table.

4. A range of user including DBAs, application programmers, management personnel, and many other types of end users can use SQL.

5. SQL provides commands for a variety of tasks including:

  • Querying data
  • Inserting, updating and deleting rows in a table
  • Creating, modifying and deleting database objects
  • Controlling access to the database and database objects
  • Guaranteeing database consistency.

SQL Processing Capabilities:

SQL is composed of a definition language a Data Manipulation Language and a Data Control Language. These three languages support the complete spectrum of Relational Data processing activity. In fact most SQL based product all access to the data through SQL.

  1. Data Definition Language:

DDL allows creation, Deletion and Modification of data structure for bar system. These structures include tables, databases and indexes.

Ex: Create, Drop and Alter.

  1. Data Manipulation Language:

These commands are used to manipulate the data in tables directly or through views. There are four standard DML statements. They are select, delete, insert and update.

  1. Data control language:

These commands are used to control usage and access of data. The most commonly found one’s will include grant, revoke.

Why to Use?

Oracle greatly supports RDBMS features. Also it supports high security to the data and faster accessing capability. It can be run on a variety of platforms and operating systems. One can develop an application easily by providing user-friendly environment.

The features of oracle are portability and compatibility.


The extended reach of information and services to customers that the Internet has enabled, has created a new challenge for the developer. The developer should develop a user interface that is distributable, available on multiple platforms and supports a wide range of client environments from handheld wireless devices to high-end workstations. So to maintain a broad reach to client environments and to achieve greatest compatibility with all browsers, this system uses standard HTML.

Hyper Text Markup Language is the standard language for creating documents for the World Wide Web. An HTML document is a text file, which contains the elements, in the form of tags that a web browser uses to display text, multimedia objects, and hyperlinks using HTML; we can format a document for display and add hyperlinks to other documents.

The user interface has been designed in HTML hence can be browsed in any web browser.

Cascading Style Sheets:

These have been used to separate data form presentation. By using these style sheets throughout the project, a uniform look and feel can be maintained for all the HTML elements and tags that have been used in the project. If there is any revamp the way the content has been presented in the website, the changes can be made to the appropriate style sheet, which will be reflected across all the style sheets.

VB Script:

VBScript is the default script for ASP.  Most of the code written in ASP is in VBScript.  VBScript made ASP powerful by providing all features of other languages.  VBScript supports all data types, loops, conditional statements which is very useful in making ASP page as dynamic.

VBScript is a script-based programming language that supports the development of both client and server components of web based applications. On the client side, it can be used to write programs that are executed by a web browser within the context of the web page. On the server side it can be used to write web server programs that can process information submitted by a web browser and then update the browsers display accordingly.

The script can perform actions, such as generating HTML codes that affects the display of the browser window. It can be perform actions that affect the operation of plug-ins and ActiveX components. The script can also define VB Script language elements that are used by other scripts.

Some script may define functions for handling events that are generated by user actions. For example, we might write a script to define a function for handling by event “submitting a form” or “clicking a link”. The event handlers can then perform actions such as validating the forms data or loading a new page. VBScript’s event-handling capabilities provide greater control over the user interface than HTML alone.


Hardware Configuration:

Processor:         P III 700 MHz.

RAM:           64 MB RAM

Hard Disk Drive:   20 GB HDD

Keyboard:          104 keys

Mouse:           Logitech Mouse

Monitor:           15” digital color monitor

Display Type:      VGA

Software Configuration:

Operating System:          Windows 98

Web server:           Personal Web Server

Web Browser:           Internet Explorer5.0

Designing Tool:           Dreamweaver3.0, HTML

Server Side Scripting:     ASP2.0

Client Side Scripting:     VBScript

Backend:           Oracle 8


Introduction to System Design

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.

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.

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:


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


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


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.

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 every thing that is to be identified.  This mutually exclusive feature must be built into any coding system.

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:

  1. 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.

2. The code structure is expansible allowing for growth of its set of entities and attributes.

3. The code is concise and brief for recording, communication, transmission and storage efficiencies.

4. They have a uniform size and format.

5. The codes are simple so that the user can easily understand it.

6. The codes are also versatile i.e., it is easy to modify to reflect necessary changers in condition, chart eristic and relationships of the encode entities.

7. The codes are also easily storable for producing reports in a predetermined order of format.

8. The codes are also stable and do not require being frequently updated thereby promoting user efficiency.

9. The codes are also meaningful.

10. They are also operable i.e., they are adequate for present and anticipate data processing both for machine and human use.


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

  1. To produce a cost-effective method of input.

2. To achieve the highest possible level of accuracy.

3. To ensure that the input is acceptable to and understood by the user staff.

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.


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:

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

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

3. Operation outputs, whose use is purely within the computer department,  E.g., program listings, usage statistics etc,

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

System – Flow Diagram:


Database is an integrated collection of data and provides a centralized access to the data and makes possible to treat data as a separate resource.  Usually centralized data managing software is called a Relational Database Management System (RDBMS).  The most significant different between RDBMS and other type of Data Management is the separation of data as seen by the program and data as store of on the direct access storage device.  This is the difference between logical and physical data.

Data Dictionary

The efficiency of an application developed using RDBMS mainly depend upon the database tables, the fields in each table and the way the tables are opened using the contents in them to retrieve the necessary information.  Hence a careful selection of tables and their fields are imperative.

The database tables used in this system are created keeping the above points in mind.  The tables used are given below.

Register Table

Description: Used to Register the donor information and helpful for the people in need of blood to get details regarding the person with matching blood group and city

Field Name Field Type Field Length
NAME Varchar2 20
Addr Varchar2 30
City Varchar2 20
Sex Varchar2 6
Wei Number 5,3
Dob Date
Bgrp Varchar2 10
Telo Number 14
Telr Number 14
Mobi Number 14
Email Varchar2 30
Lname Varchar2 20
Pass Varchar2 15


Detailed Description:

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:

  1. Donor Registration

2. Modifying Donor Information

3. Donor Search

4. Life Saving Contacts (in major cities)

5. Mobilink Paging Services

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:

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 with in 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 with in 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 near by 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.

Mobilink Paging Services:

If at all the person in search of blood has found any problem in contacting the life saving contacts i.e. the contact persons, he was provided with a service called ‘Mobilink Paging Service’.  The person in search of blood was given a ‘Mobilink’ India’s Largest Paging Service number such that the person who was searching can call the paging service number and can tell them the blood group needed and the total details from where they are contacting.  Then the ‘Mobilink’ will broadcast a message on the pagers of their Subscribers displaying the Blood Group required, the Name of the Hospital, Contact Number, Patients Name, etc.


System testing is the stage before system implementation where the system is made error free and all the needed modifications are made. The system was tested with test data and necessary corrections to the system were carried out. All the reports were checked by the user and approved. The system was very user friendly with online help to assist the user wherever necessary.

Test Plan

A test plan is a general document for the entire project, which defines the scope, approach to be taken, and schedule of testing, as well as identifying the test item for the entire testing process, and the personal responsible for the different activities of testing. This document describes the plan for testing, the knowledge management tool.

Major testing activities are:

  1. Test units

2. Features to be tested

3. Approach for testing

4. Test deliverables

5. Schedule

6. Personal allocation

Test Units:

Test Case specification is major activity in the testing process. In this project, I have performed two levels of testing.

  1. Unit testing

2. System testing

The basic units in Unit testing are:

  • Validating the user request
  • Validating the input given by the user
  • Exception handling

The basic units in System testing are:

  • Integration of all programs is correct or not
  • Checking whether the entire system after integrating is working as expected.
  • The system is tested as whole after the unit testing.

Other Testing Strategies:

Alpha Testing:

This was done at the developer’s site by a customer.  The software is used in a natural setting with the developer “looking over the shoulder” of the user and recording errors and usage problems.  Alpha tests are conducted in a controlled environment.

Beta Testing:

This was conducted at one or more customer sites by the end-user of the software.  Unlike alpha testing, the developer is generally not present.  Therefore, the beta test is a “live” application of the software in an environment that cannot be controlled by the developer.  The customer records all problems that are encountered during beta testing and reports these to the developer at regular intervals.  As a result of problems reported during beta tests, software engineers make modifications and then prepare for release of the software product to the entire customer base.

Test deliverables:

The following documents are required besides the test plan

  • Unit test report for each unit
  • Test case specification for system testing
  • The report for system testing
  • Error report

The test case specification for system testing has to be submitted for review before the system testing commences.


During the software-testing phase each module of software is thoroughly tested for bugs and for accuracy of output. The system developed is very user-friendly and the detailed documentation is also given to the user as online help wherever necessary.  The implementation phase normally ends with the formal test involving all the components.

The entire system was developed using the ASP, HTML, JavaScript, Personal Web Server, and Oracle 8 as back end. The HTML is used to design the web page. The Personal Web Server is used to understand the client’s request and to send response to them. The VBScript are used for client-side validations so that the user can enter only appropriate input in the input fields. The Oracle 8 is the back end tool where the database resides.

Hence the design of the entire system is user-friendly and simple the implementation has been quite easy.


This project has given me an ample opportunity to design, code, test and implements an application. This has helped in putting into practice of various Software Engineering principles and Database Management concepts like maintaining integrity and consistency of data. Further, this has helped me to learn more about ORACLE 8, ASP 2.0, HTML, VB Script, Adobe Photoshop 7.0 and Personal Web Server.

I thank my guide for his invaluable contribution in guiding me through out the project. I also thank my parents and friends who have supported and motivated me to complete this project successfully.


The other features, which the Blood bank services provide, can also be incorporated into this Blood Bank. The Encryption standards can also be used to make the transactions more secure. The Socket Secure Layer protocol can also used in implementing the system, which gives highest security in the Internet.

Future Enhancement

As there was a little number of contact person’s information given, some people may face difficulty in getting blood fast.  So i like to gather more information regarding the contact persons in other cities as well as villages and will provide much more services for the people and help everyone with humanity.



HTML: Steven Holzner (Black Book)

FRONT PAGE: Daniel A. Tauber, Brenda Kienan

ORACLE 8: George Koch & Kevin Loney

(The Complete Reference)

ACTIVE SERVER PAGE: John Kauffman, Stephen Walther



VB SCRIPT: David Flanagan