Data Structure And Algorithms

Executive Summary of WeCare Health System Report

The main purpose of this report is to provide information about the design and development of WeCare Health System with the use of OOP structures. The WeCare health system is a software that automates the front office chores of a health system including keeping records of the doctors, the hospital staff and the patients. The report provides a detailed description of the design and data algorithms employed in the development of the system.

The WeCare health is an effective, easy to use, and flexible tool that is designed and developed to provide many benefits to the health systems. The software ‘WeCare Health System’ is a combination of the effective data structures, database and Object-Oriented programming techniques. The system is developed using Java Programming Language in frontend and SQL as the backend of the system to store the data. The software is highly reliable and modifications or extensions in the functionality can be made as per the needs or demands of the health system. This software provides all the basic functionalities including maintaining patients’ records, doctors’ Records and the hospital staff records.

The main advantages of using this system in a hospital are many. In addition to fully eliminating the paperwork in maintaining hospital records, this software is easy to implement, easy to understand, easy to operate, no special training required, cost-effective, and requires less maintenance.

Introduction to WeCare Health System Report

The health systems are a very important system that is connected to peoples’ lives. The main focus of the health systems is to provide the best health facilities to the people. Many people work together to make this system work effectively and efficiently. These are doctors, nurses and other hospital staff. All these people work together to make this system run smoothly. Another group of this system is the patient group. The patients are the most important component of a health system. So, to make this system run effectively, the very first thing is to proper maintaining of the hospital records. These records include the records of doctors, the nursing staff, and the patients.

The manual maintenance of these records is a very time-consuming process as well as not an effective technique as it is very error-prone. It is where the system “WeCare Health System” comes handy. The main objective of this software is to automate the record-keeping process of patients, hospital staff and the doctors. But maintaining these records on paper is a very difficult task as it is both time consuming and inefficient.

As we all are aware of the pandemic situation these days has given a rapid rise in the number of patients in the hospitals that in result has increased the number of doctors as well as nursing staff in the hospitals. In such cases, maintenance of paperwork is neither feasible nor safe to perform. Thus an electronic record-keeping system “WeCare Health” is developed to decrease the paperwork in hospitals up to 60%. The system provides a reliable solution to the record-keeping problem cost-effectively. It also provides data and information security at every level.

Background

As the pandemic situation, these days has given a rapid rise in the number of patients in the hospitals. This situation has increased the number of doctors as well as nursing staff in the hospitals. In such cases, maintenance of paperwork is neither feasible nor safe to perform. There is a need to keep and maintain these records digitally.

These days many hospitals still rely on maintaining records on paper. This is time-consuming for both the patients as well as for the hospital staff. It decreases the efficiency. In today’s technical world, keeping records on paper seems outdated as well as is not a very secure practice.

The system “WeCare Health” will enable the hospitals to record their patients’ details, like name, address, illness etc. , the doctors’ details and the nursing staff details through a user interface. These records will get stored in a database that is employed with enough security mechanisms to secure the data and information.

Case Study and the Design

In the given situation there is a hospital that has 50 doctors, 100 nursing staff and about 1000 patients. The main focus is to find appropriate data structures, variables and operations to be conducted on these variables (Arasteh, 2018). We discuss these design specifications one by one:

Variables, Ranges and Keys

There would be three main modules –Doctors, Patients and Nursing Staff. Following are the specifications of each module:

Doctors

The doctor module we will make a Class Doctors that would have class variables including doctor ID, doctor Name, doctor Address, doctor Contact, speciality, degree, roomNo, number Of Patients and patients[].

Class Doctor{

int doctorID;

String doctorName;

String doctorAddress;

long int doctorContact;

String speciality;

String degree;

int roomNo;

int numberOfPatients;

Patients[] patients;

}

The variable doctor ID is integer type randomly generated id between 1000 to 9999.

The variables doctor Name, doctor Address are String type variables that hold the name and address of the doctor respectively.

The doctor Contact holds the contact number of the doctor.

The variable speciality holds the speciality of doctor like General Physician, Pediatrician, Gynaecologist etc.

The variable degree is a string that holds the highest medical qualification of the doctor.

