ClassClowns

From mn/ifi/inf5750
Jump to: navigation, search

Health Facility Registry

App providing an interface to the health facilities in a country (e.g. the Sierra Leone or Trainingland demo databases). The app should make it possible to search and list organisation units and see these in a map, along with relevant details regarding each facility such as type, the district it belongs to etc.

Group members

  • Hanna Rognerud
  • Sara Haugse
  • Nicolas Lopez

Architecture

  • React with Redux
  • HTML 5
  • CSS

API:

  • DHIS2 API
  • Google Maps

Testing:

  • Postman

Summary of requirements

The user should be able to:

  • Search for an org. unit and get facility details, using live search
  - The user can select an organization unit using a live search menu.
  - By choosing one facility, clicking on the "show search" button and selecting the marker, the program will automatically autofill the header with facility details.
  • Filter your search based on levels
  - The user can find the different unit organizations and levels from the polygons on the map.
  • Present the information pertaining to the chosen facility in a drop-down menu beneath its name
  - We have chosen to have this information as an header over the map, giving the facility name, opening date and id.
  • Locate on map
  - The user can easily locate on the map and press the button "show polygons" to show the polygons. 
  • Edit coordinates
  - The user can edit the coordinates from the edit org. unit details feature. 
  • Edit org. unit details
  - The user gets a popup-window to edit: name, latitude and longitude of the chosen organization unit. 
  • Add a new facility by clicking on the map
  - The user can click on the map and the program autofills the coordinates to the "register organization" box.
  - The user needs to fill in name of the new organization and select a parent from a drop-down menu before submitting. 

Milestones

Milestone 1: October 28

  • Document features and architecture on Wiki
  • Show understanding of your project task

Time schedule

Day Time
Monday 15.15 - 17.00
Tuesday 10.15 - 12.15
Wednesday 10.15 - 12.15
Thursday 10.15 - 12.00

Requirements done:

27/10: View map.

4/11: Search for an org. unit and get facility details, using live search.

8/11: Locate on map and set markers.


Dividing tasks within the group

We want to develop our project together as a group by having frequent meetings during this period. Some of our meetings will be in the group sessions. After each meeting we will decide what to prepare for the next meeting.

Screenshots and screen flows

Documented learning during project

None of the group members had any experience with react or any of the technologies used. We have worked in a team and solved the problems together. Following the time schedule have worked very well and kept us up to date with the changes that have been made individually. We've been sitting together most of the time so we have not used github efficiently. This is because we haven't felt the need to be up to date on every little changes and been working on different components mostly. If we've made some small changes we have sometimes just typed it in on the group members computers.


As a result of our project we have now realized that implementing an app with some functions to a platform isn't a walk in the park. The fact that we have to take the API into consideration made the task more complicated. This is because none of us have worked with an API as a link between an application and a platform before.


Looking back to the start of the project we have learned a lot about the technical aspect of programming and grown as programmers individually. When it comes to the technical aspect we have learned about react, javascript, redux, css, github, html and how they work together. On the other hand we have grown individually as programmers because we have learned to work with other people, communicate and find solutions to our problems together.

Suggested improvements to APIs etc

It would have been easier if when we fetched the metadata, if it had information about the level of the organisationunits.

Link to repository

https://github.com/hannarognerud/inf5750_groupproject (Private)

Download link to sample webapp