In the project, your group will select one case, and design and implement a working solution as an app for DHIS2. The cases provide a description of the use-case, users, and context, and can be found here.
You are provided with substantial flexibility on how to solve your selected case as long as you cover the basic functionality outlined, and your solution is sensitive to the users and the context described. Please feel free to design and implement additional useful functionality, and to design the app in any way you think is best. You will have to justify your decisions regarding design, functionality, and implementation in the final (graded) group presentation.
You must use React, the DHIS2 app development platform, and the UiO git for development and coordination. The final app should be deployable to run as an internal app in DHIS2.
Throughout the process, you will be able to discuss ideas for design, functionality, and how to implement this with the group teachers on the seminar groups (on zoom).
Forming groups (deadline 25.09.2019)
The project groups must consist of 4 - 5 students. You could either form a group yourselves our request to be put into a random group.
If you have formed a group yourselves: One person per group fills in this form to register the group.
If you want to be randomly assigned to a group: Fill in this form.
The group project process
Week 39 – 42 (approx 4 weeks), and presentation 1
The first part of the project work is to decide on a project case, elicit and define requirements based on the information provided in the case, and get started on the development. You will present this on the first group presentation in week 42. This an opportunity to get feedback on your thoughts, clear up misunderstandings, and ask any questions you might have. Your presentation (approximately 10 minutes per group) should include:
- Your understanding of the case provided.
- An outline of your planned solution
- Ideas on how to implement it including potential challenges
- Demo of any implemented functionality and UIs
- Difficulties with DHIS2 and the APIs
- A project timeline
Based on feedback in presentation 1, continue developing your solution to the selected case. When you start exploring the DHIS2 API, you might discover that some of your planned functionality and implementation must adapt to the possibilities and constraints of the platform. This is a natural part of the process.
Week 43 - 45
After the second presentation, you will continue working with the app. Group teachers will be available to provide guidance in the seminar groups.
Final "push" - Friday 6th of November
After Friday the 6th of November (23:59-ish), your group should not make any more changes to your solution on git. The one/two remaining days before your presentation we will have a look at your code.
In your git repository, you should also add a short readme file outlining:
- Your app's functionality
- How this is implemented (just a brief explanation)
- Any missing functionality/implementations, and things that do not work optimally.
Week 46: Final presentation (on Zoom)
The final presentations will be held in week 46 on Tuesday 10th, and Wednesday 11th of November from 08:30 - 14:00. All group members have to be present, but everyone does not have to speak during the presentation. Your presentation should be no longer than 10 minutes, and we will spend approximately 8 minutes on questions and answers.
In the presentation, you will 1) demonstrate the final product (your app), 2) reflect on decisions regarding design, functionality, implementation, and the overall process. This presentation will be graded (one shared grade per group) and counts 40% to your final individual grade in the course.
Things you should cover:
-
Brief intro with requirements and app functionality overview
-
Live demo of the working app, covering all functionality
-
Reflection upon positive/negative aspects with your solution and your choices during implementation
-
Short reflections upon the project development process (coordination, time management, etc.)
-
Self-evaluation using grade scale in the evaluation criteria