We had a checklist form that needed to be digitized for data collection. After reviewing the requirements, everything pointed toward using a DHIS2 Aggregate Program:
- Monthly reporting
- Aggregated summary of monthly data
- Category combinations required
- No need to track individual beneficiaries
Everything checked out. So, the form was built, deployed, and validation rules were configured. At that point, I thought: This should be straightforward.
Well… I was wrong. ![]()
The form itself was simple, but I had overestimated the data-entry team’s ability to interpret some of the questions.
Every month became a data-cleaning exercise. We had to identify errors, contact facilities, explain the corrections, and repeat the process.
So, I started looking at the problem from a different angle: Was the issue really the data entry team, or was the system not designed well enough to support them?
Here are some of the changes I made:
Simplified the questions
Some questions were technically correct but not necessarily easy for someone unfamiliar with the underlying concept to understand. I reworded them to make them more intuitive.
Converted calculations into indicators
Where the answer could be calculated from other information already being collected, I removed the burden from the data-entry team and made them indicators instead.
Automated validation monitoring
I configured validation-rule notifications and used the Scheduler app to send daily emails highlighting entries that failed specific validation rules. This allowed us to identify issues much earlier instead of waiting until the end of the reporting cycle.
Conducted another data-entry training
Sometimes the solution isn’t another technical feature. We also went back to the users and provided refresher training based on the actual errors we were seeing.
One limitation, however, remains frustrating: Aggregate Programs in DHIS2 don’t have Program Rules in the same way Tracker programs do.
For a developer, you can sometimes see an obvious opportunity to prevent an error before it happens, but the functionality simply isn’t available at the dataset level.
Hopefully, future DHIS2 versions will continue to expand the data-quality and validation capabilities available for Aggregate Programs.
The good news?
This month’s data was much cleaner. ![]()
Now, let’s see what next month brings. ![]()
One thing this experience reminded me of:
Good digital data collection isn’t just about digitizing a paper form. It’s about designing the system around the people who actually have to use it.
dhis2 #DataQuality #DigitalHealth #HealthInformationSystems #DataManagement #MonitoringAndEvaluation #PublicHealth #DHIS2Developer
