ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 -...

55
DFG Priority Programme 1593 Design For Future - Managed Software Evolution ICSA 2017 Tutorial Runtime Modeling and Visualization -- Introduction to Palladio R. Heinrich ICSA 2017 Tutorial Introduction to Palladio

Transcript of ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 -...

Page 1: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

DFG Priority Programme 1593Design For Future - Managed Software Evolution

ICSA 2017 Tutorial Runtime Modeling and Visualization

--Introduction to Palladio

R. Heinrich ICSA 2017 Tutorial Introduction to Palladio

Page 2: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

2

Schedule of Events

09:00 – 09:10 Welcome and General Introduction

09:10 – 09:40 Study Foundations

09:40 – 10:00 Model-based Software Application Monitoring

10:00 – 10:30 Runtime Architecture Modeling and Visualization10:30 – 11:00 Coffee Break11:00 – 12:15 Introduction to the ExplorViz, Palladio, and iObserve

Approaches with following Tool / Visualization Demos12:15 – 12:30 Study Setup

12:30 – 14:00 Lunch

14:00 – 15:30 Comprehensibility Study

15:30 – 16:00 Coffee Break

16:00 – 16:30 Live Database Trace Visualization in Large Software Landscapes

16:30 – 17:00 Feedback and Open Discussion

Robert Heinrich: Introduction to Palladio

Page 3: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

3

Palladio Book

Robert Heinrich: Introduction to Palladio

By Ralf H. Reussner, Steffen Becker, Jens Happe, Robert Heinrich, Anne Koziolek, Heiko Koziolek, Max Kramer and Klaus Krogmann

400 pp., 98 illus.ISBN: 9780262034760

MIT Press, Cambridge, MA, October 2016.

Page 4: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

4

Overview

IntroductionPalladioPalladio Component Model (PCM) as a Modeling Language used by Palladio ApproachRoles in Component -based Software Development

Component DeveloperSoftware ArchitectSystem DeployerDomain Expert

Conclusion / Summary

Robert Heinrich: Introduction to Palladio

Page 5: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

5

Overview

IntroductionPalladioPalladio Component Model (PCM) as a Modeling Language used by Palladio ApproachRoles in Component -based Software Development

Component DeveloperSoftware ArchitectSystem DeployerDomain Expert

Conclusion / Summary

Robert Heinrich: Introduction to Palladio

Page 6: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

6

Introduction

Prediction of quality properties on a model basefor systematic design of software systemsperformance, reliability, costs

Derive performance metrics from the models usinganalytical techniques andsimulation

Robert Heinrich: Introduction to Palladio

Page 7: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

7

Overview

IntroductionPalladioPalladio Component Model (PCM) as a Modeling Language used by Palladio ApproachRoles in Component -based Software Development

Component DeveloperSoftware ArchitectSystem DeployerDomain Expert

Conclusion / Summary

Robert Heinrich: Introduction to Palladio

Page 8: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

8

Andrea Palladio (30 November 1508 – 19 August 1580) was an Italian architect active in the Republic of Venice. Palladio, influenced by Roman and Greek architecture, primarily by Vitruvius, is widely considered the most influential individual in the history of Western architecture. All of his buildings are located in what was the Venetian Republic, but his teachings, summarized in the architectural treatise, The Four Books of Architecture, gained him wide recognition.

[Wikipedia]

Andrea Palladio

Robert Heinrich: Introduction to Palladio

Page 9: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

9

Palladio is an approach for the definition of software architectures with a special focus on performance properties.

The Palladio Component Modelas one example for a conceptually clear component modelgives an overview on component conceptsdefines a process view

[Reussner 2016a]

Palladio

Robert Heinrich: Introduction to Palladio

Page 10: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

10

Overview

IntroductionPalladioPalladio Component Model (PCM) as a Modeling Language used by Palladio ApproachRoles in Component -based Software Development

Component DeveloperSoftware ArchitectSystem DeployerDomain Expert

Conclusion / Summary

Robert Heinrich: Introduction to Palladio

Page 11: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

11

The Palladio Component Model (PCM) is designed to enable early performance predictions for software architecturesAligned with a component-based software development process

Targets at Performance prediction for component-based software architecturesBusiness information systems

Palladio Component Model (1)

Robert Heinrich: Introduction to Palladio

Page 12: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

12

Enables developers to create PCM model instances with graphical editorsDerives performance metrics from the models using

Analytical techniques andSimulation

Development started in 2003 Model is named after famous Italian Renaissance architect Andrea Palladio (1508-1580)Extensive metamodel in EMF/Ecore

