Patient Record System & Database Migration

Azati helped a well-known healthcare company to merge two separate solutions, enhance the user interface, and optimize basic business processes, leading to smoother system operation and increased performance.

Discuss an idea
16B+

records successfully merged across two databases

100k

active users now accessing a unified system seamlessly

75%

reduction in average task completion time

All Technologies Used

Java
Java
Oracle
Oracle
JasperReports
JasperReports
PostgreSQL
PostgreSQL
ZK
ZK
Spring
Spring
Hibernate
Hibernate
SQL
SQL
MySQL
MySQL

Motivation

A healthcare company faced challenges managing two separate databases for its Physician and Patient Records modules. Azati was hired to merge the databases, integrate internal Java logic, enhance the user interface, and develop a new recruitment module. These efforts significantly improved system performance, simplified maintenance, and allowed for easier third-party integrations.

Main Challenges

Challenge 01
Merging Two Different Database Technologies

The two main subsystems used different database technologies: PostgreSQL for the Physician Module and Oracle for the Patient Records Module. Merging them into a unified structure was risky, especially considering the massive amounts of data and high user volume.

#1
Challenge 02
User Interface Enrichment

Enhancing the user interface was complicated by the limited functionality of the ZK Framework. Adding tables for medical conclusions for recruits required vertical and horizontal scaling, necessitating a large amount of custom code.

#2
Challenge 03
Remote Workflow and Infrastructure Issues

The team worked remotely, over 5500 kilometers away from the customer, leading to infrastructure problems such as server performance and delays. Automated testing and server reboots caused significant lag, complicating the workflow.

#3
Challenge 04
Project Management and Task Clarity

Task descriptions were often vague, and frequent changes in project management slowed progress. The team took a proactive approach to clarify tasks and ensure correct execution.

#4

Our Approach

Database Merging and Unification
We successfully merged the two databases (PostgreSQL and Oracle) into a single structure, ensuring compatibility and efficient data processing.
Rewriting Internal Java Logic
We rewrote significant parts of the internal logic to add a new 'verified patient' role to the Physician Module, enabling seamless operation for different user types.
User Interface Optimization
Despite ZK Framework limitations, we developed custom tables for the web interface to display medical conclusions for recruits.
Overcoming Infrastructure Challenges
To resolve performance issues, we deployed the application in a private cloud and moved the databases closer to the development team, improving response times and minimizing delays.
Managing Distributed Workflow
We used Redmine for task management and maintained regular communication through daily discussions and bi-weekly meetings to track progress and ensure smooth workflow despite challenges.

Want a similar solution?

Just tell us about your project and we'll get back to you with a free consultation.

Schedule a call

Solution

01

Unified Database

Merged PostgreSQL and Oracle databases into a single structure to eliminate redundancy, improve query efficiency, and provide a single source of truth for both physician and patient records. This allowed real-time data access and simplified future module integrations.
Key capabilities:
  • Single source of truth for patient and physician records
  • Efficient data migration with integrity checks
  • Seamless queries across modules
  • Reduced maintenance and integration complexity
02

Enhanced User Interface

Developed a modernized UI with custom tables for medical conclusions, dynamic forms, and improved navigation, allowing physicians and administrative staff to quickly access and update patient records while handling large datasets effectively.
Key capabilities:
  • Custom scalable tables for medical data
  • Responsive and role-based UI
  • Improved navigation and workflow speed
  • Support for high-volume data display
03

Internal Logic Optimization

Rewrote Java logic to support multiple user roles, automate permissions, and ensure consistent operations across modules. This reduced errors, simplified maintenance, and allowed flexible user management.
Key capabilities:
  • Support for doctor and verified patient roles
  • Automated permission management
  • Consistent business logic across modules
  • Faster and more reliable data processing
04

PDF Forms and Reporting

Integrated JasperReports to automate generation of critical forms such as Form 088, ensuring accurate medical documentation and compliance, reducing manual errors, and enabling digital storage and retrieval.
Key capabilities:
  • Automated PDF generation for critical forms
  • Accurate representation of patient medical data
  • Easy access and sharing of reports
  • Compliance with medical reporting standards
05

Recruitment Module

Developed a module to track military recruits' health and suitability for service, integrating examination data, health scoring, and automated reports for administrative and medical staff.
Key capabilities:
  • Step-by-step medical assessment tracking
  • Automated health scoring and reporting
  • Integration with main patient database
  • Streamlined workflow for military medical checks

Business Value

Improved System Performance: Merged databases and optimized logic led to faster processing and reduced downtime.

Enhanced User Experience: UI enhancements and custom components improved usability for doctors, admin staff, and patients.

Simplified Maintenance: Unified structure reduced complexity and facilitated integration with additional modules.

Reliable Reporting: PDF form generation and recruitment module provided accurate and compliant documentation.

Ready To Get Started

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.