You are previewing Web 2.0 Architectures.
O'Reilly logo
Web 2.0 Architectures

Book Description

Web 2.0 is more pervasive than ever, with business analysts and technologists struggling to comprehend the opportunity it represents. So what exactly is Web 2.0 -- a marketing term or technical reality? This fascinating book finally puts substance behind the phenomenon by identifying the core patterns of Web 2.0, and by introducing an abstract model and reference architecture to help you take advantage of them. In Web 2.0 Architectures, authors Duane Nickull, Dion Hinchcliffe, and James Governor -- who have 40 years of combined experience with technical specifications and industry trends -- examine what makes successful Web 2.0 services such as Google AdSense, Flickr, BitTorrent, MySpace, Facebook, and Wikipedia work. The result is a base of knowledge that developers, business people, futurists, and entrepreneurs can understand and use as a source of ideas and inspiration. This book reveals:

  • A Web 2.0 model: How the classic Client-Server model evolved into a more detailed Web 2.0 model.

  • Web 2.0 reference architecture: A generic component view of basic Web 2.0 patterns that can be repurposed for other commercial ventures.

  • Specific Web 2.0 patterns: How service oriented architecture (SOA), Software as a Service (SaaS), participation-collaboration, mashups, rich user experience, collaborative tagging systems (Folksonomy), and more can be used in your business.

If you want to understand what makes Web 2.0 tick, and how it will enhance your business, Web 2.0 Architectures takes you right to the core.

