Towards Corrective Assurance in Adaptive Service-Based Applications Raman Kazhamiakin 1, Andreas Metzger 2, Marco Pistore 1 FBK-Irst, Trento, Italy SSE,

Slides:



Advertisements
Similar presentations
Numbers Treasure Hunt Following each question, click on the answer. If correct, the next page will load with a graphic first – these can be used to check.
Advertisements

1 ZonicBook/618EZ-Analyst Resonance Testing & Data Recording.
1
Kapitel 9. Copyright © Houghton Mifflin Company. All rights reserved.9 | 2 1. Reflexive pronouns.
Technische Universität München + Hewlett Packard Laboratories Dynamic Workload Management for Very Large Data Warehouses Juggling Feathers and Bowling.
Feichter_DPG-SYKL03_Bild-01. Feichter_DPG-SYKL03_Bild-02.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (Parallel Algorithms) Robin Pomplun.
© 2008 Pearson Addison Wesley. All rights reserved Chapter Seven Costs.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
Chapter 1 The Study of Body Function Image PowerPoint
Copyright © 2011, Elsevier Inc. All rights reserved. Chapter 6 Author: Julia Richards and R. Scott Hawley.
Author: Julia Richards and R. Scott Hawley
1 Copyright © 2013 Elsevier Inc. All rights reserved. Appendix 01.
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 3 CPUs.
Properties Use, share, or modify this drill on mathematic properties. There is too much material for a single class, so you’ll have to select for your.
UNITED NATIONS Shipment Details Report – January 2006.
RXQ Customer Enrollment Using a Registration Agent (RA) Process Flow Diagram (Move-In) Customer Supplier Customer authorizes Enrollment ( )
By Rick Clements Software Testing 101 By Rick Clements
Objectives To introduce software project management and to describe its distinctive characteristics To discuss project planning and the planning process.
1 RA I Sub-Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Casablanca, Morocco, 20 – 22 December 2005 Status of observing programmes in RA I.
Title Subtitle.
1 CREATING AN ADMINISTRATIVE DRAW REQUEST (OCC) Complete a Checklist for Administrative Draw Requests (Form 16.08). Draw Requests amount must agree with.
Properties of Real Numbers CommutativeAssociativeDistributive Identity + × Inverse + ×
Create an Application Title 1A - Adult Chapter 3.
FACTORING ax2 + bx + c Think “unfoil” Work down, Show all steps.
Year 6 mental test 5 second questions
Year 6 mental test 10 second questions
1 Discreteness and the Welfare Cost of Labour Supply Tax Distortions Keshab Bhattarai University of Hull and John Whalley Universities of Warwick and Western.
Evaluating Window Joins over Unbounded Streams Author: Jaewoo Kang, Jeffrey F. Naughton, Stratis D. Viglas University of Wisconsin-Madison CS Dept. Presenter:
REVIEW: Arthropod ID. 1. Name the subphylum. 2. Name the subphylum. 3. Name the order.
Pole Placement.
Turing Machines.
DOROTHY Design Of customeR dRiven shOes and multi-siTe factorY Product and Production Configuration Method (PPCM) ICE 2009 IMS Workshops Dorothy Parallel.
PP Test Review Sections 6-1 to 6-6
EU market situation for eggs and poultry Management Committee 20 October 2011.
Copyright © 2013, 2009, 2005 Pearson Education, Inc.
Bellwork Do the following problem on a ½ sheet of paper and turn in.
R12 Assets A Look Inside SM. Copyright © 2008 Chi-Star Technology SM -2- High-Level Overview R12 Setups –Subledger Accounting –ADI Templates –XML Reports.
2 |SharePoint Saturday New York City
BEEF & VEAL MARKET SITUATION "Single CMO" Management Committee 18 April 2013.
VOORBLAD.
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
1 RA III - Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Buenos Aires, Argentina, 25 – 27 October 2006 Status of observing programmes in RA.
Factor P 16 8(8-5ab) 4(d² + 4) 3rs(2r – s) 15cd(1 + 2cd) 8(4a² + 3b²)
Basel-ICU-Journal Challenge18/20/ Basel-ICU-Journal Challenge8/20/2014.
1..
CONTROL VISION Set-up. Step 1 Step 2 Step 3 Step 5 Step 4.
© 2012 National Heart Foundation of Australia. Slide 2.
Adding Up In Chunks.
Understanding Generalist Practice, 5e, Kirst-Ashman/Hull
Note to the teacher: Was 28. A. to B. you C. said D. on Note to the teacher: Make this slide correct answer be C and sound to be “said”. to said you on.
Model and Relationships 6 M 1 M M M M M M M M M M M M M M M M
25 seconds left…...
Datorteknik TopologicalSort bild 1 To verify the structure Easy to hook together combinationals and flip-flops Harder to make it do what you want.
Analyzing Genes and Genomes
We will resume in: 25 Minutes.
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
Essential Cell Biology
Intracellular Compartments and Transport
PSSA Preparation.
Essential Cell Biology
Datorteknik TopologicalSort bild 1 To verify the structure Easy to hook together combinationals and flip-flops Harder to make it do what you want.
Immunobiology: The Immune System in Health & Disease Sixth Edition
Energy Generation in Mitochondria and Chlorplasts
User Defined Functions Lesson 1 CS1313 Fall User Defined Functions 1 Outline 1.User Defined Functions 1 Outline 2.Standard Library Not Enough #1.

