You are on page 1of 21

TRIBHUVAN UNIVERSITY

Institute of science and technology

A Final Year Project Proposal


On
“e-Rakta Nepal”
Submitted To:
Department of Computer Science and Information Technology
Impartial fulfillment of the requirement for the bachelor degree in computer science
and information technology

Submitted By:

Samrat Ojha (21551/075)

Rahul Naidu (21550/075)

Prabin khawas (21547/075)


TABLE OF CONTENTS
Abstract .......................................................... Error! Bookmark not defined.
List of Figures ................................................................................................. II
List of Tables ................................................................................................. III
List of Abbreviations .................................................................................. IIIV
Chapter 1 Introduction ..................................................................................... 1
1.1 Introduction .................................................................................................. 1
1.2 Problem statement ........................................................................................ 1
1.3 Objective....................................................................................................... 1
Chapter 2 : Requirement analysis and feasibility analysis .............................. 2
2.1 Background Study ........................................................................................ 2
2.2 Literature review: ......................................................................................... 2
2.3 Requirement Analysis: ................................................................................. 3
2.3.1 Software requirement: ............................................................................... 3
2.3.2 Hardware requirement: .............................................................................. 3
2.3.3 Functional Requirements ........................................................................... 4
Use Case Diagram .............................................................................................. 5
2.3.4 Non Functional Requirement .................................................................... 6
2.4 Feasibility study: ......................................................................................... 6
2.4.1 Technical feasibility: ................................................................................. 6
2.4.2 Economic feasibility .................................................................................. 6
2.4.3 Operational feasibility: .............................................................................. 6
2.4.4 Scheduling feasibility ................................................................................ 6
2.4.5 Algorithm in e-Rakta Nepal: ..................................................................... 8
2.5 High level design of system: ...................................................................... 10
Expected outcome .......................................................................................... 12
References
ABSTRACT

Blood is a constantly circulating fluid providing the body with nutrition, oxygen, and
waste removal. Blood is mostly liquid, with numerous cells and proteins suspended in it.
Making blood thicker than pure water. The average person has about 5 liters of blood. It
forms an integral part in mankind life, because one the most important function it
performs is transportation of need oxygen to various parts and also helps in removing
carbon dioxide from human body. This knowledge of importance of human blood plays a
very important role in healthcare centers in reviving many patients such as accidental, gun
shot or in operation theatre. Department of Transfusion medicine plays a very important
role in separating the blood components such as plasma, platelets, packed red cells. Each
and every component present in a blood plays a specific role. The patients with less
Hemoglobin level need to be transfused with packed red cells, and patients with low
platelet count needs to be transfused with Platelets, and since plasm contains coagulation
factors can be very useful during operation and many more patient‟s needs. The
Department of Transfusion medicine plays a very important role in meeting all the blood
requirement for all the healthcare system. To make things more accurate and managing
blood requirements more systemically blood bank management systems are introduced.
These systems store data of blood donors and as well as blood stored in different blood
banks and hospitals. So that whenever blood is required, they can get access to blood
easily.

I
List of Figures

Figure 1: Use case diagram of e-Rakta Nepal 5


Figure 2: Flow chart of e-Rakta Nepal 9
Figure 3: ER diagram of e-Rakta Nepal 10

II
List of Tables

Table 1: Gantt chart of e-Rakta Nepal 5

III
List of Abbreviations
CSS: Cascading Style Sheet
DB: Data Base
GUI: Graphical User Interface
HTML: Hyper Text Mark Up Language
JS: Java script
RAM: Random Access Memory
UI: User Interface
UX: User Experience
VS: Visual Studios
MERN: MongoDB, Express JS, React JS, Node JS
ES6: ECMAScript 6

IV
1
Chapter-1
Introduction
1.1 Introduction
„e-Rakta Nepal‟ has been designed to facilitate people to provide blood in needy
situations and to donate blood in online medium.
As we all know about the need of blood hence it became very important to fulfill its need
when it‟s required in the minimum possible time. So now with the help of these blood
bank systems it will be easy to and blood and its product in nearby areas. These systems
also update the data time to time so that there will be no mistake.
In e-Rakta Nepal‟, there is a database which have all information of blood donors and
blood banks so whenever any receiver wants blood then the system checks all compatible
blood availability in the database and works according to that.

1.2 Problem statement


Many people don‟t get blood in needy situations and many people don‟t know where to
donate blood. Required blood group is also not available in different situations.
To address this problem, we have designed a web based system which helps to provide
information of blood donors in different blood banks and to donate blood. This can help
to save someone‟s life.

1.3 Objective
 To provide information of blood donors and blood banks as well as ease the
accessing to blood in critical situations.
 To help individual to donate blood in easy way by providing information of blood
