Structured Participation Toolkit for Collaborative
Problem-Solving CyberGIS Implementation Considerations Mary
Roderick, Timothy Nyerges, Michalis Avraam University of Washington
August 7th, 2012
Slide 2
Example: Create maps and share via link GIS as (social) media
(Sui and Goodchild 2011)
Slide 3
Example: Create maps and share via a range of social media
outlets
Slide 4
Example: Create special interest groups, comment and rate
maps
Slide 5
Example: Add twitter feed to keep map users up to date
PGIST Challenge Monolithic web application Local client-server
architecture Technology specific Monolithic web application Local
client-server architecture Technology specific X Web Services? No,
much of the functionality is in the GUI. Need a Pluggable GUI
Framework that can support cross-domain and cross-platform
communication. Processing and persistence layers are hosted,
similar to SOA. Pluggable functionality Remote client-server
architecture Technology independent Pluggable functionality Remote
client-server architecture Technology independent How can the
CyberGIS Gateway be expanded to support collaborative problem
solving? VS.
Slide 9
PGIST & CyberGISfrom Coupling to Hybrid NowFuture IFrame,
separate browser windowEmbedded GUI widgets in Gateway SSO via
Token ServiceDelegated security Dual user managementDelegated user
management Transfer of application controlDelegated application
control Application context aware
Slide 10
9 SPT Solution JSOPJSOP JavaScript Object Notation Padded
Server response injected in the Doesnt violate browser
security.
Slide 11
10 SPT Proof of Concept var keywordStore =
Ext.create('Ext.data.Store', { id: 'keywordStore', model:
'Keywords', proxy: { type: 'jsonp', }} var feedbackText =
form.findField('feedbackTextArea').getValue();
keywordStore.getProxy().url =
'http://localhost:8080/dwr/jsonp/BCTAgent/prepareConcern/' +
feedbackText; keywordStore.load(function(records, operation,
success) { var checkboxconfigs = []; for ( var i = 0; i <
records.length; i++) { for(var j = 0; j <
records[i].data.tags.length; j++){ checkboxconfigs.push({ name :
records[i].data.tags[j], inputValue : records[i].data.tags[j],
boxLabel : records[i].data.tags[j], xtype : 'checkbox' } var
keywordStore = Ext.create('Ext.data.Store', { id: 'keywordStore',
model: 'Keywords', proxy: { type: 'jsonp', }} var feedbackText =
form.findField('feedbackTextArea').getValue();
keywordStore.getProxy().url =
'http://localhost:8080/dwr/jsonp/BCTAgent/prepareConcern/' +
feedbackText; keywordStore.load(function(records, operation,
success) { var checkboxconfigs = []; for ( var i = 0; i <
records.length; i++) { for(var j = 0; j <
records[i].data.tags.length; j++){ checkboxconfigs.push({ name :
records[i].data.tags[j], inputValue : records[i].data.tags[j],
boxLabel : records[i].data.tags[j], xtype : 'checkbox' } Simple
HTML page, with link to Ext JS4 file Client data model & store
Dynamic GUI generation Remote server invocation
Slide 12
Identify SPT capabilities from PGIST web applications Determine
which functionality to bundle as ExtJS 4 GUI widgets Integration of
SPT into CyberGIS Gateway Runtime configuration and deployment of
participation workflow 11 Next Steps Support the development and
evaluation of "Capabilities for Science of CyberGIS and Science
with CyberGIS.
Slide 13
LIT research supported by National Science Foundation Grant No.
EIA 0325916, funded through the Information Technology Research
Program, and managed in the Digital Government Program. VCC
Research funded by the National Oceanic and Atmospheric
Administration, Climate Program Office, Sectoral Applications
Research Program #NA07OAR4310410. CyberGIS Research funded by the
National Science Foundation Grant No. OCI-1047916 Office of
Cyberinfrastructure, Software Institutes, Cross-Directorate Active
Programs, Geography and Spatial Sciences, and Method, Measure &
Statistics Programs. Results and opinions are those of the
presenters not the funding programs. 12 Acknowledgements