Advancements in Service Oriented Architecture
Service-oriented architecture (SOA) is an organized collection of services in communication with each other to perform specific functions. In the field of information technology (IT), a service is a discrete, self-contained bundle of information that is connected to other services.
Introduction
Web services, or technologies used to support connections, establish the connection and communication between services through standardized, data-organizing languages like XML. Communication between services supports an organization’s internal structure and how that structure interacts with external systems, hence the architectural aspect of SOAs. This communication is made user-friendly through the use of connection and interfaces that both the service consumer and service provider understand.
This article will describe the benefits of SOAs, how they were developed, and upcoming trends for 2007.
Background
SOAs developed using CORBA or Common Object Request Architecture specifications. The Object Management Group (OMG), an 800 member international organization founded in 1989, developed these to encourage object oriented software development in which independent modules (or objects) manipulate data structures. This group also developed industry guidelines. Rather than focusing on processes, this programming focuses on data. CORBA is middleware that provides a layer of programming that allows communication or messaging between databases. CORBA specifications allow for the development of a diverse environment where applications can be used across major hardware platforms and operating systems.
The first SOAs used Object Request Brokers (ORBs) middleware in the mid-1990s. ORBs control the routing of requests and responses between clients and service-providers through interfaces by activating and deactivating component elements as requests are made to more efficiently use resources.
Uses
The primary purpose of SOAs is to insure that different business systems such as customer relations management (CRM) and enterprise resource planning (ERP) work in conjunction with each other without requiring human intervention. This requires the integration of databases and applications across business systems. It is important that services or business functions operate independently from an organization’s IT infrastructure to provide the agility that supports a competitive edge. SOAs allow for consistent views of customer relations and business practices through the use of standardized protocols and interfaces. These standardized processes can then be applied by different departments according to the business logic of their specific organizations.
The benefits of SOAs can be understood by a company’s ROI (return on investment) as defined by cost-reduction and increased profit margins. One of the ways SOAs reduce cost is through the reusability of services. This reduces the complexity, integration, and management of dispersed computing environments. Also, an overall architecture insures that changes in web services and updates in data are communicated throughout the organization when they happen. The multiple application of loosely coupled services across data centers rather than very specific functions within them increases flexibility and adaptability.
Points of Interest
In the upcoming year, SOA trends include a focus on applications and data rather than architecture or technology. The trend in 2007 is towards customized composite applications supported by an SOA infrastructure determined by business objectives. In keeping with this, production management of SOAs will focus on data centers and communication between them rather than infrastructure in order to insure the composite service applications run smoothly. Given the reliance of Web Services for SOAs, the applications that have emerged as the most popular in 2007 for SOAs are JAVA and .NET.
Another trend in SOAs for 2007 lies in assembling and customizing application packages based on specific business requirements and moving away from packaged applications. Rather than a focus on enterprise applications there is a move towards a composite application that works from the data core. Vendors such as Oracle and SAP are promoting their SOA products, respectively Fusion and NetWeaver. Other vendors that are focusing on composite application packages in 2007 include Microsoft, BEA and IBM. Composite and customized application packages allow for increased resiliency and better management as defined by specific enterprise needs.
Another trend in SOAs for 2007 is the outsourcing of standard package applications by the Software as a Service model (SaaS). According to this model, the software company provides software delivery, technical support and daily maintenance over the Internet.
Finally, SOAs will demonstrate an increase in virtualization as organizations work to make resources and applications to work in a more integrated and efficient manner. Through virtualization SOAs can manage themselves through perceived processes rather than actual ones thereby reducing processing labor. It also allows one piece of hardware to run multiple operating systems. Virtualization also reduces processing labor through utility computing where processing is paid for based only on the client’s needs.