donations program.
 To request blood as per individual need and requirement.

1
Chapter -2
Requirement analysis and feasibility analysis

This application caters to the needs of the society. Requirement analysis phase is
conducted to note out the objective requirements of the product from the general
outline/idea of the product.

2.1 Background Study


Requirements define the needs of the project to provide best of its utility and benefits. If
they aren't clear or analysis is not done properly, it might lead to failure of the project no
matter how good the concept and design is.

2.2 Literature review:


Availability of blood is major concern in context of Nepal. Required blood group is not
available in right time. So overcome this problem there are some of the system which
solves this problem.

 Hamro Life Bank:


“Hamro Life Bank” is a web based application which helps to donate and
request blood as well as provide the data of blood banks in a different regions.
It is another major step towards solving the problemof blood donation in Nepal. It
helps to donate blood and request blood as well as provide the data of blood banks in
certain region and area.[1]

 Hami Nepal
Hami Nepal has been connecting hundreds of volunteers to local
communities all over the world since its first initiation in 2015. The emergency
response program and the post-earthquake rehabilitation programs were the initial
programs successfully carried out by Hami Nepal.Hami Nepal has successfully
conducted more than 2000 Blood donation program in different part of Nepal. [2]

 Blodan
Blood Donors Association Nepal (BLODAN), established in 1990, is a
federation of non-remunerated voluntary blood donors, donor‟s organizations, clubs and
associations. It is working to meet the needs for high quality human blood and blood

2
products by promoting the regular, non-remunerated voluntary blood donation all over the
country. [3]

 Hamro Doctor
Hamro Doctor is the First Online Healthcare Service Provider from Nepal
where patients can consult certified medical personnel and get additional health related
services along with other information related to health online.[4]

 Tulions blood bank


With the defined motive and under the LCI umbrella, the Lions Clubs
International, Multiple District-325 in Nepal has been involved in its own organizational
development with more than 850 strong clubs and 25,000 plus dedicated and passionate
Lion members presence under its 4 Districts since 1971. Albeit several social service
activities are being undertaken time and again in Nepal, LCI MD-325 through its dynamic
and tireless members mobilized in the social services, recently took one of its bold and
broadest decisions since its inception in Nepal to establish and operate its' own „TU Lions
Blood Transfusion and Research Center (TULBT&RC) with modern typology of services
in the blood related issues with the participatory perspectives.[5]

2.3 Requirement Analysis:


Requirement analysis of the project shapes the final deliverable of the product. Hence this
in one of the important phases of web application development. This web application‟s
requirements must cater to the interest of the public and society.

2.3.1 Software requirement:


OPERATING SYSTEM: windows XP/ windows 10
FRONT-END: HTML, CSS, Javascript, React
BACK-END: MongoDB, Node.js, Express.js
IDE: Vs-code
Git
Git-hub

2.3.2 Hardware requirement:


Minimum: 4GB RAM
Processor: Intel Pentium 4(or above),
Storage: 500 GB Hard disk(or above)
3
2.3.3 Functional Requirements
A Functional Requirement (FR) is a description of the service that the software must
offer. It describes a software system or its component. A function is nothing but inputs to
the software system, its behavior, and outputs. It can be a calculation, data manipulation,
business process, user interaction, or any other specific functionality which defines what
function a system is likely to perform.
The functional requirement of this system are:
 Register donor.
 Validate the request for blood.
 Approve and accept request for blood.
 Keep track of blood stock.

4
Use Case Diagram

Figure 1: Use case diagram of e-Rakta Nepal

5
2.3.4 Non Functional Requirement
Non functional requirements are the requirements that defines the standards and criterias
that should be achieved through the application.
Some non functional requirements of the application are.
 Speed: Application must be speedy and request\response to/from the server must
be quick
 Standards: Strict coding standards must be followed during the development.
 Usability: Application must be easy to use for new users.

2.4 Feasibility study:


A feasibility study is a comprehensive evaluation of a proposed project that evaluates all
factors critical to its success in order to assess its likelihood of success. Business success
can be defined primarily in terms of ROI, which is the amount of profits that will be
generated by the project

2.4.1 Technical feasibility:


This system can be build using our own personal computer. The technologies used are
MongoDB, Express.js, node.js, React, etc. which are all free and open source. Hence this
web app is technically feasible.

2.4.2 Economic feasibility:

This system is economically feasible as hardware and software requirements are


affordable and are approachable. As in today‟s context everyone has access to the internet
so there will not be any problem to visit this system in a fruitful way. No any additional
hardware and software are used. So this project as economically feasible.

2.4.3 Operational feasibility:


The organizational need can be fulfilled through this project as authority can update the
system and approve donors who have donated the blood in respective time span. Hence
the project plan satisfies the requirements identified in the requirements analysis phase of
system development.

