Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Possible Projects for Google Summer of Code 2013:

...

Panel

Project: Build a Radiology Image Viewer that Syncs with OpenMRS

Brief explanation:  Build a radiology image viewer that will allow radiologists to input notes and diagnoses

Used Technologies: JavaScript, HTML5, Sencha

Primary Mentor: Akhil Ravindran

Secondary Mentor: John Stoecker Barry Levine

Objectives:

Familiarize yourself with dcm4che and DICOM formats

Create an image editor by forking Oviyam DICOM viewer

Allow radiologists to link radiology patients to OpenMRS

Allow radiologists to input diagnoses/thoughts and send them as observations to OpenMRS

Document your image viewer so we can easily make changes in the future

...

Panel

Project: Offline mode for Registration, Screener, and Pharmacy Modules

Brief explanation: In rural hospitals and clinics, cell and data connectivity is sporadic and bandwidth-limited. A point-of-care system needs to be responsive, so caching data on connection fail is a requirement. Your project is to build a cache all relevant data for offline mode, then sync when internet is available.

Used Technologies: JavaScript, HTML5, Sencha/ExtJs, SQLite

Primary Mentor: John Stoecker

Secondary Mentor: Nathan Leiby Surajit Nundy

Suggested Reading:

http://www.sencha.com/learn/taking-sencha-touch-apps-offline/

http://zetcode.com/db/sqlite/


Objectives:

Familiarize yourself with the Registration, Screener, and Pharmacy modules on raxa.io

Propose a cache model using Sencha caching/session storage/SQlite

Cache patient record/data/images when POST fails

Create dummy records when GET on patient fails

Use lists of most-used resources when GET on diagnosis/drug fails

Document your cache, so when patient record data model changes, we can easily cache these

Panel

Project: Implement a timeline-based view for patient record images

Brief explanation: Currently, patient images are saved as part of the whole patient record. A useful image viewing tool for doctors would allow them to view similar images over time, seeing how a lesion changes, or how a bone/ligament is healing in an x-ray. In this project, you would create an interactive, intuitive image gallery viewer tailored specifically for medical data over time. Some features this project might include are editing images (such as circling interesting areas of an x-ray) and adding ICD-10 tags to an image.

Used Technologies: JavaScript, HTML5, Sencha/ExtJs

Primary Mentor: John Stoecker

Secondary Mentor: Nathan Leiby

Objectives:

Familiarize yourself with the Outpatient module on raxa.io/outpatient

Propose a cache model using Sencha caching/session storage/SQlite

Cache patient record/data/images when POST fails

Create dummy records when GET on patient fails

Use lists of most-used resources when GET on diagnosis/drug fails

Document your cache model, so we can easily change caching when the patient record model changes

Panel

Project: 2-way SMS menu for patient-facing module

Brief explanation: Medical data must be accessible to a patient through many channels. With this goal in mind, you will create an interactive module to allow a patient to access and edit their information through SMS. Patients will be able to edit their details, view structured medical data, see current prescriptions, and control who is allowed to access their records.

Used Technologies: Java, OpenMRS, Spring/Hibernate

Primary Mentor: John Stoecker

Secondary Mentor: Surajit Nundy

Suggested Reading:


Objectives:

Familiarize yourself with REST api's for mvaayoo's SMS gateway

Familiarize yourself with OpenMRS' data model and the creation of OpenMRS modules

Implement simple session security that checks whether an incoming SMS matches phone number stored for a patient

Connect to mvayoo SMS gateway API to allow GET/POST calls on these OpenMRS resources: person, patient, obs, orders, encounters

...

Panel

Project: Lab Reports

Brief explanation: The laboratory module needs to generate a variety of reports: test results, daily log, exception reports, monthly statistics, quality control charts, etc.  Some of these reports will be saved as PDFs and possibly printed, others will be exported to Excel or other tools.  The lab module will also need a report and parameter selection screen.

