results and experiences Sebastian Frank Santiago Vidal SQuAT - - PowerPoint PPT Presentation

results and experiences
SMART_READER_LITE
LIVE PREVIEW

results and experiences Sebastian Frank Santiago Vidal SQuAT - - PowerPoint PPT Presentation

Universidad Nacional del Centro (UNICEN) Institute of Software Technology ISISTAN Research Institute Reliable Software Systems Software Engineering Group Using the CoCoME We already community case study attended for evaluating the SSP


slide-1
SLIDE 1

Institute of Software Technology Reliable Software Systems ISISTAN Research Institute Software Engineering Group

Universidad Nacional del Centro (UNICEN)

Using the CoCoME community case study for evaluating the SQuAT architecture

  • ptimization approach:

results and experiences

Sebastian Frank Santiago Vidal

We already attended SSP ’16... … and SSP ‘17.

slide-2
SLIDE 2
  • Difficulties to manage and optimize

all QAs in a satisfying way, i.e., make everybody happy

  • Monolithic analysis is unnatural
  • Trade-offs between different QA

goals & negotiation among experts in software architecture

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 2

Motivation SQuAT Approach

Performance Expert Modifiability Expert Reliability Expert Client Product Manager

The system must not fail if a server goes down I want the system to be fast, adaptable, fail-proof, secure and cheap We have deadlines and we are running

  • ut of money

If the database changes, we must be prepared We must process 10 million transactions per sec.

Future Work Results Experiences Case Study SQuAT

slide-3
SLIDE 3

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 3

The Bots SQuAT Approach

Scenario (Goal) Model Analyzer Model Optimizer

Workload, Usage Behaviour, CPU Clock Rate Headless Palladio LQN Solver Headless PerOpteryx (Evolutionary Algorithm) Add, Remove, Modify Components & Interfaces KAMP Extension (Change Impact Analysis) Henshin Rules

Performance Bot Modifiability Bot Abstract Bot

Future Work Results Experiences Case Study SQuAT

slide-4
SLIDE 4

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 4

The algorithm SQuAT Approach

Initial Candidate

SQuAT

Proposed Candidates Next Level

Analyze

Optimize

Negotiate

Palladio Component Model Local search Global search

Future Work Results Experiences Case Study SQuAT

M M M M P P P P

slide-5
SLIDE 5

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 5

CoCoME Case Study

Case Study: ST+ Case Study: CoCoME About Business Trip Management Trading System (supermarket) Size 5 Components 4 Alternative Components 51 Components 5 Alternative Components Scenarios 2 Performance Scenarios 2 Modifiability Scenarios 4 Performance Scenarios 4 Modifiability Scenarios Levels 2 5 Quality Fully Modeled “Clean” Partially Modeled (~25%) “Dirty”

Future Work Results Experiences Case Study SQuAT

See SSP ‘17 and/or “Distributed Quality-Attribute Optimization of Software Architectures” (SBCARS)

slide-6
SLIDE 6

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 6

Scenarios in the CoCoME Case Study Case Study

Future Work Results Experiences Case Study SQuAT

Name Stimulus Expected Response P1 Overall Usage Increase +10% < 1.2 seconds P2 Overall Usage Increase +50% < 1.4 seconds P3 Server Fault (1 out of 2 in a cluster) < 1.0 seconds P4 Usage Increase of Specific Service < 2.4 seconds M1 Add NFC Payment Method < 2270 (complexity) M2 Add Premium User Service < 750 (complexity) M3 Add Withdraw Money Function < 170 (complexity) M4 Add Logging Function < 2180 (complexity)

slide-7
SLIDE 7
  • Model Allocation, Usage Behaviour,...

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 7

Model: Preparations Experiences

Future Work Results Experiences Case Study SQuAT

  • Understanding CoCoME
  • Call Graph Tool
  • Side Effect: Bug Fixing
slide-8
SLIDE 8

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 8

Model: Limitations Experiences

Initial Candidate

SQuAT

What are “Events”?

  • Events
  • Composite Components

Proposed Candidates

What are “Composite Components”?

Replace

Future Work Results Experiences Case Study SQuAT

slide-9
SLIDE 9

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 9

Model: Bad Practices Experiences

Initial Candidate

SQuAT

I can replace this component with an arbitrary one. Proposed Candidates Component without Interface Empty Interface

Future Work Results Experiences Case Study SQuAT

Error

slide-10
SLIDE 10

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 10

Model: Validity Experiences

Initial Candidate

SQuAT

Error Proposed Candidates

Future Work Results Experiences Case Study SQuAT

Sometimes my transformations fail I will filter them out!

slide-11
SLIDE 11

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 11

Scalability Experiences

Initial Candidate

SQuAT

Wait some minutes!

Proposed Candidates Size: Big Levels: 5 Model Caching

Filter population.

Seed Selection

Partial Parallelization See you in 3-5 days!

Future Work Results Experiences Case Study SQuAT

Wait some seconds! See you in 25 days!

slide-12
SLIDE 12

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 12

CPU Clock Rate Ripple Effect Experiences

Initial Candidate

SQuAT

  • Max. CPU Clock Rate

Factor: 2x Let’s use it!

I like your candidates!

Again! Again!

4 GHz

>1000 GHz

Proposed Candidates

Future Work Results Experiences Case Study SQuAT

I don’t care

slide-13
SLIDE 13

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 13

CPU Clock Rate Ripple Effect Experiences

Model Optimization Headless PerOpteryx

  • 1. Step:

Automatically Generate Configuration & Optimize Candidate

Call

Future Work Results Experiences Case Study SQuAT

slide-14
SLIDE 14

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 14

CPU Clock Rate Ripple Effect Experiences

Model Optimization Headless PerOpteryx

  • 1. Step:

Automatically Generate Configuration

Call

  • 3. Step:

Optimize Candidate

  • 2. Step:

Modify Configuration

Call

I have a new parameter

Future Work Results Experiences Case Study SQuAT

slide-15
SLIDE 15

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 15

Utility Function Experiences

Initial Candidate

SQuAT

My scenarios are satisfied Proposed Candidates New Utility Function

Future Work Results Experiences Case Study SQuAT

What about me? Worsen performance is more beneficial than improving modifiability

slide-16
SLIDE 16

Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 16

M1 - P1 Results

Initial Candidate

  • Many “good” agreements
  • satisfy Performance Scenario 1
  • satisfy Modifiability Scenario 1

Future Work Results Experiences Case Study SQuAT

11/08/2018

  • Higher levels are useful
slide-17
SLIDE 17

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 17

More Results Results

M2 - P2 M4 - P4

Future Work Results Experiences Case Study SQuAT

Initial Candidate

M3 - P3

slide-18
SLIDE 18
  • Model
  • Quality (“Bad Practices”)
  • Exception Handling Strategies
  • Filters, ...

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 18

Lessons Learned Future Work

Future Work Results Experiences Case Study SQuAT

  • Visualization
  • Understand Changes
  • Compare Models
  • Interaction
  • New Insights at Runtime
  • Human Knowledge
slide-19
SLIDE 19

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 19

Visualization & Interaction Future Work

Future Work Results Experiences Case Study SQuAT

slide-20
SLIDE 20
  • Personalization of Bots
  • Own Utility Function, ...
  • Scalability
  • Microservices
  • Further Parallelization, Caching, ...
  • Usability
  • Natural Language
  • Scenarios & Results
  • Machine Learning

11/08/2018 Using the CoCoME community case study for evaluating the SQuAT architecture optimization approach: results and experiences 20

More Ideas Future Work

Future Work Results Experiences Case Study SQuAT