meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
vaadin2009:grp1:start [2009/10/20 10:32]
jurkkola
vaadin2009:grp1:start [2009/10/28 16:27] (current)
hevi
Line 1: Line 1:
-====== Group 1: (Name) ======+====== Group 1: (Avis) ====== 
 +^ Name 1 ^ Name 2 ^ Name 3 ^ 
 +| Kokko Joona-Pekka | Myllys Ville | Jurkkola Ville |
  
 ====== Idea ====== ====== Idea ======
Line 7: Line 9:
 The fundamental idea of Avis is to visualize Finnish emergency information using Google Maps and Vaadin, thus providing user with geographical incident information. Furthermore, Avis lists and differentiates different incident types. The incident data is available through Rescue services in Finland and provided as a public RSS feed. The fundamental idea of Avis is to visualize Finnish emergency information using Google Maps and Vaadin, thus providing user with geographical incident information. Furthermore, Avis lists and differentiates different incident types. The incident data is available through Rescue services in Finland and provided as a public RSS feed.
  
-====== Service ======+====== Planned services ======
 Priority scale: 1 = Most Critical ..  3 = Least Critical Priority scale: 1 = Most Critical ..  3 = Least Critical
  
Line 23: Line 25:
 |Allow user to control the amount of displayed incidents.|    3   | |Allow user to control the amount of displayed incidents.|    3   |
  
 +
 +
 +
 +
 +====== Implemented services ======
 +
 +
 + User can manually refresh the map to reflect the latest incident data
 + User can add incident data to map by clicking an incident link in the sidepanel
 + User can zoom into accident locations by clicking an incident link in the sidepanel
 + User can zoom out the map by clicking a button
 + User can clear the incidents icons from the map by clicking a button
 + User sees a notification when the map is refreshed
 + User sees a notification when an incident with no location is clicked
 + User sees an incident info window by clicking an incident icon
 + User sees an incident tooltip by hovering mouse over an incident (icon or link)
 + User sees a notification in case of an error
 + User sees the amount of listed incidents in topbar
 + Display the last 10 incidents on the map according to incident locations
 + Incidents are differentiated by icons that matched the incident type
 +
 +
 +====== Screenshots ======
 +
 +{{:vaadin2009:grp1:avis_scrnshot.png?300|}} {{:vaadin2009:grp1:avis_scrnshot2.png?300|}}
 +
 +''(1. View with non-locatable incident and incident info window)
 +(2. Zoomed in view of an incident)''
 +
 +
 +{{:vaadin2009:grp1:avis_scrnshot3.png?300|}} {{:vaadin2009:grp1:avis_scrnshot4.png?300|}}
 +
 +''(3. View after refresh)
 +(4. Error view if a critical component fails loading).
 +''
 +
 +====== Implementation ======
 +
 + ======
 +
 + Three fundamental components: RSS reader, parser class and Google Maps widget
 +
 + Avis application itself implements transaction listener to keep track of
 + application context in thread level.
 +
 + Parser uses simple regexp grouping to find locations and events from feed data
 +
 + Google Maps widget is wrapped by Vaadin widget. We extended the widget as 
 + described below (see Used components / widgets)
 +
 +====== Used components ======
 +
 +
 +**Vaadin components:**
 + Multiple layout components (Horizontal layout, Vertical layout, Split panel etc)
 + Notifications (Humanized and Error)
 + Table
 + Buttons (with themed images)
 + Labels (with XHTML formatting)
 +
 +**Widgets:** 
 + Vaadin GWT Google Maps wrapper widget
 + Extended (by us):
 + GeoCoding (HTTP request/response from Google Maps)
 + Overloaded Marker constructor to support address
 + Marker randomization to avoid overlapping markers
 +
 +**Other things:**
 + Custom theme (Avistheme) with icons, images and CSS
 +
 +====== Vaadin ======
 +
 +
 +**Impressive things in Vaadin:**
 + Flexibility
 + Extendability
 + User support
 +
 +**Encountered problems:**
 + Initial problems with usage of embedded resources
  
 ====== Software ====== ====== Software ======
-(files and instructions to run software)+{{:vaadin2009:grp1:avis_codecamp_final.zip|}}