|
Comments
Did you read today's front page stories & breaking news?
SYS-CON.TV
|
Service-Oriented Architecture SOA: Learning from the Past to Disrupt the Future
Easier to manage and built for change
By: Kerry Champion
Aug. 3, 2004 12:00 AM
Service-oriented srchitecture (SOA) is an often-used term in today's IT organizations. Some surveys have shown that half of all Fortune 500 companies are actively pursuing an SOA in some form or another, many instituting it as their fundamental design concept. SOA is not something that you can simply buy off the shelf, but rather is a process and architectural mindset that enables a type of IT structure to be put in place. The SOA technical design approach focuses on organizing business systems as reusable components, not as fixed processes. It potentially requires coordination with many parts of the organization and is a continuous process that changes the way IT technologies are developed and used. Definition Policies, practices, frameworks that enable application functionality to be provided and consumed as sets of services published at a granularity relevant to the service consumer that can be invoked, published and discovered, which are abstracted away from the implementation using a single, standards-based form of interface. Other definitions may reference "network-available software units" or "business-level services," yet these are essentially different ways of describing the same concept. SOA environments are typically highly decentralized, with physically fragmented application functionality located throughout an organization (see Figure1). These services are discoverable and accessible by service consumers. Service interfaces are abstracted from the back-end applications, decoupling interface from implementation details such as application type and operating system. Back-end services still require context and relevance to the service consumer for them to be reusable. Exposing hundreds and thousands of services does not constitute an SOA until those services are "user-friendly" or "SOA ready" to the calling applications and with the appropriate infrastructure capabilities, such as security, monitoring, interoperability, and standards support attached to them. An Old Concept Revisited? Reasons why these technologies never hit the mainstream included:
Along Came Web Services What Does All This Mean? A convenient starting point occurred several decades ago (see Table 1), when mainframe systems brought automation and computing power to companies. Complex and core data processing, which were central to the organization, could be offloaded to these expensive machines with large monolithic applications. Mid-range computers allowed many organizations and even individual departments to leverage computing power to suit their needs. The client/server revolution brought computing power to the desktop. This mirrored changes in the organization, where individual employees become knowledge workers and needed the tools and capabilities to do their jobs. The architecture changed to become more two-tiered with server applications providing the heavy lifting and processing while the application logic moved to the desktop. A top-down approach called CASE methodology became a popular methodology for creating applications. In the past decade, Web-based technologies and thin clients have driven the agenda, putting business logic back at the server while also providing application access to a much broader base, including every worker, partner, and customer relevant to the organization. Around the same time, object orientation was bringing component-based technology to developers building applications. SOA is the next big revolution based on previous standards like SGML, XML, and HTTP. SOA enables application access and reuse throughout the entire organization. Some have described a massive change in the way IT organizations will operate. Just as moving from mainframe to client/server dramatically changed the IT organization, SOA is predicted to cause a similar disruption. Back in the early 1990s, client/server architecture became highly popular with skills required for database, thick-client applications and client/server network technologies. During the Web revolution, experts in application servers and Web-oriented technologies became highly valued as applications became available to a wider audience. In the SOA world, many are predicting that there will be additional specialization in creating and managing components and assembling and reusing them. Why Do We Need SOA? IT organizations that deploy SOA gain efficiency by enabling application developers to quickly assemble applications from different available components. This not only saves time and money by reducing duplication, but also encourages a consistency in business process because as services are reused, process, to some extent, is also reused. SOA also reduces dependence on vendors supplying monolithic solutions. Rather than having to choose one vendor for a fully integrated solution or platform, IT can more easily select best-of-breed technology to solve their needs. Monolithic application suites are predicted to be much less common given that a services-based architecture breaks up the "stovepipes" and enables companies to reduce their reliance on one vendor and customize applications to their business requirements. IT organizations are moving to SOA so that they can better address the realities of business today, which is all about being able to handle change. Changes can be long term activities that are proactively pushed by the organization or unexpected changes that require immediate action. An SOA environment is flexible, adaptable, and designed to handle change. What Is Needed? From an organizational and process standpoint, some best practices include:
Web services provides some of the following benefits:
Reader Feedback: Page 1 of 1
SOA World Latest Stories
Subscribe to the World's Most Powerful Newsletters
Subscribe to Our Rss Feeds & Get Your SYS-CON News Live!
|
SYS-CON Featured Whitepapers
Most Read This Week |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||