31
Web 2.0 Patterns Shaping the Geoweb Introduction to the Geoweb Gregory L. Gunther University of Colorado at Denver

Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Embed Size (px)

DESCRIPTION

Part 2 of a 4 part series exploring Web 2.0 and the Geoweb. This short series of lectures is part of the "Introduction to Geoweb" course offered at the University of Colorado at Denver. Previous experience with generic web architectures and http is assumed. Full context is available at http://blog.gishacks.com/2009/08/web-20-and-geoweb-part-2-web-20.html.

Citation preview

Page 1: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Web 2.0 PatternsShaping the Geoweb

Introduction to the GeowebGregory L. GuntherUniversity of Colorado at Denver

Page 2: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Common Web 2.0 Patterns Influencing the Geoweb Service Oriented Architecture (SOA) Software as a Service (SaaS) Participation-Collaboration Asynchronous Particle Update Mashup Rich User Experience Collaborative Tagging Structured Information

Formulated By Real Examples….

Page 3: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Pattern Formulation

(Govenor et al. 2009)

PatternContext

Derived RequirementsProblem

Business problem (story)Context

Generalized• Specifications, static structure, dynamic behavior

Consequences References Business problem resolved Implementations• Known use

Page 4: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Service Oriented Architecture

No single definition (ubiquitous, depends on context)

Standardized framework or software architecture which implements interoperable software components (web services)

SOA brings a new way to look at applicationsSeparates messages from processingProvides consistent platform for interoperability

“is an architectural paradigm, a way of architecting a framework for matchingneeds and capabilities. A key feature of SOA is support for integratingservices that are owned and managed independently” (OASIS 2006)

(Govenor et al. 2009)

Page 5: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Principles of SOA

Simplicity (At least now) Loose Coupling

Separates messages from processing Reusable, modular Facilitates integration, eliminates

stovepipe barriers Not just technology

(King, 2006, ESRI 2007)

Page 6: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns
Page 7: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Classic SOA Reference Model

(King, 2006)

SOAP and WSDL

Page 8: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

SOA Dynamic Behaviors Refined

Request/Response Via Registry

Subscribe/Push

Probe/Match

(Govenor et al. 2009)

Page 9: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Quick Word On SOAP

“is a protocol for exchanging XML-based messages over computer networks, normally using HTTP. SOAP forms the foundation layer of the Web services stack, providing a basic messaging framework that more abstract layers can build on”

Envelope Format: A way of putting data into an envelope

“Big Web Services”

Page 10: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

SOA Implementation

(SOA Tag Cloud, 2009)

Page 11: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

REST

HTTPXML/JSON/GeoRSSResource Oriented ArchitecturesMashupsAsynchronous Particle Update

(Richardson, 2007. Govenor et al. 2009)

Page 12: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Software as a Service (SaaS)

(Govenor et al. 2009)

EmailSpam

Filtering Software

Client

Client

Client

Rules Collect

or

Page 13: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

http://www.esri.com/events/uc/images/workshops/cloud.html

The web IS the platform

(Morehouse et al. 2009)

Web GIS and the Cloud

Page 14: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Participation-Collaboration

Page 15: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

(Govenor et al. 2009)

Page 16: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Asynchronous Particle Update (AJAX)

Time

Length of timeBlocked from further Input

Network LatencyProblem

(Crane et al. 2006)

Page 17: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Concepts related to software usability Based on usability expert Alan Cooper

Transient: used everyday but only in short burst and often as a secondary activity Delays are tolerated Examples

File System manager Amazon Search Engines

Sovereign: requires users full attention Used more intensely Desktop applications Delays become intolerable (2 second delay each

time you type a letter in a Word Processor

Sovereign and Transient Usage Patterns

(Crane et al. 2006)

Page 18: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Web Application LifeCycle

Just ViewsOf the User and ApplicationData Model

TraditionalInitial DataAnd ApplicationDownload

(Crane et al. 2006)

Page 19: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

(Crane et al. 2006)

Page 20: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

(Crane et al. 2006)

Page 21: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Mashup

Page 22: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

{}

Web Server(www.gishacks.com)

Web Browser

Mashup

{}

{}{}

Node1

Node1

CSS Styling(If Applicable)

DOM

XMLData

www.google.com

JavaScript Logic

GXmlHttpXML HTTP Request

(AJAX)

MapData

Page 23: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Usergishacksserver

googleserver

Request Page

Return Page

API

XML Data

Map Data

Page LoadedRequest and Get XML

Request and Get Map

Page 24: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Rich Internet Application

Flex 3 Component Explorer: http://tinyurl.com/2o78vd

ADOBE FLEX

MS SilverlightJavaFX

Page 25: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Collaborative Tagging

“users add metadata in the form of keywords to shared content “

Page 26: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Structured Information

MICROFORMATS

POSH

GEO

Semantic XHTML

hCard

vCard

hCalendar

(Microformat. 2009)

Page 27: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Additional Patterns

Constant Beta The Synchronized Web Declarative Living and Tag

Garderning Semantic Web Grounding Persistent Rights Management

Page 28: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

Conclusions Bottom-up prevails while top down does not.

REST vs SOAP Folksonomy vs Taxonomy Crowdsourced vs. traditional media

Time Magazine person of theYear 2006— You! Systems get better the more people use them The web is the system platform Persistence of Web 2.0

Architectures and platforms where people can participate beat websites

Plug-in business models Simplicity and scalability Agility Ease of use Security and privacy

Page 29: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

(Govenor et al. 2009)

Geoweb

GIS 2.0

Web 2.0 and the Geoweb Web as platform Continuous improvement Lightweight programming models

and techn0logies Immersive (social, RIA) YOU

Law 2.0

Gov 2.0

Library 2.0

Media 2.0

Page 30: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

References Cited

Crane, Dave, Eric Pascarello and Darren James (2006). AJAX in Action. Connecticut: Manning Publishing.

ESRI. (2007). Geospatial Service Oriented Architectures. ESRI Whitepaper. http://www.esri.com/library/whitepapers/pdfs/geospatial-soa.pdf

Governor, James, Dion Hunchcliffe and Duane Nickull (2009). Web 2.0 Architectures. California: O’Reilly Media Inc.

King, JJ. SOA What? Introduction to Service Oriented Architecture. Rocky Mountain Oracle Users Group. Denver, 2006.

Page 31: Web 2.0 and the Geoweb Part 2: Web 2.0 Patterns

References Cited

Microformat. (2009, August 13). In Wikipedia, The Free Encyclopedia. Retrieved 07:50, August 13, 2009, from http://en.wikipedia.org/w/index.php?title=Microformat&oldid=307705991

Morehouse, Scott, Gorter, Dirk and Brenda Wolfe. 2009, Taking Advantage of The Cloud, ESRI 2009 International Users Conference, San Diego, CA, San Diego Convention Center.

OASIS. (2006). Reference Model for Service Oriented Architecture 1.0. http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf

Richardson, Leonard, Ruby,Sam (2007). RESTful Web Services California: O’Reilly Media Inc.

SOA Tag Cloud. Swik.com. 09 August 2009 http://swik.net/SOA?tagCloud.