management. The service oriented enterprise
systems should be dynamic, flexible, secure and
high quality. To achieve all these characteristics
QoS management must be integrated into service-
oriented enterprise architectures. It must support the
most common and valuable QoS characteristics and
provide comprehensive services.
SLA is used to establish agreements on the
quality of a service between a service provider and a
service consumer. SLA sets the expectations
between the consumer and provider and helps
defining the relationship between the two parties.
Properly defined SLAs cover the following aspects
(Bianco, Lewis and Merson, 2008):
The provider obligations
How delivery of the service at the specified
level of quality will be realized
Which metrics will be collected, and how
Actions and penalties to be taken when the
service is not delivered at specified QoS
How and whether the SLA will evolve as
technology changes.
Thus, the service level agreement defines mutual
understandings and expectations of a service
between the service provider and service consumers.
The service guarantees are about what transactions
need to be executed and how well they are executed.
The parameters and metrics defined in an SLA
define the Quality of Service of the service. QoS
parameters may include response time, availability,
throughput, latency, etc. The QoS defines contracts,
and obligations between service provider and
consumer. To perform this task the service level
agreements include negotiation, agreement,
quantifying service levels, and clarification of
responsibilities (Blackwell and Dixon, 2005). The
Quality of Service provisioning and management is
of great importance for development of Service
Oriented Architecture solutions. It is also one of the
greatest challenges and there is still no solution for
continuous handling of QoS attributes. There are
works in the area of definition and enforcement of
QoS service management, but there is no systematic
way to do this. The existing gap with QoS may be
filled by several efforts:
1) Creation of a unified QoS specification
supporting the most important QoS characteristics
and providing a way to describe the requirements,
contracts and policies based on them;
2) A language and compliant tools that supports
SLA and QoS attribute management;
3) Intensive usage of contract-first approach
which will facilitate QoS management and will bring
better consistency, maintenance and reuse in SOA.
5 CONCLUSIONS
Design by Contract methodology has already been
proved as a technique for building high-quality and
reliable solutions in Object Oriented and Component
based architectures. With the evolution of software
architectures DbC concepts have also evolved and
currently they are successfully applied in Web
Service development. The next step is to apply the
Design by Contract concepts in service oriented
development but still there is no solution that
provides support for DbC on a conceptual level.
The Design by Contract can extend the service
contracts with additional logic about the processes
and quality attributes which cannot be expressed
with simple schema descriptions. There are issues of
modeling, implementing and assuring the QoS
characteristics in large scale infrastructures and
domain services that should be resolved. The goal
set for our future investigations and practical work is
integration of QoS management in SOA architecture
using Design by Contract concept.
REFERENCES
Sommerville I., 2004. Software Engineering, Addison
Wesley. 7
th
edition, ISBN-13: 978-0321210265.
Petritsch H., 2006. Service-Oriented Architecture (SOA)
vs. Component Based Architecture, VTU int. report.
Berre A. J., 2008. Services Oriented Architecture Profile
SOA-Pro: A UML Profile and Metamodel for Services,
SINTEF internal report.
Erl T., 2007. SOA: Principles of Service Design, Prentice
Hall, ISBN-13: 978-0132344821.
Erl T., 2008. SOA Design patterns, Prentice Hall, ISBN-
13: 978-0136135166.
Heckela R., M. Lohmanna, 2005. Towards Contract-based
Testing of Web Services, Electronic Notes in
Theoretical Comp. Sci., Vol. 116, 2005, pp.145-156.
Blackwell M., J. Dixon, 2005. Service level agreements: a
framework for the quality management and
improvement of central support services, Monash.
Breivold H.P., M Larsson, 2007. Component-Based and
Service-Oriented Software Engineering: Key Concepts
and Principles, Proc. of 33
rd
EUROMICRO, pp.13-20.
Meyer B. 1999, DESIGN BY CONTRACT and Genericity
for Java, http://archive.eiffel.com/doc/talks/sigs/
Meyer B. 1991, Design by Contract, in Advances in
Object-Oriented Software Engineering. Prentice Hall.
Owe O., G. Schneider and M. Steffen 2007., Components,
Objects, and Contracts, ACM SIGSOFT Symposium
on the Foundations of Software.
Warmer J., A. Kleppe, 2007. The Object Constraint
Language: Precise Modeling With UML.
Bianco P., G. A. Lewis, P. Merson 2008. Service Level
Agreements in Service-Oriented Architecture
Environments, Techn. Note, CMU/SEI-2008-TN-021.
ICSOFT 2009 - 4th International Conference on Software and Data Technologies
304