Group members of N.T.K
- Nguyen (email@example.com)
- Thuc (firstname.lastname@example.org)
- Kennet (email@example.com)
Requirements for the Survey app
- Single event data entry form
- Skip logic (eg. If pregnant, fill in these extra forms)
- Make interface for easily defining form and skip logic (integrated with single event, but you’ll need some additional info)
- Available as DHIS2 web app and Android app (phonegap) - Touch friendly UI
(copied directly from Lecture 6 - Group projects)
Milestones set by course-teachers
Each group should follow these milestones:
Milestone 1: 1st November
Document features and architecture on Wiki
Show understanding of DHIS2 web apps
Milestone 2: 15th November
First bare-bone version - static HTML
Uploadable as DHIS2 web app
Milestone 3: 30th November
Finished, if applicable also with mobile app.
Final delivery: 8th December
Presentation: 9th December
--- Thuc's work log ---
Currently working on:
Optimalizing code and fixing bugs
- Data extraction successful and uploaded to Github
- Added bootstrap twitter as UI.
- Since other groups (on all projects) are using Angluar/Ember/Restful/Data binding-frameworks I've chosen (for the group) to write everything in pure JS (with jQuery), both for learning and understanding more but also to prove that it's also possible to make without a framework that makes some parts easier.
- Create a dropdown menu with all programs the users have access to (http://apps.dhis2.org/demo/api/programs.json)
- Retrieve data from DHIS2 about the logged in user (http://apps.dhis2.org/demo/api/me)
- Finishing up the program-forms (retrieving data and creating form-inputs (with optionsets!))
- Initiated a joint-project between HKH and NT by sharing DHIS-api JSON-files in a private repository.
- Polishing the pages, optimalizing the code and testing out the current implementations
- Changed the way the questions are getting fetched from the server in order to integrate skip-logic easier
- Integration of skip-logic in the forms
--- Nguyen's work log ---
Currently working on:
- Fetching data from forms
- Downloaded json files to work offline because it takes too much effort to upload the web app everytime I wanted to test it. Created hostcheck and revising after planning with Thuc on the program-fetching part (going back to selector instead of using buttons).
- Tested how to upload an web-app to DHIS2. Uploaded a dummy-app with a simple manifest file.
- Fetching the input values from the form and parsing the data values
- Creating a new JSON object to match the criterias
- Sending parsed JSON object to http://apps.dhis2.org/demo/api/events
--- Kennet's work log ---
Currently working on:
Optimizing code and fixing bugs
Kennet have worked close with the N.T group before joining the group permanently (group is now renamed N.T.K), and alot of the solutions in this survey app is solved in collaboration with Kennet.
Go to HKH page to look at his work with his previous group: https://wiki.uio.no/mn/ifi/inf5750/index.php/HKH_Survey
- Instead of only skip logic, we'll try to implement the Survey app with "grow" logic.
- We define "grow" logic as giving the user only the nessesary data/questions/choices at a certain time. And skipping the alternatives that aren't relevant for the answer.
[Example] If the user has chosen their gender as male earlier in the survey, the question of being pregnant will never shown.
To do list
0: Create a GitHub repository for the group | [DONE] GitHub-masterbranch: https://github.com/ThucHoang/INF5750_Survey.git
1.1: Upload a test-zip with a working manifest file to test out how the web-app works. [DONE] Uploaded a dummy app: http://apps.dhis2.org/apps/test//index.html [REMOVED FROM DHIS DUE TO THE DAILY RESET]
1.2: Create a simple webpage with working skip logic
1.3: Use EmberJS/Angular to retrieve data from the Web API [DONE] Retrieved data from DHIS2 (both program and me) with pure JS (and jQuery).
2.1: Creating the program-forms [DONE]
2.2: Creating a skip logic function that works with the program-forms [DONE]
2.3: Sending form-data to http://apps.dhis2.org/demo/api/events [DONE] The data has been confirmed sent by checking on the dhis2 single event registration manager-page.
Group meeting log
29th October 2013: First meeting of the N.E.T group. Deciding the architechture and how we should proceed with the project. Next meeting will be held on Friday 1st November.
1st November 2013: Decided which frameworks to use, still unsure if we're going to use Ember or Angular, but that will be tested and the result will be presented in the next group meeting. The work dividing-are has been updated, we've also created a to-do list (workplan) for the upcoming days/weeks.
12th November 2013: Eivind (firstname.lastname@example.org) has decided to leave our group because of personal reasons. We wish him good luck in his studies and in the future. On another note, our next meeting will be on thursday 14th November.
14th November 2013: Due to high pressure from other courses combined with work Thuc are taking a week to take care of the amount of work he has to do. Nguyen are working with sending data from the forms and skip-logic (a meeting on Monday 18th November will be held to define how we are going to do the skip-logic).
18th November 2013: Since we are now only 2 in the group we've been allowed to skip the interface to create skip-logic, but instead load the skip-logic from a pre-defined file. A very simple skip-logic has been defined, but we have chosen to NOT have skip-logic for the optionsets. A new meeting will be held on Tuesday 26th November to see how far the we've gotten with the implementations.
26th November 2013: We've finished faster than what we expected. The skip-logic integration has been tested, but still have some bugs. While the sending JSON object have not been tested towards DHIS2. It should be working, but time will tell. As for the next few weeks we'll go through the js files and filter our code, perhaps there's a better way to implement the current methods we've done. The next meeting will be held on Monday 2nd December.
Please send an email to email@example.com if you need access to our private repository.