Daniel A. Menasc, John M. Ewing, Hassan Gomaa, Sam Malek, and Joo P. - - PowerPoint PPT Presentation

daniel a menasc john m ewing hassan gomaa sam malek and
SMART_READER_LITE
LIVE PREVIEW

Daniel A. Menasc, John M. Ewing, Hassan Gomaa, Sam Malek, and Joo P. - - PowerPoint PPT Presentation

Daniel A. Menasc, John M. Ewing, Hassan Gomaa, Sam Malek, and Joo P. Sousa The Volgenau School of Information Technology and Engineering Department of Computer Science George Mason University www.cs.gmu.edu/faculty/menasce.html 1 SASSY


slide-1
SLIDE 1

Daniel A. Menascé, John M. Ewing, Hassan Gomaa, Sam Malek, and João P. Sousa The Volgenau School of Information Technology and Engineering Department of Computer Science George Mason University www.cs.gmu.edu/faculty/menasce.html

1

slide-2
SLIDE 2
  • SASSY Overview
  • From Service Activity Schemas to System

Service Architectures

  • Optimal Architecting and Re-Architecting
  • Experimental Results
  • Concluding Remarks

2

slide-3
SLIDE 3

High-level view of the SASSY framework

3

slide-4
SLIDE 4

4

slide-5
SLIDE 5

5

slide-6
SLIDE 6
  • Performance Model
  • Utility Function

UAvail(a) = KAvail e

αAvail β Avail −a

( )

1+ e

αAvail β Avail −a

( )

KAvail = (1+ e

αAvail β Avail −1

( ))

e

αAvail β Avail −1

( )

αAvail = −100.0 βAvail = 0.95

6

slide-7
SLIDE 7
  • Three SC levels of security

– low, medium, high

  • Overall SC level is equal to

minimum level

  • Performance overhead on a

service instance:

– Low: none – Medium: +0.05 s & -1.5 tps – High: +0.12 s & -3.0 tps

  • Utility Function

– Low = 0.2 – Medium = 0.8 – High = 1.0

7

slide-8
SLIDE 8
  • Performance Model
  • Utility Function

UExTi(e) = KExTi e

αExTi β ExTi −e

( )

1+ e

αExTi β ExTi −e

( )

KExTi = (1+ eαExTi ⋅β ExTi ) eαExTi ⋅β ExTi αExTi = 0.5 βExTi = 65.0

8

slide-9
SLIDE 9
  • Performance Model
  • Utility Function

UXput(x) = e

αXput β Xput −x

( )

1+ e

αXput β Xput −x

( )

αXput = −0.5 βXput =14.0

9

slide-10
SLIDE 10

SSS Name wi Secure Communication 0.2 Secure Storage 1 0.1 Secure Storage 2 0.1 Execution Time 0.2 Availability 0.2 Throughput 0.2

slide-11
SLIDE 11
  • SASSY Overview
  • From Service Activity Schemas to System

Service Architectures

  • Optimal Architecting and Re-Architecting
  • Experimental Results
  • Concluding Remarks

11

slide-12
SLIDE 12
  • SSA offers structural and behavioral models

for an SOA system:

  • Structural: eXtensible Architectural Description

Language (xADL) extended with service instances.

– A service instance is the realization of a service type defined in the ontology

  • Behavioral: state machine view based on Finite State

Processes (FSP).

  • SASSY automatically generates base structural

and behavioral models from the SAS.

12

slide-13
SLIDE 13
slide-14
SLIDE 14

SSS Utility Function QoS Metric QoS Model Pattern Component Service Type Service Provider

1 1 1 1..* 1..* 1..* 1..* 1..*

Has Uses ComputedBy Includes Includes Includes ImplementedBy Influences

Class Diagram for SSSs

slide-15
SLIDE 15
  • SASSY Overview
  • From Service Activity Schemas to System

Service Architectures

  • Optimal Architecting and Re-Architecting
  • Experimental Results
  • Concluding Remarks

15

slide-16
SLIDE 16

Find an architecture A* and a corresponding service provider allocation Z* such that

(A*,Z*) = argmax(A,Z )Ug(A,Z)

This is an NP-hard problem. We will use heuristic techniques.

slide-17
SLIDE 17
slide-18
SLIDE 18
slide-19
SLIDE 19
  • SASSY Overview
  • From Service Activity Schemas to System

Service Architectures

  • Optimal Architecting and Re-Architecting
  • Experimental Results
  • Concluding Remarks

19

slide-20
SLIDE 20

Service Type & Vendor Capacity (tps) ExTi (s) Availability Cost Road Map Acme 15.0 0.2 0.900 50.00 Road Map Pinnacle 12.5 3.0 0.990 100.00 Road Map ServiceTron 7.5 0.3 0.985 150.00 Road Map Apex 17.5 1.0 0.975 250.00 Weather Acme 16.5 0.1 0.980 100.00 Weather Pinnacle 13.5 5.0 0.999 200.00 Weather ServiceTron 10.0 0.8 0.995 300.00 Weather Apex 18.0 0.6 0.990 250.00 ID Threat Intellifort 13.0 1.5 0.990 500.00 ID Threat InfoSafe 15.5 2.9 0.985 400.00 ID Threat CryptIT 17.0 1.8 0.995 550.00 Make Plan DataCrunch 15.0 48.5 0.940 1500.00 Make Plan OR Gurus 19.0 92.0 0.990 2000.00 Make Plan MasterPlan 7.0 83.2 0.965 1600.00 Eval Plan DataCrunch 17.0 5.2 0.985 150.00 Eval Plan OR Gurus 14.5 9.8 0.995 200.00 Eval Plan Master Plan 7.5 3.9 0.990 250.00

slide-21
SLIDE 21
  • Three Patterns:

– Basic (B)

  • Minimum: 1 service instance
  • Maximum: 1 service instance

– fast Fault Tolerant (fFT)

  • Helps with Availability and Execution Time
  • Minimum: 2 service instances
  • Maximum: 3 service instances

– Load Balancing (LB)

  • Helps with Throughput and Execution Time
  • Minimum: 2 service instances
  • Maximum: 3 service instances
slide-22
SLIDE 22
  • Sends copy of request to each connected

service instance.

  • Returns first response immediately.
  • Assumption: fFT connector is not aware of

a service instance’s status (“up” or “down”).

slide-23
SLIDE 23
  • Forwards request to a service instance using

weighted round-robin based on capacity

  • Assumption: LB connector is not aware of

a service instance’s status (“up” or “down”)

slide-24
SLIDE 24
slide-25
SLIDE 25

Service Type Instance # Vendor Road Map 1 Pinnacle Weather 1 Acme ID Threat 1 Intellifort Make Plan 1 Data Crunch Eval Plan 1 Data Crunch Utility Type Metric Score Global N/A 0.141

  • Sec. Communication

Low 0.200 Secure Storage 1 Low 0.400 Secure Storage 2 Low 0.400 Availability 0.889 0.002 Execution Time Utility 56.70 0.997 Throughput Utility 12.38 0.307

slide-26
SLIDE 26
  • Initial neighborhood of Base:

– fFT n = 2, Road Map, Ug=0.170 – fFT n = 2, Weather, Ug=0.203 – fFT n = 2, ID Threats, Ug=0.169 – fFT n = 2, Make Plan, Ug=0.391 – fFT n = 2, Eval Plan, Ug=0.185 – Sec Com Lvl = Med, Ug=0.173

  • Move search to visited 1:

– fFT n = 2, Make Plan, Ug=0.391

slide-27
SLIDE 27

Service Type Instance # Vendor Road Map 1 Pinnacle Weather 1 Acme ID Threat 1 Intellifort Make Plan 1 Data Crunch Make Plan 2 OR Gurus Eval Plan 1 Data Crunch Utility Type Metric Score Global N/A 0.391

  • Sec. Communication

Low 0.200 Secure Storage 1 Low 0.400 Secure Storage 2 Low 0.400 Availability 0.946 0.393 Execution Time Utility 59.29 0.946 Throughput Utility 12.38 0.307

