Monthly Archives: June 2013

The week of the first presentations

This has been a good week. I have been getting a lot of coding done but the highlight of the week was the presentations. It was very nice to finally hear the voices of some of the other interns as well as learning about them and the projects they are working on. I am really excited about all the work we are doing and it sounds like everyone is working hard and has some very important work going on for the OpenMRS community.

Here is some of the information I presented about my project:

Project name: Concept Management Tools App

The goal of the project is to create some simple tools for the users by using the Concept Dictionary Data and mappings to terminology in systems such as SNOMED.

Step 1

Create mappings to systems such as SNOMED by downloading all the concepts missing this mapping and creating a csv file for the users to fill out and then upload it back into the system to capture in the database

Step 2

Once the mappings between the SNOMED data and our concepts have been captured we need to add the IS_A relationships to the database.
We can do this by creating a tool that lets you populate the concept_reference_term table with all the concepts in a given concept source by uploading a CSV.
Then we can create a tool that lets you populate the concept_reference_term_map table with relationships between terms
For example, by allowing the uploading of the SNOMED hierarchy files distributed by NLM.

IS_A Example:
pneumonia IS_A disease so pneumonia would be a child of disease and bacterial pneumonia IS_A pneumonia
This makes bacterial pneumonia a child of pneumonia and bacterial pneumonia and pneumonia are both subsets of disease with disease being the root concept.

Step 3

Finally we will create a view that will allow us to see the hierarchical relationships between the concepts with the IS_A child parent relationships

Things I think would be exciting to use this for in the future:

Being able to view the IS_A relationships with the concepts in a hierarchy can help in decision support to minimize the risk of costly errors in treatment .

Having data mapped to systems such as SNOMED provides us with the ability to discover patterns and relationships with concepts that can aid in research and development. Such as, researching the effectiveness of different approaches to disease management and treatment.

Progress this week:

I am finishing up a database query and making sure it works. Then, I am going to make sure I have all of my validations in place. After that I will work with Wyclif to get the first step ready to be tested by Ellen Ball.

 

Coding Officially Started

So, coding officially started on June 17th. I have been having a great experience and really have quite an appreciation for all the documentation the OpenMRS team has in their wiki.

One of the focuses I have had lately has been the unit testing. I created an xml for a mock database so that I can test to see if I am getting what seems to be the correct data to put into the downloaded file.

Here are some links to the documentation that OpenMRS has:

https://wiki.openmrs.org/display/docs/Unit+Tests

https://wiki.openmrs.org/display/docs/Unit+Testing+Conventions

One of my favourite parts of the work I am doing right now is the fact that between the UIFramework and Unit testing I can really fly through the code and tweak errors with minimal effort. With the UIFramework I can make changes to all my front end code without reloading my module and then with the unit testing I can work on the back-end and and not have to reload my module. I also finally got the debugging to mostly work in eclipse when I am running my own openmrs-core and my own modules. I even had to drag in the UIFramework to try to understand an error I sometimes randomly get and I had all three projects working together without too much trouble.

So for right now on my project I am successfully able to use the user interface to select a source and classes to get missing mappings and it is putting it all into a csv. I also have the front end and unit testing working for the upload portion. It is now just getting the uploaded file in the database now that it is successfully being read in and then cleaning up and testing.

As far as I can tell I am still on track and I am looking forward to the week ahead.

This is what I have done so far since being accepted….

So, it has been busy since being accepted into the OPW OpenMRS internship. This is what I have done so far:

Set up a dev environment for OpenMRS that uses the UIFramework and Reference Application.

Here are some useful links and information if you would like to do the same:

That should get you set up. I managed to create a quick proof of concept file upload app using the above steps.

Some other things from the past week:

My mentor has been great. He has made plenty of time for me and we have had meetings with various people to drive out the needs for my project, Concept Management Tools.

There has been a lot of discussion around how to handle the SNOMED data and the best way to get the mappings taken care of.

Here is a link to the mockup for downloading a spreadsheet to start the work on getting some of the mappings to SNOMED or other sources into the database:

https://wiki.openmrs.org/x/O4AQAw

I will leave it at that for this week. I am sure more detail will be driven out in the next week to put in my blog.