WSARCH: A Service-Oriented Architecture with QoS

WSARCH: A Service-Oriented Architecture with QoS

Júlio Cezar Estrella (University of São Paulo, Brazil), Regina Helena Carlucci Santana (University of São Paulo, Brazil), Marcos Jose Santana (University of São Paulo, Brazil) and Sarita Mazzini Bruschi (University of São Paulo, Brazil)
DOI: 10.4018/978-1-61350-432-1.ch016


This chapter aims at the design and implementation of a service-oriented architecture (SOA), named WSARCH – Web Services Architecture - which allows accessing Web Services using a combination of functional and non-functional aspects of Quality of Service (QoS). These QoS aspects, aiming at evaluating the performance of Web Services in order to achieve QoS in a service-oriented architecture, are identified and discussed. These QoS attributes were mapped to the components participating in a service-oriented architecture with QoS support. The proposed architecture provides the monitoring of service providers and the data obtained are used to locate the most appropriated service. The WSARCH can be used as an analytical platform for purposes of testing Web Services and understanding their behavior as well as an execution platform for building live systems. A prototype for the WSARCH was developed, and it can allow performance evaluation studies being conducted considering different components of the architecture, algorithms, protocols and standards. The proposal WSARCH is inserted into a context where it is important to define the way a SOA focusing on performance shall be designed, since the correct characterization of what to evaluate and how to evaluate.
Chapter Preview


Web Services have emerged as a technology that aims at improving the communication between applications through the service-oriented paradigm. A Web Service is defined by the W3C consortium as a software application that uses standard Internet protocols such as UDDI, WSDL, and SOAP to interact with other Web Services. The Web Services protocols have been proposed to describe, discover, connect, and integrate Web Services software providers based on different Web Servers. Web Services try to solve the problems of interoperability among different systems and applications using a Service-Oriented Computing (SOC) paradigm that utilizes services as fundamental elements for developing applications/solutions and a universal language such as XML. The potential of the service-oriented paradigm can be explored in areas such as education, where reliability, security and personalization of services and information are of primary concern in this endeavor (Hundling, 2006). Services can execute functions ranging from simple requests till complicated business processes. A Web Service composition for example can be mapped into a business process, composed of an arrangement of individual services that form a new, more complex service. Composition is one of the most important aspects in service oriented computing: the main idea is that when building a new service, one can rely upon existing services, which provide part of the needed operations. Several issues are related to this topic, such as the research on automating the composition process, the techniques for managing a composition and the relationship with software (and service) reuse (Andrea & Benatallah, 2006).

The choice of services that will compose a more complex service can involve many QoS parameters. The choice of a service that is not appropriated for building the composition can increase the response time of the service perceived by the user. Different versions of a particular service can perform the task required in a similar way but offering different QoS. Some versions of a service can execute quicker than others, or the invocation of a particular version can be more expensive. Therefore, a service composition designer needs to consider how to discover the best service to compose the complete service and improve the QoS perceived by the user. The definition of the services selection introduces an optimization problem (Ardagna & Pernici, 2005).

Although Web Services can improve the interoperability among applications, researchers involved with Web Services and SOA are still studying many issues, such as security, fault tolerance, semantic Web and others. Due to the integration of Web Services as a business solution in many enterprise applications, quality of service provided by Web Services is becoming relevant for both the service providers and the clients. Providers need to specify and guarantee the QoS of their Web Services in order to remain competitive and achieve the best attendance of the business processes. Furthermore, clients aim at having good performance (high availability, low response time, low latency and others).

Considering that many applications for distributed systems fail because they do not address aspects of QoS (Woodside & Menasce, 2006) and consequently QoS in Web services is essential to improve reliability and availability of services, the objective of this work is the design and implementation of a service-oriented architecture, named WSARCH - Web Services Architecture, which allows access to Web Services with QoS. The proposed architecture extends, with adaptations and improvements, other architectural models shown in the literature on Web Services. The main purpose of the WSARCH, which makes it different from other architectures, is to be an architecture developed in order to assist in evaluating the performance of Web Services considering QoS attributes. To enable the development of this architecture becomes necessary to define which attributes should be considered for this purpose. Thus, for the development of WSARCH is necessary to identify and to map the attributes of the various QoS components of a service-oriented architecture. An important point to achieve the goals of WSARCH is its architecture that considers the interaction between the components of a traditional SOA (Service Oriented Architecture) and also a Broker, responsible for the scheduling of SOAP messages between client, provider and service registry, considering QoS attributes.

Key Terms in this Chapter

Workload: The amount of work assigned to or expected from a worker in a specified time period. In the WSARCH domain refers to the amount of requests sent per unit time to the broker architecture by the clients.

SOA: Service Oriented Architecture.

Service Differentiation: It is one of the mechanisms for implementing flexibility in Service-Oriented Architecture involving information quality, security and costumer segmentation.

Performance Evaluation: Technique used to evaluate the performance of computer systems.

Quality of Service: Ability to offer greater quality assurance for applications in a specific area of work.

Web Services: Services implemented in Application Servers.

Message Scheduling: it is an activity performed by an element named broker (scheduler) of a distributed system that makes use of contexts of messages or any kind of information that can be used to determine priorities.

Complete Chapter List

Search this Book: