Difference between revisions of "Geo-3"

From mn/ifi/inf5750
Jump to: navigation, search
 
(19 intermediate revisions by 3 users not shown)
Line 9: Line 9:
 
= Requirements  =
 
= Requirements  =
  
*Single event without registration dataentry
+
*Single event without registration data entry
 
*Show current location  
 
*Show current location  
 
*Data stored with location  
 
*Data stored with location  
*Save dataentry with current location or selected location  
+
*Save data entry with current location or selected location  
 
*Possiblitiy of storing images in entry form  
 
*Possiblitiy of storing images in entry form  
 
*Show data entered on map  
 
*Show data entered on map  
Line 29: Line 29:
  
 
*Milestone 2: November 15th  
 
*Milestone 2: November 15th  
**First bearbone version  
+
**First barebone version  
 
**Uploadable App
 
**Uploadable App
  
Line 40: Line 40:
 
<br>  
 
<br>  
  
= Prototype  =
+
= Architecture hierarchy and process flow =
  
== The first prototype ==
+
== Architecture ==
  
[[Image:Geo3-prototype-skjerm1.jpg|left|300px]]
+
[[Image:Architecture.png|center|700px]]  
 +
<br>
  
<br>
+
== Hierarchy ==
  
 +
[[Image:Hierarchy.png|center|700px]]
 +
<br>
  
 +
== Process flow: Register Event ==
  
 +
[[Image:Process.png|center|700px]]
 +
<br>
  
 +
= Prototype  =
  
 +
== The second prototype ==
  
 +
[[Image:Prototype-geo-3.jpg|center|700px]]
  
 +
== The first prototype  ==
  
 +
[[Image:Geo3-prototype-skjerm1.jpg|left|300px]]
  
 +
<br>
  
 +
<br>
  
The first screen after login.
+
<br>
  
Here one can choose to register new data og search existing data. One can also register data as a default organization unit, or log in with another organi
+
<br>
  
 +
<br>
  
 +
<br>
  
 +
The first screen after login.
  
 +
Here one can choose to register new data og search existing data. One can also register data as a default organization unit, or log in with another organi
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
[[Image:Geo3-prototype-skjerm2.jpg|left|300px]]
+
<br>
  
 +
[[Image:Geo3-prototype-skjerm2.jpg|left|300px]]
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
After choosing "register new data".
  
 +
Here one can choose a location the data entry should be stored at. Default is "my location".&nbsp;
  
 +
<br>
  
 +
The different entry types will have different obligatory entry fields, so this is a fairly generic view.
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
After choosing "register new data".
+
<br>
  
Here one can choose a location the data entry should be stored at. Default is "my location".&nbsp;
+
<br>
  
 +
<br>
  
 +
<br>
  
The different entry types will have different obligatory entry fields, so this is a fairly generic view.
+
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
[[Image:Geo3-prototype-skjerm3.jpg|left|300px]]
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
After choosing "search existing data" from the first screen.&nbsp;
  
 +
Here one can filter the search, possibly also by other filtering options than these. After applying filters, one can either get the results in map, or in a list.&nbsp;
  
 +
<br>
  
 +
One can also go straight to map and search results by location by manipulating the map directly.
  
 +
<br>
  
[[Image:Geo3-prototype-skjerm3.jpg|left|300px]]
+
<br>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
After choosing "search existing data" from the first screen.&nbsp;
 
 
 
Here one can filter the search, possibly also by other filtering options than these. After applying filters, one can either get the results in map, or in a list.&nbsp;
 
 
 
 
 
 
 
One can also go straight to map and search results by location by manipulating the map directly.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 +
<br>
  
 
= Tasks  =
 
= Tasks  =
Line 175: Line 210:
  
 
*Creating a launchpad project  
 
*Creating a launchpad project  
 +