Presentation transcript:

Towards Corrective Assurance in Adaptive Service-Based Applications Raman Kazhamiakin 1, Andreas Metzger 2, Marco Pistore 1 FBK-Irst, Trento, Italy SSE, University of Duisburg-Essen, Germany

December 2008 SBA Adaptation  Modern Service-based Applications ■Operate and evolve in highly dynamic environments ■Compose and exploit variety of third-party services ■Subject to rapidly changing requirements and constraints  Adaptation is a key to ■identify of critical problems and changes ■timely accommodate to problems and changes 2

December 2008 Example: dynamic re-binding 3 S1 S21 S3 Composite service S2 S22 x Registry Adaptation S22’ S22 S1 S21 S3 Composite service S2

December 2008 Example:variant specification 4 A BD CE Variant 1 Condition: C.exception Action: Undo C Redo B Skip D Replace E ← E’ Variant 2 Condition: D.exception Action: Undo D Skip D;E Replace C ← C’

December 2008 Adaptation Process  At design time ■Identify dynamic part of SBA: what can change? ■Define adaptation requirements: what should be achieved? ■Define adaptation strategies: how to achieve requirements?  At run-time ■Observe and detect changes and problems ■Execute appropriate adaptation strategies  Adaptation strategies ■Configuration adaptation ■Change of configuration parameters, e.g., re-negotiate SLA QoS properties ■Changes of services bound to the SBA, e.g., re-binding ■Composition adaptation ■Change the composition structure, e.g., re-compose SBA ■Modify path of the process, e.g., rollback to safe point, redo, use alternative branch 5

December 2008 Example: dynamic re-binding 6 S1 S21 S3 Composite service S2 S22 x Registry Adaptation S22’ S22 S1 S21 S3 Composite service S2 ? ? ?

December 2008 Example:variant specification 7 A BD CE Variant 1 Condition: C.exception Action: Undo C Redo B Skip D Replace E ← E’ Variant 2 Condition: D.exception Action: Undo D Skip D;E Replace C ← C’ ? ? ?

December 2008 Need for Correctness Assurance There exists a gap between the adaptation specification provided at design time and adaptation context at run-time  Adaptation may fail or lead to incorrect result! ■Situations unforeseen at design time are encountered ■Extra concurrency between with respect to the adaptation ■Same adaptation activities are chosen even if failed previously  Specific correctness assurance means are necessary 8

December 2008 Agenda  Adaptation in Service-Based Applications ■Configuration and composition adaptation ■Failures in adaptation  Adaptation-specific Failures ■Failures due to incomplete knowledge ■Failures due to concurrent changes ■Undesired adaptation loops  Ensuring Adaptation Correctness ■Using existing correctness assurance approaches ■New extensions and approaches  Conclusions and Future Works 9

