Difference between revisions of "N.T Survey"

From mn/ifi/inf5750
Jump to: navigation, search
(To do list)
Line 220: Line 220:
 
'''0:''' Create a GitHub repository for the group | '''[DONE]''' GitHub-masterbranch: https://github.com/ThucHoang/INF5750_Survey.git  
 
'''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&nbsp;'''[REMOVED FROM DHIS DUE''''''<span style="line-height: 1.5em;">&nbsp;TO</span><span style="line-height: 1.5em;">&nbsp;THE</span><span style="line-height: 1.5em;">&nbsp;DAILY</span><span style="line-height: 1.5em;">&nbsp;RESET</span>'''''']'''  
+
'''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&nbsp;'''[REMOVED FROM DHIS DUE'''''<span style="line-height: 1.5em;">&nbsp;</span>'''''<i><span style="line-height: 1.5em;">TO</span><span style="line-height: 1.5em;">&nbsp;THE</span><span style="line-height: 1.5em;">&nbsp;DAILY</span><span style="line-height: 1.5em;">&nbsp;RESET</span></i>]'''  
  
 
'''1.2:''' Create a simple webpage with working skip logic&nbsp;  
 
'''1.2:''' Create a simple webpage with working skip logic&nbsp;  
Line 230: Line 230:
 
'''2.2:''' Creating a skip logic function that works with the program-forms '''[DONE]'''<br>  
 
'''2.2:''' Creating a skip logic function that works with the program-forms '''[DONE]'''<br>  
  
'''2.3''': Sending form-data to&nbsp;http://apps.dhis2.org/demo/api/events '''[SEMI-DONE, need to be tested on dhis]'''
+
'''2.3''': Sending form-data to&nbsp;http://apps.dhis2.org/demo/api/events '''[SEMI-DONE, need to be tested on dhis]'''  
  
 
<br>
 
<br>

Revision as of 10:06, 27 November 2013

Group members of N.T

- Nguyen (congnn@ifi.uio.no)

- Thuc (thucth@ifi.uio.no)


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


Work logs

--- Thuc's work log ---

Currently working on:

Optimalizing code and fixing bugs


Finished:

  • 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:

Optimalizing code and fixing bugs


Finished:

  • 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.
  • Fixed some code in the various javascript files for more efficiency when running.
  • 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

Architechture

- JavaScript, jQuery, CSS, HTML5, AJAX, Bootstrap Twitter

- 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.


Screenshots

Survey v1 webapp.png

Survey uploaded to localhost
Survey uploaded to DHIS2
Survey v2 uploaded to localhost
Survey v2.1 uploaded on localhost
Survey v2.2 uploaded on localhost




















































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 [SEMI-DONE, need to be tested on dhis]


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 (eivineng@ifi.uio.no) 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.


GitHub-repository

Link: https://github.com/ThucHoang/INF5750_Survey.git

Please send an email to thucth@ifi.uio.no if you need access to our private repository.