Table of Contents

  1. Web 2.0 Architectures
    1. SPECIAL OFFER: Upgrade this ebook with O’Reilly
    2. Preface
      1. Why Web 2.0 Matters
      2. The Post That Led to This Book
      3. Developing Web 2.0 Patterns
      4. How to Use This Book
      5. Conventions Used in This Book
      6. Using Code Examples
      7. Safari® Books Online
      8. How to Contact Us
      9. Acknowledgments
        1. Duane’s Acknowledgments
        2. James’s Acknowledgments
        3. Dion’s Acknowledgments
    3. 1. An Architect’s View of the Web
      1. Looking for Web 2.0
        1. Common Web 2.0 Architecture Patterns
      2. Capturing Web 2.0 Knowledge with Patterns and Architecture
        1. About Architecture
        2. A Brief Introduction to Architectural Patterns
        3. A Brief Introduction to Models
        4. How to Use Models and Patterns
    4. 2. A Different View of the Internet
      1. Best Practices for Forensic Architecture
      2. Internet Aspects
        1. Basic Communications: TCP/IP
        2. Conversations: HTTP and More
        3. Security
        4. Content
          1. Text and data
          2. Presentation and scripting
          3. Graphics
          4. Multimedia
          5. Semantics
    5. 3. Dissecting Web 2.0 Examples
      1. DoubleClick and Google AdSense
        1. Applicable Web 2.0 Patterns
        2. Advertising in Context
        3. A Peek at the Future of Online Advertising
      2. Ofoto and Flickr
        1. Applicable Web 2.0 Patterns
        2. Collaboration and Tagging
      3. Akamai and BitTorrent
        1. Applicable Web 2.0 Patterns
        2. Alternate Solutions to Bandwidth
      4. MP3.com and Napster
        1. Applicable Web 2.0 Patterns
        2. Shifting Patterns and Costs of Music Distribution
        3. MP3.com and Napster Infrastructures
      5. Britannica Online and Wikipedia
        1. Applicable Web 2.0 Patterns
        2. From a Scholarly to a Collaborative Model
      6. Personal Websites and Blogs
        1. Applicable Web 2.0 Patterns
        2. Shifting to Blogs and Beyond
      7. Screen Scraping and Web Services
        1. Applicable Web 2.0 Patterns
        2. Intent and Interaction
      8. Content Management Systems and Wikis
        1. Applicable Web 2.0 Patterns
        2. Participation and Relevance
      9. Directories (Taxonomy) and Tagging (Folksonomy)
        1. Applicable Web 2.0 Patterns
        2. Supporting Dynamic Information Publishing and Finding
      10. More Hints for Defining Web 2.0
        1. Reductionism
    6. 4. Modeling Web 2.0
      1. A New Client/Server Model for Web 2.0
        1. Capabilities
        2. Services
        3. Connectivity/Reachability
          1. Paper as a transport mechanism
          2. USB storage as part of a network
        4. Client Applications/Runtimes
        5. Users
      2. Time Magazine’s Person of the Year: You (and Web 2.0)
    7. 5. A Reference Architecture for Developers
      1. About Reference Architectures
      2. The Web 2.0 Reference Architecture
        1. The Resource Tier
        2. The Service Tier
        3. The Client Application Tier
      3. Architectural Models That Span Tiers
        1. Model-View-Controller (MVC)
        2. Service-Oriented Architecture (SOA)
      4. Consistent Object and Event Models
    8. 6. From Models to Patterns
      1. A Metamodel for Architectural Patterns
        1. Patterns
          1. Context
          2. Problem
          3. Solution
        2. Introduction to Concept Map Notation
      2. The Pattern Presentation Template
        1. Pattern
        2. Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Dynamic Behavior
        8. Implementation
        9. Business Problem (Story) Resolved
        10. Specializations
        11. Known Uses
        12. Consequences
        13. References
    9. 7. Specific Patterns of Web 2.0
      1. The Service-Oriented Architecture Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Dynamic Behavior
          1. Request/Response
          2. Request/Response via service registry
          3. Subscribe/Push
          4. Probe and Match
        8. Implementation
        9. Business Problem (Story) Resolved
        10. Specializations
        11. Known Uses
        12. Consequences
      2. The Software as a Service (SaaS) Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Dynamic Behavior
        8. Implementation
        9. Business Problem (Story) Resolved
        10. Specializations
        11. Known Uses
        12. Consequences
      3. The Participation-Collaboration Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Dynamic Behavior
        8. Implementation
        9. Business Problem (Story) Resolved
        10. Specializations
        11. Known Uses
        12. Consequences
      4. The Asynchronous Particle Update Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure and Dynamic Behavior
        7. Implementation
        8. Business Problem (Story) Resolved
        9. Specializations
        10. Known Uses
        11. Consequences
        12. References
      5. The Mashup Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Implementation
        8. Business Problem (Story) Resolved
        9. Specializations
        10. Known Uses
        11. Consequences
      6. The Rich User Experience Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
          1. An example
        6. Static Structure and Dynamic Behavior
        7. Implementation
        8. Business Problem (Story) Resolved
        9. Specializations
        10. Known Uses
        11. Consequences
      7. The Synchronized Web Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Implementation
        8. Business Problem (Story) Resolved
        9. Specializations
        10. Known Uses
        11. Consequences
        12. References
      8. The Collaborative Tagging Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Dynamic Behavior
        8. Implementation
        9. Business Problem (Story) Resolved
        10. Specializations
        11. Known Uses
        12. Consequences
        13. References
      9. The Declarative Living and Tag Gardening Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Dynamic Behavior
        8. Implementation
        9. Business Problem (Story) Resolved
        10. Specializations
        11. Known Uses
        12. Consequences
        13. References
      10. The Semantic Web Grounding Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Implementation
        8. Business Problem (Story) Resolved
        9. Specializations
        10. Known Uses
        11. Consequences
        12. References
      11. The Persistent Rights Management (PRM) Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Dynamic Behavior
        8. Implementation
        9. Business Problem (Story) Resolved
        10. Specializations
        11. Known Uses
        12. Consequences
        13. References
      12. The Structured Information Pattern
        1. Also Known As
        2. Business Problem (Story)
        3. Context
        4. Derived Requirements
        5. Generalized Solution
        6. Static Structure
        7. Dynamic Behavior
        8. Implementation
        9. Business Problem (Story) Resolved
        10. Specializations
        11. Known Uses
        12. Consequences
        13. References
      13. Summary
    10. 8. Where Are We Going from Here?
      1. Web 2.0 Offshoots
      2. A Timeless Way to Build Software 2.0
      3. The Timeless Way of Building Software: Inspiration for the Next Generation of Web Software
      4. Creating Open Services That Last (and That Anyone Can Use)
      5. Web 2.0 into the Uncertain Future
    11. Index
    12. About the Authors
    13. Colophon
    14. SPECIAL OFFER: Upgrade this ebook with O’Reilly