Part 1 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. Full context available at http://blog.gishacks.com/2009/08/web-20-and-geoweb-part-1-web-20.html.
4. Tim O’Reilly Definition of Web2.0 I said I'm not fond of definitions, but I woke up this morning with the start of one in my head: Web 2.0 is the network as platform, spanning all connected devices; Web 2.0 applications are those that make the most of the intrinsic advantages of that platform: delivering software as a continually-updated service that gets better the more people use it, consuming and remixing data from multiple sources, including individual users, while providing their own data and services in a form that allows remixing by others, creating network effects through an "architecture of participation," and going beyond the page metaphor of Web 1.0 to deliver rich user experiences. (O’Reilly, 2005)
5. I define Web 2.0 as the design of systems that harness network effects to get better the more people use them, or more colloquially, as “harnessing collective intelligence.” This includes explicit network-enabled collaboration, to be sure, but it should encompass every way that people connected to a network create synergistic effects. (Carpenter 2008)
6.
7. Before We Proceed! Interoperability Webservices Internet as a platform (foundation of web 2.0) Models and Patterns
8. Interoperiblity Interoperability: is connecting people, data and diverse systems. The term can be defined in a technical way or in a broad way, taking into account social, political and organizational factors. System specific: “the ability to exchange and use information across a large, heterogeneous network made up of several local information system nodes.” Semantic Interoperability: is the ability of two or more computer systems to exchange information and have the meaning of that information accurately and automatically interpreted by the receiving system. (Interoperability, 2009)
9. Achieving Interoperability Web 1.0 JDBC, CORBA, DCOM Web 2.0 Coarse Grained XML encoded address vs. individual method calls (CORBA and DCOM) More close alignment with business process, not its parts Loosely Coupled Plug and Play Enterprise data models can change but won’t break applications Message based Web Services XML, WMS, WFS
10. Webservices Based on the broad acceptance of XML for data encoding, transport and messaging Microsoft Definition “Web services are applications that use standard transports, encodings, and protocols to exchange information. With broad support across vendors and businesses, Web services enable computer systems on any platform to communicate over corporate intranets, extranets, and across the Internet with support for end-to-end security, reliable messaging, distributed transactions” W3C Definition “software system designed to support interoperable Machine to Machine interaction over a network. Web services are frequently just application programming interfaces (API) that can be accessed over a network, such as the Internet, and executed on a remote system hosting the requested services. “ (Webservices, 2009)
11. Why Webservices Services are reusable units providing business functionality that are: Clearly defined using standard policies, practices, and frameworks Clearly described (xml) Autonomous Abstractions of the underlying business logic and functionality Actual overlay process not necessary Easy to understand: one party delivers a service according to a contract with the other party (King, 2006)
12. Is Everything On the Web A Webservice NO! The WWW provides mechanism for people and organizations to share information Many web pages provide “services” to the user that are supported by a variety of software, most of this functionality is not currently created with Web Services Built on the same basic standards
14. Patterns and Models Tools for building system architectures and future system implementations Abstract, durable and can be repurposed across domains Pattern Formulation Users can click on features within an ArcIMS website to obtain attribute Data An entity obtains information about geographic features online (Govenor et al. 2009)
15. Pattern Formulation Pattern Context Derived Requirements Problem Business problem (story) Context Generalized Specifications, static structure, dynamic behavior Consequences References Business problem resolved Implementations Known use (Govenor et al. 2009)
21. Personal Websites Blogs HTML with content Intended for specific groups (family and friends) 1 way communication (no comments) HTML with content but also feed (RSS) Intended for wider communities Much easier to find (search engines, blog crawlers, aggregators) because of feed Encourage community participation (comments) Community affiliation with BlogRoll
22. Screenscaping Webservices Context of data integration “Crawling” web pages for data Integration of webpages Unstructured Structured and predictable Content is data oriented, not presentation Based on open standards Integration is the goal, not a hack
31. 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….
32. References Cited Carpenter, Hutch. Tim O’Reilly Course Corrects the Definition of Web 2.0. Weblog entry. I’m Not Actually A Geek. October 1, 2008. http://bhc3.wordpress.com/2008/10/01/tim-oreilly-course-corrects-the-definition-of-web-20/. Governor, James, Dion Hunchcliffe and Duane Nickull (2009). Web 2.0 Architectures. California: O’Reilly Media Inc. Interoperability. Wikipedia, The Free Encyclopedia. 7 Aug 2009, 10:13 UTC. 7 Aug 2009 http://en.wikipedia.org/w/index.php?title=Interoperability&oldid=306573452. Karp, David. A Web 2.0 Tag Cloud. Weblog entry. A TangieSlice of Web 2.o. September 25, 2007. http://tangyslice.wordpress.com/2007/09/25/a-web-20-tag-cloud/. King, JJ. SOA What? Introduction to Service Oriented Architecture. Rocky Mountain Oracle Users Group. Denver, 2006.
33. References Cited OASIS. (2006). Reference Model for Service Oriented Architecture 1.0.http://www.oasis-open.org/committees/download.php/19679/soa-rm-cs.pdf O'Reilly, Tim. Web 2.o: Compact Definition. Weblog entry. O’Reilly Radar. October 2005. http://radar.oreilly.com/archives/2005/10/web-20-compact-definition.html. Web service. Wikipedia, The Free Encyclopedia. 7 Aug 2009, 18:12 UTC. 7 Aug 2009 http://en.wikipedia.org/w/index.php?title=Web_service&oldid=306643330.
Notes de l'éditeur
No singal definitioneople as part of the technology stack, empowering average personBlogs, wikis, social softwareSet of social, architectural and design patterns resulting in mass migration of web as the platform for doing businessReasons: Easy to use content applications (Flickr, Twitter, Gmaps, Facebook)Speed of internetDevice independence (mobile use)StandardsGrass roots effortsInteroperability and interconnectedness: MashupsNot Rich Internet Applications alone, or multimedia or streaming HD, community driven contentNot technology alone, represents global change in how we interact as a communitySociallyBusiness competition a click away: brand loyalty is all time lowGlobalDisruptive innovation: 1 technology innovation deprecates that of an older one
Misconception that social networking.Crowdsourceing
Probably confused more than anything because there really isn’t 1 good exampleWe will begin to break apart this web 2.0 concept or definition and use current system examples to define architectural patterns and models to help us define web 2.0
The internet is the foundation of web 2.0 as a set of interconnected devices communicating via a set of standards and protocolsLarge BUS interactions or patternsTCP/IP and HTTPSecurity ModelsContentText and dataPresentation and scriptingGraphics and multimediaSemantics (web 3.0)
To do this, we will be using some tools for helping us define web 2.0 and then further help us a possible architecture to web 2.0.Methodology from the book is the use of patterns and modelsPatterns: abstract designs that are solutions to common problems, they can be expressed in many different ways but mostly, a problem, context of the problem and a solutionPattern formulation: more concrete to more abstractModels: abstract set of rules for something (building, process, or system architecture)Blueprint for how something is built.Components or concepts developed to aid the understanding and analysis of somethingTypically based on the more abstract notion of a REFERENCE MODEL.
Patterns Recurring solutions to recurring problemsGang of 4: 1995 book on design patterns for OO softwareRepresent knowledge and provide a way to convey information on how something is really going on in a systemGreat tool in requirements gathering: help define boundaries to the solutionRepurpose existing things into new thingsPattern of YouTube be applied to music production and distributionTwitter pattern applied to real time 3D sensors or sports athletesMethodology for documenting patterns: metamodel variation of Mackenzie-Nickull Architectural Patterns Meta-ModelFundamentally decomposed to the context of the problem: circumstances affecting the problemthe problem itself: usually expressed as a user storysolution
Specialized type of model used when variations of a model are possible.FoundationInfrastructureNot ArchitectureUsed when differing points of view of same general concept are apparentTHIS IS THE WAY WEB 2.0 IS. Many different viewpoints based on similar foundation.
Tim O’s list of web 1.0 examples and their web 2.0 counters
Not just banner ads or popups but contextual based advertisingAds based on searchAds based on maps session where you might be searching for an Italian restrauntOnline calendar where you enter a trip to spain ads related to planning a trip to spain show up even related to time context
Snapfish: Upload pictures, share with selected communities but primarily ment for print (Walgreens)Flickr: Not directed for sharing print copies but sharing in generalContent communitiesCommunity tagging and classificationApi for access and sharingLarge catelogue of photos everywhere ment for sharing with user metadataGeotagged photos from mobile devicesTagCloud
TaxonomiesStatic classification of contentConstructed by expertsLibrary catalogue styleTop down approachFormal controlled vocabularyProblem: Can’t anticipate how people see content and how all users classify content in their mindsFolkonomiesUser classified User tagged contentTop up approachInformal non-controlled
Geography Network/USGS GeodeEither SDI based (federated, distributed resources referenced by metadata) or Data WarehouseRequires local infrastructure, servers, web applications, etc.Local data management with data warehouseWhat you see is what you getArcGIS Online/WeoGeoCloud ComputingUsing software resources from remote locations via servicesCollaborative/empowers userArcGIS Online maps on the flySharing and hopefully eventually, user driven catagorization via taggingSharing directlyMinimize data manage, infrastructure needs (no website need for application, just point to ArcGIS Online)
ArcIMSInternet MappingOnline MapOnline GISStovepipe: ArcIMS Map Service and Viewer, minimal integration of content (services)Traditional Request ResponseSomewhat proprietary (ArcXML)ArcGIS ServerOnline integration of content (mashup)RIA (Rich Internet Application)Based on Open Standards (WMS, REST Interface)Focused Application (not online GIS)Caching