December 2008 Failures: Incomplete Knowledge  Adaptation actions are predefined at design time ■the defined adaptation actions will complete successfully in all the foreseen situations … ■… but a new situation is encountered at run-time. ■As a consequence, adaptation actions are impossible or harmful  Configuration adaptation: ■in case of service failure, adaptation aims to find/replace it… ■… but there exist no services with given QoS parameters  Composition adaptation: ■adaptation aims at changing the structure of process instance… ■… but the instance has reached a state where the change is semantically incorrect 10

December 2008 Failures: Incomplete Knowledge  Adaptation actions are predefined at design time ■the defined adaptation actions will complete successfully in all the foreseen situations … ■… but a new situation is encountered at run-time. ■As a consequence, adaptation actions are impossible or harmful  Configuration adaptation: ■in case of service failure, adaptation aims to find/replace it… ■… but there exist no services with given QoS parameters  Composition adaptation: ■adaptation aims at changing the structure of process instance… ■… but the instance has reached a state where the change is semantically incorrect 11 Requirements Avoid predefined adaptation actions Validate applicability of the actions in concrete situation

December 2008 Failures: Concurrent Changes  Adaptation execution is expected to be isolated from application execution ■It is expected that the changes are not very frequent, and adaptation actions are performed while the SBA is not running … ■… but in some cases changes are as fast as the execution! ■So they occur concurrently with the adaptation actions.  Configuration adaptation: ■Optimization requires reconfiguration when QoS degrades… ■… but QoS metrics change too rapidly  Composition adaptation: ■We are executing activities defined by the adaptation specification… ■… but new events occur triggering new adaptation activities 12

December 2008 Failures: Concurrent Changes  Adaptation execution is expected to be isolated from application execution ■It is expected that the changes are not very frequent, and adaptation actions are performed while the SBA is not running … ■… but in some cases changes are as fast as the execution! ■So they occur concurrently with the adaptation actions.  Configuration adaptation: ■Optimization requires reconfiguration when QoS degrades… ■… but QoS metrics change too rapidly  Composition adaptation: ■We are executing activities defined by the adaptation specification… ■… but new events occur triggering new adaptation activities 13 Requirements Model and analyze dynamics of SBA Analyze the impact of the dynamics on the adaptation execution

December 2008 Failures: Adaptation Loop  Adaptation should lead to a new state/configuration ■It is expected that the adaptation completes successfully, so a new situation is achieved, where further adaptation is not needed… ■… but adaptation may fail (partially) or re-generate the problem. ■ Another loop of adaptation is the triggered again  Configuration adaptation: ■Adaptation aims at finding new service to replaces failed ones… ■… but a previously used service can be found instead.  Composition adaptation: ■In reaction to some problem an alternative path is selected and used… ■… but the path also fails with the same problem 14

December 2008 Failures: Adaptation Loop  Adaptation should lead to a new state/configuration ■It is expected that the adaptation completes successfully, so a new situation is achieved, where further adaptation is not needed… ■… but adaptation may fail (partially) or re-generate the problem. ■ Another loop of adaptation is the triggered again  Configuration adaptation: ■Adaptation aims at finding new service to replaces failed ones… ■… but a previously used service can be found instead.  Composition adaptation: ■In reaction to some problem an alternative path is selected and used… ■… but the path also fails with the same problem 15 Requirements Define adaptation such that loops do not occur Monitor loops and define strategies to break them

December 2008 Agenda  Adaptation in Service-Based Applications ■Configuration and composition adaptation ■Failures in adaptation  Adaptation-specific Failures ■Failures due to incomplete knowledge ■Failures due to concurrent changes ■Undesired adaptation loops  Ensuring Adaptation Correctness ■Using existing correctness assurance approaches ■New extensions and approaches  Conclusions and Future Works 16

December 2008 Correctness Assurance 17 Correctness Assurance Analytical techniques Constructive techniques MonitoringTesting SimulationVerification Automated Configuration Model-driven design Automated composition

