- 1 Group members
- 2 Project details
- 3 Architecture
- 4 Milestones
- 5 Time schedule
- 6 Development and tasks
- 7 Design
- 8 Documented learning
- 9 Suggested improvements
- 10 Repository
- 11 Sample app
We chose task D: importing, matching and visualizing.
In this project we will make a client side application for:
- Fetch datasets from the Demographic and Health Survey (DHS) external API.
- Match data from the datasets with the data in DHIS2 and add the data if it does not already exist.
- Visualize the datasets that have been imported.
Milestone 1 - 27.10.2016
First group meeting
- Decide upon architecture and how the app should behave.
- Play around with DHIS2.
- Start reading DHIS2 documentation.
Milestone 2 - 02.11.2016
Second group meeting
- Propose GUI
- Divide tasks
- First app draft
Milestone 3 - 21.11.2016
Import API finished
The API being used to import the data from DHS to DHIS2 must be fully functional.
Milestone 4 - 23.11.2016
Last feature implemented
No more features will be added after this milestone.
Milestone 5 - 25.11.2016
The app should be completely finished.
Milestone 6 - 27.11.2016
No specific times to work on, only a mandatory meeting each Thursday where we show what we have done since last meeting and also discuss and delegate tasks. If a member finishes a task early, they get a new task assigned.
Development and tasks
Our group has had a regular meeting each Thursday. In the beginning the meeting consisted of discussing, trying to find out what to do and how to do it.
After that we had a session for deciding upon how the app should look before starting with the development.
In the very beginning the tasks was divided like this.
Magnus: importer API
Morten: importer GUI
Axel: Wikipage administrator and importer GUI
Later on this changed a bit due to the deadline closing in and tasks being finished.
Magnus: small changes to API and visualizing.
Morten: importer GUI and connecting the GUI to the API
Axel: visualizing and Wikipage administrator.
Magnus: visualizing finishing touches
Morten: finishing touches to the importer
Axel: finishing touches to the wikipage.
In addition to this, all members have been heavily involved in both GUI decisions and also more backend decisions.
Program flow and screenshots
Importing data from DHS.
In addition to importing data from DHS, the app also visualize the imported data.
Because of this, some of the code might not follow good code practice, but we learned a lot on both while developing.
We were also unfamiliar with both the DHS api and DHIS2 in general. Because of this we have made choices when matching data from one API to another which might not be entirely correct.
Better and more testing. As of now we currently do not have that many tests and the app is considered to run in a "happy day scenario".
Refactoring of code
The code should be refactored a bit to follow the best practices, especially the importer API.
Include paging as a functionality
Currently now the data imports everything on one page.
The app is currently not that good looking and needs an improvement on the GUI.