Palladio Component Model (2)

Robert Heinrich: Introduction to Palladio

Page 13: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

13

Systematic design of software systemsUse of component -based technologiesFocus: Quality properties

In particular: PerformanceUtilises model-driven performance prediction approaches

Application of PCM

Robert Heinrich: Introduction to Palladio

Page 14: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

14

Supports the whole component -based design processAnalysis approaches provide hints on performance bottlenecks / issues

Tool: PCMBench

Robert Heinrich: Introduction to Palladio

Page 15: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

15

Analytical solvablePerformance jumpsCritical contention levels

SimulationFaster than “real” execution

Performance predictionsat design time

Extensions oflegacy software systems

Why Creating Models?

Robert Heinrich: Introduction to Palladio

Page 16: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

16

[Becker2006a]

Component Performance (1)

Robert Heinrich: Introduction to Palladio

Page 17: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

17

All influence factors are made explicit in the PCMRequired for conceptually clear componentsSupported context changes:

Allocation context execution system (hardware / middleware / virtual machines)Usage context usage profileAssembly context “wiring” (other components fulfil a required services)

Explicit parameters in the PCM

Component Performance (2)

Robert Heinrich: Introduction to Palladio

Page 18: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

18

Changing hardwareSizing / scalability / relocation

Changes in usage profileUsers interact differently with the system

Changes in assembly context

vs.

vs.

vs.

Supported Context Changes

Robert Heinrich: Introduction to Palladio

Page 19: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

19

?

What are the intuitive inputs and outputs for a performanceprediction model?

?also see: http://www.youtube.com/watch?v=H0Gj-kdGhRs

Component Description

Robert Heinrich: Introduction to Palladio

Page 20: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

20

Overview

IntroductionPalladioPalladio Component Model (PCM) as a Modeling Language used by Palladio ApproachRoles in Component -based Software Development

Component DeveloperSoftware ArchitectSystem DeployerDomain Expert

Conclusion / Summary

Robert Heinrich: Introduction to Palladio

Page 21: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

21

Idea

Component Based Software Engineering (CBSE) principles require

Third party use Readily composable

Separate developer roles

Component performance depends onExternal servicesResource environmentUsage

SEFF and parameterisation

Robert Heinrich: Introduction to Palladio

Page 22: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

22

Developer Roles

Robert Heinrich: Introduction to Palladio

Page 23: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

23

Developer Roles

ComponentDevelopers

Software Architect

System Deployer

Domain Expert

[Becker2007a]

Robert Heinrich: Introduction to Palladio

Page 24: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

24

Developer Roles

Dom. Exp.DSL Instance

Sys. Depl.DSL Instance

Soft. Arch.DSL Instance

Comp.Dev.DSL Instance

StochasticRegular Expr.

Analysis

SPA withScheduling

Analysis +Simulation

QueueingNetwork

PerformancePrototype

Java CodeSkeletons

Simulation

Execution +Measurement

Completion +Compilation

Instance

PalladioComponentModel

[Becker2007a]

Robert Heinrich: Introduction to Palladio

Page 25: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

25

Overview

IntroductionPalladioPalladio Component Model (PCM) as a Modeling Language used by Palladio ApproachRoles in Component -based Software Development

Component DeveloperSoftware ArchitectSystem DeployerDomain Expert

Conclusion / Summary

Robert Heinrich: Introduction to Palladio

Page 26: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

26

Component Developer: Tasks

Specifies components & interfacesSpecifies data typesBuilds composite componentsCreates service effect specificationsStores modelling & implementation artefacts in repositoriesImplements componentsTests componentsMaintains components

ComponentDeveloper

Robert Heinrich: Introduction to Palladio

Page 27: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

27

Example: Component Description in Palladio

Component interfaces need to be describedCreated components are stored in a repository

ComponentDeveloper

Robert Heinrich: Introduction to Palladio

Page 28: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

28

Example: Service Effect Specification: Idea

ComponentA

ComponentBa()

b()c()

ComponentCd()

SEFF

ComponentDeveloper

Robert Heinrich: Introduction to Palladio

Page 29: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

29

Example: Service Effect Specification: Idea

a:

c

b

SEFF

b

c

a 10ms

5ms

28ms 20ms33ms?

ComponentDeveloper

Robert Heinrich: Introduction to Palladio

Page 30: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

30

Example: Service Effect Specification in Palladio

Component behaviour needs to be described in so -called Service Effect Specification (SEFF)

ComponentDeveloper

Robert Heinrich: Introduction to Palladio

