Program Data Requirements

For OpenLMIS, there is a certain need to collect programmatic data during the requisition process (and possibly other processes); this is called "program data". In order for OpenLMIS to support program data, several requirements need to be fulfilled:

Ideal Solution and MVP

For implementing Program Data in OpenLMIS, there is a difference between an ideal solution and a minimum-viable product (MVP). An ideal solution would fulfill all of the above requirements and:


However, the ideal solution will take multiple iterations to accomplish, and the first iteration should focus on an MVP. This would fulfill the requirements in the previous section and:

MVP Proposal with DHIS2

An MVP for Program Data with OpenLMIS and DHIS2, would require creating a new Program Data microservice. It would look as such:

A diagram with the interactions:

Component Diagram for the Program Data Microservice:


A look at how this proposal fulfills the MVP requirements:

Post-MVP Iterations

Future iterations would satisfy more of the requirements in the ideal solution. In particular,