*Tutorials about angular ([http://docs.angularjs.org/tutorial docs.angularjs.org/tutorial])
 +
*javascripts callback ([http://recurial.com/programming/understanding-callback-functions-in-javascript/ recurial.com/programming/understanding-callback-functions-in-javascript/], ....)
 
*...
 
*...
  
Line 181: Line 218:
 
= Suggested improvments to APIs  =
 
= Suggested improvments to APIs  =
  
To be announced...  
+
*programme stages:<br>
 +
 
 +
In order to present an event form to the user, he chooses first the oganisation unit and then the program. From these inputs the application get the accociated program stage (unique in case of single event) then the associated data elements. The only pupose of getting the whole data element is to get the type. Maybe we could save some calls to the back-end by adding the data type to the program stage object.  
  
 
<br>  
 
<br>  
Line 193: Line 232:
 
= Todo<br>  =
 
= Todo<br>  =
  
*Get familiar to DHIS2 API<br>  
+
*<strike>Get familiar to DHIS2 API</strike><br>  
*Define who is using the application (front desk?, medical staff?, administration?)<br>  
+
*<strike>Define who is using the application (front desk?, medical staff?, administration?)</strike><br>  
*Define a more concrete workflow<br>  
+
*<strike>Define a more concrete workflow</strike><br>  
 
*Define the overall achitecture<br>  
 
*Define the overall achitecture<br>  
*Split the tasks <br>  
+
*<strike>Split the tasks </strike><br>  
*How to make an android app downloadable from DHIS2 <br>  
+
*<strike>How to make an android app downloadable from DHIS2 </strike><br>  
 
*....<br>  
 
*....<br>  
 
*define more tasks<br>
 
*define more tasks<br>

Latest revision as of 19:54, 8 December 2013

Repository: launchpad.net/geo-3

Team: (link)

  • Aleksander Rem
  • Franck Roucou
  • Therese-Mari P. Thomassen

Requirements

  • Single event without registration data entry
  • Show current location
  • Data stored with location
  • Save data entry with current location or selected location
  • Possiblitiy of storing images in entry form
  • Show data entered on map
  • Responsive design deployed as web and Android app
  • Login/Logout option
  • Search/filter existing events (on map or in a list)


Time schedule

  • Milestone 1: November 1st
    • Document features and architecture
    • Setup launchpad project
    • First prototype
  • Milestone 2: November 15th
    • First barebone version
    • Uploadable App
  • Milestone 3: November 30th
    • Complete App
  • Final: December 8th
  • Presentation: December 9th


Architecture hierarchy and process flow

Architecture

Architecture.png


Hierarchy

Hierarchy.png


Process flow: Register Event

Process.png


Prototype

The second prototype

Prototype-geo-3.jpg

The first prototype

Geo3-prototype-skjerm1.jpg







The first screen after login.

Here one can choose to register new data og search existing data. One can also register data as a default organization unit, or log in with another organi














Geo3-prototype-skjerm2.jpg







After choosing "register new data".

Here one can choose a location the data entry should be stored at. Default is "my location". 


The different entry types will have different obligatory entry fields, so this is a fairly generic view.












Geo3-prototype-skjerm3.jpg








After choosing "search existing data" from the first screen. 

Here one can filter the search, possibly also by other filtering options than these. After applying filters, one can either get the results in map, or in a list. 


One can also go straight to map and search results by location by manipulating the map directly.










Tasks

To be announced...


Screenshots and screen flows

To be announced...


Documented learning


Suggested improvments to APIs

  • programme stages:

In order to present an event form to the user, he chooses first the oganisation unit and then the program. From these inputs the application get the accociated program stage (unique in case of single event) then the associated data elements. The only pupose of getting the whole data element is to get the type. Maybe we could save some calls to the back-end by adding the data type to the program stage object.


Downloads

To be announced...


Todo

  • Get familiar to DHIS2 API
  • Define who is using the application (front desk?, medical staff?, administration?)
  • Define a more concrete workflow
  • Define the overall achitecture
  • Split the tasks
  • How to make an android app downloadable from DHIS2
  • ....
  • define more tasks