Client required a web based application that would manage data for multiple clinics. The application should provide common access to the clinic’s doctors and receptionists.
The application should be able to handle all the back office activities that are required for patient appointments and their follow ups. Doctors should be able to handle their daily schedules based on clinic locations. Patients should be able to make the payments through cash, credit cards, insurance cards etc. System should be able to handle part payments too. The application should have the ability to generate receipts for Insurance companies and for patients.
List of modules for Clinic Management System
- Appointment Scheduler
- Today’s Appointment
- Lab Module
- Employee Profile
- MIS Reports
- Help Desk
- Cash Scroll
The team faced the following challenges
- The system should have the ability to handle multi location but centralized patient data
- Creating a web based application that requires no installation
- Developing a system which could be integrated into third party appointment scheduling software and provide a facility to update appointments.
- Developing a user friendly queue management system.
- Safe and secure data transfer.
|Operating System & Server Management||Windows OS/Windows Mobile ,Multi-Server Architecture with Staging & Production Environment through Version Controlling releases, Server Optimization, Security & SSL Implementation, Scheduler for Back-ups,Alert Monitoring System Integration, Server Performance Tuning at regular intervals, Software Firewall Configuration & Maintenance|
|Development Tools & Environments||ASP.Net, MVC, C#, SSRS etc.|
|Database||MSSQL Database Server (Web), Symbian Native Database (Mobile), DB Clustering, DB Optimization, Master Slave Replication, Query Optimization, Scheduler for Backups|
|Quality Assurance Testers||2|
Taking into account the functionality of the application, the following development plan was finalized upon.
- Web server communication with web browser using HTTP protocol.
- Appointment scheduling software was third party and was integrated into the application
- SAAS module was used for the application approach in order to manage the multi-location data
controlled by their respective administrators.
A three tier architecture was used for this web application Presentation Layer (PL), Business Access Layer (BAL) and Data Access Layer (DAL).
- Business Access Layer: contains business logic, validation that is related to the data.
- Data Access Layer: contains logic for the business layer to connect to the data and be
able to perform required actions like insert, delete and update.
- Presentation Layer: contains .asp or HTML and forms the user interface or giving output from the system or taking inputs from user.
Windows Server 2008 was used with IIS 7. MVC architecture was followed.
The benefits of MVC architecture are:
- MVC architecture provides full control over the rendered HTML.
- Soc – provides clean separation of controls
- TDD – provides test driven development
- Follows the design of stateless nature of the web.
- Restful URLs
- No View-State and Post-Back events.
- It provides RAD development.
- Easy development models for developers those coming from WinForm development.
The application was successfully designed to be integrated with third party scheduler and was able to manage all the patient appointments too. SAAS model provided the client with a system that was capable of managing multi location data. Ease of access was enabled for all locations. Patient visits were
smoothly managed with the queue management module. Users, user roles and page level access to
these roles were created by administrator who was given full control of the software.