The variable roomNo holds the room number in which the doctor sits in the hospital.

The Number Of Patients holds the total number of patients currently under his treatment.

And the variable patient is an array of objects of the Patient type that consists of patients list and details.

Patients

The patient's module we will make a Class Patients that would have class variables including PatientID, patient Name, patient Address, patient Contact, illness, doctor, roomNo.

Class Patient{

int patientID;

String patientName;

String patientAddress;

long int patientContact;

String illness;

Doctor doctor;

int roomNo;

Date dateOfAdmit

}

The variable patient ID is integer type randomly generated id between 10000 to 99999.

The variables patient Name, patient Address are String type variables that hold the name and address of the patients respectively.

The variable patient Contact holds the contact number of the patient.

The variable illness holds the type of illness of the patient.

A variable doctor is an object of Doctor class that holds the details of the doctor under whose treatment the patient is.

The variable roomNo holds the room number in which the patient is admitted (if admitted).

The variable date Of Admit is a date type variable which holds the date of admission of the patient to the hospital (if admitted).

Nursing Staff

The Nursing Staff module we will make a Class Nursing Staff that would have class variables including staff ID, staff Name, staff Address, staff Contact, staffDegree.

Class NursingStaff{

int staffID;

String staffName;

String staffAddress;

long int staffContact;

String degree;

Date EmployeeSince;

}

The variable staff ID is integer type randomly generated id between 100 to 999.

The variables staff Name, staff Address are String type variables that hold the name and address of the staff respectively.

The staff Contact holds the contact number of the staff person.

The variable degree is a string that holds the highest medical qualification of the nursing staff.

EmployeeSince is a date type variable that holds the date the staff is hired.

Operations and the Justification

The basic operations that will be performed by the “WeCare Health” are discussed below under respective modules:

Doctors

The operations related to the Doctors module are:

  • View Doctor: This operation is used to view the doctor’s details.
  • Add Doctor: This operation is used to add a new doctor.
  • Delete Doctor: This operation is used to delete an existing doctor.
  • Update Doctor: This operation is used to update the details of an existing doctor.
  • Search Doctor By Speciality: This operation is used to search an existing doctor by specialty.
  • SearchDoctorByName: This operation is used to search an existing doctor by name.
  • Get Patients: This operation returns the list of patients under the doctor’s treatment.

Patients

The operations related to the Patients module are:

  • ViewPatient: This operation is used to view the details of an existing patient.
  • Add Patient: This operation is used to add a new patient.
  • DeletePatient: This operation is used to delete an existing patient.
  • UpdatePatient: This operation is used to update the details of an existing patient.
  • Search: This operation is used to search for an existing patient.
  • Get Room Number: This operation is for getting the room number in which the patient admitted.
  • Get Date Of Admit: This operation returns the date of admission of the patient to the hospital.
  • Get Doctor: This operation returns the doctor under whose treatment the patient is.

Nursing Staff

The operations related to the Nursing Staff module are:

  • View Staff: This operation is used to view the details of an existing staff person.
  • Add Staff: This operation is used to add a new staff person.
  • DeleteStaff: This operation is used to delete an existing staff person tent.
  • UpdateStaff: This operation is used to update the details of an existing staff person.
  • Search: This operation is used to search an existing staff person.
  • getDateOfJoining: This operation returns the date of hiring of the staff person.

Algorithms and their Justification:

As the operations discussed above need proper algorithms for record searching and sorting, in this section we will discuss the best-suited searching and sorting method in detail. But before this let us talk about the data structures.

Data Structures Used:

Mainly we will be using arrays of objects of class type to store the information as well as to retrieve it. The searching and sorting will be performed on the arrays of objects.

Searching and Sorting the data:

The best option to select the algorithm depends on various factors like the length of the dataset.

As the data is unsorted, the only option for searching is a linear search. In the case of doctors, it will work as the number of doctors is only 50. The searching of nursing staff can also work effectively with linear searching but to search the patients' records we need some fast searching algorithm like binary search.

The problem with the binary search here is that it needs sorted data. So first we sort the patients’ data then we will conduct a binary search to search the data. For sorting large dataset, quicksort is the best option (Aumüller, 2016).

