This past March, DG launched an AMP module that helps the Ministry of Finance, Planning, and Economic Development in Uganda track aid disbursements in their existing Program Budgeting System (PBS). In the first post of this series, we shared insight on identifying the need to integrate the two systems and a general overview of the challenges we faced. In this blog, we will examine DG’s technical process and the specific solutions used to overcome AMP-Program Budgeting System integration challenges.
Our main goal was to integrate Uganda’s PBS into the standard AMP portal. We have mentioned that the integration required two types of data: disbursement information, which shows how much is disbursed to implementing agencies, and medium-term expenditure framework (MTEF) data. MTEF data describes the amount to be spent over a given period of time. MTEF data’s objective is to help plan each year’s new budget, and identify expenditures for the next three years.
Working with the Ministry’s technical team, we jointly discovered a few of the existing challenges in integrating the two systems. First, the Ministry has its own internal processes built into the PBS and specific data importing requirements. The standard AMP portal exports reports in JSON format; However, the Ministry’s system requires XML format. Because AMP uses JSON format across the 25+ other country partners, changing the output from JSON to XML was not feasible, as making this change to AMP would impact all other partners.
Thinking through the Challenges
The two teams (the DG AMP team and the PBS team) discussed several different solutions, prioritizing options that would be most effective and result in the least error. One option considered was exporting reports in JSON format, then using the PBS to convert the reports to XML format before importing files into the PBS. Through this solution would solve the problem, the conversion and transfer process would create space for error or the potential for corrupted data. Once it was decided that modifying the data in AMP, then exporting it and re-importing into PBS was not an option, we faced another challenge: the two systems use different programming languages and servers. PBS uses microsoft.net with the MSSQL server, and the AMP portal uses Java. To assist the PBS team on how to consume the API developed and to make the integration less error-prone, DG developed a sample client in .NET to show how the API could be used by the PBS. DG had to find a solution that was less hierarchical and that could be interpreted by the PBS without major transformations.
The final proposed solution was an integration in the PBS that interfaces with AMP, rather than an integration in AMP that interfaces with the PBS. After researching the options, XSLT was chosen to transform the data into different formats. DG worked with the Ministry’s tech team to format the XML output, via XLST so that it would transform the standard XML amp report output into the exact format needed. DG was able to make format adjustments to the XSLT without disrupting or having to modify existing AMP or PBS structures. Now, the solution is owned by the Ministry’s technical team, who can make adjustments to the XSLT as needed moving forward.
While DG has been working on AMPs around the world for 15 years, each implementation comes with its own puzzles and challenges that encourage growth and innovation across the platform as a whole. Through this successful integration, DG confirmed that success comes from a high-quality, uniform platform that is useful for all country partners but is also flexible and robust enough to meet varying partner requirements without comprising the existing system user base. As our platform evolves, each innovation and change becomes available to existing users and makes future versions of AMP stronger and more customizable.
We are proud to have found a solution for integration that fit the needs of the client while also ensuring accurate data and governmental transparency. We look forward to using the new ability to export data in XML format together with XSLT transformations as part of the solution to further AMP country system integrations in the future.