Towards NFC-Aware Process Execution for Dynamic Environments WiVS - - PowerPoint PPT Presentation

towards nfc aware process execution for dynamic
SMART_READER_LITE
LIVE PREVIEW

Towards NFC-Aware Process Execution for Dynamic Environments WiVS - - PowerPoint PPT Presentation

Towards NFC-Aware Process Execution for Dynamic Environments WiVS 2011 Kristof Hamann Sebastian Steenbuck Sonja Zaplata Distributed Systems and Information Systems Department of Informatics University of Hamburg 10. Mrz 2011 Introduction


slide-1
SLIDE 1

Towards NFC-Aware Process Execution for Dynamic Environments

WiVS 2011 Kristof Hamann Sebastian Steenbuck Sonja Zaplata

Distributed Systems and Information Systems Department of Informatics University of Hamburg

  • 10. März 2011
slide-2
SLIDE 2

Introduction Description of NFCs Selection Algorithm Conclusion

Agenda

1

Problem Statement: Process Execution in Dynamic Environments

2

Description of Non-Functional Requirements and Offers

3

Dynamic Service Selection for NFC-Aware Processes

4

Conclusion

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

2

slide-3
SLIDE 3

Introduction Description of NFCs Selection Algorithm Conclusion

NFC-driven Service Selection

A1 A2 A3 A4 A5

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

3

slide-4
SLIDE 4

Introduction Description of NFCs Selection Algorithm Conclusion

NFC-driven Service Selection

A1 A2 A3 A4 A5 S1 S4 S6 S5 S2 S3 S7

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

3

slide-5
SLIDE 5

Introduction Description of NFCs Selection Algorithm Conclusion

NFC-driven Service Selection

A1 A2 A3 A4 A5 S1 S4 S6 S5 S2 S3 S7

Definition: Non-Functional Characteristics (NFCs) The NFCs of a service denote all aspects which can be used by clients in

  • rder to evaluate service quality

(Dobson et al. 2005)

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

3

slide-6
SLIDE 6

Introduction Description of NFCs Selection Algorithm Conclusion

NFC-driven Service Selection

A1 A2 A3 A4 A5 S1 S4 S6 S5 S2 S3 S7

security encryption: AES Definition: Non-Functional Characteristics (NFCs) The NFCs of a service denote all aspects which can be used by clients in

  • rder to evaluate service quality

(Dobson et al. 2005)

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

3

slide-7
SLIDE 7

Introduction Description of NFCs Selection Algorithm Conclusion

NFC-driven Service Selection

A1 A2 A3 A4 A5 S1 S4 S6 S5 S2 S3 S7

security encryption: AES price < 10 Definition: Non-Functional Characteristics (NFCs) The NFCs of a service denote all aspects which can be used by clients in

  • rder to evaluate service quality

(Dobson et al. 2005)

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

3

slide-8
SLIDE 8

Introduction Description of NFCs Selection Algorithm Conclusion

NFC-driven Service Selection

A1 A2 A3 A4 A5 S1 S4 S6 S5 S2 S3 S7

security encryption: AES price < 10 General Requirements

1 formal description of the local and global statements 2 algorithm in order to evaluate statements and to find a suitable set

  • f services (optimization is an NP-hard problem!)

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

3

slide-9
SLIDE 9

Introduction Description of NFCs Selection Algorithm Conclusion

NFC-driven Service Selection

A1 A2 A3 A4 A5 S6 S5 S2 S3 S7

security encryption: AES price < 10 Observations available services and thus their characteristics change very often evaluation has therefore to be done at runtime worst case: step-by-step late binding of services with no possibility for an optimal solution

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

3

slide-10
SLIDE 10

Introduction Description of NFCs Selection Algorithm Conclusion

NFC-driven Service Selection

A1 A2 A3 A4 A5 S8 S2 S3 S7

security encryption: AES price < 10 Observations available services and thus their characteristics change very often evaluation has therefore to be done at runtime worst case: step-by-step late binding of services with no possibility for an optimal solution

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

3

slide-11
SLIDE 11

Introduction Description of NFCs Selection Algorithm Conclusion

Algorithms for Service Selection: Deriving Requirements

Situation in mobile ad-hoc networks relatively small number of available services processes are comparatively short services are not known until the process is executed Requirements of an algorithm low complexity ⇒ heuristic approach rapid detection of a first compatible solution

  • ptional delayed optimization

consideration of user-defined goals

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

4

slide-12
SLIDE 12

Introduction Description of NFCs Selection Algorithm Conclusion

Languages for Describing Non-Functional Requirements

WSLA WS-Policy WSOL CQML HP Labs Composition – – – – – Levels of quality – + + ×

  • Compliance to standards

+ +

+ Fine-grained + + + × + Requirements vs. offers +

  • +

– Priorities – – – – – Syntactical separation + + + × + Refinement +

  • +
  • Generic applicability

× × × + – Extensibility + + + – – good: + average: ◦ poor: – not applicable: ×

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

5

slide-13
SLIDE 13

Introduction Description of NFCs Selection Algorithm Conclusion

Meta-Model for Non-Functional Characteristics

profile P1 statement p1 characteristic 1 statement p2 characteristic 2 statement p3 characteristic 3 profile P2 statement p4 characteristic 1 statement p5 characteristic 2 statement p6 characteristic 4 profile C1 statement c1 characteristic 1 statement c2 characteristic 2 profile C2 statement c3 characteristic 1 statement c4 characteristic 2 statement c5 characteristic 3 statement c6 characteristic 4 service Service Provider Service Consumer