Page 31: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

31

Example: Composite Component in Palladio

Composed from Basic Components and/or other Composite Components

ComponentDeveloper

Robert Heinrich: Introduction to Palladio

Page 32: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

32

Overview

IntroductionPalladioPalladio Component Model (PCM) as a Modeling Language used by Palladio ApproachRoles in Component -based Software Development

Component DeveloperSoftware ArchitectSystem DeployerDomain Expert

Conclusion / Summary

Robert Heinrich: Introduction to Palladio

Page 33: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

33

Software Architect: Tasks (1/2)

Specifies an architecture (boxes and lines)from existing components and interfaces

Specifies new components and interfaces

Uses architectural stylesand architectural patterns

Analyses architectural specification and makes design decisions

SoftwareArchitect

Robert Heinrich: Introduction to Palladio

Page 34: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

34

Software Architect: Tasks (2/2)

Conducts performance prediction based on architectural specification

Delegates implementation tasks to component developers

Guides the whole development process

SoftwareArchitect

Robert Heinrich: Introduction to Palladio

Page 35: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

35

System Model

Models the component-based architecture to be analysedMay include components from different repositoriesProvides an interface for usersExcludes uninteresting services and connects to them via system required interfacesIs a prerequisite for the system deployerto allocate the components

<<System>>

SoftwareArchitect

Robert Heinrich: Introduction to Palladio

Page 36: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

36

Example: System Composition in Palladio

System is composed of components from repository

SoftwareArchitect

Robert Heinrich: Introduction to Palladio

Page 37: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

37

QoS Annotation

System Required Interfaces: connection to functionality not modelled in the systemExample: web service, unknown componentExecution time specification necessary

<<System>>

Execution Time = 250 ms

SoftwareArchitect

Robert Heinrich: Introduction to Palladio

Page 38: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

38

Example: Performance Evaluation in Palladio

SoftwareArchitect

Robert Heinrich: Introduction to Palladio

Page 39: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

39

Overview

IntroductionPalladioPalladio Component Model (PCM) as a Modeling Language used by Palladio ApproachRoles in Component -based Software Development

Component DeveloperSoftware ArchitectSystem DeployerDomain Expert

Conclusion / Summary

Robert Heinrich: Introduction to Palladio

Page 40: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

40

System Deployer: Tasks

Models the resource environment (e.g., middleware, OS, hardware)Models the allocation of components to resourcesSets up the resource environment (e.g., installing application servers, configuring hardware)Deploys components on resources (e.g., writing deployment descriptors)Maintains the running system

SystemDeployer

Robert Heinrich: Introduction to Palladio

Page 41: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

41

Resource Types

Abstract specification of resources (e.g. CPU, HD, Net)Why?

concrete resources (e.g. 2 GHz CPU, 20 MB/s HD, 1 Gbit/s Net) unknown during component specification and implementation

Thus: component developers provide SEFF specifications referring to resource typesOnce the concrete resource environmentis specified, timing values can be derived

SystemDeployer

Robert Heinrich: Introduction to Palladio

Page 42: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

42

Resource Types in PCM

CPU HD

MemoryNetwork SystemDeployer

Robert Heinrich: Introduction to Palladio

Page 43: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

43

Example: Resource Environment in Palladio

Subsumes resources Connects resource containers

Physical resourceSystem

Deployer

Robert Heinrich: Introduction to Palladio

Page 44: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

44

Example: Allocation in Palladio

Assigns component to a resource container

SystemDeployer

Robert Heinrich: Introduction to Palladio

Page 45: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

45

Software Architect vs. System Deployer

Software ArchitectSpecification of a system“Wiring” of components

System DeployerResource typesSpecification of a resource environmentSpecification of an allocation

Robert Heinrich: Introduction to Palladio

Page 46: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

46

Overview

IntroductionPalladioPalladio Component Model (PCM) as a Modeling Language used by Palladio ApproachRoles in Component -based Software Development

Component DeveloperSoftware ArchitectSystem DeployerDomain Expert

Conclusion / Summary

Robert Heinrich: Introduction to Palladio

Page 47: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

47

Domain Expert: Tasks

Familiar with the business domainSpecifies user behaviour

Number of usersUser requests to the systemInput parameters characterisations

DomainExpert

Robert Heinrich: Introduction to Palladio

Page 48: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

48

Usage Model

Models user behaviour, not component!Similar to SEFFs, but

Does not refer to resourcesDoes not refer to inner components of a systemDoes not model parametric dependenciesIncludes a workload specification

Usage Model 1…n usage scenarios (1 per use case)1 workload per usage scenario