For Searching Doctors and Nursing Staff:

For searching operation in Doctors and the Nursing Staff, we will use the linear search algorithm. The reason is that a linear search works well if the dataset is small. As we know we have 50 doctors and 100 nursing staff in the hospital, a linear search will work fine for searching operations.

Linear Search has a time complexity of O(n).

Searching the Patients:

For searching the patients’ records, we need some other algorithm as the number of patients is comparatively higher, i.e. 1000. So, in this case, we choose a binary search algorithm.

The binary search algorithm has a time complexity of T(n)=T(n/2)+c.

For Sorting the patients

But the binary searching requires the array to be sorted first. Another problem comes to choose the best sorting algorithm. In this case, quicksort would be the best choice as quicksort sorts the large datasets very quickly and efficiently.

The time complexity of Quicksort Algorithm is T(n)=T(k)+T(n-k-1)+(n).

(Aumüller, 2016)

Modifications

After many years, the number of staff (doctors and nursing) and patients has almost doubled. This means the doctors increase up to 100, the nursing staff to 200 and the patients to 2000.

In such case, there would be no requirement of making modifications to the system as the data structures and the operations were designed according to this and they can easily and effectively handle the increased data. However, the system will need modification if the numbers get increased by 10 times or more.

Conclusion on WeCare Health System Report

The WeCare health is an effective, easy to use, and flexible tool that is designed and developed to provide many benefits to the health systems. The software ‘WeCare Health System’ is a combination of the effective data structures, database and Object-Oriented programming techniques. The system is developed using Java Programming Language in frontend and SQL as the backend of the system to store the data.

The report provides information on the data structures, variables to be used, keys, their operations etc. It also provides an insight into the best searching and sorting algorithms for the different scenarios. The software is highly reliable and modifications or extensions in the functionality can be made as per the needs or demands of the health system. This software provides all the basic functionalities including maintaining patients’ records, doctors’ Records and the hospital staff records.

The main advantages of using this system in a hospital are many. In addition to fully eliminating the paperwork in maintaining hospital records, this software is easy to implement, easy to understand, easy to operate, no special training required, cost-effective, and requires less maintenance.

References for WeCare Health System Report

Andrychowicz, M., & Kurach, K. (2016). Learning efficient algorithms with hierarchical attentive memory. arXiv preprint arXiv:1602.03218.

Arasteh, M. A., Shamshirband, S., & Yee, P. L. (2018). Using multi-attribute decision-making approaches in the selection of a hospital management system. Technology and Health Care, 26(2), 279-295.

Aumüller, M., Dietzfelbinger, M., & Klaue, P. (2016). How good is multi-pivot quicksort?. ACM Transactions on Algorithms (TALG), 13(1), 1-47.

Handayani, P. W., Hidayanto, A. N., Pinem, A. A., Hapsari, I. C., Sandhyaduhita, P. I., & Budi, I. (2017). Acceptance model of a hospital information system. International journal of medical informatics, 99, 11-28.

Remember, at the center of any academic work, lies clarity and evidence. Should you need further assistance, do look up to our Computer Science Assignment Help

Get It Done! Today

Applicable Time Zone is AEST [Sydney, NSW] (GMT+11)
Not Specific >5000
  • 1,212,718Orders

  • 4.9/5Rating

  • 5,063Experts

Highlights

  • 21 Step Quality Check
  • 2000+ Ph.D Experts
  • Live Expert Sessions
  • Dedicated App
  • Earn while you Learn with us
  • Confidentiality Agreement
  • Money Back Guarantee
  • Customer Feedback

Just Pay for your Assignment

  • Turnitin Report

    $10.00
  • Proofreading and Editing

    $9.00Per Page
  • Consultation with Expert

    $35.00Per Hour
  • Live Session 1-on-1

    $40.00Per 30 min.
  • Quality Check

    $25.00
  • Total

    Free
  • Let's Start

Get
500 Words Free
on your assignment today

Browse across 1 Million Assignment Samples for Free

Explore MASS
Order Now

My Assignment Services- Whatsapp Tap to ChatGet instant assignment help

refresh