All projects

The Digital Agency for International Development

ATA - Intranet

A Django-based knowledge management platform for an Ethiopian agricultural agency

Jan 2012 to Jun 2012



The Ethiopian Agricultural Transformation Agency (ATA) was established in 2011 to work with the Ethiopian Ministry of Agriculture to make the country's farming more productive and efficient.

During the organisation's early life, it was important for people to be able to find colleagues, see a photo and learn about their interests. We produced a kind of organisational Facebook to serve this purpose with an intelligent search system that made suggestions of similarly spelled names.

It was also important to be able to store and search for key documents. We implemented a repository that enabled users to search for relevant material using keywords and filters. It was possible to upload MS Office documents (.doc, .docx, .ppt, .pptx, .xls, .xlsx) and PDFs - these are automatically added to the search index.

As the ATA office suffers frequent power and internet outages, we set up the application on a server (with a UPS) on the local network at ATA's office in Addis. We worked with ATA's systems administrators to build their capacity so that they can support the application locally.



ATA's product owner had this to say: '[We are] very happy with the ATA intranet...  Thanks so much for all your hard work and your useful suggestions on how to make the system functional and easy to use.'

One of ATA's partner organisations, the Agricultural, Learning and Impacts Network (ALINe) provided funding for the MIS.



We were able to do a lot of up front discovery with ATA, visiting them for several days, conducting interviews with stakeholders, observing the situation in which users would be working and talking to their technicians about different models for the application.

ATA's product owner participated in a card sorting exercise where we described and prioritised user stories. Also, we created user personas (based on the stakeholder interviews) to represent the different types of user - these were referred to throughout the project to test design decisions.

Following our initial visit, our interactions took place over Skype and the installations were carried out using remote access over VPN.

The project was conducted over four 10-day iterations, after each of which a gap of a few weeks was left for user testing. ATA collated the feedback and fed it into the next iteration planning meeting.



We used Django to implement the ATA Intranet on a Windows server. Chris wrote an interesting blog post about some of the challenges we faced.

The code formed the basis of our generic intranet project, which can be found in our Git Hub repository. It is intended to be easily extensible, and made from reusable components. Standard components include:

  • Document library with content indexing and searching
  • User profiles and permissions
  • User directory (to find and contact users)