2019 Implementers Conference Hackathon

The OpenMRS 2019 Hackathon will take place over the course of 1 and a 1/2 days, commencing on 2nd Dec 2019  and coming to a close on 3rd Dec 2019 at 1:00 pm, to pave way to the official opening of the conference on the same day.

Participating teams will have time throughout the conference  to continue working on their solutions and present on their achievements to the community on Friday 6th Dec 2019.

This is a technical space for software teams and architects to engage and get their “hands-in” or “on” OpenMRS and related projects. We are excited to provide a space for teams to connect and work on exciting and high priority tasks and challenges, as well as give the community an opportunity to propose low hanging fruit use cases for groups to work on. There is no better way to get working on OpenMRS than actively engaging in designing, developing, configuring, implementing and connecting to OpenMRS to grow existing skills, learn new skills, and build relationships with others in the community.

Attendees Take Note

In the spirit of the GSoC Mentor Summit Chocolate Table (Google it if you don't know what we're on about), we're asking Hackathon attendees to bring chocolate(s) or any other local sweet treat to the event, which will be laid out on a table for anyone to pick from during the course of the event. This is entirely optional, don’t feel bad if you don’t bring anything, you’re still welcome to sample from the table.

Slack Channel

Please join the OpenMRS #hackathon channel on Slack, which will be used for all hackathon-related discussions/chat during the course of the event.

Objectives

The attendees of the Hackathon are aiming to:

  • Extend the core OpenMRS offering and the application of OpenMRS in the digital health space.
  • Learn how to contribute to the OpenMRS community and codebase.
  • Jointly work together to solve common challenges and priority use cases.
  • Self-organise into learning sessions and create breakaway groups to discuss topics / show ideas

So what does this really mean/look like?

We are looking forward to the attendees (that is you, the participant) bringing their technical strengths to the table and bringing their challenges and use cases to engage with others in the field. These sessions are focused at providing the space for the architects, the analysts, the developers and the system integrators within the community to meet and discuss how to solve active problems and develop innovative solutions. We are expecting a combination of the following to emerge:

  • Focused technical discussions around how best to engage with fundamental aspects and architecture of OpenMRS.
  • Bringing your technical questions and projects/code to persons with expertise in these areas and engaging with them and others on how best to architect and develop solution(s).
  • Resolving high priority issues and tackling new features on the OpenMRS roadmap.
  • The role of OpenMRS in the HIE space, interfacing with other applications and services, and best practices regarding data standards, terminologies etc.
  • Bring your development skills to the table and try to help others working on various challenges.

Current Challenges

Taking into account expertise and teams attending we are looking for groups and members to list out the current challenges that they are posing to the attendees. Please add your challenges/hacking ideas below.

TO NOTE: If you're proposing a topic because you're looking for help on an issue (as opposed to offering yourself up to work on the issue), please fill in the 'Support Needed'  column with the type of expertise or help you'd require.


Title

Description

Support NeededNotes and Slides

Ambassador

Mozambique Priority Use Case

High priority roadmap features/issues related to the application of OpenMRS and its distributions in Mozambique.

So of the topics that are currently relevant include:

  • Extending Atom feed sync between Bahmni and OpenERP (does not exist at the moment)
  • Sync2 extensions to support centralisation 
  • Initializer Module extensions
  • Data Migration
    • Sync2 alternative
    • Pentaho Data Integration


Jembi Health Systems

Nathan Floor

Laura Vignoli

Extending Bahmni Integration with DHIS2

Work on support for Bahmni integration with DHIS2

See here for more info: 

  • Existing repository (Possible Health):

https://github.com/Possiblehealth/dhis2-integration

File sharing: https://drive.google.com/open?id=1exwLBimmUZ9bPSMEgUkWqut1o2_mHbTO

Reporsitory to work on: https://github.com/lauravignoli/dhis2-integration

How to install maven in centos 6: https://tecadmin.net/install-apache-maven-on-centos/


  • Add configuration to validate data sent, for example data element x is mandatory
  • Add configuration for scheduling where the period can be selected
  • Add a view of the activity logs
  • Add Day as a period

Jembi Health Systems

Nathan Floor

Laura Vignoli

Learning about SPA / Microfrontends

