Project - Design a Hospital Management system
Project 1
Hospital Management System (HMS)
Hospital Management System is a software enabling hospitals to manage clinical workflow including medical, laboratory, medical, legal, financial, administrative, and healthcare performance. It is an independent, cloud-based web medical management infrastructure that obtains and integrates all departments data.
Features of HMS
- Laboratory management: It manages test results, patient data and interact with other labs
- Electronic medical records management: EMR is consolidated record of entire patient history including visits, vaccines, medications.
- Inventory management: it links the pharmaceuticals, e-prescriptions, medication tracking and ensures treatment safety and compliance
- Billing: this manages the financial aspects related to cost of the treatment, facilities, insurance claims etc
- Data analytics and reporting: HMS uses analytics to find out the loop holes in the workflow and provides insights to healthcare providers on improvement. For patients, the medical data is analysed and is reported to the healthcare provider and patient
Developing HMS using various technologies
HMS development should consider a broad range of technological services like web technologies, database, independent verification and validation services, technical support, infrastructure support and systems integration support.
Web technologies
Web technology refers to tools and techniques that are utilized in communication between different types of devices over internet. Web browser is used to access web pages. Web browser is defined as programs displaying text, data, pictures, animation and video on internet.
Web technologies can be classified into world wide web, web server, web development and web pages.
- World wide web (WWW): it is an information system that enables documents and other resources to be accessed over internet.
- Web browser: It is an application to access WWW. It provides interface between client and server
- Web server: it is a program that processes the request of users and serves them with files. This exchange happens using http (hypertext transfer protocol)
- Web development: it refers to building, creating, and maintaining websites. It includes web design, database management, web publishing, web programming. It is creation of an application that works over internet. Web development can be classified into two namely-
- Frontend development: This refers to the part of website accessible to user. This is directly interacted with user. It refers to ‘client side’ of application
- Backend development: This refers to the part of website not accessible to user. This is called ‘server side’
Technologies used for web development
Frontend development
The frontend portions of the website are built using some languages below:
- HTML: It stands for Hypertext Markup Language. It is used to design the front-end portion of web pages using markup language. It is combination of Hypertext and Markup language. Hypertext defines the link between the web pages. Markup language is used to define text documentation.
- CSS: Cascading Style Sheets is a language that allows us to style the web pages
- JavaScript: It is a famous scripting language used to enhance the functionality of website. It is the programming language of web. It has application programming interfaces for working with text, dates, regular data structures.
- AJAX: It stands for Asynchronous JavaScript XML. It communicates with server without refreshing the webpage. It is used to enhance the user experience and performance
Backend development:
The backend development of website is built by below languages
- PHP: Hypertext preprocessor is an open-source scripting language executed on the server end. It can be used to make a lot of projects including GUI
- js: It is an open-source cross platform runtime environment for executing JavaScript code at the server side.
- Python: It is a programming language that is used to integrate the systems.
- DBMS: The software used to manage the database is called as Database Management Software
Reference: https://www.geeksforgeeks.org/web-technology/
Database services
Database services enable customers data to be protected and monitored by establishing backup and recovery facilities and monitoring database performance. HMS database has following
Design, development and implementation
Database design and development is the process of producing detailed data model comprising the logical and physical design choices and storage parameters. Various technologies are used for the purpose are- SQL Server, Oracle, Tableau, SAS, MS Access, MySQL
SQL Server (Structured Query Language)
SQL server is a relational database management system by Microsoft. It is a software product with primary function of storing and retrieving data as requested by other applications that run either on same computer or another device connected via internet.
The protocol layer implements the external interface to SQL server. All the operations to be performed on SQL server are communicated to it by TDS (Tabular Data Stream). TDS is used to transfer data between client and database.
- Data storage-It is a database with collection of tables.
- Data retrieval-The main mode of retrieving data is query
Oracle
Oracle database is a multi-model database management system by Oracle Corporation. It is also relational database.
It is a cross-platform that can run on various hardware across operating systems including Windows, Unix and Linux. It has networking stack that enables it to connect to other devices over internet. The main function is to store and retrieve data. The database server enables information management.
Technical support services
Technical support aids in the sustenance of application for an end-user. These are a kind of helpdesks that aid healthcare providers and patients. Technical support services include
- Identifying hardware and software solutions,
- Troubleshooting technical issues
- Diagnosing and repairing faults
- Resolving network issues
Frontend development for HMS
Frontend development refers to application’s user side that includes screens, interface and the things user interact with
The technical aspects considered for frontend development are
- Scalability and extension
- Flexibility
- User-friendly
- Good reporting features
- Easy to debug and maintain
Development paradigm
- Decide the software requirements:
Firstly, decide the number of modules that are displayed on the frontend like patient module, payment for financial activity, administration process for booking an appointment, employee module to check their schedules, management to organize things, finance module to acquire claims, insurance etc.,
- Select the vendor team
To develop HMS, finding an appropriate vendor who can meet the requirements
- UX design
Firstly, study the users by various quantitative and qualitative analytics and feedback then define scenarios, then formulate an idea and create the prototype. After the prototype, we can test it and refine the process.
Frontend development paradigm
HMS frontend in this project has three modules broadly-
- Admin module
- User module
- Doctor module
Admin module
- Dashboard: In this, admin can view patients, doctors, appointments, queries
- Doctors: In this, admin can add doctor’s information like his specialization
- Users: in this, admin can view users details and also delete the user
- Patients: to view the patient’s details
- Appointment history: to view the appoints scheduled for the day
- Queries: to view the queries sent by users
- Doctor session logs: To view the login and log out time of doctors
- User session logs: To view the session log time of users
- Reports: View reports of patients
- Patient search: To search for a particular patient using his details
User module (patient)
- Dashboard: View his profile, appointments and history of appointments
- Book appointment: To book a new appointment
- Appointment history: To view his own appointment history
- Medical history: Patient can view his EHR where visits, reports and treatment is updated
- Payment: To make payments to the bills
- Claims: To apply for medical reimbursement
Doctor module
- Dashboard: To view his profile and online appointments
- EHR records: To search for the medical history of patient
- Appointment history: To view the appointments
- Search: To view the patients
- Inventory: To provide e-prescription
In brief, HMS frontend development includes
1.User verification process
It receives the input from user who logs on to the system. It validates the user with credentials. Person gets to the next portal only if he is validated. System grants access depending upon the user group like healthcare provider or patient or administrator (software developer)
2.OPD registration process
This module receives inputs from patients like details, appointment. System will record the details and generate and OPD number and list of doctors available in OPD for the particular day.
This provides OPD card and patient is directed based on the OPD card to particular doctor. This data is recorded and stored for EHR purposes. OPD database is updated for every 24 hours with available list of doctors and other information.
3.Admission Registration process
This module receives input from both patients and healthcare providers. Patient is given admission number, ward and bed number that are recorded
4.Duty Allocation process
It is used for organizational purposes. It is used in collaboration with management that build-up the schedule for all the employees. The output is schedule report for a period. This needs to be revised after that period.
5.Financial activity
It has two types of inputs namely-for patient and for employees.
The patient input module receives input from administration module, test-treatment module, patient master. It records and process all the financial transactions taken between hospital and patient
The employee input module receives input from duty allocation process and employee database.
The workflow of HMS

Source Code snippets of different modules
Source code is the collection of code without comments in it. Source code is written using human understandable programming language.
Code snippets are the templates making it easier to enter the repeating code patterns like loop statements.
Source code snippets for HMS
Here, as frontend development for HMS is desired, we are opting for JavaScript source code snippets. JavaScript enables users to customize their own code snippets.
- HTTPS Redirect: If the protocol is http, we replace URL with https protocol and reload the page
const httpsRedirect = () => {
if (location.protocol !== 'https:')
location.replace('https://' + location.href.split('//')[1]);
};
httpsRedirect();
// Redirect from http://mydomain.com to https://mydomain.com
2.Input as number
JavaScript by default takes string as input. So, to convert it to number the following code snippet is used
const numInput = document.getElementById('num-input'); let num;// Bad: parseFloat() converts the string to a numbernum = parseFloat(numInput.value); // Good: returns a numeric valuenum = numInput.valueAsNumber;
Screenshot of functional HMS

Reference: https://www.sourcecodester.com/hospital-management-system.html ; https://hcmsllc.com/technology-hms/