Difference between revisions of "BHJS"

From mn/ifi/inf5750
Jump to: navigation, search
(Create a proper list of requirements and layouts)
Line 1: Line 1:
= List of group members =
+
= <span style="font-size: 12px;">List of group members</span> =
  
 
*Bård Winther (baardew) baardew@ifi.uio.no
 
*Bård Winther (baardew) baardew@ifi.uio.no
Line 12: Line 12:
 
<span style="background-color:yellow">This section is just a bunch of notes that should be further developed or organized better.</span>
 
<span style="background-color:yellow">This section is just a bunch of notes that should be further developed or organized better.</span>
  
== New Schedule ==
+
== ==
  
*1. nov&nbsp;: design layout finished
+
= Application Structure =
*8. nov&nbsp;: static html layout presentable
+
 
*29. nov&nbsp;: main work done
+
''For the remainder of this document "backend" would refer to application controller and other javascript that is not used directly with presentation. Likewise, "fronend" denote everything connected to or is GUI elements.''
*3. dec&nbsp;: hard deadline
 
  
== Application Structure ==
+
=== File layout ===
  
 
Organization of program structure using MVVM:
 
Organization of program structure using MVVM:
  
[[File:Suggested architecture 1.png]]
+
[[File:Actual architecture.png]]
  
Attempt to solve the problem with a generic implementation that parses any json object and displays it on screen.
+
=== Technologies: ===
  
What is to be displayed in html&nbsp; is under the "summary of requirements", but in the first run only the default, non-filtered json is to be used.
+
Javascript, AngularJS, HTML and CSS. JSON for rest communication.
  
Javascript techonolgy: AngularJS primary until otherwise required.
+
TDD is a must: Protractor or alternatively QUnit [UNRESOLVED]
  
TDD is a must: Protractor or alternatively QUnit
+
Attempt to solve the problem with a generic implementation that parses any json object and displays it on screen.
  
== Questions: ==
+
== GUI Layout: ==
  
GUI layout suggestions?
+
The GUI laytout describes the three different methods of viewing the content. Each view is switchable in the same main page.
  
On following linK use dynamic alternating html content or refresh page entierly?
+
=== <u><span style="color: rgb(51, 51, 51); font-family: Arial, Georgia, 'Lucida Grande', Verdana, Helvetica, sans-serif;">Api index (listing the resources)</span></u> ===
  
Work division preferences? (baardew - "backend" aka. not gui)
+
=== <u><span style="color: rgb(51, 51, 51); font-family: Arial, Georgia, 'Lucida Grande', Verdana, Helvetica, sans-serif;">resource view (list of objects)</span></u> ===
  
Could not find the API for data model fields (https://www.dhis2.org/doc/snapshot/en/user/html/apes04.html)?
+
=== <u><span style="color: rgb(51, 51, 51); font-family: Arial, Georgia, 'Lucida Grande', Verdana, Helvetica, sans-serif;">object view (info about a specific object)</span></u> ===
  
= Summary of requirements =
+
== Questions: ==
  
= Time schedule =
+
Could not find the API for data model fields ([https://www.dhis2.org/doc/snapshot/en/user/html/apes04.html https://www.dhis2.org/doc/snapshot/en/user/html/apes04.html])?
  
= <span style="color: rgb(37, 37, 37);  font-family: sans-serif;  font-size: 14px;  line-height: 22.3999996185303px">Milestones:</span> =
+
= Summary of Requirements =
<ul style="/* insecure input */">
 
<li>Milestone 1: 1st November</li>
 
</ul>
 
  
Document features and architecture on Wiki
+
List is in prioritized order
  
Show understanding of DHIS2 web apps
+
#Display every possible path obtained by click-through of API (in other words, every link should be "followable")
 +
#User friendly, which implies: no need for direct keyboard input, all information readily avaiable (no hidden content) and simple to retrace steps
 +
#The program should deal with errors and misuse correctly and elegantly (in other words, not crash if someone does something un-expected)
  
 +
= Time Schedule =
  
<ul style="/* insecure input */">
+
These milestones are guidelines only, except for 3rd December.
<li>Milestone 2: 15th November</li>
 
</ul>
 
  
First bare-bone version - static HTML
+
*&nbsp; 1. nov&nbsp;: design layout finished
 
+
*&nbsp; 8. nov&nbsp;: static html layout presentable
Uploadable as DHIS2 web app
+
*29. nov&nbsp;: main work done
 +
*&nbsp; 3. dec&nbsp;: hard deadline
  
 +
= How you are dividing tasks within the group =
  
<ul style="/* insecure input */">
+
'''baardew:''' backend controller and configuration + additional frontend where required
<li>Milestone 3: 30th November</li>
 
<li><span style="line-height: 1.5em">Finished, if applicable also with mobile app.</span></li>
 
</ul>
 
  
 +
'''henriktl:''' ?
  
<ul style="/* insecure input */">
+
'''jonsandn:''' ?
<li>Final delivery: 8th December</li>
 
<li>Presentation: 9th December</li>
 
</ul>
 
  
= How you are dividing tasks within the group =
+
'''swatis:''' ?
  
 
= Screenshots and screen flows =
 
= Screenshots and screen flows =
Line 86: Line 80:
  
 
= Link to repository =
 
= Link to repository =
 +
 +
gitolite@git.uio.no:inf5750/baardew/dhis_bhjs
  
 
= Download link to sample web app or Android app =
 
= Download link to sample web app or Android app =
 
repo: gitolite@git.uio.no:inf5750/baardew/dhis_bhjs (access coming soon, hopefully)
 

Revision as of 19:40, 1 November 2014

List of group members

  • Bård Winther (baardew) baardew@ifi.uio.no
  • Henrik Tufte Lien (henriktl) tuftelien@gmail.com
  • Jonas Sandnes (jonsandn) jonsandn@ifi.uio.no
  • swati sharma (swatis) swatis@ifi.uio.no


Project Suggestions

This section is just a bunch of notes that should be further developed or organized better.

Application Structure

For the remainder of this document "backend" would refer to application controller and other javascript that is not used directly with presentation. Likewise, "fronend" denote everything connected to or is GUI elements.

File layout

Organization of program structure using MVVM:

Actual architecture.png

Technologies:

Javascript, AngularJS, HTML and CSS. JSON for rest communication.

TDD is a must: Protractor or alternatively QUnit [UNRESOLVED]

Attempt to solve the problem with a generic implementation that parses any json object and displays it on screen.

GUI Layout:

The GUI laytout describes the three different methods of viewing the content. Each view is switchable in the same main page.

Api index (listing the resources)

resource view (list of objects)

object view (info about a specific object)

Questions:

Could not find the API for data model fields (https://www.dhis2.org/doc/snapshot/en/user/html/apes04.html)?

Summary of Requirements

List is in prioritized order

  1. Display every possible path obtained by click-through of API (in other words, every link should be "followable")
  2. User friendly, which implies: no need for direct keyboard input, all information readily avaiable (no hidden content) and simple to retrace steps
  3. The program should deal with errors and misuse correctly and elegantly (in other words, not crash if someone does something un-expected)

Time Schedule

These milestones are guidelines only, except for 3rd December.

  •   1. nov : design layout finished
  •   8. nov : static html layout presentable
  • 29. nov : main work done
  •   3. dec : hard deadline

How you are dividing tasks within the group

baardew: backend controller and configuration + additional frontend where required

henriktl: ?

jonsandn: ?

swatis: ?

Screenshots and screen flows

Documented learning during project

Suggested improvements to APIs etc

Link to repository

gitolite@git.uio.no:inf5750/baardew/dhis_bhjs

Download link to sample web app or Android app