Information Technology Reference
In-Depth Information
compose the process schema, and concrete services , which are invoked during pro-
cess instance executions. Concrete services for a process may be selected before
process invocation, but also during process execution, changing dynamically the
service composition in terms of component concrete services. Dynamic service
selection may be necessary to guarantee global quality constraints, in particular
when the execution context is variable, but also to ensure process completion when
some of the invoked services are no more available. Concerning adaptivity in pro-
cess execution, self-management approaches have been proposed for services, in
order to guarantee process execution under specified general policies controlling
them.
As a result, the objective of service design is first to build process schemas
for services compositions, second to enable the dynamic aspects related to service
selection and more in general service management.
In the literature, two main trends have emerged in methodologies for process
design.
On the hand, the main goal is to design service-based applications starting from
consolidated software application design approaches. In [ 5] , the literature is exam-
ined comparing approaches that start from a requirements engineering perspective
with the ones starting from a business process modelling perspective. In both cases,
the goal is to build through a systematic design approach an executable service-
based process. While in requirements engineering approaches, process models are
derived from the analysis of use cases and scenarios, business process modelling
focuses on process modelling notations and on techniques to refine high level busi-
ness processes into executable processes. Resulting process descriptions may be
annotated with quality of service requirements.
However, in these approaches aspects related to the dynamic aspects of service
compositions and service management are only marginally considered.
On the other hand, another issue which is considered, e.g. in the methodology
developed in [ 8] , is that while a process is considered to be a service composi-
tion, the component services and their properties have to be identified and in some
case there is a need for developing services to realize the composition. One of the
issues studied in this methodological approach concerns the definition of services
themselves. In fact, service design is about the identification of the right services,
and in their organization in a manageable service hierarchy. Services and their
lifecycle have to be managed, including their identification, design, development,
deployment, discovery, application, evolution, and management. The proposed
methodology therefore focuses on defining an iterative and incremental process
for service design and development, based on the phases of planning, analysis and
design, construction and testing, provisioning, deployment, execution and moni-
toring. Such phases are related to traditional software development phases, but
service identification and construction need to follow specific principles to guaran-
tee that the services are self-contained and easily composable. The main principles
are based on minimizing service coupling between business processes, on creating
highly cohesive business processes, on providing services at an appropriate level of
granularity . These principles are applied throughout the development phases and in
particular during the analysis and design phases. The methodology provides general
Search WWH ::




Custom Search