27.03.2014 Views

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Adaptive software should basically determine when and<br />

where a change is required, how it can be changed, and what<br />

the impacts of a change are on system attributes. These<br />

dimensions (when, where, what, and how) are highlighted in<br />

the taxonomy of evolution [7]. When corresponds to temporal<br />

properties; Where refers to the object of change and describe<br />

which artifact needs to be chang ed; What relates to system<br />

properties (qualities attributes); How refers to change support<br />

(change models and the formality).<br />

We advocate the use of feedback control (or closed loop<br />

control)[8], as the mechanism to su pport autonomic<br />

characteristics into a busin ess process. We argue that selfadaptive<br />

software is a clo sed-loop system with feedback<br />

from the self and th e context. The Autonomic Computer<br />

System’s building block, n amed autonomic manager,<br />

constantly interacts with managed element in order t o<br />

maintain its equilibrium in face of incoming perturbations.<br />

The MAPE cycle (Monitor-Analyze-Plan-Execute),<br />

represented in Figure 2, is an implementation of the<br />

classical feedback control technique [4].<br />

Figure 2.<br />

Monitor<br />

Analyzer<br />

Instrumented System<br />

Actuator<br />

Planner<br />

Closed Loop Control Mechanism<br />

In a service-based mission-critical system, adaptation is<br />

an activity with the objective of delivering an<br />

acceptable/guaranteed service based on SLA (Service Level<br />

Agreement). Basically, SLA is a service contract between a<br />

customer and a service provider that specifies t he<br />

forwarding service a custo mer should receive. One of the<br />

key components in SLA is SLO (Service Level Objective)<br />

which specifies QoS (Quality of Service) metrics governing<br />

service delivery. Each SLA may include several SLOs, each<br />

corresponding to a sin gle QoS parameter related to quality<br />

factors. An example SLO is keeping the end-to-end response<br />

time in a specific ran ge. For example, how a s ubstituted<br />

method, replaced using an aspect weaving/unweaving<br />

operation, will violate or sati sfy a co ndition on the system<br />

throughput [8].<br />

In this paper, we claim that self-adaptive features must<br />

be aligned with Business Processes.<br />

B. Business Process Modeling and Autonomic Computing<br />

<strong>Systems</strong><br />

Business Processes and Business Process Management<br />

(BPM) are essential in many modern enterprises. They constitute<br />

organizational and operational knowledge and often<br />

perpetuate independently of personnel and infrastructure change<br />

[9]. Autonomic Computing principles can be adapted to hel p<br />

organizations survive in dynamic business scenarios. Process that<br />

can be able to answer to AC principles are designated Autonomic<br />

Business Process (ABP) [10].<br />

Autonomic Business Process (or autonomic workflow)<br />

must have the capability to adjust to environment<br />

variations (context). If one component service node (self)<br />

becomes unavailable, a m echanism is needed to ens ure a<br />

business process exec ution is not interrupted [11]. ABP<br />

differs from traditional workflow as it relie s on autonomic<br />

techniques to manage adjustments during its execution.<br />

Therefore, it enab les dynamic and auto matic configuration<br />

of its definition, activities and resources. It also allows selfoptimization<br />

and self-healing. Furthermore, autonomic<br />

workflow must have intelligence to anal yze situations and<br />

deduce adaptations at run-time.<br />

There is a b elief that self-* properties are related to<br />

software quality factors. For example, Salehie and Tahvildari<br />

discuss the potential links between these properties and<br />

quality factors [12].<br />

We argue that in logical level of business process model<br />

the adaptations must result in qu ality attributes defined<br />

according NFR Framework [13]. In order to demonstrate<br />

such relationships, it is better to analyze how a well-known<br />

set of quality factors defined in the ISO 9126 -1 quality<br />

model [14] are lin ked to m ajor and prim itive self-*<br />

properties. Considering aspects discussed in [15], TABLE I<br />

presents a consolidation of NFR and Autonomic Computing<br />

Principles.<br />

TABLE I.<br />

NFR<br />

NFR AND AUTONOMIC COMPUTING PRINCIPLES<br />

Self-<br />

Configuring<br />

Maintainability X X<br />

Autonomic Computing Principles<br />

Self- Self-<br />

Healing Optimize<br />

Self-<br />

Protect<br />

Functionality X X X<br />

Portability<br />

Usability<br />

X<br />

X<br />

Realiability X X X<br />

Efficiency<br />

The benefits related to th e use of NFR joined with BPM<br />

have been acknowledged in the last years. NFRs have been<br />

applied to help in th e design of bu siness process models<br />

through extensions of business process modeling languages,<br />

allowing for richer analysis and operation alizations of the<br />

process model. However, many works do n ot consider the<br />

variability in their solutions [16]. On the other hand, the<br />

context of a b usiness process is the set o f environmental<br />

properties that affect business process execution. Therefore,<br />

these properties s hould be taken into account when<br />

designing a bu siness process. If context is analyzed when<br />

modeling a bu siness process, then identification of all its<br />

variants (relevant states of the world in which the business<br />

X<br />

532

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!