December 2008 Correctness Assurance 18 Correctness Assurance Analytical techniques Constructive techniques MonitoringTesting SimulationVerification Automated Configuration Model-driven design Automated composition Offline Online

December 2008 Correctness Assurance 19 Correctness Assurance Analytical techniques Constructive techniques MonitoringTesting SimulationVerification Automated Configuration Model-driven design Automated composition Composition Configuration

December 2008 Correctness Assurance 20 Correctness Assurance Analytical techniques Constructive techniques MonitoringTesting SimulationVerification Automated Configuration Model-driven design Automated composition Not readily applicable to deal with adaptation-specific failures!

December 2008 Example: dynamic re-binding 21 S1 S21 S3 Composite service S2 S22 x Registry Adaptation S22’ S22 S1 S21 S3 Composite service S2 ? ? ? Monitor / test the execution environment at deployment time to check if the registry is available and reachable to check if there are backup services available to check if the backup services can be used as replacements Collect statistics / metrics on availability availability of the registry services: more stable services are to be preferred as replacements

December 2008 Example:variant specification 22 A BD CE Variant 1 Condition: C.exception Action: Undo C Redo B Skip D Replace E ← E’ Variant 2 Condition: D.exception Action: Undo D Skip D;E Replace C ← C’ ? ? ? Verification and validation of the adaptation to check if the proposed adaptations are correct in all circumstances to evaluate the effects of multiple / nested adaptations Guarantee by construction correctness / completeness of adaptation E.g., by using model driven techniques Monitor adaptation histories to detect and break adaptation loop Monitor / test the execution environment at deployment time to check that the adaptation strategies are supported

December 2008 Adaptation-specific Techniques 23 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition

December 2008 Adaptation-specific Techniques 24 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Verification / validation of the adaptation specification at design time

December 2008 Adaptation-specific Techniques 25 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Evaluate some properties of the environment in order to estimate future adaptation behaviors

December 2008 Adaptation-specific Techniques 26 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Validate / simulate critical properties before SBA execution given the specific run- time situation

December 2008 Adaptation-specific Techniques 27 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Use data on previous adaptations and outcomes to drive decisions / break loops

December 2008 Adaptation-specific Techniques 28 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Use model driven techniques to compose not just the SBA but also the adaptation strategies

December 2008 Adaptation-specific Techniques 29 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Combine automated composition with the run-time information

December 2008 Adaptation-specific Techniques 30 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Identify “stable” services / properties that can be used at design or adaptation to reduce dynamicity

December 2008 Adaptation-specific Techniques 31 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Offline Online

December 2008 Adaptation-specific Techniques 32 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Composition Configuration

December 2008 Adaptation-specific Techniques 33 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Failures due to incomplete knowledge

December 2008 Adaptation-specific Techniques 34 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability metrics Built-in adaptation Online automated composition Failures due to concurrent changes

December 2008 Adaptation-specific Techniques 35 Correctness Assurance Analytical techniques Constructive techniques Monitoring adaptation histories Online verification Offline adaptation analysis Pre- deployment monitoring Stability netrics Built-in adaptation Online automated composition Undesired adaptation loops

December 2008 Agenda  Adaptation in Service-Based Applications ■Configuration and composition adaptation ■Failures in adaptation  Adaptation-specific Failures ■Failures due to incomplete knowledge ■Failures due to concurrent changes ■Undesired adaptation loops  Ensuring Adaptation Correctness ■Using existing correctness assurance approaches ■New extensions and approaches  Conclusions and Future Works 36

December 2008 Conclusions  Adaptation in SBA introduces additional levels of complexity ■Specific problems and failures ■Cannot be addressed using existing correctness assurance approaches ■Novel approaches to QA in adaptive SBA are necessary  It is necessary to extend the existing methodologies ■Existing approaches should be evolved to take adaptation specifications into account ■Offline adaptation analysis, built-in adaptation, monitoring adaptation histories, stability metrics ■Offline approaches should be extended to work online ■Online automated composition, online verification 37

December * The research leading to these results has received funding from the European Community's Seventh Framework Programme FP7/ under grant agreement (S-Cube). Thank you!*

December 2008