Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

White Paper

325 vues

Publié le

  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

White Paper

  1. 1. RCG INFORMATION TECHNOLOGY delivery excellence® Service Oriented Architecture White Paper
  2. 2. Service Oriented Architecture Robert Wegener This paper focuses on Service Oriented Architecture (SOA) and its relationship with Web services. The term architecture is used so much today that its meaning has been confused with design, frameworks, process models and the like. Architecture is the specification of an overall structure, its logical components and the relationships between those components. Architecture can describe a network, computer hardware, a wireless system, a custom application, etc., and provides the guidance necessary to create, extend and maintain the system and its subsystems. For today’s discussion, the focus will be on software architecture, specifically SOA. As applications continue to evolve to match the changing environmental and business needs of an organization, so too must the software architecture. Software architecture was fairly straight-forward in the confines of the mainframe. It wasn’t until the advent of distributed computing that formerly closed systems had to be re-designed with accessibility and modularity in mind. The simplest of the distributed architectures was client/server: a simple two-tier model which consists of a client application communicating with a database server on the backend. The next generation of client/server was the n-tier architecture. The n-tier architecture evolved out of the need to share business rules among applications and to enhance scalability. With the advent of the web and its web servers, application servers, and stateless nature, the distributed architecture reached its most complex level of functionality. It is this level of complexity and the need to share information among these systems that has lead to the creation of the Service Oriented Architecture. For the record, SOA is not a new concept. It was used with DCOM (distributed COM) and Object Request Brokers (ORBs) using CORBA. It is the advent of open standards such as Web services that has made the promise of true SOA a reality. So what is SOA? It is a collection of services that communicate with each other. The services are self- contained and do not depend on the context or state of the other service. They also do not work within the same processing environment, but rather within a distributed systems architecture having the following characteristics: 1. It is network oriented. 2. The service is formally defined in terms of message exchange patterns. 3. The service tends to use a small number of public methods with complex messages. 4. The logical view is defined in terms of business-level operations. 5. The service is described by machine-readable meta data with only the major details exposed in the public interface. 6. The messages are sent in a platform-neutral, standardized format. A simple example is that of a web site that employs a credit card verification process from another company. The web application does not control the verification process. It only consumes the service, thereby eliminating the need for the service to be created in the web application. By expanding on this theme, a full SOA can be developed by creating a framework of consumable services. The benefits of the SOA are numerous. Complex systems can share simple interfaces with other systems, and business can look at its overall enterprise as a collection of services to be exploited, reused, and shared Copyright 2003 RCG Information Technology -1-
  3. 3. inside and outside of the business. Where objects used to be the flavor of the day, now services are the program dejour. The heart of SOA is also what makes it a very breakable architecture. Since services by their very nature are self-contained, they are susceptible to service outages, latency, and security issues. Many of these issues are being tackled through Web services committees such as W3C, OASIS and WebServices.org. These organizations are defining how Web services should be managed, secured and how they should interoperate. This brings us to the relationship of Web services to SOA. Web services is the vehicle through which an SOA is implemented. Web services are the open standards and protocols that ensure interoperability between systems. They are most appropriate for accessing components that run on different platforms. Web services also provide for a loosely coupled interface which eliminates the simultaneous updates of both requesters and providers. This eliminates the biggest drawback of point-to- point solutions. Web services technologies provide the framework to build a very robust SOA. The Web services framework consists of a machine processable interface described in Web services Description Language (WSDL). It communicates via SOAP messages over HTTP with an XML serialization. Other standards are also being developed for security, orchestration, reliability etc. These open standards make up the building blocks of defining an SOA. In summary, a Service Oriented Architecture, created using Web services, is the next generation of distributed computing. As Web services continue to mature, companies will be able to model their systems closer to the needs of the business. The ability to consume services has the potential to redefine how systems are created, managed, and sold. Many of the design tools coming to market have SOA and Web services built-in to provide increased productivity. The future continues to be bright for SOA and Web services. About the Author Robert Wegener is the director of solutions for RCG Information Technology's Web services. He has more than 20 years of information and business engineering experience in operations, customer service, transportation, finance, product development, telecommunications and information systems. Wegener also has extensive experience in various process and development methodologies, quality assurance and testing methodologies. He can be contacted by e-mail at rwegener@rcgit.com. 2