Software + Services: An Architectural Perspective
Summary: Technology advances are yet again causing a disruption in the use of IT which will have a significant impact on organizations. This article looks at this disruption; the melding of SOA and Web 2.0 into a Software + Services model and the opportunity for innovation that it will generate. (5 printed pages)
We are entering a time of rapid change in the IT industry that will cause considerable dislocation and change in the Enterprise, IT suppliers, and the way that people perceive and use technologies. This disruption is similar to the PC and Internet revolutions in terms of scope and effect; touching millions of people a huge marketplace and various models of commence ways of making money and IT usage. It has already spawned new marketplaces, industries, and multibillion dollar companies and had a dramatic effect on all aspects of business. Microsoft believes that this disruption is underway and we are in the early days of seeing its impact.
The driving forces behind this disruption are the same ones that have driven the previous disruptions we have seen in the IT space: creativity, communication, and commerce. People want to be creative and unique, and they want to innovate and to build, to make new things and generate new ideas. Additionally, people want to communicate and share with one another both locally and globally. This desire to share and the value that can be created by collaboration is tearing down organizational barriers; blurring the divisions between consumers, suppliers, and business, and making all enterprises more transparent. Finally, businesses want to expand and create new products, services, marketplaces, and revenue.
The tipping point that is enabling this disruption, as in the previous ones, is technology. The lowering cost of bandwidth, the availability of computing in new and cheaper form factors and devices, and the increase in productivity and ease of use has caused a massive uptake of Web-based applications—the so-called "Web 2.0" space. This disruption is in its early days and the full ramifications of what will happen and who will be the leaders have not yet emerged, but the opportunities are all around us and those people and organizations that recognize them early will be the ones to benefit most.
What is happening at the moment is the findings, businesses, activities, and technologies that have been incubated in the consumer space are rapidly migrating to, and being assimilated by, organizations of all sizes: Senior executives and their families are able to create, store, find, communicate, and share content faster and better than ever before for nothing, and they are wondering why the same isn't true in their organizations. People expect at least the same, if not better, facilities at work than they have at home. This expectation will cause many of the consumer-based techniques and technologies to move rapidly into the enterprise, and forward-looking companies are already investigating ways to use this interest for their own growth and profit. Talking to the business side of organizations of all sizes, this assimilation of consumer-based ideas and techniques for innovation and growth in product development, marketing, sales, support, and training is already underway in areas such as blogging for customer support and video for marketing.
Finally, the incredible business opportunity that has been demonstrated by the use of an advertising-based revenue model to provide "free" services has created great interest in businesses of all sizes in new charging and revenue models and the associated growth and profit potential. It is clear that, moving forward, there will be three commerce models: transaction, subscription, and advertising-based.
The IT groups in enterprises have been struggling for a number of years now with the rapid and flexible creation of new applications for the business in a cost-constrained environment while they have to support, maintain, and integrate with an ever-increasing number and complexity of applications and platforms. They have investigated standardization, governance, new tools, technologies, outsourcing, and off-shoring as possible solutions for the delivery of business support in this complex environment. In general, however, they have not yet been able to deliver the level of flexibility that the business is looking for at the cost it wants to pay.
In the last five years there has been a great deal of interest in developing service-oriented (SO) applications to provide the levels of responsiveness and flexibility that the business side of the organization is looking for. This is done by building or buying business-level elements of service, which are then loosely-coupled using a standardized messaging approach. An organization in which all the systems are service-oriented is said to have a service-oriented architecture (SOA). Of course, in practice with real enterprises, such a homogeneous SOA approach is unlikely to be achieved. SO does hold great promise for building more flexible IT systems, however. A more recent development of SOA is the enterprise service bus (ESB), which provides SOA support via a messaging engine (the bus).
It should be noted that the most important aspect of an SO-based approach is the ability to quickly link together services from a number of different sources built at different times (which is not the same as reuse). This implies the use of a standards-based approach such as Web Services.
Microsoft strongly believes in a service-oriented approach to provide a more flexible IT system and has invested heavily in Web Services support in areas such as .NET, Windows Communication Foundation (WCF), BizTalk, and support for Web Services Standards.
While the enterprise has been focused on a rigorous and standards-based service-oriented approach, the consumer Web has focused on using the technology already available to be able to read and write from the browser to the Web. Web 2.0, a read/write Internet that allows users to create, save, use, interact, and discuss rich content (text, documents, data, audio, images, video, games) and applications rapidly and easily, has become very important to all types of users in the consumer space and has had huge take-up by small startups and consumers.
Web 2.0 systems are also built around the concepts of "business" level services (such as a map or photo) and loose-coupling, using a message passing approach (HTTP PUT and GET), so they could be termed a "service-oriented" approach. But the message passing implementation is different from SOA, with the services generally accessed as a mashup application running under the AJAX framework in the browser and provided over a Representational State Transfer (REST) message passing system from a middleware server or as Software as a Service (SaaS). Architecturally, however, the SOA and Web 2.0 approaches are very similar; they both are based on asynchronous, loosely-coupled message-passing services. The following table shows the implementation differences between the approaches:
Table 1. Comparing SOA with Web 2.0
|Marketing Name||Web 2.0||SOA|
|UI||Ajax (Atlas)||Vista (WPF)|
|Communications||REST (ESS)||WS (WCF, Biztalk)|
|Service||SaaS||Server (Exchange, SPS, SQL)|
Microsoft supports both the Enterprise SO approach (SOA) and the Consumer SO (Web 2.0) approach with tools, technologies, services, servers, and products.
The Consumer Web (Web 2.0) and the enterprise Web (SOA) both have value and applicability. The consumer Web is valuable when responsiveness and scale are important, and the enterprise Web when security and integrity are paramount. It is highly unlikely that organizations will either replace all their present systems or find the security and data integrity available in the consumer world to be appropriate to business-critical information, but they will want to take advantage of Web 2.0 levels of responsiveness and flexibility. Organizations will add service support to their present server software-based IT systems and use supplied services from SaaS-based Web 2.0 systems to create a melded software + services approach based on loosely connected message-passing systems. This will allow organizations to ensure the appropriate levels of data security, availability, responsiveness, and flexibility to their organization, their partners, and their customers.
In this joint SOA and Web 2.0—or Software+Services—world, services will be supplied from service suppliers and/or enterprises and will be composited into new services, or they will be mashed up on the device to produce secure, flexible, and adaptable systems. So, for example, an Enterprise search system will include internet search from a SaaS provider such as live search, an internal search system running on an organization's SharePoint servers, and a desktop search on individual devices to provide a composite search experience.
Microsoft believes that a "one size fits all" based approach of either all server-based software or all SaaS services will not be appropriate for the organization of the future. Further, Microsoft believes that the enterprise will include individual device, server, and SaaS-supplied services in a client/server/service configuration to provide a complete service platform.
On top of this service platform, there are a number of cross-platform functions that are required, such as identity and relationship management, search and discovery services, communication and collaboration services, and content creation and management services. These provide user, consumer, partner, and enterprise support across the complete Software + Services or Services platform layer for areas such as search, e-mail, instant messaging, blogs, and wikis. These cross-service platform functions build a federated infrastructure layer across the organizationally distributed services platform and use one another to provide a complete service platform. These layers are:
Relationship and Reputation (RR)
This is in many ways the underlying layer for the other elements of the Service Platform, and provides all the security and governance support for those layers. It has multiple layers, starting at the bottom with federated logon and single sign on support, and identity and access control The RR layer also supports the concepts of relationships with other individuals and systems and the roles played by these. Finally, a trust and reputation layer exists on top of the identity and relationship layer to provide levels of trust and reputation by role and individual, which includes support for ranking and rating. Microsoft supports RR with products such as Active Directory Federation Services, Live ID, and Cardspace.
Participative Content (PC)
The content is the output from the burgeoning creativity that is occurring on the Web, either in terms of implicit or tacit content such as relationship information, attention information, page ranking information, and usage information; or explicit content such as geographic, audio, video, or movie information. Microsoft supports PC with products such as Live Local and Live Video.
Search and Discovery (SD)
Search and Discovery is about finding and categorizing objects and people. Searches based on implicit information are well understood, but in addition tagging systems, favorites and bookmarks, clouding, attention and preference capture, and customization, location, and presence-based systems are all very important in this space. Microsoft supports SD with products such as Live Search and Live Favorites
Communication and Collaboration (CC)
Unified communication supports all types of communication from real time, such as instant messenger, chat, VOIP, and video messaging/conferencing, to near real time such as e-mail. Collaboration provides social networking support with technologies such as bots, blogs, wikis, newsgroups, and discussion groups. Microsoft supports CC with products such as Exchange, Live Meeting Server, Live Communication Server, and SharePoint Server.
Disruptions cause new business opportunities, new marketplaces, and new models of commerce. This latest disruption is no different than previous disruptions, as can be seen from the huge number of small dynamic startups already in the Web 2.0 space. As in previous disruptions, we will see many of the business techniques and technologies move from the consumer space into the enterprise, and provide new marketplaces and opportunities.
While there will be opportunity in the IT space from outsourcing, and from new tools and software to improve internal productivity and collaboration, the real opportunity will be in the business side of the enterprise.
The most interesting and potentially most profitable uses of Web 2.0 techniques in the enterprise are in the customer-facing areas of organizations, and in a few specialist internal business areas. The specialist areas are things like product development, where customer involvement and discussion in product design and development using blogs, wikis, and discussion forums is a very fertile area for innovation and development. The other internal area that could benefit from these techniques is training, where the use of video, VOIP, messaging, chat, and mobile delivery has considerable potential.
In terms of customer-facing activities, the whole of the customer contact, sales, and customer relationship management cycle will be revolutionized by the Web 2.0 tools and techniques that are in common use in the consumer space. In marketing, the opportunity to provide rich, interactive media and close customer interactivity through wikis and blogs will provide new ways of contacting and engaging with potential customers. In sales, the use of new form factor devices such as mobile phones to interact with the customer throughout the sales process is another area for development. Finally, in customer support, the use of video to assist with problem resolution and blogs and wikis for self-help will create whole new support models.
All these areas can be made to be self-funding through the use of advertising-based models in the IT systems. It is certainly possible to think of the new enterprise marketing being a profit center for the organization.
The Software+Services model will create a huge new range of ways of interacting with customers and consumers for enterprises of all sizes that in turn will provide new marketplaces, business opportunities, and revenue generation for the Enterprise.