Service-Oriented Architectures and Software as a Service
By Nick Blozan, Senior Vice President, OpSource
Software as a Service (SaaS) is a new delivery model for software solutions that can be defined as the ability to provide business functions at a given price under a Service Level Agreement (SLA), utilizing the concept of pay-as-you-go pricing. This model is fundamentally making software better because vendors are forced to pay much closer attention to their customer’s satisfaction and therefore respond more quickly to problems and enhancement requests. In fact, SaaS is quickly becoming a ‘disruptive technology’ because it is completely changing the way that software applications are being developed and delivered. Large traditional enterprise software companies are experiencing stiff competition from companies offering SaaS solutions and many of them are attempting to respond with on-demand offerings of their own.
The traditional model of application deployment, in which the customer acquires a perpetual license and assumes responsibility for the software’s implementation and ongoing management, has many disadvantages for end users. Increasing dissatisfaction with the costs, complexities, and length of time that it takes to recognize value from their investments have left software buyers frustrated and looking for a better way. SaaS changes the dynamics and definition of traditional software and service providers and requires that successful SaaS offerings merge these concepts into a single entity.
With SaaS, customers access the functionality of the application via a web browser and all of the infrastructure running the actual application and the associated operations staff are the responsibility of the ISV or a SaaS enabler (in the event the ISV is outsourcing the delivery of the software service). This delivery model is becoming increasingly popular with end users because they no longer have to bear the cost of infrastructure, IT staff and operational issues such as application management, monitoring, availability, disaster recovery, etc.
SaaS is an evolution from the old ASP model that emerged and then fizzled in the mid to late 1990s. Although SaaS appears similar to ASP, it differs in that the Independent Software Vendor (ISV) is now providing their own application as a service, rather than depending on a third party to aggregate a selection of applications for sale and availability. SaaS offerings also facilitate the delivery of fine-tuned and more configurable offerings while ASPs tend to be more standardized applications. The new SaaS model is poised to undergo rapid growth and to play a very meaningful role in redefining the software industry. Today, the impact of SaaS can be felt with new companies performing well and changing the dynamics in certain software sectors. Companies such as Salesforce.com, RightNow Technologies and NetSuite are all experiencing triple digit year over year growth in this space. Large established ISVs are attempting to adapt to the SaaS model, due in part to the competitive pressures being applied by disruptive, pure-play SaaS firms.
SaaS Integration Issues
One of the fundamental requirements of most customers is some level of integration among one or more of the applications that they want to consume on-demand. Service-Oriented Architectures (SOAs) and the advent of web services provide the primary foundation for the on-demand delivery of software. SOA and web services provide new opportunities for ISVs to collaborate, increase business agility and enable true B2B integration with other applications and software companies. These technologies provide a mechanism to solve the significant issue of software inflexibility that arises as a result of the requirement for integration and extend programmatic integration capabilities to business partners. This shift toward service orientation has significant impacts on the cost and time required to accomplish integration of software, which is undoubtedly one of the biggest costs in software engineering. SOAs alleviate the need to hard code API integration into the application which takes more time and is much more difficult and costly to maintain. In addition, web services integration allows software to dynamically benefit from enhancements in the functionality of applications as they evolve without having to go back and rewrite the code.
A service-oriented architecture is a platform with a set of components that can be invoked and whose interface descriptions can be published and discovered. A Web service is a specific instance of a component (or components) that has a public interface defined, and that other systems can discover and use by passing messages transported via existing Internet protocols.
In addition, infrastructure providers and outsourcers (or, SaaS enablers - those companies that are actually delivering the software as a service) can leverage SOA and web services to integrate the components of the managed environments, such as ticketing and monitoring. A service oriented architecture allows SaaS enablers to develop and maintain applications more quickly and cost-effectively, and readily integrate those applications with ISVs and end users alike.
For example a SaaS enabler can leverage the functionality of a Service Oriented Architecture to provide strategic business information to its clients via the SaaS enabler’s SOA network. By utilizing web services, the SaaS enabler has the ability to provide its ISV clients with real time information on their environment, deliver feedback from end user satisfaction surveys, as well as provide access to ticketing information that allows the ISV to create, view and modify their tickets. This provides the end user with a solution that leverages on-demand capabilities to provide the most secure, reliable and best performing system possible. In addition, this architecture provides the most cost effective platform for the end user to consume the value of the software.
Another example is the SaaS enabler’s ability to provide information about the health of the ISV application by querying a monitoring application via a web service. This information can then be organized and presented to the ISV or technical staff from the enabler via a portal for interpretation. In this way, any number of services can be supported by the enabler and made available to the ISV to allow access to the health of their application and their business. Similarly, the ISV could extract this information from the SaaS enabler’s SOA network and provide it to their own end users should they want to do that.
And this is just the beginning. Working with its clients, the SaaS enabler can take the SOA concept one step further by building the capability into its platform for ISVs to participate within an SOA ecosystem; communicating with each other across an SOA interconnect. This enables ISVs to work directly with each other under a dedicated connection and to do so across a high speed, highly available and secure communication channel. Due to SOA, the SaaS enabler’s customers now have the ability to utilize this ecosystem to quickly implement additional functionality within their software and product offering bundles; forming strategic relationships with other ISVs that are also capable of delivering their software under a Service Oriented Architecture.
The SaaS approach will require new business models and new technologies to be successful. Migration to this approach will continue to accelerate as the end user communities increasingly recognize the value of SaaS and as the necessary integration becomes a reality. Software vendors have the opportunity to increase the flexibility and adaptability of their offerings by leveraging SOAs and communication mechanisms such as web services to simplify and accelerate integration among SaaS applications. The future of SaaS is an ecosystem of on-demand applications, operating in a high speed, robust and reliable infrastructure that will foster the integration and ease of use required by the software consumer.
About the Author
Nick Blozan is Senior Vice President of Marketing and Sales at OpSource. He can be reached at firstname.lastname@example.org.