Versions Compared

Key

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

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

Hackathon Dates: - | Location: Argyle Grand Hotel, Nairobi, Kenya

...

“Good ideas may not want to be free, but they do want to connect, fuse, recombine. They want to reinvent themselves by crossing conceptual borders. They want to complete each other as much as they want to compete.” ― Steven Johnson

Expand
titleIntro & Background

The Annual OpenMRS Conference Hackathons, a place where innovation meets rigorous engineering practices! Is usually an opportunity for community members, teams and architects to engage and get their “hands-in” or “on” OpenMRS and related projects, working on exciting and high priority tasks and challenges, as well as having an opportunity to propose low hanging fruit use cases for groups to work on. It has been a place where we can grow existing skills, learn new skills, and build relationships with others in the community.

Expand
titleObjectives

We look 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, the system integrators, and the implementers 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.

  • Bring your development skills to the table and try to help others working on various challenges.

...

At this year’s OMRS24 Hackathon, as part of our commitment to excellence, we're introducing a new requirement: If there's coding involved, there should be tests! 🤩

If there's coding involved, there should be tests!

As we implement the "Tests Required on all PRs" policy, every team working on engineering tasks will be expected to write tests as they develop their solutions. To support this initiative, expert coaches will be on hand to guide you through the process. But that’s not all—teams with the best test coverage will be eligible for a special award. We’ll be looking for:

  • Comprehensive Coverage: How well does your test suite cover the codebase?

  • Diversity of Tests: Are you using a variety of test types to ensure robustness?

  • Quality: How effective and well-structured are your tests?

This is more than just a hackathon; it’s a chance to improve your coding practices and showcase your testing prowess!

Teams with the best test coverage will be eligible for a special award

Objectives

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, the system integrators, and the implementers 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.

...

Current Challenges

Please add in any challenges that you might want to pose to the attendees or smaller high priority issues/bugs raised by the community and/or from the core OpenMRS roadmap to be tackled at the Hackathon.

Info

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 Needed

Notes

and

/ Slides/ Links

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: 

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.

Brandon Istenes

OpenMRS and FHIR

There 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.

Jan Flowers

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:

    / Proposed By

    O3 Bug Bash

    Hack away on some tricky bugs & Design QA tickets!

    Includes: 

    • Test Writing: Learn how to write tests that will be required on all PRs as of Sept

    1. List of tickets HERE

      1. Label with: omrs24bugbash

    2. August: Improvement to testing framework (how a good PR with test coverage should look - Jayasanka Weerasinghe Dennis Kigen)

    3. Docs: More guidance on how to do mocking

    4. Docs: Recipe showing full example/story of how one would test as they build something

    Ian Bacher& Veronica Muthee

    O3 Form Engine Test coverage

    • The React Form Engine is a mission-critical component of the EMR.

    • Need more test coverage for this! 

    Ensure there are actionable tickets for the team to work on, with super clear descriptions

    Jayasanka, Samuel Male

    Feature area: Order Basket

    Make sure everything’s properly aligned from data model through to frontend; walk through all the flows; check for any safety concerns. 

    1. Prep for this with Global Support Team in advance

    2. Burke’s support and user testing

    Dennis Kigen

    Graphical reports

    Out of the box graphical reports for the various services offered at the facility. The could include trends against time and pie charts e.g Outpatient/Inpatient dashboards

    1. OpenMRS core support to provide the data to populate these charts

    2. Design support to design the layout of these charts

    Pius Kariuki- IntelliSOFT

    SMART Guidelines

    Import Export Service

    1. An admin service to seed databases for instance new installations with SQL data.

    1. The export service to backup information selected from a checklist, this might include but not limited to: address information, patient data,  concept dictionary and user roles.

    We believe that implementing this solution will significantly streamline the data backup process and enhance security measures to protect against data loss.

    Design support. We have already started working on those features but we would like some design support to help improve the experience on these workflows.

    Pius Kariuki

    Michael Ndula- IntelliSOFT

    Currently, OpenMRS does not support auto-population

    On the React Forms

    Picture an instance where you have already filled your date of birth, gender and HIV status in a separate form and now you need to fill a few more forms. 

    Currently OpenMRS doesn’t support auto population of observations from different encounter types so you will have to keep filling these details over and over again (docs)

    https://github.com/

    jembi

    openmrs/

    openhim-mediator-mapping

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

    Slides: openIMIS @ OMRS19 Hackathon

    Daniel Futerman

    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

    Daniel Futerman

    openmrs-ngx-formentry/blob/main/projects/ngx-formentry/src/form-entry/services/historical-encounter-data.service.ts#L5

    Jira Legacy
    serverSystem Jira
    serverIddd5f38d5-f8f4-3f41-9551-b59f4841491c
    keyO3-2762

    Michael Ndula- IntelliSOFT

    Validation of the Ampath forms

    Validating the forms to only appear after a certain condition is met or depending on the Patient’s age/gender e.g Pediatric form should not appear for Adults and Adults and adolescent form should not appear for Children

    1. Know how to validate Encounters Types.

    Michael Ndula- IntelliSOFT

    Data Exchange between O3 facilities?

    New Triage form

    How might we improve the interface of a Triage form to better support providers in that role? Could we do this without creating hard-coded form elements but expand a generic set of patterns that could also be reused in other forms / contexts?

    Paul Adams

    System use and data quality monitoring report

    Can we provide an out-of-the box report that enables implementers to determine if the EMR is being used effectively, and if the data meets basic quality standards.  

    Knowledge of data model, ideas for mapping indicators, and building SQL queries to be used for exports or ETLs.

    Proposed list of indicators that should be broadly useful across implementations to be provided.

    Debbie Munson PIH