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.

Commits

PTM-82 -  https://github.com/Lahiru-J/openmrs-module-patientmatching/commit/b3ffd77b394cf021b3b4552bda726100e39b6190  

PTM-83 - https://github.com/Lahiru-J/openmrs-module-patientmatching/commit/7704534457797845ecf6896072a3c441494d8299

PTM-84 - https://github.com/Lahiru-J/openmrs-module-patientmatching/commit/c81024533508ac91f57a48c9b41beb2ebdc74595

PTM-85 - https://github.com/Lahiru-J/openmrs-module-patientmatching/commit/35172a90f9ec061b9027d37f6757f53463ea1df6

PTM-86 - https://github.com/Lahiru-J/openmrs-module-patientmatching/commit/b624286e1ad362ecf283a942f6b4d4c1b9429b75

PTM-89 - https://github.com/Lahiru-J/openmrs-module-patientmatching/commit/be4f39153b976dc3493f7541ff3e590ba1ecb73c


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. 

Commit
PTM-87 - https://github.com/Lahiru-J/openmrs-module-patientmatching/commit/6ee57f19ef62eea642b18d1642c938cd2033f8ab

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.

Commit
PTM-88 -  https://github.com/Lahiru-J/openmrs-module-patientmatching/commit/b1f3fccf5151ee10f4d2282e62c88fa8b93dcca4

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


Blog Posts



Week
Blog Post
Week 12http://www.lahirujayathilake.com/2017/08/week-12-exclude-non-matching-patients.html
Week 11http://www.lahirujayathilake.com/2017/08/week-11-merge-patients.html
Week 10http://www.lahirujayathilake.com/2017/08/week-10-nice-report.html
Week 9http://www.lahirujayathilake.com/2017/07/week-9-incremental-patient-match.html
Week 8http://www.lahirujayathilake.com/2017/07/week-8-game-is-almost-done.html
Week 7http://www.lahirujayathilake.com/2017/07/week-7-game-of-codes.html
Week 6http://www.lahirujayathilake.com/2017/07/week-6-one-more-datasource.html
Week 5http://www.lahirujayathilake.com/2017/07/week-5-important-work.html
Week 4http://www.lahirujayathilake.com/2017/06/week-4-more-work.html
Week 3http://www.lahirujayathilake.com/2017/06/week-3-finally-some-relief.html
Week 2http://www.lahirujayathilake.com/2017/06/week-2-struggling-times.html
Week 1http://www.lahirujayathilake.com/2017/06/week-1-match-begins.html


OpenMRS

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