SDD Lifesavers
SDD Lifesavers
DESIGN
DOCUMENT
GROUP 20
LifeSavers Pakistan
OVERVIEW
TABLE OF CONTENT
1. OVERVIEW ....................................................................................................................................................... 12
1.1. SCOPE ............................................................................................................................................................ 12
1.2. PURPOSE ...................................................................................................................................................... 12
1.3. INTENDED AUDIENCE ........................................................................................................................... 12
2. DEFINITIONS ............................................................................................................................................. .... 13
3. CONCEPTUAL MODEL FOR SOFTWARE DESIGN DESCRIPTION ............................................. 14
3.1. SOFTWARE DESIGN IN CONTEXT .................................................................................................... 14
3.2. SOFTWARE DESIGN DESCRIPTIONS WITHIN THE LIFE CYCLE ........................................ 14
3.2.1. INFLUENCES ON SDD PREPARATION ....................................................................................... 14
3.2.2. INFLUENCES ON SOFTWARE LIFE CYCLE PRODUCTS ...................................................... 14
3.2.3. DESIGN VERFICATION AND DESIGN ROLE IN VALIDATION .......................................... 14
4. DESIGN DESCRIPTION INFORMATION CONTENT ........................................................................ 15
4.1. INTRODUCTION ....................................................................................................................................... 15
4.2. SDD IDENTIFICATION ........................................................................................................................... 15
4.3. DESIGN STAKEHOLDERS AND THEIR CONCERNS ................................................................... 15
4.4. DESIGN VIEWS .......................................................................................................................................... 15
4.5. DESIGN VIEWPOINTS ............................................................................................................................ 15
4.6. DESIGN ELEMENTS ................................................................................................................................ 16
4.6.1. DESIGN ENTITIES ............................................................................................................................... 16
4.6.2. DESIGN ATTRIBUTES ....................................................................................................................... 16
4.6.3. DESIGN CONSTRAINTS..................................................................................................................... 17
4.7. DESIGN RATIONALE ...............................................................................................................................17
4.8. DESIGN LANGUAGES .............................................................................................................................. 18
5. DESIGN VIEWPOINTS ................................................................................................................................. 19
5.1. INTRODUCTION ....................................................................................................................................... 19
5.2. CONTEXT VIEWPOINT .......................................................................................................................... 19
5.2.1. DONOR USECASE ................................................................................................................................ 20
5.2.1.1. REGISTER AS DONOR ................................................................................................................... 21
Page 2
10
OVERVIEW
Page 3
OVERVIEW
Page 4
10
OVERVIEW
Page 5
OVERVIEW
Page 6
10
OVERVIEW
Page 7
OVERVIEW
Page 8
10
OVERVIEW
TABLE OF FIGURES
Figure 1. Visualization of Donor Use Case Diagram ........................................................................................................... 20
Figure 2. Visualization of Register as Donor Use Case Diagram .................................................................................. 21
Figure 3. Visualization of View Donation History Use Case Diagram ........................................................................ 21
Figure 4. Visualization of Choose Donation Preference Use Case Diagram ............................................................ 22
Figure 5. Visualization of Take Part in Awareness Campaigns Use Case Diagram .............................................. 22
Figure 6. Visualization of Feedback and Support Use Case Diagram ......................................................................... 22
Figure 7. Visualization of Receive Post Surgery Support Use Case Diagram .......................................................... 23
Figure 8. Visualization of View Donation Request Use Case Diagram ....................................................................... 23
Figure 9. Visualization of Receiver Use Case Diagram...................................................................................................... 25
Figure 10. Visualization of Registration Use Case Diagram ........................................................................................... 25
Figure 11. Visualization of Search for Compatible Donors Use Case Diagram ...................................................... 26
Figure 12. Visualization of Access Profile Use Case Diagram ........................................................................................ 26
Figure 13. Visualization of Submit Health Report Use Case Diagram ........................................................................ 26
Figure 14. Visualization of Logistics System Use Case Diagram .................................................................................. 26
Figure 15. Visualization of Feedback and Support Use Case Diagram ..................................................................... 27
Figure 16. Visualization of Organ Match Status Use Case Diagram ............................................................................ 27
Figure 17. Visualization of of Engage in Awareness Campaigns Diagram ............................................................... 27
Figure 18. Visualization of Coordinate with HealthCare Professional Use Case Diagram ................................ 28
Figure 19. Visualization of Admin Use Case Diagram ....................................................................................................... 28
Figure 20. Visualization of Manage User Account Use Case Diagram ........................................................................ 29
Figure 21. Visualization of View Donation Request Use Case Diagram .................................................................... 29
Figure 22. Visualization of Monitor System Performance Use Case Diagram ........................................................ 30
Figure 23. Visualization of Coordination with HealthCare Professional Use Case Diagram ........................... 30
Figure 24. Visualization of View User History Use Case Diagram ............................................................................... 31
Figure 25. Visualization of Search for Donors Use Case Diagram ............................................................................... 31
Figure 26. Visualization of Facilitate Organ Donation Support Use Case Diagram ............................................. 31
Figure 27. Visualization of Logistics System Use Case Diagram .................................................................................. 32
Figure 28. Visualization of Update Donation Center Directory Use Case Diagram.............................................. 32
Figure 29. Visualization of HealthCare Professional Use Case Diagram ................................................................... 33
Figure 30. Visualization of Matching of Organ Use Case Diagram............................................................................... 34
Figure 31. Visualization of View Patients Profile Use Case Diagram ......................................................................... 34
Figure 32. Visualization of Monitor Post Surgery Support Use Case Diagram ...................................................... 35
Figure 33. Visualization of Engage in Awareness Campaigns Use Case Diagram................................................. 35
Figure 34. Visualization of Verify Organ for Donation Use Case Diagram ............................................................... 35
Figure 35. Visualization of Class Diagram .............................................................................................................................. 36
Figure 36. Visualization of User Class Diagram ................................................................................................................... 37
Figure 37. Visualization of Admin Class Diagram ............................................................................................................... 38
Page 9
OVERVIEW
Page 10
10
OVERVIEW
Page 11
OVERVIEW
1. OVERVIEW
The Software Design Document (SDD) for the LifeSavers Pakistan contains definitions that
are necessary to build a concept and further form the design of the software. The document is
structured based on the requirements and functionalities that were mentioned in the software
requirements specifications (SRS) report. The goal is to supply comprehensible guidance for a
design that can be easily implemented by any programmer who reads this document. The
document holds fast the IEEE standards (IEEE Std 1016 - 2009).
1.1. SCOPE
The following SDD contains a full outline of the project, including its main features, design
constraints, system architecture and data structure. Moreover, it also provides a summary of
the timeline of our project and our current progress. By the use of UML diagrams, we have
visually represented the design of the system and its subsystems/modules the purpose of it is
to make it easier for the programmers to have a clear idea of the information provided in this
document.
1.2. PURPOSE
The objective of this SDD for the LifeSavers Pakistan is to provide a design that adheres to
the functional and non-functional requirements of the SRS document. It acts as a guide for the
developers during the course of the entire project to ensure that the application is able to
efficiently link the available donors with the people in need and further the cause of organ as
well as blood donation within Pakistan.
Page 12
10
2
.
DEFINITIONS
D
E
F
I
N
2. DEFINITIONS
I
T DEFINITIONS TABLE
I
TERMS DEFINITIONS
O
N
API Application Programming Interface
S
ETA Estimated Time of Arrival
Page 13
3
2
. CONCEPTUAL MODEL FOR SOFTWARE DESIGN
D DESCRIPTION
E
F
I
N 3. CONCEPTUAL MODEL FOR SOFTWARE DESIGN
I
T DESCRIPTION
I
O Basic terms, concepts and context of SDD will be given in this part.
N
S 3.1. SOFTWARE DESIGN IN CONTEXT
The LifeSavers Pakistan project aims to create seamless connections between organ and
blood donors and those in dire need of assistance, facilitating timely and effective support. The
app provides a platform where donors and recipients can easily connect with each other,
enabling a rapid response to life-saving donations. By providing critical tools and information,
Lifesavers Pakistan aims to improve healthcare outcomes by creating a sustainable blood and
organ donation network.
The app is scripted in JavaScript and PHP, and styled in CSS and Bootstrap. In addition, a
location-based API is integrated to help donors find nearby donation centers, making the
donation process more convenient.
INFORMATION CONTENT
Page 14
4
DESIGN DESCRIPTION INFORMATION CONTENT
A context view will show system services and user interactions with UML use case diagrams
and a structured context diagram. Input-output relationships will be clearly defined with the
help of interface views.
Page 15
3
DESIGN DESCRIPTION INFORMATION CONTENT
INFORMATION CONTEN
The information view uses entity-relationship and UML class diagrams to give a
thorough look into persistent data. The composition view will show the staffing needs,
projected expenses, and team structure. Relationships between classes are depicted clearly
for ease of understanding. Service definitions and access mechanisms are described with
the help of interaction views. The guidance for test cases is provided by the interface
viewpoint, which also contains internal and external interface specifications. Lastly, the
state dynamic view illustrates the app state transitions with diagrams.
DEFINITIONS TABLE
Page 16
DESIGN DESCRIPTION INFORMATION CONTENT
INFORMATION CONTENT
Page 17
DESIGN DESCRIPTION INFORMATION CONTENT
MVC Pattern: Data and user interface elements can be managed centrally using the MVC
Pattern, which divides the application into three primary parts: the controller, view, and model.
This makes it simpler to scale, maintain, and update the system.
Context Viewpoint: This view aids in describing each user's path and interactions inside the
system, especially if the app's interactions are event-based (such as notifications and donation
requests).
Logical Viewpoint: The application's object-oriented design makes it ideal for class
diagrams, which efficiently illustrates complex interrelationships.
Interface Viewpoint: The LifeSavers Pakistan relies heavily on user behavior, which calls for
user-friendly interfaces and clear component diagrams.
Interaction Viewpoint: the developers and stakeholders must be able to see how the system
reacts to user activities such as submitting a request or getting in touch with a donor.
State Dynamic Viewpoint: The web pages of the application act as states, and in order to
preserve user flow, transition between these states must be carefully mapped.
Page 18
DESIGN VIEWPOINTS
5. DESIGN VIEWPOINTS
5.1. INTRODUCTION
In this document, five viewpoints are designed for the system as listed below;
• Context Viewpoint
• Logical Viewpoint
• Information Viewpoint
• Interface Viewpoint
• Interaction Viewpoint
• State Dynamic Viewpoint
Page 19
DESIGN VIEWPOINTS
Page 20
DESIGN VIEWPOINTS
Page 21
DESIGN VIEWPOINTS
on recipient needs. If the donor is satisfied with the match and willing to proceed further
with the donation, then it extends to confirm donation use case.
Page 22
DESIGN VIEWPOINTS
Page 23
DESIGN VIEWPOINTS
Page 24
DESIGN VIEWPOINTS
5.2.2.1. REGISTRATION
Receivers register by entering their personal and medical information. This use case
includes "Enter Credentials and Medical Data" for account creation. If the receiver’s data
matches with a suitable donor, the process extends to "Search for Compatible Donors”.
Figure 11. Visualization of Search for Compatible Donors Use Case Diagram
Page 25
DESIGN VIEWPOINTS
Page 26
DESIGN VIEWPOINTS
Page 27
DESIGN VIEWPOINTS
Figure 18. Visualization of Coordinate with HealthCare Professional Use Case Diagram
Page 28
DESIGN VIEWPOINTS
Page 29
DESIGN VIEWPOINTS
Figure 23. Visualization of Coordination with HealthCare Professional Use Case Diagram
Page 30
DESIGN VIEWPOINTS
Figure 26. Visualization of Facilitate Organ Donation Support Use Case Diagram
Page 31
DESIGN VIEWPOINTS
Figure 28. Visualization of Update Donation Center Directory Use Case Diagram
Page 32
DESIGN VIEWPOINTS
Page 33
DESIGN VIEWPOINTS
Page 34
DESIGN VIEWPOINTS
Figure 32. Visualization of Monitor Post Surgery Support Use Case Diagram
Figure 34. Visualization of Verify Organ for Donation Use Case Diagram
Page 35
DESIGN VIEWPOINTS
Page 36
DESIGN VIEWPOINTS
5.3.1.1. FIELDS
• name: this is a string that is used to define the user's name. This attribute is
defined by the user
• email: this is a string that defines the user's email address, used for login and
notifications. It is defined by the user
• password: this is a string used for user's account password for authentication.
This attribute is defined by the user.
• phoneNo: this is an integer defined by the user to hold the contact no for
notification and communication.
• isVerified: this is a boolean set by the system or admin after the account is
successfully verified.
• role: this is a string that specifies the user role, for example admin, donor, or
recipient. It is defined by the user.
. 5.3.1.2. FUNCTIONS
• register(): this function allows a new user to create an account by providing
necessary details.
• editProfile(): this function allows the users to make changes to their profile
information.
Page 37
DESIGN VIEWPOINTS
• validateAccount(): this function is used to verify the user's account after the
registration is done.
• recoverPassword(): this function is called when the user wants to recover
his/her password if forgotten.
5.3.2.1. FUNCTIONS
• verifyUser(): this function allows the admin to verify a new user's identity and
information.
• manageReports(): this function provides tools for the admin to view and handle
user related reports.
• manageContent(): this function allows the admin to manage and moderate the
system content within the application.
Page 38
DESIGN VIEWPOINTS
5.3.3.1. FIELDS
• bloodType: this is a string that is used to store the blood type required by the
recipient. It is defined by the recipient himself.
• organTypeNeeded: this is a string that is used to specify the type of organ needed
by the recipient. It is defined by the recipient.
• urgencyLevel: this is a string that indicates the level of urgency for the recipient's
request. It is defined by the recipient.
• history_DonationHistory: this attribute links to the donation history of the
recipient.
5.3.3.2. FUNCTIONS
• postRequest(): this function allows the recipients to make a new donation
request.
• viewDonationMatch(): this function allows the recipients to view potential
donor matches.
Page 39
DESIGN VIEWPOINTS
5.3.4.1. FIELDS
• bloodType: This is a string defined by the donor that is used to indicate the blood
type of the donor.
• organType: this is a string that is defined by the donor to specify the type of
organ that the donor wants to donate.
• history_DonationHistory: this attribute is linked by the system, connects to the
donation history of donor.
5.3.4.2. FUNCTIONS
• applyDonation(): this function is called when a donor wants to apply for a
donation.
• viewUpdates(): this function is called when the donor wants to check or view
updates about the donation status.
5.3.5.1. FIELDS
• requestId: this is a unique id defined by the system whenever a request for
donation is made by the recipient.
• status: this is a string that is set by the system which shows the current status of
the donation request.
Page 40
DESIGN VIEWPOINTS
5.3.6.1. FUNCTIONS
• matchDonor(): this function is called to match potential donors with recipients
based on the requirements.
• notifyMatch(): this function is called when a match is found to notify the donor
and recipient.
• performCompatibilityCheck(): this function is called to check compatibility
between donor and recipient.
5.3.7.1. FIELDS
• donationId: this is a unique identifier given by the system each donation entry.
• Date: This is an attribute that is used to store the date of when the donation is
made by the donor.
• amount: this is a double used to store the quantity or amount of the donation
made by donor (e.g., units of blood).
Page 41
DESIGN VIEWPOINTS
This class is used to keep track of the donation history for both the donors and
recipients. It contains functions to record donations and for viewing and updating
history.
5.3.8.1. FUNCTIONS
• recordDonation(): this function is called whenever a new donation is made to
record the details about the new donation.
• viewHistory(): this function is used whenever a user wants to view his/her
donation history.
• updateHistory(): this function is used whenever a user wants to update (delete
or edit) his/her existing donation record.
Page 42
DESIGN VIEWPOINTS
5.3.9.1. FIELDS
• centerId: this is a unique identifier that is given to each donation center by the
system.
• name: this is a string that is defined by the system or the center to hold the name
of the donation center.
• address: this is a string defined by the center that is used to store the address of
donation center.
• contactInfo: this is a string to hold the contact information for the center and is
defined by the center.
5.3.9.2. FUNCTIONS
• viewCenterList(): this is a function that is used to display a list of all the donation
centers.
• getDirections(): this function is called when the directions to a specific donation
center is required.
5.3.10.1. FUNCTIONS
• sendAlert(): this function is used to send an alert for important notifications
about donation activities.
• sendReminder(): this function is used to send reminders for donation schedules
and updates.
Page 43
DESIGN VIEWPOINTS
This class is made to collect feedback from the users, it has attributes like feedback
content, rating, and feedback submission date. It also provides functions to submit feedback
and view FAQs.
5.3.11.1. FIELDS
• feedbackId: it is a unique identifier assigned to each feedback entry by the
system.
• content: this is a string that holds the text content of the feedback that is
provided by the user.
• rating: this is an integer used to hold the rating provided by the user.
• Date: this is an attribute used to store the Date of the feedback submission.
•
5.3.11.2. FUNCTIONS
• submitFeedback(): this is a function that allows the user to submit their
feedback.
• viewFAQ(): this is a function that provides users access to frequently asked
questions.
Page 44
DESIGN VIEWPOINTS
5.3.12.1. FUNCTIONS
• scheduleFollowUp(): this function allows to make schedules for follow-up
appointments after the surgery.
• provideRecoveryResources(): this function is used to provide recovery
resources to the recipients.
• sendMedicationReminder(): this function is called to send reminders for
medication intake.
5.3.13.1. FIELDS
• location: defined by the system or logistics team. Used to store the location of
the donation or pickup.
5.3.13.2. FUNCTIONS
Page 45
DESIGN VIEWPOINTS
5.3.14.1. FUNCTIONS
• createProfile(): this function allows the users to create their profile on the
system.
• updateProfile(): this function is called when users to make changes to their
profile.
• verifyDetails(): this function is called to Verify profile details for accuracy and
security.
Page 46
DESIGN VIEWPOINTS
5.3.15.1. FUNCTIONS
• shareContent(): this function is called whenever a user wants to share
awareness content with the community.
• manageCampaign(): this function is used to organize and oversee the awareness
campaigns.
• postSuccessStory(): this function is called whenever a user wants to posts
success stories to inspire and inform other users.
•
5.3.16. HEALTHCARE PROVIDER CLASS
This class provides information about the donation centers, such as their name, address,
and contact info. It includes functions to view a list of centers and also get directions to a
specified center.
Page 47
DESIGN VIEWPOINTS
5.3.16.1. FIELDS
• providerId: it is a unique identifier assigned to each healthcare provider by the
system.
• name: it is a string defined by the provider to store the name of the healthcare
provider.
• location: it is a string defined by the provider to store the Location details of the
healthcare provider.
5.3.16.2. FUNCTIONS
• registerPatient(): this function is called when a patient is needed to be registered
for donation services.
• checkRegistry(): this function allows you to check the registry of patients that
are in need of donations.
5.3.17.1. FIELDS
• paymentId: it is a unique identifier for each payment transaction. It is defined by
the system.
• amount: it is a double used to store the amount of the payment and it is defined
by the user.
• date: it is an attribute that is defined by the system to hold the date of the
transaction made.
Page 48
DESIGN VIEWPOINTS
5.3.17.2. FUNCTIONS
• processPayment(): this function is called to process the payment transactions.
Page 49
DESIGN VIEWPOINTS
Page 50
DESIGN VIEWPOINTS
Page 51
DESIGN VIEWPOINTS
The System Coordinator mobile phone is the hardware device through which
system coordinator can interact with the management system, connected to central
node through WLAN, also containing Mobile App UI component and an artifact (.apk file)
for installing and running mobile application.
Page 52
DESIGN VIEWPOINTS
This node is used for processing and analyzing health data to support donor-
patient matching, connected to the central node through the internet.
This node is used to match potential donors with patients, connected to the
central node through internet. It uses health data to identify compatibility.
Figure 59. Visualization of New Donor & Recipient Database Server Node
This node contains the data files of the donor and recipients, used by
LifeSavers Pakistan management system when a new donor/recipient registered. It is
connected by central node through internet and database API for secure connection.
Page 53
DESIGN VIEWPOINTS
This node contains data files for storing data in LifeSavers Pakistan Management
System. It is connected to central node through LAN. The database base is managed by
MySQL.
Page 54
DESIGN VIEWPOINTS
Page 55
DESIGN VIEWPOINTS
This is the central node of the deployment diagram containing four software components for
visualizing different features of the website. Each component performs different functionality.
Admin device:
This node allow admin to access the LifeSavers website. It contains a nested node
(web browser), reading the front-end files for the website and loads admin web UI on
the admin device. It is connected to central node through WLAN connection.
Page 56
DESIGN VIEWPOINTS
Donor device:
This node allows donors to access the LifeSavers website. It contains a nested
node (web browser), reading the front-end files for the website and loads donor web UI
on the donor device. It is connected to central node through internet connection.
Recipient device:
This node allows recipients to access the LifeSavers website. It contains a nested
node (web browser), reading the front-end files for the website and loads donor web UI
on the recipient device. It is connected to central node through internet connection.
Page 57
DESIGN VIEWPOINTS
Backup Server:
This node allows automated backup for the database, connected to the central
node through the internet.
Page 58
DESIGN VIEWPOINTS
Web Server:
This node provides a secure interface for the users, connected to the central node
through the internet.
This node contains data files for storing the data. It is connected to the central
node through LAN. The data inside the server is managed by MongoDB database
management system.
Page 59
DESIGN VIEWPOINTS
Page 60
DESIGN VIEWPOINTS
Page 61
DESIGN VIEWPOINTS
Page 62
DESIGN VIEWPOINTS
Page 63
DESIGN VIEWPOINTS
enter their registered email address in the field provided. The email is used to verify
their account. After entering the email, users click the Set New Password button to
request a password reset link. This will allow the user to set a new password.
Page 64
DESIGN VIEWPOINTS
current status on donations. Clicking on Donate Organ, the user is taken to a page which
contains registration instructions and forms necessary for an organ donor. By searching
for an organ, Find Organ users are able to search available organs according to their type,
need and desperation. Also View Donation History demonstrates the record of some past
donations. In that regard, the page Awareness Campaigns contains material in relation
to actions towards enhancing the rate at which people donate organs including inspiring
stories and educative content. Another way to provide useful feedback is the Viewing
Feedback Form where all the involvements and experiences on the website can be
posted. In addition to that, for donors and recipient’s post-surgery. Post-Surgery
Support has provided information and help on what to do after the operative procedure.
Watching this video of the interview reinforces the ideas presented in the Lifesavers
Forum about finding a community that’s there for you. Generally speaking, the main
menu page caters for the ease of access of the reader to the necessary tools and resources
available in the website for contributing in the activity of promoting organ donation.
Page 65
DESIGN VIEWPOINTS
Page 66
DESIGN VIEWPOINTS
Page 67
DESIGN VIEWPOINTS
Page 68
DESIGN VIEWPOINTS
Page 69
DESIGN VIEWPOINTS
Page 70
DESIGN VIEWPOINTS
Page 71
DESIGN VIEWPOINTS
Page 72
DESIGN VIEWPOINTS
refresh button through which the donors will be updated and the users will get all the
updates. In the den, there is a name and a number of the admin which will be called when
any of the contacts in the list are not available.
Page 73
DESIGN VIEWPOINTS
Page 74
DESIGN VIEWPOINTS
Page 75
DESIGN VIEWPOINTS
name, address and contact number of the donor. A back button is available, allowing the
users to return to the main menu.
Page 76
DESIGN VIEWPOINTS
Page 77
DESIGN VIEWPOINTS
Page 78
DESIGN VIEWPOINTS
Page 79
DESIGN VIEWPOINTS
resources like Recovery Tips for providing essential tips and guidelines for a smooth
recovery, A Follow Up appointments so users can access a calendar or list of
recommended follow up appointments, Medication Reminders for setting reminders for
medication that the recipient might need to take as a part of recovery and a contact
medical expert feature to reach out to healthcare professionals for any questions or
concerns regarding their recovery.
Page 80
DESIGN VIEWPOINTS
Page 81
DESIGN VIEWPOINTS
Users registration will be done with individual information by the Registration System
which uses multi-factor authentications to ensure security while allowing uploading of
medical details, selecting roles as the donor or recipient, verification process.
Page 82
DESIGN VIEWPOINTS
5.5.1.1.PROFILE MANAGEMENT
The profile is maintained safely, and data for profile can be edited, viewed, or removed
from the profile. Update profile data, view data, delete data from a profile; notifications are
shown to profile changes, where an administrator verifies the credentials.
Page 83
DESIGN VIEWPOINTS
5.5.2.LOGISTICS COORDINATION
Organ transportation needs logistics for its users who book it scheduled by Logistics
System with their integration calendar. Third parties perform transportation while giving
alerts of status on delivery or even a notification based on location. The system trackable for
delays. Optimized routing to many deliveries are provided by the system.
Page 84
DESIGN VIEWPOINTS
The Matching System pools the donor organs and the recipients together using various
criteria such as blood type and urgency level. The compatibility checks are made and users
are alerted on any possible matches. Health providers are permitted to access information
of user and match records that are updated in real-time to make follow-up easier.
Page 85
DESIGN VIEWPOINTS
The Matching System pools the donor organs and the recipients together using various
criteria such as blood type and urgency level. The compatibility checks are made and users
are alerted on any possible matches. Health providers are permitted to access information
of user and match records that are updated in real-time to make follow-up easier.
Page 86
DESIGN VIEWPOINTS
User Registers for Organ Donation by filling a form with their personal details and
medical information and select which organ they want to donate or request. Their medical
records are checked by medical experts or doctors and then tested for matching of organ. If
satisfactory organ is found for receiving or donor is found for donating the application
proceeds by contacting the logistics team which will then deliver the organ to people in need.
The system ensures that all user data is encrypted for privacy and security.
Page 87
DESIGN VIEWPOINTS
Organ recipients can use the Support System to access post-surgical support services,
and the system also offers reminder services for appointments and medications. The users
may update schedules; the organ recipient receives recovery resources, instructions, and
access. It follows the adherence to the medical schedules by alerting users whenever their
check-ups or medication has been missed.
Page 88
DESIGN VIEWPOINTS
Figure 98. Visualization of Donor and Recipient History Management Sequence Diagram
This includes History Management System with all donor and recipient's history and
records. So, in case users ever need them, they would be available to view them, edit them,
and manage those records. With logs viewable by admin, user receives a record of every time
something has been altered in his history. Backing of historical data can be taken to ensure
complete accuracy of data and information.
Page 89
DESIGN VIEWPOINTS
The user submits a feedback form that goes to feedback system and is stored in the
database which then messages the user that feedback has been submitted and if the user
wants to view FAQs the database will show them to the user.
Page 90
DESIGN VIEWPOINTS
Figure 100. Visualization of Awareness Campaigns and Community Engagement Sequence Diagram
Users can access educational content and campaign materials on organ donation. Users
can share their success stories on social media, participate in forums, and become part of
the awareness programs. The Campaign System provides users with information about
events that are yet to come, and users can subscribe to the system for the next
set of campaigns.
Page 91
DESIGN VIEWPOINTS
5.6. STATE DYNAMIC VIEWPOINTS
There are four key state holders in our system and their actions are documented well in the
diagrams below. TS
5.6.1. SYSTEM COORDINATOR / ADMI
5.6.1.1. LOGIN
When a user opens the website, a login page appears, where they can login by entering
their email and password. If the login fails, the user will re-enter the credentials.
Page 92
DESIGN VIEWPOINTS
Page 93
DESIGN VIEWPOINTS
After the successful transplant, the coordinator can move to this state to organize
follow-up care like scheduling follow-up appointments or the support services for the
organ donor/receiver ensuring that the patient receives the proper care for the smooth
recovery. After this state, the coordinator can exit the app.
5.6.2.1. LOGIN
When a user enters the website, a login page appears, where they can login by entering
their email and password. If the login fails, the user will re-enter the credentials.
Page 94
DESIGN VIEWPOINTS
Page 95
DESIGN VIEWPOINTS
5.6.3. Organ Donor
5.6.3.1. LOGIN
When a user enters the website, a login page appears, where they can login by entering
their email and password. If the login fails, the user will re-enter the credentials.
Page 96
DESIGN VIEWPOINTS
Page 97
DESIGN VIEWPOINTS
In this state, the donor can access educational content on safe organ transplant, raising
awareness and providing the important information related to the transplantation
process and also its significance.
Page 98
DESIGN VIEWPOINTS
5.6.4.1. LOGIN
When a user opens the website, a login page appears, where they can login by entering
their email and password. If the login fails, the user will re-enter the credentials.
Page 99
DESIGN VIEWPOINTS
healthcare professional can also participate in community to support organ donations.
After this, they can exit the app.
Page 100
PLANNING OF PROJECT
PLANNING TABLE
DATE TASK
Page 101
NED University of Engineering & Technology
Department of Software Engineering
Page 102
1. Introduction
1.1 Project Description
In order to improve the efficiency of medical treatments that rely on blood or organ
donations, LifeSavers Pakistan provides healthcare practitioners with a centralized
registry to expedite patient-donor matching. To keep users updated on urgent
donation needs and impending eligibility for their next donation, the app additionally
offers analytics and real-time notifications.
In the meanwhile, the website acts as a gateway for users to peruse instructional
materials, discover the significance of being a member of the donor community, and
learn about the impact of gifts. The platform, which is run by an administrator, makes
sure that the public has access to the most recent information on donation centers and
awareness materials, creating a welcoming atmosphere for both donors and receivers.
1.2 Purpose
LifeSavers Pakistan is a simple and appropriate solution to the biggest problem of our country
where donors are far away from receivers, this app links donor with receiver in real time.
Some of the time medical procedures get delayed impacting the health care system and finally
patients too, because there is no comprehensive resources to support both blood donation and
cadaveric organ. LifeSavers Pakistan aims to close this bridge by creating a systematic,
accessible and organized network of help that facilitates donors in reaching the parties quickly
who need donations at healthcare providers end; on an endeavor level public awareness is also
generated for importance of donation. LifeSavers Pakistan envisions the country becoming
self-sustainable in lifesaving blood and organ donation by improving access to, availability of
safe and adequately screened products, as well as promoting a culture of responsible voluntary
non-remunerated donations.
Page 103
Healthcare provider integration: provides a functionality where hospitals or clinics can look
into a main registry to make this matching and alert patients during an emergency,
Location-Based Donation Center Directory: Provides a list of donation centers in the vicinity
based on current location. Includes facility contact information and directions for donor
convenience
Alerts/Notification System: alerts to provide immediate support to the recipient, reminders
to available donor and important news updates.
Providing Educational Resources and Awareness Campaigns: The app includes a variety of
informational content that helps to raise public awareness and encourage the involvement of
communitites.
Interactive Data Analytics for Research: Provide healthcare providers and researchers with
report templates, as well as data visualization tools that allow them to grasp donation patterns
in order improve services.
5. System Features:
Page 104
10. The Admin should be able to verify these profile details.
Page 105
5.3. Matching of Organ
5.3.1. Description
The "Matching of Organ" feature is critical to the LifeSavers Pakistan, allowing users to find
matching organs for transplantation. It chooses appropriate organs by considering medical
criteria such as blood type, tissue compatibility, and urgency, increasing the possibility of
successful transplants and, ultimately, saving lives.
Page 106
28. Users can view, update, or delete their organ registration any time.
29. Users can check their registration status to see if they are listed as donor or not.
30. Users can withdraw their registration at any time.
Page 107
38. The system will withhold all transactions with the illegal activity doer or illegal dealer
and may in very dangerous cases suspend the account.
39. In the very severe cases, or as dictated by law, the system shall report illegal activities
performed to appropriate authorities for proper further investigation.
40. The system shall constantly monitor user activities and transactions to detect and
prevent the recurrence of illegal organ trading activities.
Page 108
28. The post-surgical supports need to be timely updated and verified by medically
acknowledged experts.
Page 109
56. Through Live chat support, Users must be given an option to sort their problems right then
and there.
57. Confirmation should be received when submitting feedback or support requests.
58. Each feedback or support response can be rated by users to increase the level of service.
59. There should be an FAQ section to answer common questions, reducing the load of queries.
60. Users should be able to track the progress of their submitted queries (for transparency).
61. Unresolved issues are flagged for admins to follow up, and the same is tracked with email
notifications.
Page 110
38. The user interface for shareable donation stories and informative campaigns should be
user friendly and accessible to all classes of users.
39. It shall integrate with popular media sites, thus allowing one to share content without
problems.
40. Community forum interactions should be monitored and moderated so that participants
respect and support one another.
Page 111