Dbms Project Report (Blood Bank Management System)
Dbms Project Report (Blood Bank Management System)
Management, Gwalior
DBMS
PROJECT REPORT
(BLOOD BANK MANAGEMENT SYSTEM)
(2016MBA-20)
(2016MBA-28)
Acknowledgement
We are thankful to the prestigious campus of ABV IIITM Gwalior for providing us the
esteemed platform for enhancing our knowledge and skills of management discipline.
We are also thankful to our mentor Dr. Vinay Singh for his time to time guidance for the
improvement of project work. This unique way of making the DBMS concepts seems
really interesting and without his guidance project would have been gone off the track.
We hope the project work is up to the expectations.
Last but not the least, we are thankful to our parents and friends for their cooperation and
also to our group members for working as a very cooperative team and putting in the best
efforts to make the project successful.
INTRODUCTION
Project Overview
The Blood Donation Agent is to create an e-Information about the donor and organization
that are related to donating the blood. Through this application any person who is interested in
donating the blood can register himself in the same way if any organization wants to register
itself with this site that can also register. Moreover if any general consumer wants to make
request blood online he can also take the help of this site. Admin is the main authority who
can do addition, deletion, and modification if required.
Project Description
This project is aimed to developing an online Blood Donation Information. The entire
project has been developed keeping in view of the distributed client server computing
technology, in mind.
The Blood Donation Agent is to create an e-Information about the donor and organization
that are related to donating the blood. Through this application any person who is interested in
donating the blood can
register himself in the same way if any organization wants to register itself with this site that can
also register. Moreover if any general consumer wants to make request blood online he can also
take the help of this site.
Admin is the main authority who can do addition, deletion, and modification if
required.
The project has been planned to be having the view of distributed architecture, with
centralized storage of the database. The application for the storage of the data has been planned.
Using the constructs of MS-SQL Server and all the user interfaces have been designed using the
ASP.Net technologies.
The database connectivity is planned using the SQL Connection methodology. The
standards of security and data protective mechanism have been given a big choice for proper
usage.
The application takes care of different modules and their associated reports, which are
produced as per the applicable strategies and standards that are put forwarded by the
administrative staff.
The entire project has been developed keeping in view of the distributed client server
computing technology, in mind. The specification has been normalized up to 3NF to eliminate all
the anomalies that may arise due to the database transaction that are executed by the general
users and the organizational administration. The user interfaces are browser specific to give
distributed accessibility for the overall system. The internal database has been selected as MS-
SQL server 2000.
The basic constructs of table spaces, clusters and indexes have been exploited to provide
higher consistency and reliability for the data storage. The MS-SQL server 2000 was a choice as
it provides the constructs of high-level reliability and security. The total front end was dominated
using the ASP.Net technologies. At all proper levels high care was taken to check that the system
manages the data consistency with proper business rules or validations.
The database connectivity was planned using the latest SQL Connection technology
provided by Microsoft Corporation. The authentication and authorization was crosschecked at all
the relevant stages. The user level accessibility has been restricted into two zones namely.
PROBLEM DEFINITION
Existing System
Cannot Upload and Download the latest updates.
No use of Web Services and Remoting.
Risk of mismanagement and of data when the project is under development.
Less Security.
No proper coordination between different Applications and Users.
Fewer Users Friendly
Proposed System
To debug the existing system, remove procedures those cause data redundancy, make
navigational sequence proper. To provide information about audits on different level and also to
reflect the current work status depending on organization/auditor or date. To build strong
password mechanism.
Advantages:
User friendliness I provided in the application with various controls.
The system makes the overall project management much easier and flexible.
Readily upload the latest updates ,allows user to download the alerts by clicking
the url.
It provides high level of security with different level of authentication.
MODULES
1. Administration:
In this module the Administrator has the privileges to add all the Blood Groups,
Blood Type, Organization, Type, Country, State, City, and Location. He can search
all the info about the Organization, Donor.
User Account:
AccountID
Username
Password
UserDesc
HintQuestion
Answer
RoleID
Active
UserRole:
RoleID
RoleName
RoleDesc
Active
BDA State:
StateID
StateName
StateCode
StateDesc
CountryID
Active
Country:
CountryID
CountryName
CountryDesc
CountryCode
Active
BDA City:
CityID
CityName
CityDesc
CityCode
StateID
Active
BDALocation:
LocationID
LocationName
LocationDesc
LocationCode
CityID
Pin code
Active
BloodGroup:
BloodGroupID
BloodGroup
Description
Active
Blood Type:
BloodTypeID
TypeName
TypeDesc
Active
Personal Details:
UserAccountID
FirstName
MiddleName
LastName
Email
DOB
Weight
Gender
ImageURL
BloodGroupID
BloodType
BloodType
AddressID
ContactNo_Office
ContactNo_Residence
MobileNo
Active
Call Center:
In this module all the employee who has been appointed by Admin will come. Admin will add
all the information of employee and assign user name and password to them. By using that user
name and password they will enter to their login and can search for all the donor, and about all
the blood request which have been made by either consumer, donor or any organization. Call
center people will assign donor to related request.
Employee Detail:
EmpId
Name
Address
Phone
Email
Active
Donor:
Donor is that person who is interested in donating their blood so they can register themselves
through this website. If any requirement comes then they will be contacted and they can donate
their blood. Along with it they can search for the various organization locations wise and can
also make request for blood if needed
Donation Frequencies:
Frequency ID
Frequency
Description
User Account D
Organization ID
Active
Organization:
In this module if any organization wants to register itself then it can do it. It can also search for
donor location wise and if needed then it can also make request for blood
Organization:
OrgID
OrgName
OrgType
Email
OrgAddrID
OrgImageURL
OrgDescription
ContactNo
MobileNo
Active
Comment
Organization Type:
TypeID
TypeName
Type Description
HARDWARE REQUIREMENTS:
SOFTWARE REQUIREMENTS:
DATA FLOW
1) A Data Flow has only one direction of flow between symbols. It may flow in both directions
between a process and a data store to show a read before an update. The later is usually
indicated however by two separate arrows since these happen at different type.
2) A join in DFD means that exactly the same data comes from any of two or more different
processes data store or sink to a common location.
3) A data flow cannot go directly back to the same process it leads. There must be atleast one
other process that handles the data flow produce some other data flow returns the original
data into the beginning process.
4) A Data flow to a data store means update (delete or change).
5) A data Flow from a data store means retrieve or use.
Context Diagram
Admin
DataBase
Call Center
Blood Donation
Donor
Agent
Organization
Future Use
1st Level DFDs
Admin
Login
data
login
Call Center
Login
Donor Donor Id
Details
Insert New
Donor
Insert Donor
Verify Id Verify
Data Data
1.1
1.2
Insert
Donor Details
DFD For Operator Creation
Operator Id
Operator
Details
Verify
Insert New Data
Operator
Verify 2.2
Data
2.1
Insert
Operator Id
Insert
Operator
Details
DFD For Call Center Creation
Call Center
Call Center Id
Details
Verify
Insert New Data
Call Center Verify
Data 3.2
3.1
Insert Call
Center Id
Call Center
Insert
Details
Donor
Details
DFD for Donor Creation
Donor Donor Id
Organizati
Details on Details
Insert New
Donor
Verify Data Verify Data
Verify Data
4.1 4.2
4.3
Insert
Donor
Details
Insert Donor Id
Check in
Organization
Check for
Check for Dates
Check for
Verify Blood Type
Verify Appointm Verify
Data ent Data
Data
Details
4.4
4.6 4.5
Appointment Dates
Blood Details Details Details
Insert
Donor Details
3rd Level DFDS
DFD For Donor Creation
Database
Updated
Administrator
Login data
Logs In
Donar
Call Organiza
Center tion
Appointment
Details
Operator Report
UserRole:
RoleID
RoleName
RoleDesc
Active
BDAState:
StateID
StateName
StateCode
StateDesc
CountryID
Active
Country:
CountryID
CountryName
CountryDesc
CountryCode
BDACity
CityID
CityName
CityDesc
CityCode
StateID
Active
:
BDALocation:
LocationID
LocationName
LocationDesc
LocationCode
CityID
Pin code
Active
BloodGroup:
BloodGroupID
BloodGroup
Description
Active
BloodType:
BloodTypeID
TypeName
TypeDesc
Active
PersonalDetails:
UserAccountID
FirstName
MiddleName
LastName
Email
DOB
Weight
Gender
ImageURL
BloodGroupID
BloodType
BloodType
AddressID
ContactNo_Office
ContactNo_Residence
MobileNo
Active
EmployeeDetail:
EmpId
Name
Address
Phone
Email
Active
DonationFrequencies:
FrequencyID
Frequency
Description
Active
ER Diagrams
ER diagram for User Account and Users
Has/b
User Account: elongs UserRole:
UserAccount: UserRole:
AccountID RoleID
Username RoleName
Password RoleDesc
UserDesc Active
HintQuestion
Answer
RoleID
ER diagram for User Account and Organisation
Organisation:
UserAccount:
OrgID
AccountID OrgName
OrgType
Username
Email
OrgAddrID
Password
OrgImageURL
UserDesc OrgDescription
ContactNo
Hint Question MobileNo
Active
Answer
Comment
RoleID
ER diagram for Users Account and Personal Details
Has/b
elongs Personal details
User Account:
AccountID
First Name
Username
Email
Password
DOB
UserDesc
Weight
HintQuestion
Gender
Answer
ImageURL
RoleID
BloodGroupID
BloodType
BloodType
AddressID
ContactNo_Office
ContactNo_Residence
MobileNo
Active
MiddleName
ER diagram for User Account and Employee Details
Employee Details
User Account Has/b
elongs
Hint Question
Answer
Role ID
ER diagram for User Role and Blood User account
User Account:
UserRole:
AccountID
RoleID
Username
RoleName
Password
RoleDesc
User Desc
Active
Hint Question
Answer
Role ID
ER Diagram for State and BDA City
Has/b
State BDAcity
elongs
BDACity:
BDAState: CityID
StateID CityName
StateName CityDesc
StateCode CityCode
StateDesc StateID
CountryID Active
Active
ER diagram for State and Address
Has/b
State elong Address:
s
BDAState: dBDA_Address
StateID AddressID
StateName AddressLine1
StateCode LocationID
StateDesc CityID
CountryID StateID
Active CountryID
CountryID
Zipcode
Active
ER diagram for State and Country:
BDAState:
StateID Country:
StateName CountryID
StateCode CountryName
StateDesc CountryDesc
CountryID CountryCode
Active Active
ER diagram for Location and City
Has/b
Location: elong State
s
BDALocation:
BDAState:
LocationID
StateID
LocationName
StateName
LocationDesc
StateCode
LocationCode
StateDesc
CityID
CountryID
Pin code
Active
Active
ER diagram for Location and City
Has/b City:
DBDAddress: elong
s
BDACity:
dBDA_Address
CityID
AddressID
CityName
AddressLine1
CityDesc
LocationID
CityCode
CityID
StateID
StateID
Active
CountryID
CountryID
Zipcode
Active
BDALocation: DBDAddress:
Has/b
elong
s
BDALocation: DBDAAddress
LocationID AddressID
LocationName AddressLine1
LocationDesc LocationID
LocationCode CityID
CityID StateID
Active CountryID
Zipcode
Active
ER diagram for Blood group Personal details
Has/b
Blood group: elong Personal details
s
Personal details:
BloodGroup:
UserAccountID
BloodGroupID
FirstName
BloodGroup
MiddleName
Description
Active
LastName
DOB
Weight
Gender
ImageURL
BloodGroupID
BloodType
AddressID
ContactNo_Office
ContactNo_Residence
MobileNo
Active
ER diagram for Personal details and Blood Donation preferences
LastName
TimeFrom
Email
TimeUpto
DOB
UserAccountID
Weight
Comment
Gender
Active
ImageURL
BloodGroupID
BloodType
AddressID
ContactNo_Office
ContactNo_Residence
MobileNo
Active
ER diagram for Donor Frequencies and Blood Donation Preferences
Has/b
DonationFrequencies: elong BloodDonationPrefere
s nce
BloodDonationPreference:
DonationFrequencies:
PreferenceID
FrequencyID
UserAccountID
Frequency
DonationFrequencyID
Description
WantToDonateWhitecells
Active
Active
ER diagram for Donor preferred organization and personal details
Has/b
Donar preferred organization elong Persanal Details
s
UserAcountID UserAccountID
OrganisationID FirstName
Active
MiddleName
LastName
DOB
Weight
Gender
ImageURL
BloodGroupID
BloodType
AddressID
ContactNo_Office
ContactNo_Residence
MobileNo
Active
Has/b
Organization type Organization
elong
s
Organisation:
OrganisationType: OrgID
TypeID OrgName
OrgType
TypeName Email
OrgAddrID
TypeDescription
OrgImageURL
OrgImage OrgDescription
ContactNo
Active MobileNo
Active
Comment
DATABASE TABLES
BDA_ Address
BDA_BloodDonationDetails
BDA_BloodGroup
BDA_BloodRequest
BDA_City
BDA_BloodType
BDA_DonationFrequencies
BDA_DonorPreferredOrganisation
BDA_FAQ
BDA_Location
BDA_OrganisationType
BDA_State
ASP.NET is the hosting environment that enables developers to use the .NET Framework
to target Web-based applications. However, ASP.NET is more than just a runtime host; it is a
complete architecture for developing Web sites and Internet-distributed objects using managed
code. Both Web Forms and XML Web services use IIS and ASP.NET as the publishing
mechanism for applications, and both have a collection of supporting classes in the .NET
Framework.
If you develop and publish your own XML Web service, the .NET Framework provides a
set of classes that conform to all the underlying communication standards, such as SOAP,
WSDL, and XML. Using those classes enables you to focus on the logic of your service, without
concerning yourself with the communications infrastructure required by distributed software
development.
Finally, like Web Forms pages in the managed environment, your XML Web service will run
with the speed of native machine language using the scalable communication of IIS.
Active Server Pages.NET
ASP.NET is a programming framework built on the common language runtime that can
be used on a server to build powerful Web applications. ASP.NET offers several important
advantages over previous Web development models:
Enhanced Performance. ASP.NET is compiled common language runtime code running on
the server. Unlike its interpreted predecessors, ASP.NET can take advantage of early
binding, just-in-time compilation, native optimization, and caching services right out of the
box. This amounts to dramatically better performance before you ever write a line of code.
World-Class Tool Support. The ASP.NET framework is complemented by a rich toolbox
and designer in the Visual Studio integrated development environment. WYSIWYG editing,
drag-and-drop server controls, and automatic deployment are just a few of the features this
powerful tool provides.
Power and Flexibility. Because ASP.NET is based on the common language runtime, the
power and flexibility of that entire platform is available to Web application developers. The
.NET Framework class library, Messaging, and Data Access solutions are all seamlessly
accessible from the Web. ASP.NET is also language-independent, so you can choose the
language that best applies to your application or partition your application across many
languages. Further, common language runtime interoperability guarantees that your existing
investment in COM-based development is preserved when migrating to ASP.NET.
Simplicity. ASP.NET makes it easy to perform common tasks, from simple form submission
and client authentication to deployment and site configuration. For example, the ASP.NET
page framework allows you to build user interfaces that cleanly separate application logic
from presentation code and to handle events in a simple, Visual Basic - like forms processing
model. Additionally, the common language runtime simplifies development, with managed
code services such as automatic reference counting and garbage collection.
Manageability. ASP.NET employs a text-based, hierarchical configuration system, which
simplifies applying settings to your server environment and Web applications. Because
configuration information is stored as plain text, new settings may be applied without the aid
of local administration tools. This "zero local administration" philosophy extends to
deploying ASP.NET
Scalability and Availability. ASP.NET has been designed with scalability in mind, with
features specifically tailored to improve performance in clustered and multiprocessor
environments. Further, processes are closely monitored and managed by the ASP.NET
runtime, so that if one misbehaves (leaks, deadlocks), a new process can be created in its
place, which helps keep your application constantly available to handle requests.
Customizability and Extensibility. ASP.NET delivers a well-factored architecture that
allows developers to "plug-in" their code at the appropriate level. In fact, it is possible to
extend or replace any subcomponent of the ASP.NET runtime with your own custom-written
component. Implementing custom authentication or state services has never been easier.
Security. With built in Windows authentication and per-application configuration, you can
be assured that your applications are secure.
LANGUAGE SUPPORT
The Microsoft .NET Platform currently offers built-in support for three languages: C#, Visual
Basic, and JScript.
SQL SERVER
A database management, or DBMS, gives the user access to their data and helps them
transform the data into information. Such database management systems include dBase, paradox,
IMS, SQL Server and SQL Server. These systems allow users to create, update and extract
information from their database.
A database is a structured collection of data. Data refers to the characteristics of people,
things and events. SQL Server stores each data item in its own fields. In SQL Server, the fields
relating to a particular person, thing or event are bundled together to form a single complete unit
of data, called a record (it can also be referred to as raw or an occurrence). Each record is made
up of a number of fields. No two fields in a record can have the same field name.
During an SQL Server Database design project, the analysis of your business needs
identifies all the fields or attributes of interest. If your business needs change over time, you
define any additional fields or change the definition of existing fields.
Primary Key
Every table in SQL Server has a field or a combination of fields that uniquely identifies
each record in the table. The Unique identifier is called the Primary Key, or simply the Key.
The primary key provides the means to distinguish one record from all other in a table. It allows
the user and the database system to identify, locate and refer to one particular record in the
database.
Relational Database
Sometimes all the information of interest to a business operation can be stored in one
table. SQL Server makes it very easy to link the data in multiple tables. Matching an employee
to the department in which they work is one example. This is what makes SQL Server a
relational database management system, or RDBMS. It stores data in two or more tables and
enables you to define relationships between the table and enables you to define relationships
between the tables.
Foreign Key
When a field is one table matches the primary key of another field is referred to as a
foreign key. A foreign key is a field or a group of fields in one table whose values match those
of the primary key of another table.
Referential Integrity
Not only does SQL Server allow you to link multiple tables, it also maintains consistency
between them. Ensuring that the data among related tables is correctly matched is referred to as
maintaining referential integrity.
CODING
WEBCONFIG FILE:(Design Code)
Used to set the connections of each page.
<?xml version="1.0"?>
<!--
Note: As an alternative to hand editing this file you can
use the
web admin tool to configure settings for your application.
Use
the Website->Asp.Net Configuration option in Visual Studio.
A full list of settings and comments can be found in
machine.config.comments usually located in
\Windows\Microsoft.Net\Framework\v2.x\Config
-->
<configuration>
<appSettings>
<add key="ConnStr" value="data source=RAMYA-
2DCA5B123;database=BloodBequeathFederalAgent;integrated
security=sspi"/>
</appSettings>
<connectionStrings>
<add name="BloodDonationAgentConnectionString"
connectionString="Data Source=RAMYA-2DCA5B123;Initial
Catalog=BloodDonationAgent;integrated security=sspi"
providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
affects performance, set this value to true only
during development.
-->
<compilation debug="true">
<assemblies>
<add assembly="System.Design,
Version=2.0.0.0, Culture=neutral,
PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Web.Extensions,
Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Web.Extensions.Design,
Version=1.0.61025.0, Culture=neutral,
PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Windows.Forms,
Version=2.0.0.0, Culture=neutral,
PublicKeyToken=B77A5C561934E089"/></assemblies></compilation>
<!--
The <authentication> section enables configuration
of the security authentication mode used by
ASP.NET to identify an incoming user.
-->
<authentication mode="Windows"/>
<!--
The <customErrors> section enables configuration
of what to do if/when an unhandled error occurs
during the execution of a request. Specifically,
it enables developers to configure html error pages
to be displayed in place of a error stack trace.
<customErrors mode="RemoteOnly"
defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm"
/>
</customErrors>
-->
</system.web>
</configuration>
if (user.GetUser() == true)
{
account.Username = txtUsername.Text;
DataSet ds = new DataSet();
ds = account.GetAccountId();
string AcId = ds.Tables[0].Rows[0][0].ToString();
Session["username"] = txtUsername.Text;
Session["Acid"] = AcId;
DataSet ds1 = new DataSet();
account.Accountid =int.Parse(AcId);
ds1 = account.GetAddressId();
Session["addid"] = ds1.Tables[0].Rows[0][0].ToString();
Response.Redirect("~/Donor/DonorHome.aspx");
}
else
Image2.Visible = true;
lblMsg.Text = "Your Login Attempt Is Failed Plz try Again....!";
txtPassword.Text = "";
txtUsername.Focus();
//Checking Organization
if (user.GetOrganization() == true)
{
account.Username = txtUsername.Text;
DataSet ds = new DataSet();
ds = account.GetAccountId();
string AcId = ds.Tables[0].Rows[0][0].ToString();
Session["username"] = txtUsername.Text;
Session["Acid"] = AcId;
DataSet ds1 = new DataSet();
org.Orgid =int.Parse(AcId);
ds1 = org.GetOrgAddressId();
Session["addid"]=ds1.Tables[0].Rows[0][0].ToString();
Response.Redirect("~/Organization/OrganizationHome.aspx");
}
else
Image2.Visible = true;
lblMsg.Text = "Your Login Atempt Is Failed Plz try Again....!";
txtPassword.Text = "";
txtUsername.Focus();
//Employee Checking
if (user.CheckEmployee() == true)
{
account.Username = txtUsername.Text;
DataSet ds = new DataSet();
ds = account.GetAccountId();
string AcId = ds.Tables[0].Rows[0][0].ToString();
Session["username"] = txtUsername.Text;
Session["Acid"] = AcId;
Response.Redirect("~/CallCenter/CallCenterHome.aspx");
}
}
}
TESTING
INTRODUCTION
Software testing is a critical element of software quality assurance and represents the
ultimate review of specification, design and coding. In fact, testing is the one step in the software
engineering process that could be viewed as destructive rather than constructive.
A strategy for software testing integrates software test case design methods into a well-
planned series of steps that result in the successful construction of software. Testing is the set of
activities that can be planned in advance and conducted systematically. The underlying
motivation of program testing is to affirm software quality with methods that can economically
and effectively apply to both strategic to both large and small-scale systems.
MODULE TESTING
Component Testing
SUB-SYSTEM TESING
SYSTEM TESTING
Integration Testing
ACCEPTANCE TESTING
User Testing
OUTPUT SCREENS
Home Page
Admin Login
Admin Home
Add new Organization
Retrieving Organization information
City Information
ADD NEW LOCATION
Location Information
Registration Form For All Users
Login form
User Home
SearchForDonor
Update Account Details
It has been a great pleasure for us to work on this exciting and challenging project. It also
provides knowledge about the latest technology used in developing web enabled application and
client server technology that will be great demand in future. This will provide better
opportunities and guidance in future in developing projects independently.
BENEFITS:
The project is identified by the merits of the system offered to the user. The merits of this project
are as follows: -
LIMITATIONS:
The size of the database increases day-by-day, increasing the load on the database back up
and data maintenance activity.
Training for simple computer operations is necessary for the users working on the system.
BIBLIOGRAPHY