Monday, August 23, 2010

Web Service Archetypes

Applications on the web can be classified into archetypes.  Once you look past the UI and dig down to the organizing principles, the there are more similarities than differences between services as disparate as TwitPic and Mahalo.

CRUD Apps: CRUD stands for Create, Read, Update and Delete.  This app archetype covers the set of applications where the UI is really just a layer on top of a database designed to store inputs in a predefined structure, and then recall or manipulate those inputs as desired. Many apps fall into this model, such as: del.icio.us, flickr, gmail, wordpress, . If I had to defines this class of apps in a single layman phrase I’d call them “published storage.”

Transactional Apps: This category covers marketplaces, payments, ecommerce, online classifieds, event, etc… and any other type of app that enables the transfer of goods or services between parties. Some of them are more aggressive than others about getting in the middle of the transaction (with something like StubHub on one end of the spectrum and craigslist on the opposite end). The commonality is they all facilitate transactions.

Aggregation Apps: This category of apps is a second-order layer of applications that often ride on top of a set of first-order CRUD apps. This is an app that collects information from first-order apps by some combination of crawling/scraping, user-generated submission, and business development.

Aggregation apps only make sense when the underlying sites being aggregated are highly fragmented and do not share common data.  For example, aggregation works great in job boards: Indeed and SimplyHired aggregate many hundred niche job boards around the world successfully because the underlying job boards are highly fragmented and do not share many common jobs.  Aggregation does not work in online auctions.  That’s because the market for online auctions is not highly fragmented. eBay owns 90%+ of the online auctions, so if eBay opt-ed out of being aggregated then your business is toast. 

Read-Only Apps: There are a set of apps out there that look more like TV than anything else.  They are read-only apps and take no input from users.  Much of the original brochure-style websites in the 90s followed this model.  ABC.com is a great example of what I’m trying to describe in this category, and if it was not possible to rate shows or create a personal queue, then Hulu would be a good example of this type of site too.   Because these sites are read-only, one could argue they’re not applications at all, but some of the biggest sites on the web follow this model, so I wanted to include it in this list.

The list of archetypes is currently neither mutual exclusive nor exhaustive, but I wish it were. If you think this can be improved upon be either reclassifying or adding more categories, then don’t hesitate to pipe up in the comments.

Notes

  1. trampoline3n reblogged this from thegongshow
  2. thegongshow posted this