In Ethiopia we made extensions to the DHIS software that effectively made it incompatible with the South African version. This extension was made because the Ethiopian authorities demanded the use of ICD based data elements for reporting. If each data element were to be inserted as a standard data element it would become several thousand data elements, many of which would be rarely used. In Tigray it would become past 16,000 data elements. The data set chosen in Tigray was already far from a minimal dataset, with in the vicinity 1,200 data elements.
To effectively handle ICD based data we had to make changes to the core of DHIS. The regular data elements is like a hash table with a data element type and a value. The ICD data is more like a sparse matrix, in a health facility only a few combination of gender, age and ICD-code is used. To solve this there was basically two options; ether hard code the extension into the DHIS Access application or make a visually separate application feeding on the DHIS database. In Ethiopia it was chosen to hard code the necessary extensions into the DHIS application. Because MS Access is a RAD tool it was not possible make the extensions without making it incompatible with the South African version. This effectively made the Ethiopian DHIS a fork. It was decided to hard code the extensions because it would make DHIS more acceptable for the intended users. One user we trained expressed that he liked that he could do all the data input through one interface.
We could have sent the extensions to the South African team, but Ethiopia was the only country which required support for the ICD code based input. Because the extension was hard coded it was not possible to choose not to have it. If DHIS 1.x was extensible, you could choose to include only required aspects of the system. This is, however, not so. DHIS 1.x is relatively easy adaptable to new contexts in that you can easy insert data elements and organisational units and relatively easy make reports and graphs of the data. It is not extensible in the sense that you can choose to include external modules.
We also experienced the problems with incompatibilities between different versions of MS Access and with incompatibility caused by using different language locales. Even if the South African DHIS was tested for MS Office 97, 2000 and XP the extensions made in Ethiopia made DHIS only work on the XP version of MS Access. Officials at the Tigray Health Bureau expressed discontent with this because they had MS Office 2000 as standard at the bureau.
The installation procedure we had to use was also cumbersome. First we had to install the South African DHIS using its installer, then we had to copy our version of the DHIS application and the data file over the original. We wanted to make an installer for the Ethiopian DHIS, but the South African team used an expensive proprietary program to make the installer. If we had the source code for the installer available we could have made some small tweaks to make it install the Ethiopian DHIS application and data file.