slide-28
SLIDE 28
  • Initial neighborhood of visited 1:

– Sec Com Lvl = Med, Ug= 0.479 – LB n = 2, Road Map, Ug= 0.361 – LB n = 2, Weather, Ug=0.425 – LB n = 2, ID Threats, Ug=0.378 – LB n = 2, Make Plan, Ug=0.046 – LB n = 2, Eval Plan, Ug=0.402 – fFT n = 3, Make Plan, Ug=0.000

  • Move search to visited 2:

– Sec Com Lvl = Med, Ug= 0.479

slide-29
SLIDE 29

Service Type Instance # Vendor Road Map 1 Pinnacle Weather 1 Acme ID Threat 1 Intellifort Make Plan 1 Data Crunch Make Plan 2 OR Gurus Eval Plan 1 Data Crunch Utility Type Metric Score Global N/A 0.479

  • Sec. Communication

Med 0.800 Secure Storage 1 Low 0.400 Secure Storage 2 Low 0.400 Availability 0.946 0.393 Execution Time Utility 59.39 0.943 Throughput Utility 11.39 0.213

slide-30
SLIDE 30
  • Initial neighborhood of visited 2:

– LB n = 2, Road Map, Ug= 0.438 – LB n = 2, Weather, Ug=0.521 – LB n = 2, ID Threats, Ug=0.498 – LB n = 2, Make Plan, Ug=0.054 – LB n = 2, Eval Plan, Ug=0.493 – fFT n = 3, Make Plan, Ug=0.000 – fFT n = 2, Road Map, Ug= 0.528 – fFT n = 2, Weather, Ug=0.555 – fFT n = 2, ID Threats, Ug=0.530 – fFT n = 2, Eval Plan, Ug=0.543

  • Move search to visited 3:

– fFT n = 2, Weather, Ug=0.555

slide-31
SLIDE 31

Service Type Instance # Vendor Road Map 1 Pinnacle Weather 1 Acme Weather 2 Pinnacle ID Threat 1 Intellifort Make Plan 1 Data Crunch Make Plan 2 OR Gurus Eval Plan 1 Data Crunch Utility Type Metric Score Global N/A 0.555

  • Sec. Communication

Med 0.800 Secure Storage 1 Low 0.400 Secure Storage 2 Low 0.400 Availability 0.965 0.820 Execution Time Utility 59.39 0.943 Throughput Utility 11.39 0.213

slide-32
SLIDE 32
slide-33
SLIDE 33

Service Type Instance # Vendor Road Map 1 Pinnacle Weather 1 Acme Weather 2 Pinnacle ID Threat 1 Intellifort ID Threat 2 InfoSafe ID Threat 3 CryptIT Make Plan 1 Data Crunch Make Plan 2 OR Gurus Eval Plan 1 Data Crunch Utility Type Metric Score Global N/A 0.655

  • Sec. Communication

Med 0.800 Secure Storage 1 Med 0.700 Secure Storage 2 Med 0.700 Availability 0.965 0.823 Execution Time Utility 59.43 0.942 Throughput Utility 12.10 0.279

slide-34
SLIDE 34
slide-35
SLIDE 35
  • A sudden change occurs in the behavior of a

key service instance.

  • Either SASSY monitoring services detect

the change or service provider notifies SASSY.

  • Begin architecture search starting from

current architecture.

slide-36
SLIDE 36

Service Type & Vendor Capacity (tps) Execution Time (s) Availability Cost Road Map Acme 15.0 0.2 0.900 50.00 Road Map Pinnacle 6.5 (12.5) 12.0 (3.0) 0.75 (0.990) 100.00 Road Map ServiceTron 7.5 0.3 0.985 150.00 Road Map Apex 17.5 1.0 0.975 250.00 Weather Acme 16.5 0.1 0.980 100.00 Weather Pinnacle 13.5 5.0 0.999 200.00 Weather ServiceTron 10.0 0.8 0.995 300.00 Weather Apex 18.0 0.6 0.990 250.00 ID Threat Intellifort 13.0 1.5 0.990 500.00 ID Threat InfoSafe 15.5 2.9 0.985 400.00 ID Threat CryptIT 17.0 1.8 0.995 550.00 Make Plan DataCrunch 15.0 48.5 0.940 1500.00 Make Plan OR Gurus 19.0 92.0 0.990 2000.00 Make Plan MasterPlan 7.0 83.2 0.965 1600.00 Eval Plan DataCrunch 17.0 5.2 0.985 150.00 Eval Plan OR Gurus 14.5 9.8 0.995 200.00 Eval Plan Master Plan 7.5 3.9 0.990 250.00