DomainExpert

Robert Heinrich: Introduction to Palladio

Page 49: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

49

Usage Model

Workload: open or closed

Branch

Call to a system provided service

Loop

Variable Usage

Usage Scenario

DomainExpert

Robert Heinrich: Introduction to Palladio

Page 50: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

50

Overview

IntroductionPalladioPalladio Component Model (PCM) as a Modeling Language used by Palladio ApproachRoles in Component -based Software Development

Component DeveloperSoftware ArchitectSystem DeployerDomain Expert

Conclusion / Summary

Robert Heinrich: Introduction to Palladio

Page 51: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

51

Summary: Contexts: Specified Properties

Assembly ContextHorizontal Composition: Binding to other ComponentsVertical Composition: Encapsulation in Composite Components

Allocation ContextAllocation to Hardware ResourcesConfiguration

Component, Container CommunicationSecurity, Concurrency

Usage ContextUsage at System BoundariesUser Arrival RateNumber of UsersRequest ProbabilitiesParameter Values

[Becker2008]

Robert Heinrich: Introduction to Palladio

Page 52: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

52

Summary: Contexts and Roles

Assembly Context Allocation Context Usage ContextSpecified by Software Architect: Specified by System Deployer: Specified by Domain Expert:

Horizontal Composition: Binding to other Components

Vertical Composition: Encapsulation in Composite Components

Allocation to Hardware Resources

Configuration Component, Container Communication Security, Concurrency …

Usage at System Boundaries User Arrival Rate Number of Users Request Probabilities Parameter Values

Computed by Tools: Computed by Tools: Computed by Tools:

Behaviour of the wholesystem “Overall SEFF”

Allocation-dependent QoSCharacteristics Timing Values

for Resource Demands Failure Probabilities …

Usage inside Components Branch Probabilities Loop Iteration

Numbers Input/Output

Parameters Usage-dependent

Resource Demands

Robert Heinrich: Introduction to Palladio

Page 53: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

53

Palladio – Tool-Demo

PCM Installation:The PCM 4.0.0 release is only available for Eclipse 4.4 (Luna) and Eclipse 4.5 (Mars). Download the Eclipse Luna Standard or Modeling Package:

http://www.eclipse.org/downloads/Optional: Edit the eclipse.ini to change the memory settings to -Xms64m -Xmx2048m Install Palladio from the site:

https://sdqweb.ipd.kit.edu/eclipse/palladiobench/releases/4.0.0/Media Store

https://svnserver.informatik.kit.edu/i43/svn/code/CaseStudies/MediaStore3/branches/PCM nightly build model/Model/MediaStore3_ModelUsername: swaq2016Password: swaq2016mediastore

Robert Heinrich: Introduction to Palladio

Page 54: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

54

Palladio Book

Robert Heinrich: Introduction to Palladio

By Ralf H. Reussner, Steffen Becker, Jens Happe, Robert Heinrich, Anne Koziolek, Heiko Koziolek, Max Kramer and Klaus Krogmann

400 pp., 98 illus.ISBN: 9780262034760

MIT Press, Cambridge, MA, October 2016.

Page 55: ICSA 2017 Tutorial Runtime Modeling and Visualization ...eprints.uni-kiel.de/37439/7/6 - Palladio.pdf · The Palladio Component Model as one example for a conceptually clear component

55

References

[Reussner 2016a] Ralf H. Reussner, Steffen Becker, Jens Happe, Robert Heinrich, Anne Koziolek, Heiko Koziolek, Max Kramer, and Klaus Krogmann Modeling and Simulating Software Architectures -The Palladio Approach, MIT Press 2016.[Becker2006a] Steffen Becker, Jens Happe, and Heiko Koziolek. Putting Components into Context: Supporting QoS-Predictions with an explicit Context Model. In Proc. 11th International Workshop on Component Oriented Programming (WCOP'06), Ralf Reussner, Clemens Szyperski, and Wolfgang Weck, editors, July 2006, pages 1-6.[Becker2007a] Steffen Becker, Thomas Goldschmidt, Boris Gruschko, and Heiko Koziolek. A Process Model and Classification Scheme for Semi-Automatic Meta-Model Evolution. In Proc. 1st Workshop MDD, SOA und IT-Management (MSI'07), 2007, pages 35-46. GiTO-Verlag. 2007.[Becker2008] Becker, Koziolek, Happe, Reussner, “Life-Cycle Aware Modelling of Component-based Software Architectures” CBSE2008

Robert Heinrich: Introduction to Palladio