Figure: based on Aagedal (2001) CQML

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

6

slide-14
SLIDE 14

Introduction Description of NFCs Selection Algorithm Conclusion

Language Model: Characteristics (numeric)

characteristic name = price numeric type = integer direction = decreasing invariant min = 0 compositionBehavior aggregateFunction = sum parallel = false

A1 A2 A3 A4 A5 S1 S4 S6 S5 S2 S3 S7 security encryption: AES price < 10

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

7

slide-15
SLIDE 15

Introduction Description of NFCs Selection Algorithm Conclusion

Language Model: Characteristics (non-numeric)

characteristic name = encryption algorithm set elements member = AES member = DES

  • rder

simpleOrder element1 = AES

  • rderOperator = <

element2 = DES direction = decreasing local = true

A1 A2 A3 A4 A5 S1 S4 S6 S5 S2 S3 S7 security encryption: AES price < 10

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

8

slide-16
SLIDE 16

Introduction Description of NFCs Selection Algorithm Conclusion

Language Model: Statements

statement name = pricing priority = 1 characteristic targetCharacteristic = price numericConstraint max=10

A1 A2 A3 A4 A5 S1 S4 S6 S5 S2 S3 S7 security encryption: AES price < 10

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

9

slide-17
SLIDE 17

Introduction Description of NFCs Selection Algorithm Conclusion

Language Model: Profiles

wsp:policy wsp:all nfc:statement nfc:name = responseTime . . . nfc:statement nfc:name = rating . . . wsdl:binding wsp:PolicyReference URI=". . . " wsdl:operation . . .

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

10

slide-18
SLIDE 18

Introduction Description of NFCs Selection Algorithm Conclusion

Overview

  • 1. evaluating local requirements
  • 2. evaluating global requirements
  • 3. optimizing the solution (optional)

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

11

slide-19
SLIDE 19

Introduction Description of NFCs Selection Algorithm Conclusion

Step 1: Local Requirements

  • 3. optim.
  • 2. global
  • 1. local
  • 1. Evaluating local requirements

applies to statements associated with a single activity applies to all characteristics marked as local applies to unordered non-numeric characteristics applies to some other special cases (transforming global requirements into local ones) removes services which do not meet the local requirements

A1 A2 A3 A4 A5 S1 S4 S6 S5 S2 S3 S7

security encryption: AES price < 10

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

12

slide-20
SLIDE 20

Introduction Description of NFCs Selection Algorithm Conclusion

Step 2: Global Requirements

  • 3. optim.
  • 2. global
  • 1. local

S1,a S2,a S2,b S1,b S2,a S2,b activity 3 activity 2 activity 1 root node

Goal finding a valid path through the tree as fast as possible

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

13

slide-21
SLIDE 21

Introduction Description of NFCs Selection Algorithm Conclusion

Step 2: Global Requirements

  • 3. optim.
  • 2. global
  • 1. local

S1,a S2,a S2,b S1,b S2,a S2,b activity 3 activity 2 activity 1 root node

Purging of Parts of the Tree use knowledge of characteristics: e.g. aggregation function, direction, constraints, . . . derive properties: monotonicity exclude according parts of the tree

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

13

slide-22
SLIDE 22

Introduction Description of NFCs Selection Algorithm Conclusion

Step 2: Global Requirements

  • 3. optim.
  • 2. global
  • 1. local

S1,a S2,a S2,b S1,b S2,a S2,b ? activity 3 activity 2 activity 1 root node

Selecting a Path check of all global requirements only possible for whole path heuristic: average of characteristics’ values for each activity rank current services:

P: promising nodes (all requirements are fulfilled) S: second-choice (some requirements are not fulfilled)

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

13

slide-23
SLIDE 23

Introduction Description of NFCs Selection Algorithm Conclusion

Step 2: Global Requirements

  • 3. optim.
  • 2. global
  • 1. local

S1,a S2,a S2,b S1,b S2,a S2,b activity 3 activity 2 activity 1 root node

Selecting a Path check of all global requirements only possible for whole path heuristic: average of characteristics’ values for each activity rank current services:

P: promising nodes (all requirements are fulfilled) S: second-choice (some requirements are not fulfilled)

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

13

slide-24
SLIDE 24

Introduction Description of NFCs Selection Algorithm Conclusion

Step 3: Optimizing the Solution

  • 3. optim.
  • 2. global
  • 1. local
  • 3. Optimizing the solution
  • nly if desired
  • ptimization with respect to a user-defined weight function wj(x)

benefit of a service si is bi = n

j=1 wj(Q(cj, si))

successive optimization of the solution by replacing single services

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

14

slide-25
SLIDE 25

Introduction Description of NFCs Selection Algorithm Conclusion

Conclusion

Observations dynamic environments demand low complex solutions without searching for an optimal solution strategies should be supported in the specification of NFCs Contributions a language proposal for expressing NFCs in a way which facilitates runtime processing in dynamic environments a respective low-complex service selection algorithm

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

15

slide-26
SLIDE 26

Introduction Description of NFCs Selection Algorithm Conclusion

Conclusion

Future Work integration of the prototype implementation into process engines evaluation of the proposed algorithm’s performance in comparison to the existing approaches incorporate application-specific knowledge in order to estimate the control flow (i.e. cycles and branches)

Towards NFC-Aware Process Execution for Dynamic Environments Kristof Hamann et al.

  • 10. März 2011

16