There will be some people from the Microfrontends Squad at the hackathon to help people get started with Microfrontends and Single-SPA, the technologies behind the new OpenMRS front-end initiative.

Please note that we will expect some familiarity with Javascript and React. If either of these technologies is new to you, please see the following tutorials (they cover the minimum that participants will be expected to understand).

Javascript on CodeAcademy

React Tutorial

If you already have a good grip on both of those technologies, you can get a head start by doing The Single-SPA Tutorial and browsing around the OpenMRS Microfrontends Wiki.



OpenMRS and FHIRThere has been some recent work on the FHIR module and a working group set up looking at OpenMRS and FHIR. This session will focus on the use of FHIR in the OpenMRS community and look for opportunities to extend support for FHIR. This will likely include some focus on the WHO CDS topic below.

OpenMRS/Bahmni Data Exchange and Interoperability with openIMIS

There is ongoing work  for interfacing with various tools and workflows (OpenMRS Bahmni, DHIS2), leveraging the OpenHIM and other HIE components:

  • Beneficiary enrollment
    • Check enrollment status
    • Check beneficiary balance
  • Claim submission
    • Track status of claim
    • Resubmit rejected claim
  • Indicator Reporting
  • Interactions with other HIE components e.g. Product Registry, Terminology Services


Slides:

WHO-ITU - Module 4 - OpenHIE and OpenHIM - 2019

OpenHIM Mapping Mediator Specification

openIMIS Workflows

OpenHIM Mapping Mediator: https://github.com/jembi/openhim-mediator-mapping

OpenHIM Mediator Tutorials: https://github.com/jembi/openhim-mediator-tutorial


Slides: openIMIS @ OMRS19 Hackathon

WHO Clinical Decision Support

The World Health Organization (WHO) Computable Care Guidelines working group has been working on Clinical Decision Support using FHIR/CQL and have set up a simplified reference implementation to make it easier for POS applications to interact with this. The aim of this session is to support practical investigations into how Bahmni and OpenMRS could engage/interface with this.


Slides:

WHO Computable Guidelines


Slides: WHO CCG @ OMRS19 Hackathon










High Priority OpenMRS Issues

In addition to the challenges raised above, there may smaller high priority issues raised by the community and/or from the core OpenMRS roadmap to be tackled at the Hackathon. These issues could be tackled by a specific working group or during dedicated time during the hackathon, or they may be broken out into broader topics/challenges and moved up into the Current Challenges section above, where appropriate.

Please add your issues to the table below along with a short description on why you consider this a high priority.

TO NOTE: If you're proposing an issue because you're looking for help on this (as opposed to offering yourself up to work on the issue), please fill in the 'Support Needed'  column with the type of expertise or help you'd require.


Title

Description

Support NeededNotes and Slides

Ambassador / Proposed By

Error rendering macro 'jira' : Unable to locate Jira server for this macro. It may be due to Application Link configuration.


"Replace log4j which is EOL"

See here for more detail

Review  neededhttps://github.com/openmrs/openmrs-core/pull/3065

Unable to locate Jira server for this macro. It may be due to Application Link configuration.

"Remove program.concept, workflow.concept, and state.concept; add name and description property to workflow and state"

See here for more detail


More design is required, do we really need this, concepts

Openmrs SDK issue

Not needing to add openmrs (the root is automatically directed to openmrs), caching OWAs in a .m2 folder

See here for more detail


  • Support owa in distro properties
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.

Openmrs Reporting

Ability to rerun a report execution with predefined parameters (just like legacy UI), deleting report run outputs etc

See here for more detail


  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.

Openmrs Initializer Module

Support for programmable import of data.

See here for more detail



FHIR/REST Extension

Add the ability to send a request out of OpenMRS to an external server.

See here for more detail



Unable to locate Jira server for this macro. It may be due to Application Link configuration.

we need to refactor the core ,so that it can run on java 12 , to make use of new feature and improvements in GC. This will  improve the application performance.

Since this is a Major Upgrade and will lead to backward incompatibility , it will lead to moving to platform 3.0



Moses Mutesasira
GeneralMiscellaneous issues
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.
  • Unable to locate Jira server for this macro. It may be due to Application Link configuration.