2.4.4 Scheduling feasibility


This feasibility is most important for project success as project will fail if not completed
on time. The schedule of our application is shown in the gnat chart below:
Table 1 : Gantt chart of e-Rakta Nepal project

6
7
2.4.5 Algorithm in e-Rakta Nepal:
An algorithm is a process or set of rules to be followed in calculations or other problem-
solving operations, especially by a computer .In e-Rakta Nepal project several algorithm
are used for solving different kind of problems or things. Problems like searching ,sorting
are used in different part of the project.
Some of the algorithm which are used in our project are described below:
1. Priority queue algorithm: Priority Queue is the modified version of queues in
which each element will have a priority value, and operations on elements are
performed based on their priority. Generally, The numbers with the highest value
are deleted first than the elements with the lowest value. Priority queue algorithm
is used in e-Rakta Nepal in order to provide blood to those patients who has
higher priority. Priority depends on different factors such as disease, accident case
and so on.
2. Insertion sort: Insertion sort is a simple sorting algorithm that works similar to
the way you sort playing cards in your hands. The array is virtually split into a
sorted and an unsorted part. Values from the unsorted part are picked and placed
at the correct position in the sorted part. As e-Rakta Nepal is a react application
which uses JavaScript to build where Insertion sort is the base for
Array.prototype.sort() method. Sorting is user in order to provide relevant data to
the admin in dashboard or to the blood donor who searches for blood banks.
Steps followed in insertion sort are as follow:
 Iterate from arr[1] to arr[N] over the array.
 Compare the current element (key) to its predecessor.
 If the key element is smaller than its predecessor, compare it to the
elements before. Move the greater elements one position up to make space
for the swapped element.

Pseudo code for Insertion sort is:

void insertionSort(int arr[], int n)


{
int i, key, j;
for (i = 1; i < n; i++)
{
key = arr[i];
j = i - 1;

8
// Move elements of arr[0..i-1],
// that are greater than key, to one
// position ahead of their
// current position
while (j >= 0 && arr[j] > key)
{
arr[j + 1] = arr[j];
j = j - 1;
}
arr[j + 1] = key;
}
}

3. Binary Search: Binary search in e-Rakta Nepal is used in order to manage bulk
of posts in admin dashboard. Admin might have to search a specific donor ,patient
or posts. Some of the factors that admin will use to search are name, location,
unique id, date, etc. The basic steps followed are:
 Begin with the mid element of the whole array as a search key.
 If the value of the search key is equal to the item then return an index of
the search key.
 Or if the value of the search key is less than the item in the middle of the
interval, narrow the interval to the lower half.
 Otherwise, narrow it to the upper half. • Repeatedly check from the second
point until the value is found or the interval is empty.
Pseudo Code for Binary Search Algorithm:
binarySearch(arr, size)
// loop until beg is not equal to end
midIndex = (beg + end)/2
if (item == arr[midIndex] )
return midIndex
else if (item > arr[midIndex] )
beg = midIndex + 1
else
end = midIndex – 1

9
2.5 High level design of system:
Working mechanism of proposed system-

Figure 2: Flow chart of blood bank management system

10
ER diagram
An Entity Relationship (ER) Diagram is a form of flowchart that shows the relationships
between "entities" like people, things, or concepts inside a system.

Figure 3: ER diagram of e-Rakta Nepal

11
Expected outcome

As we are building a blood bank management system which is in the form of web-based
rather than app based. So the system includes admin panel and user panel. In the user
panel there will be two parts blood donor and blood requester. Blood donor can register
and update his/her profile whereas blood requester can only make blood request. As the
system admin can accept member registration, search blood donors, manage report and
send blood request alerts. The system will also provide information of blood banks in
certain region and areas as per need and requirement.

12
References

[1] "About hamro life bank" 28 December 2021. [Online]. Available:


https://hamrolifebank.com/. [Accessed 01 January 2023]
[2] "Hami Nepal" 09 April 2022. [Online]. Available: https://haminepal.org/.
[Accessed 28 December 2022]
[3] "Situation of blood donation program in Nepal" 21 September 2017 [Online].
Available: https://nrcs.org/donate-blood/.com/. [Accessed 28 December 2022]
[4] "Blodan" 12 April 2020. [Online]. Available: https://blodan.org/. [Accessed 29
December 2022]
[5] "Hamro Doctor" 19 April 2021. [Online]. Available: https://blodan.org/.
[Accessed 31 December 2022]
[6] "About Tulions Nepal , Blood donation program" 03 May 2021. [Online].
Available: https://tulionsbloodbank.org/ [Accessed 28 December 2022]

13

You might also like