Just before the March 2017 TAG, the IATI Technical Team posted an outline of our Product Roadmap This included short-term plans up to the end of Q2 2017. Now that we are in Q3, we are providing an update on progress in these areas, plus information about plans for the next few months.
Review of the past few months
There are five key areas that we highlighted as areas to focus on in our previous post.
We have undertaken a range of maintenance activities on existing products. A small subset of the changes we have made are:
2. Time-sensitive Work
We have worked on a number of time-sensitive projects:
3. Architecture Design and Development
In January, we took time to assess the current state of IATI architecture and we posted our plans to improve the situation.
4. Python Library Development: Core and Validation
We have worked to begin implementing the base architecture, formed initially around an IATI Python Library*.
Our primary work has centered around the core module to act as a reference implementation of the letter (rather than the undocumented 'spirit' (that varies from person to person)) of the 'Standard'. We have initially used version
2.02 of the Standard for this, and will soon extend to other versions.
We have also undertaken some work to perform dataset validation within the Schema. A proof-of-concept implementation for validating a dataset against IATI Codelists and Rulesets has been demonstrated.
Alongside this, work has recently begun work on additional parts of the Python Library, such as
iati.fetch, which aims to offer functionality to download data and updates to Single Source Of Truth content using a network connection.
* The Python library is a collection of reusable software components that the IATI Technical Team are building to help us to improve the underlying structure of existing tools. The library will act as a base for common tasks and is being built in an extensible way. Therefore, it is intended that the library will make it easier to use IATI data by removing the need to reinvent the wheel before moving onto implementing innovative functionality, performing analysis of data or simply accessing data for data visualisations. More information here.
5. Datastore Development
We have, unfortunately, not had the capacity to properly assess future plans for the Datastore However, we are definitely aware that there are problems with the current product and, as such, we will ensure a proper review is undertaken at the point in our migration to a sustainable architecture when we require the functionality that a Datastore may provide.
Direction for the next few months
Alongside maintenance, there are three main projects that we plan to work on between now and the end of 2017:
Validator: We will aim to release developer functionality (with accompanying user guidance) that will enable datasets to be validated against more of the IATI Standard than just Schemas – for example, that the correct values from a related codelist have been used.
2.03 Standard Upgrade: Once proposals have been finalised and agreed upon, we will implement them in the Schema, and update tools to support the new functionality as appropriate.
Architecture Design and Development / Web Project: We will continue work on the Python Library to provide the base of a sustainable architecture. Alongside this, we will use it in practice during work to significantly improve the experience of those using IATI’s websites. The scope of this project will be confirmed over the coming weeks before we start implementation in the Autumn.