slide-37
SLIDE 37
slide-38
SLIDE 38

Service Type Instance # Vendor Road Map 1 Acme Road Map 2 Apex Weather 1 Acme Weather 2 Pinnacle ID Threat 1 Intellifort ID Threat 2 InfoSafe Make Plan 1 Data Crunch Make Plan 2 OR Gurus Eval Plan 1 Data Crunch Eval Plan 2 OR Gurus Utility Type Metric Score Global N/A 0.643

  • Sec. Communication

Med 0.800 Secure Storage 1 Low 0.400 Secure Storage 2 Med 0.700 Availability 0.984 0.975 Execution Time Utility 58.81 0.957 Throughput Utility 12.10 0.279

slide-39
SLIDE 39
slide-40
SLIDE 40

40

slide-41
SLIDE 41
  • SASSY Overview
  • From Service Activity Schemas to System

Service Architectures

  • Optimal Architecting and Re-Architecting
  • Experimental Results
  • Concluding Remarks

41

slide-42
SLIDE 42
  • QoS-driven autonomic approach to

architecture design and adaptation.

  • Uniform approach to adaptation and

evolution.

  • Near-optimal solutions can be found in near

real-time (3000 architectural evaluations in just over 2 sec)

  • Related work: JOpera and MOSES

42

slide-43
SLIDE 43
  • Distributed version of the search technique.
  • Experimentation with other search

techniques (e.g., beam search, simulated annealing, tabu search).

  • Evaluation of other filtering techniques to

find neighborhoods.

43

slide-44
SLIDE 44
  • “Self-Architecting Software SYstems (SASSY) From QoS-Annotated Models,” S. Malek, N.

Esfahani, D.A. Menascé, J.P. Sousa, and H. Gomaa, Proc. of the ICSE 2009 workshop on Principles of Engineering Service Oriented Systems, Vancouver, Canada, May 18-19, 2009.

  • “A Modeling Language for Activity-Oriented Composition of Service-Oriented Software

Systems,” N. Esfahani, S. Malek, J.P. Sousa, H. Gomaa, and D.A. Menascé, ACM/IEEE 12th International Conference on Model Driven Engineering Languages and Systems, Denver, CO, October 2-4, 2009.

  • “A Framework for Utility-Based Service Oriented Design in SASSY,” D.A. Menascé, J. Ewing,
  • H. Gomaa, S. Malek, and J.P. Sousa, First Joint WOSP/SIPEW International Conference on

Performance Engineering (WOSP/SIPEW 2010), San Jose, California, USA January 28-30, 2010.

  • “Software Adaptation Patterns for Service Oriented Architectures,” H. Gomaa, K. Hashimoto, M.

Kim, S. Malek, and D.A. Menascé, Proc. 25th ACM Symposium on Applied Computing, Dependable and Adaptive Distributed Systems, Sierre, Switzerland, March 22-26, 2010.

  • “On Optimal Service Selection in Service Oriented Architectures,” D.A. Menascé, E. Casalicchio,

and V. Dubey, Performance Evaluation Journal, Elsevier, in press, available on line.

  • “Optimal Service Selection Heuristics in Service Oriented Architectures,” E. Casalicchio, D.A.

Menascé, V. Dubey, and L. Silvestri, The 3rd International Workshop on Advanced Architectures and Algorithms for Internet DElivery and Applications (AAA-IDEA 2009), Las Palmas de Gran Canaria, The Canary Islands, Spain, November 26, 2009.

44

slide-45
SLIDE 45

Thanks to the National Science Foundation (Grant CCF-0820060)

45