In my background working with ERP systems, there were discrete trends that washed over the industry, one after another. The driving force from one generation to the next was an alternating cycle of features and integration:
- The first wave were the single-focus, stand-alone applications. This goes back to the time when SAP was just manufacturing software, PeopleSoft did nothing but HR, etc.
- Next, these applications tacked on additional services, but to be honest, their original focus was really still their strongest selling point. Having worked with the first iterations of modules like SAP HR, let me assure you, it was no fun having to implement v1 of any of these attempts.
- After the first group of companies implemented these suites, and realized they weren't really enterprise ready in all of the functional areas, we came upon the era of portfolio management and EAI. Companies chose "best-of-breed" solutions for each area, and then tried (with varying levels of success) to tie them all together. Some companies that did this well stayed here, while others moved back to...
- The all-in-one solutions. Consolidation in the enterprise software industry had led to better all in one suites. SAP and Oracle, in particular, had bought up enough of their smaller competitors to shore up their weaker areas. Although each of them still retains their original areas of expertise, their other offerings were at least good enough to be deployed.
Looking at the consumer space being served by internet services now, I'm starting to see parallels:
- AltaVista does search, Yahoo does a directory, Amazon does B2C book sales, etc.
- Yahoo, AltaVista, and everyone else with a website tries to make an all in one portal.
- This is where I think we are now - multiple sites are cropping up on a daily basis, trying to provide the best solution for very narrow niches (del.icio.us for bookmarking, LinkedIn for professional networking, AirSet for Calendaring, etc).
- We're beginning to see this next step, as Google, Yahoo and Microsoft buy up the niche companies from stage 3 and tie their services together into more stable suites.
Despite these parallels, the differences between business and consumer markets may prevent stage 4 from becoming as strong among consumer services. For better or worse, individual consumers have a much broader range of needs, and so are more likely to want to pick and choose individual services to meet their needs. Especially among early adopters, consumers may be willing to trade off interoperability in exchange for better functionality. This may be reinforced by the fact that consumer system integration does not need to scale quite as much as enterprise systems.
However, what we're really missing is EAI for these services. Individual mashups exist to tie some pairs together as a point-to-point solution, but what we really need is a common middleware for these. RSS may provide the basis for this, but that's really nothing more than message transport (much like MQSeries was for enterprise applications). It's the next layer, the message brokering and routing, that's really missing for consumer apps. Once we get this in place, as consumers we'll be able to define our own data models, and populate them from the range of web services that expose API's.
Imagine being able to extend the core concept of a contact. In addition to contact information, I'd like to be able to hold a history of meetings with that person, a trail of our emails and IM's, and some favorite postings from their blog. I could populate this larger model with data from LinkedIn, AirSet, gMail, AIM, and del.icio.us. Being able to see this all in one place would be much more valuable to me than having the same data spread among the different services.
One obstacle I see to this is the approach to monetization being used by many of these services. With most of them being supported by ad revenue from the site itself, they are not likely to allow background access to the underlying data. This probably will end up being resolved with premium subscriptions that allow direct access.
While this represents a fundamental advance in consumer services on the web, it's really just the first step. Once this is in place, things REALLY get interesting, as we get to start building workflow on top of it.