Difference between revisions of "Geo-3"

From mn/ifi/inf5750
Jump to: navigation, search
 
(24 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
Repository: [https://launchpad.net/geo-3 launchpad.net/geo-3]<br>  
 
Repository: [https://launchpad.net/geo-3 launchpad.net/geo-3]<br>  
  
Team: [https://launchpad.net/~geolocation3 launchpad.net/~geolocation3 ]<br>  
+
Team: ([https://launchpad.net/~geolocation3 link])<br>  
  
== Project presentation and features<br>  ==
+
*Aleksander Rem
 +
*Franck&nbsp;Roucou
 +
*Therese-Mari P. Thomassen
  
- Form saving some log entries about patient admission and discharge associated with geographical location.<br>
+
= Requirements  =
  
- Single event data entries: events are not linked neither to each other nor to other objects registered is the system (for example patient object)<br>
+
*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)
  
- The location might be either current location or selected manually ( pointed on a map?)<br>  
+
<br>  
 +
 
 +
= 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
 +
 
 +
<br>
 +
 
 +
= Architecture hierarchy and process flow =
 +
 
 +
== Architecture ==
 +
 
 +
[[Image:Architecture.png|center|700px]]
 +
<br>
 +
 
 +
== Hierarchy ==
 +
 
 +
[[Image:Hierarchy.png|center|700px]]
 +
<br>
 +
 
 +
== Process flow: Register Event ==
 +
 
 +
[[Image:Process.png|center|700px]]
 +
<br>
 +
 
 +
= Prototype  =
 +
 
 +
== The second prototype ==
  
- Show entries on map ( maybe with filtering option: identify desease outbreak)<br>
+
[[Image:Prototype-geo-3.jpg|center|700px]]
  
- Can get entry details when clicking on a needdle<br>
+
== The first prototype  ==
  
- Solution available as android app and web app<br>  
+
[[Image:Geo3-prototype-skjerm1.jpg|left|300px]]
 +
 
 +
<br>
 +
 
 +
<br>  
  
- ...<br>  
+
<br>  
  
 
<br>  
 
<br>  
  
== Tasks<br> ==
+
<br>  
  
- Get familiar to DHIS2 API<br>  
+
<br>  
  
- Define who is using the application (front desk?, medical staff?, administration?)<br>
+
The first screen after login.
  
- Define a more concrete workflow<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
  
- Define the overall achitecture<br>  
+
<br>  
  
- Split the tasks
+
<br>
  
- How to make an android app downloadable from DHIS2
+
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<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>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<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>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
<br>
 +
 
 +
= Tasks  =
 +
 
 +
To be announced...
 +
 
 +
<br>
 +
 
 +
= Screenshots and screen flows  =
 +
 
 +
To be announced...
 +
 
 +
<br>
 +
 
 +
= Documented learning  =
 +
 
 +
*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/], ....)
 +
*...
 +
 
 +
<br>
 +
 
 +
= Suggested improvments to APIs  =
 +
 
 +
*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>
 +
 
 +
= Downloads  =
 +
 
 +
To be announced...<br>
 +
 
 +
<br>
  
....<br>  
+
= Todo<br> =
  
- define more tasks<br>
+
*<strike>Get familiar to DHIS2 API</strike><br>
 +
*<strike>Define who is using the application (front desk?, medical staff?, administration?)</strike><br>
 +
*<strike>Define a more concrete workflow</strike><br>
 +
*Define the overall achitecture<br>
 +
*<strike>Split the tasks </strike><br>
 +
*<strike>How to make an android app downloadable from DHIS2 </strike><br>
 +
*....<br>
 +
*define more tasks<br>

Latest revision as of 20: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