Used Technologies: BIRT or iReport for report generation, Java for integrating the report generator into the module, jsp with jquery and/or HTML5 for the report and parameter selection screen.

Mentor: TBDPiyush Madan

 

 

 

Panel

Project: Arden Syntax Implementation

Brief explanation: Adapt and extend OpenMRS' Arden Syntax implementation at Raxa EMR. The EMR has a data structure derived from OpenMRS on which we are creating point-of-care and after-care interfaces for both providers and patients. These interfaces will have intelligence, both heuristically-derived and data-driven, to provide support so that providers and patients can make evidence-based, informed decisions about their plan of care. These rules will be implemented using Medical Logic Module interfaces such as the Arden Syntax, so that the rules created here can be used by other such systems, and so that rules from other systems can be implemented easily here. During this project, we shall be creating the software interfaces to implement rule-based validation and suggestions during provider data entry and patient behavior.

Resources:

Raxa JSS EMR Decision Support

https://wiki.openmrs.org/display/docs/Clinical+Decision+Support

http://healthinformatics.wikispaces.com/Arden+Syntax

Used Technologies: Arden Syntax, OpenMRS

Objectives:

Familiarize yourself with the Arden Syntax as implemented in OpenMRS

Create service for Arden Rules (e.g. https://source.openmrs.org/browse/OpenMRS/branches/1.9.x/api/src/test/java/org/openmrs/arden/include/HiRiskLeadScreen.java?r=24212)

Create user interface using HTML5/Javascript/ExtJS4 that will allow non-developer users to create rules for the system on the backend

Add REST service to the backend to serve Arden Rules to module apps

Insert calls to the REST service in the Outpatient Module frontend code so that Arden rules can be followed

Primary Mentor: Surajit Nundy

Backup Mentor: Dr Rachna Kucheria

Panel

Project: E-Triage System

Objectives: Develop e-triage system

Reason: In rural areas of India and other similar parts of the world, patient-doctor ratios may be 10000-1 or lower.  Alternative technologies are required to enable emergency response and for optimal connection of doctors to patients. The objective is to develop an IVR setup that patients can call into.  The patients will be guided through a brief dialogue system that supports natural language queries and requests. The spoken input will be analyzed, and based on its contents, the system will automatically connect the patient to the optimal available doctor or hospital, where "optimality" will be decided based on emergency level of the call, distance of the patience to the doctor, the doctor's current load and other such factors.  In cases of epidemics or other obvious illnesses, the system will also dispense emergency advice to follow before getting to the doctor.

Used Technologies: Open source speech recognition, dialog system and natural language processing tools.

Primary Mentor: TBDApurv Tiwari

Backup Mentor: TBD

Panel

Project: Medical Disaster Response

Objectives: Implement voice-based input/output modalities for a Disaster response system for Raxa

Reason: Disasters, ranging from medical disasters such as cholera or malaria, to earthquakes, floods, etc. require immediate response, access to information, etc. The objective is to adapt disaster management tools into the Raxa structure, with to implement voice-based mechanisms for populating the information databases in it via human input, in addition to current methods, as well as voice-based responses.

Used Technologies: Open source disaster response tools from sahanafoundation.org, open source speech recognition, synthesis and dialog system tools,Ushahidi

Primary Mentor: TBD

Secondary Mentor: TBD

...

Panel

Project: Disease Prediction via Machine Learning Algorithms

Brief explanation: Clinical data-warehouse that will store all information about the diseases occurred in a particular area, let say Bilaspur district of Chhattisgarh region where this system will be deployed. Understanding the pattern of disease, number of times a particular disease has occurred, reason why it occurred, preventive methods that doctors could implement in order to prevent the disease if it occurs next time. This will not only help in giving the best medical services in remote areas but also help administrators, doctors to be well prepared in advance to tackle the emergence of any kind of disease. 

Used Technologies: TBD

Mentor:
John Stoecker

...