0% found this document useful (0 votes)
478 views6 pages

Hospital Registration System

The document describes a Hospital Registration System that aims to streamline the patient registration process. It includes features like name and blood group validation, random doctor assignment, and tentative appointment scheduling. The system was developed using Python following the SDLC process of requirements gathering, design, implementation, testing, and deployment. It provides a user-friendly interface and generates a comprehensive registration summary.

Uploaded by

Ankit Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
478 views6 pages

Hospital Registration System

The document describes a Hospital Registration System that aims to streamline the patient registration process. It includes features like name and blood group validation, random doctor assignment, and tentative appointment scheduling. The system was developed using Python following the SDLC process of requirements gathering, design, implementation, testing, and deployment. It provides a user-friendly interface and generates a comprehensive registration summary.

Uploaded by

Ankit Singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

Hospital Registration System

**01. Acknowledgement**

I would like to extend my sincere gratitude to my project guide [Guide's Name], for their
invaluable guidance, support, and insights throughout the development of this project. I also
wish to thank [Name of Organization/Institution] for providing the necessary resources and
infrastructure for the successful completion of this project.

**02. Introduction**

In the present era of healthcare, efficient management of patient data and seamless
registration processes are pivotal to ensuring quality patient care. The Hospital Registration
System aims to address these requirements by providing a user-friendly and accurate
registration system for patients. This project focuses on simplifying the process of recording
patient information, generating tentative appointment dates, and assigning doctors for further
treatment.

**03. Objectives of the Project**

The primary objectives of the Hospital Registration System project include:

- **Enhancing Patient Experience:** By streamlining the registration process, the project


aims to improve the overall experience of patients visiting the hospital.

- **Ensuring Data Accuracy:** The system aims to reduce errors by implementing name
length validation and verifying the correctness of blood group entries.

- **Efficient Doctor Assignment:** The project generates random doctor assignments based
on input data, ensuring a fair distribution of patients among doctors.

- **Tentative Appointment Scheduling:** The system provides patients with an estimated


appointment date, enhancing the hospital's scheduling efficiency.

**04. Proposed System**

The proposed Hospital Registration System consists of several features designed to


optimize the registration process:
- **Name Validation:** The system ensures that a patient's name is at least 3 characters
long, preventing incomplete or inaccurate names from being registered.

- **Blood Group Validation:** A predefined list of valid blood groups is used to validate the
entered blood group, reducing the likelihood of incorrect entries.
- **Symptom Input:** Patients can input their symptoms in a comma-separated format,
allowing healthcare providers to gain insight into their medical condition.

- **Contact Information:** The system collects patients' contact numbers, enabling effective
communication and follow-up.

- **Appointment Date Generation:** By adding a random number of days to the current date,
the system generates an approximate appointment date for the patient.

- **Random Doctor Assignment:** A randomized approach is used to assign doctors' names


to patients, ensuring equal distribution.

**05. System Development Life Cycle (SDLC)**

The System Development Life Cycle (SDLC) is a structured approach to software


development that encompasses planning, designing, implementing, testing, deploying, and
maintaining software systems. In the context of this project, SDLC is crucial for ensuring a
systematic and organized development process.

**06. Phases of System Development Life Cycle**

- **Requirements Gathering:** In this phase, the project's requirements were collected from
stakeholders, including patients and hospital staff. These requirements formed the basis for
system design.

- **System Design:** The system's architecture and components were designed, including
the logic for name validation, blood group verification, and appointment date generation.

- **Implementation:** The actual coding of the project was carried out, adhering to the
Python programming language.

- **Testing:** Rigorous testing of the system was conducted using various test cases to
identify and rectify any potential issues.

- **Deployment:** The completed system was deployed for use in a controlled environment,
allowing for real-world testing.

- **Maintenance:** Ongoing maintenance is crucial to ensure the system's continued


functionality and performance.
**07. Flow Chart**

The flowchart visually represents the logical flow of the Hospital Registration System:

Start
|
V
Input Name
|
V
Validate Name Length
|
V
Input Age
|
V
Input Blood Group
|
V
Validate Blood Group
|
V
Input Other Info
|
V
Input Symptoms
|
V
Input Contact Number
|
V
Generate Appointment Date
|
V
Assign Random Doctor
|
V
Display Summary
|
V
End

**08. Source Code**

```
import random
import datetime

class RegistrationPage:
def __init__(self):
self.data = {}

def get_input(self, prompt):


return input(prompt)

def is_valid_name(self, name):


return len(name) >= 3 # Minimum name length of 3 characters

def is_valid_blood_group(self, blood_group):


valid_blood_groups = ["A+", "A-", "B+", "B-", "AB+", "AB-", "O+", "O-"]
return blood_group.upper() in valid_blood_groups

def register(self):
print("Welcome to the Hospital Registration Page")

while True:
name = self.get_input("Enter your name: ")
if self.is_valid_name(name):
self.data['name'] = name
break
else:
print("Name is too short. Please enter a valid name.")

self.data['age'] = self.get_input("Enter your age: ")

while True:
blood_group = self.get_input("Enter your blood group: ")
if self.is_valid_blood_group(blood_group):
self.data['blood_group'] = blood_group
break
else:
print("Invalid blood group. Please enter a valid blood group.")

self.data['other_info'] = self.get_input("Enter any other information: ")


self.data['symptoms'] = self.get_input("Enter your symptoms (comma-
separated): ")
self.data['contact_number'] = self.get_input("Enter your contact number: ")
possible_appointment_date = datetime.datetime.now() +
datetime.timedelta(days=random.randint(1, 30))
self.data['appointment_date'] = possible_appointment_date.strftime("%Y-%m-
%d")

doctors = ["Dr. Smith", "Dr. Johnson", "Dr. Williams", "Dr. Brown"]


random_doctor = random.choice(doctors)
self.data['doctor'] = random_doctor

print("\nRegistration Successful!")
print("Name:", self.data['name'])
print("Age:", self.data['age'])
print("Blood Group:", self.data['blood_group'])
print("Other Information:", self.data['other_info'])
print("Symptoms:", self.data['symptoms'])
print("Contact Number:", self.data['contact_number'])
print("Possible Appointment Date:", self.data['appointment_date'])
print("Assigned Doctor:", self.data['doctor'])

if __name__ == "__main__":
registration_page = RegistrationPage()
registration_page.register()

**Features:**
1. **User-Friendly Interface:** The system uses a console interface to interact with users,
making it straightforward to enter information.

2. **Name Validation:** The system ensures that the entered name is at least 3 characters
long, helping to prevent incomplete or incorrect names.

3. **Blood Group Validation:** A predefined list of valid blood groups is used to verify the
correctness of the entered blood group.

4. **Symptom Input:** Patients can input their symptoms in a comma-separated format,


enabling them to provide relevant medical information.

5. **Contact Information:** The system allows patients to input their contact number for
communication purposes.

6. **Appointment Date Generation:** An approximate appointment date is generated by


adding a random number of days to the current date, ensuring a tentative appointment
schedule.
7. **Doctor Assignment:** A random doctor's name is suggested based on the input data,
simulating a doctor assignment process.

**Coding Approach:**
1. **Class Structure:** The project is organized using a class-based structure. This
encapsulates related functions and data, enhancing modularity.

2. **Input Validation:** Name length and blood group correctness are validated to ensure the
entered data adheres to basic requirements.

3. **Looping Mechanism:** While loops are used for name and blood group inputs, enabling
repeated attempts until valid inputs are provided.

4. **Date Manipulation:** The `datetime` library is employed to generate a possible


appointment date by adding a random number of days to the current date.

5. **Random Doctor Assignment:** A list of doctor names is maintained, and the `random`
library is utilized to select and assign a random doctor name to the patient.

6. **Output Display:** Once registration is complete, the system displays all entered and
generated information, providing a comprehensive summary of the registration process.

**09. Output**

The output of the Hospital Registration System displays a comprehensive summary of


patient registration, including personal information, symptoms, contact details, assigned
doctor, and possible appointment date.

**10. Testing**

The testing phase involved multiple stages, including unit testing and integration testing.
Various test cases were designed to validate each feature of the system, ensuring its
accuracy and reliability. Any discrepancies found during testing were addressed and
rectified.

**11. Hardware and Software Requirements**

The Hospital Registration System was developed using the Python programming language.
The following hardware and software resources are required:
- **Hardware:** A computer with reasonable specifications
- **Software:** Python interpreter, integrated development environment (IDE)

**12. Bibliography**

References consulted during the project development include relevant textbooks, online
articles, Python documentation, and academic research papers.

You might also like