Monday, August 28, 2017

GSoC 2017 - Final Report

Patient Matching 2.0

Student               -    Lahiru Jayathilake 
Primary Mentor   -    Burke Mamlin
Backup Mentor   -    Shaun Grannis

Project Wiki        -    Patient Matching 2.0
TALK Thread      -    OpenMRS TALK Thread Patient Matching 2.0
GitHub  Fork       -    Lahiru-J/patient-matching

What is Patient Matching 2.0

Patient Matching Module is an application where it tries to identify records that belong to the same patient among different number of data sources. This module is significant because in real world it has to be dealt with erroneous data. For example, a patient’s name can be misspelled. Benefit of this module is by linkage of records it would be easier for a patient to visit a hospital without carrying hard copies of test results whether or not the tests were done at the same hospital.

Summary of the Work

✔︎ Incremental Patient Matching

To give a little introduction on what incremental patient matching is, it is a method of identifying duplicate patients very efficiently. 
In a real world scenario, the requirement would be to match thousands of patients with each other. Once this matching process continues it would be very time consuming since all of the patients are compared with each of them regardless of the fact that two or three new patients are added/updated. Incremental patient matching is used as a suggestion to save time.

This task was my primary goal and I have successfully completed it.
Following are the commits & pull requests related to this task. Note that commits related to a branch are squashed according to the OpenMRS convention.


PTM-82 -  

PTM-83 -

PTM-84 -

PTM-85 -

PTM-86 -

PTM-89 -

Pull Requests

PTM-82: Functionality to load patients considering the date created and date changed

PTM-83: Save and update incremental patient matching report to the database

PTM-84: Functionality to support two datasources

PTM-85: Functionality to select or deselect incremental match

PTM-86 : Remove matching pairs from the report when patients are updated

PTM-89 : Ignore voided patients when running a patient match

✔︎ Merge Patients

If some of the patients in a group supposed to be the same then the user can merge those patients making they will not appear again in a patient matching report. 

PTM-87 -

Pull Request
PTM-87 - Functionality to Merge Patients in the report

✔︎ Exclude Non-Matching Patients

There can be some scenarios where the module results some of patients to be same but in real life those patients are related to totally different people. If this happens Patient Matching 2.0 project provides a functionality to eliminate such records without them repeatedly appearing on a patient matching report.

PTM-88 -

Pull Request
PTM-88 : Functionality to exclude non-matching patients

Blog Posts

Blog Post
Week 12
Week 11
Week 10
Week 9
Week 8
Week 7
Week 6
Week 5
Week 4
Week 3
Week 2
Week 1


Throughout this summer I learned a lot. Whenever there were problems related to the project I had a great support from my mentor and the community. Participating in daily scrums showed me how good this OpenMRS community is. 
My mentors are the best. They gave me guidance at the first place, conducting many video conferences because of that I could carry out this project with a sound knowledge. Burke, Shaun thank you very much for your support throughout this summer. I feel really grateful to these mentors.

No comments:

Post a Comment