SlideShare a Scribd company logo
1 of 42
Introducing
Performance Awareness
in an Integrated
Specification
Environment
Master‘s Thesis / University of Stuttgart
May – November, 2016
Fabian Keller
Introducing Performance Awareness in an Integrated Specification Environment 2
Fabian Keller
University of
Stuttgart
D-70569 Stuttgart
Markus Völter
voelter –
Ingenieurbüro für
Softwaretechnologie
D-70327 Stuttgart
André van Hoorn
University of
Stuttgart
D-70569 Stuttgart
Klaus Birken
itemis AG
D-70565 Stuttgart
Hello
Building Software with
Performance in Mind
State of the Art
Introducing Performance Awareness in an Integrated Specification Environment 3
Introducing Performance Awareness in an Integrated Specification Environment 4
Performance prediction at its finest
Palladio
Becker et al. [2009]
Introducing Performance Awareness in an Integrated Specification Environment 5
Or how to ship performant code
Software Performance Engineering
RE
Introducing Performance Awareness in an Integrated Specification Environment 5
Or how to ship performant code
Software Performance Engineering
RE
SPL
Introducing Performance Awareness in an Integrated Specification Environment 5
Or how to ship performant code
Software Performance Engineering
RE
SPL
SA
Introducing Performance Awareness in an Integrated Specification Environment 5
Or how to ship performant code
Software Performance Engineering
RE
SPL
SA
NFR
Introducing Performance Awareness in an Integrated Specification Environment 5
Or how to ship performant code
Software Performance Engineering
RE
SPL
SA
NFR
IDE
Introducing Performance Awareness in an Integrated Specification Environment 6
Integration of performance awareness in Java EE development
environments
– Chrusciel, 2015 –
Related Work
Introducing Performance Awareness in an Integrated Specification Environment 7
In Situ Understanding of Performance Bottlenecks through Visually
Augmented Code – Beck et al., 2013 –
Related Work
Room for Improvement?
Motivation
Introducing Performance Awareness in an Integrated Specification Environment 8
Straight from the ISE*, not IDE
Performance Awareness
Introducing Performance Awareness in an Integrated Specification Environment 9
* ISE = Integrated Specification
Environment
Straight from the ISE*, not IDE
Performance Awareness
Introducing Performance Awareness in an Integrated Specification Environment 9
* ISE = Integrated Specification
Environment
Introducing Performance Awareness in an Integrated Specification Environment 10
Variability analysis
Software Product Lines
• What impact does this decision have on the performance?
• Are all performance requirements fulfilled?
• Are all performance requirements fulfilled for all relevant configurations?
• Having an incomplete configuration, which features yield the best
performance?
• Oh this is interesting, can we have a thorough analysis?
Introducing Performance Awareness in an Integrated Specification Environment 11
Immediate feedback raises performance awareness
Questions
Overview & Infrastructure
Approach
Introducing Performance Awareness in an Integrated Specification Environment 12
Introducing Performance Awareness in an Integrated Specification Environment 13
Modeling components
JetBrains MPS and IETS3
Introducing Performance Awareness in an Integrated Specification Environment 13
Modeling components
JetBrains MPS and IETS3
Introducing Performance Awareness in an Integrated Specification Environment 14
Modeling systems
JetBrains MPS and IETS3
Introducing Performance Awareness in an Integrated Specification Environment 14
Modeling systems
JetBrains MPS and IETS3
Modeling resources and allocations
JetBrains MPS and IETS3
Introducing Performance Awareness in an Integrated Specification Environment 15
Modeling resources and allocations
JetBrains MPS and IETS3
Introducing Performance Awareness in an Integrated Specification Environment 15
Introducing Performance Awareness in an Integrated Specification Environment 16
Use cases and requirements
JetBrains MPS and IETS3
Introducing Performance Awareness in an Integrated Specification Environment 16
Use cases and requirements
JetBrains MPS and IETS3
Introducing Performance Awareness in an Integrated Specification Environment 17
Open source: github.com/DECLARE-Project
Projects
Define Performance Analyses
Introducing Performance Awareness in an Integrated Specification Environment 18
A framework for model-agnostic performance analysis
fastpan
PerformanceAnalyz
er
AnalysisContext PerformanceResult
DECLARE-
Project/fastpan
Define Performance Analyses
Define Variability Analyses
Introducing Performance Awareness in an Integrated Specification Environment 18
A framework for model-agnostic performance analysis
fastpan
PerformanceAnalyz
er
AnalysisContext PerformanceResult
VariabilityAnalyzer VariabilityContext ?
DECLARE-
Project/fastpan
Define Performance Analyses
Define Variability Analyses
Performance result standard (semantics!)
Introducing Performance Awareness in an Integrated Specification Environment 18
A framework for model-agnostic performance analysis
fastpan
PerformanceAnalyz
er
AnalysisContext PerformanceResult
VariabilityAnalyzer VariabilityContext ?
Attach.<NamedElement>to(action).utilization(Percentage.of(result.getUtilization())).mean();
Attach.<NamedElement>to(action).serviceTime(serviceTime).normalDistribution(serviceTimeVariance))
PerformanceMetric
PerformanceMeasu
re
DECLARE-
Project/fastpan
palladio-environment
• Use Palladio outside Eclipse (i.e. headless)
palladio-builder
• Build PCM models with fluent Java API
palladio-analysis
• Supports LQN solver
• Implements fastpan PerformanceAnalyzer
Introducing Performance Awareness in an Integrated Specification Environment 19
Palladio outside Eclipse
palladio-headless
DECLARE-Project/palladio-
headless
Introducing Performance Awareness in an Integrated Specification Environment 20
palladio-environment implementation
palladio-headless
Contributions are
welcome!
Introducing Performance Awareness in an Integrated Specification Environment 20
palladio-environment implementation
palladio-headless
Contributions are
welcome!
Model-to-model
transformation
IETS3 =?= PCM
Introducing Performance Awareness in an Integrated Specification Environment 21
Mapping Processors
M2M Transformation
Introducing Performance Awareness in an Integrated Specification Environment 22
Mapping Processors
M2M Transformation
Introducing Performance Awareness in an Integrated Specification Environment 22
Introducing Performance Awareness in an Integrated Specification Environment 23
Resources
M2M Transformation
Introducing Performance Awareness in an Integrated Specification Environment 23
Resources
M2M Transformation
Live Demo
Oh yeah!
Introducing Performance Awareness in an Integrated Specification Environment 24
Results & Conclusion
Almost there
Round-trip analysis time
Evaluation
Introducing Performance Awareness in an Integrated Specification Environment 26
• Palladio can provide real-time diagnostics
• Variability analysis in IETS
3
• [Yes] What impact does this decision have on the performance?
• [Yes] Are all performance requirements fulfilled?
• [Yes] Are all performance requirements fulfilled for all relevant
configurations?
• [Not yet] Having an incomplete configuration, which features yield the best
performance?
Results & Conclusion
Introducing Performance Awareness in an Integrated Specification Environment 27
• Slide 1: https://commons.wikimedia.org/wiki/File:Fale_F1_Monza_2004_73.jpg
• Slide 4: Becker, Steffen, Heiko Koziolek, and Ralf Reussner. "The Palladio component
model for model-driven performance prediction." Journal of Systems and Software 82.1
(2009): 3-22.
• Slide 5: Doors Screenshot:
https://www.ibm.com/developerworks/mydeveloperworks/blogs/requirementsmanageme
nt/resource/BLOGS_UPLOADED_IMAGES/seg2.jpg
• Slide 5: ArchStudio Screenshot:
http://y.web.umkc.edu/yzheng/img/archfeature/ArchFeature.PNG
• Slide 5: EnterpriseArchitect Screenshot:
http://assets.devx.com/articlefigs/Fig3_DetailedClassDiagrams.jpg
• Slide 5: Palladio Bench Screenshot: http://sdq.ipd.kit.edu/uploads/media/palladio-
bench_3.4_screenshot_01.jpg
• Slide 5: IntelliJ IDEA Screenshot:
https://www.jetbrains.com/idea/img/screenshots/idea_overview_5_1@2x.png
Introducing Performance Awareness in an Integrated Specification Environment 28
Image References

More Related Content

What's hot

Naveen_Reddy_Resume
Naveen_Reddy_ResumeNaveen_Reddy_Resume
Naveen_Reddy_Resumereddhun
 
Use Models for Extending IEEE 1687 to Analog Test
Use Models for Extending IEEE 1687 to Analog TestUse Models for Extending IEEE 1687 to Analog Test
Use Models for Extending IEEE 1687 to Analog TestPete Sarson, PH.D
 
Respond flow chart (rfc)
Respond flow chart (rfc)Respond flow chart (rfc)
Respond flow chart (rfc)Agus Triyanto
 
Validation and-design-in-a-small-team-environment
Validation and-design-in-a-small-team-environmentValidation and-design-in-a-small-team-environment
Validation and-design-in-a-small-team-environmentObsidian Software
 
Analog Mixed Signal Simulation With PSpice
Analog Mixed Signal Simulation With PSpiceAnalog Mixed Signal Simulation With PSpice
Analog Mixed Signal Simulation With PSpiceEMA Design Automation
 
Combining requirements engineering and testing in agile.
Combining requirements engineering and testing in agile. Combining requirements engineering and testing in agile.
Combining requirements engineering and testing in agile. SYSQA BV
 
Kakarla Sriram K _resume_sep_2016
Kakarla Sriram K _resume_sep_2016Kakarla Sriram K _resume_sep_2016
Kakarla Sriram K _resume_sep_2016srkkakarla
 
DamonLacovicresume122016noADDNew
DamonLacovicresume122016noADDNewDamonLacovicresume122016noADDNew
DamonLacovicresume122016noADDNewDamon Lacovic
 
Ananthprofilepln
AnanthprofileplnAnanthprofilepln
Ananthprofileplnananthch
 

What's hot (15)

Naveen_Reddy_Resume
Naveen_Reddy_ResumeNaveen_Reddy_Resume
Naveen_Reddy_Resume
 
Daya_CV
Daya_CVDaya_CV
Daya_CV
 
Christopher_Reder_2016
Christopher_Reder_2016Christopher_Reder_2016
Christopher_Reder_2016
 
Use Models for Extending IEEE 1687 to Analog Test
Use Models for Extending IEEE 1687 to Analog TestUse Models for Extending IEEE 1687 to Analog Test
Use Models for Extending IEEE 1687 to Analog Test
 
Respond flow chart (rfc)
Respond flow chart (rfc)Respond flow chart (rfc)
Respond flow chart (rfc)
 
Validation and-design-in-a-small-team-environment
Validation and-design-in-a-small-team-environmentValidation and-design-in-a-small-team-environment
Validation and-design-in-a-small-team-environment
 
Analog Mixed Signal Simulation With PSpice
Analog Mixed Signal Simulation With PSpiceAnalog Mixed Signal Simulation With PSpice
Analog Mixed Signal Simulation With PSpice
 
Combining requirements engineering and testing in agile.
Combining requirements engineering and testing in agile. Combining requirements engineering and testing in agile.
Combining requirements engineering and testing in agile.
 
Kakarla Sriram K _resume_sep_2016
Kakarla Sriram K _resume_sep_2016Kakarla Sriram K _resume_sep_2016
Kakarla Sriram K _resume_sep_2016
 
CV-Nidhin
CV-NidhinCV-Nidhin
CV-Nidhin
 
CV-Nidhin
CV-NidhinCV-Nidhin
CV-Nidhin
 
Madhu_Resume
Madhu_ResumeMadhu_Resume
Madhu_Resume
 
DamonLacovicresume122016noADDNew
DamonLacovicresume122016noADDNewDamonLacovicresume122016noADDNew
DamonLacovicresume122016noADDNew
 
Zhang rtp q307
Zhang rtp q307Zhang rtp q307
Zhang rtp q307
 
Ananthprofilepln
AnanthprofileplnAnanthprofilepln
Ananthprofilepln
 

Viewers also liked

Systematic Architecture Level Fault Diagnosis Using Statistical Techniques
Systematic Architecture Level Fault Diagnosis Using Statistical TechniquesSystematic Architecture Level Fault Diagnosis Using Statistical Techniques
Systematic Architecture Level Fault Diagnosis Using Statistical TechniquesFabian Keller
 
High Dimensional Data Visualization
High Dimensional Data VisualizationHigh Dimensional Data Visualization
High Dimensional Data VisualizationFabian Keller
 
Energy management awareness program for decision makers
Energy management awareness program for decision makersEnergy management awareness program for decision makers
Energy management awareness program for decision makersZAINI ABDUL WAHAB
 
360 Degree Appraisal 4.3.2009
360 Degree Appraisal 4.3.2009360 Degree Appraisal 4.3.2009
360 Degree Appraisal 4.3.2009lochan_gupta
 
Performance Appraisal – An Objective Look
Performance Appraisal – An Objective LookPerformance Appraisal – An Objective Look
Performance Appraisal – An Objective Lookcindyandthecity
 
Performance Evaluation PowerPoint PPT Content Modern Sample
Performance Evaluation PowerPoint PPT Content Modern SamplePerformance Evaluation PowerPoint PPT Content Modern Sample
Performance Evaluation PowerPoint PPT Content Modern SampleAndrew Schwartz
 
Performance Appraisal ppt [hrm]
Performance Appraisal ppt [hrm]Performance Appraisal ppt [hrm]
Performance Appraisal ppt [hrm]angel01021990
 

Viewers also liked (9)

Systematic Architecture Level Fault Diagnosis Using Statistical Techniques
Systematic Architecture Level Fault Diagnosis Using Statistical TechniquesSystematic Architecture Level Fault Diagnosis Using Statistical Techniques
Systematic Architecture Level Fault Diagnosis Using Statistical Techniques
 
High Dimensional Data Visualization
High Dimensional Data VisualizationHigh Dimensional Data Visualization
High Dimensional Data Visualization
 
Energy management awareness program for decision makers
Energy management awareness program for decision makersEnergy management awareness program for decision makers
Energy management awareness program for decision makers
 
360 Degree Appraisal 4.3.2009
360 Degree Appraisal 4.3.2009360 Degree Appraisal 4.3.2009
360 Degree Appraisal 4.3.2009
 
Performance Appraisal – An Objective Look
Performance Appraisal – An Objective LookPerformance Appraisal – An Objective Look
Performance Appraisal – An Objective Look
 
Performance appraisal
Performance appraisalPerformance appraisal
Performance appraisal
 
Performance appraisal
Performance appraisalPerformance appraisal
Performance appraisal
 
Performance Evaluation PowerPoint PPT Content Modern Sample
Performance Evaluation PowerPoint PPT Content Modern SamplePerformance Evaluation PowerPoint PPT Content Modern Sample
Performance Evaluation PowerPoint PPT Content Modern Sample
 
Performance Appraisal ppt [hrm]
Performance Appraisal ppt [hrm]Performance Appraisal ppt [hrm]
Performance Appraisal ppt [hrm]
 

Similar to Introducing Performance Awareness in an Integrated Specification Environment

Legacy Renewal of Central Framework in the Enterprise
Legacy Renewal of Central Framework in the EnterpriseLegacy Renewal of Central Framework in the Enterprise
Legacy Renewal of Central Framework in the EnterpriseAnatole Tresch
 
FlexPod-Performance-Fall2014-slideshare
FlexPod-Performance-Fall2014-slideshareFlexPod-Performance-Fall2014-slideshare
FlexPod-Performance-Fall2014-slideshareMichael Harding
 
SiriusCon2016 - Modelling Spacecraft On-board Software with Sirius
SiriusCon2016 - Modelling Spacecraft On-board Software with SiriusSiriusCon2016 - Modelling Spacecraft On-board Software with Sirius
SiriusCon2016 - Modelling Spacecraft On-board Software with SiriusObeo
 
Migrating Mission-Critical Workloads to Intel Architecture
Migrating Mission-Critical Workloads to Intel ArchitectureMigrating Mission-Critical Workloads to Intel Architecture
Migrating Mission-Critical Workloads to Intel ArchitectureIntel IT Center
 
Spring Cloud Function — Going Serverless
Spring Cloud Function — Going ServerlessSpring Cloud Function — Going Serverless
Spring Cloud Function — Going ServerlessGlobalLogic Ukraine
 
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16AppDynamics
 
Continuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchainContinuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchainSerena Software
 
Transform Software Testing and Quality with the Neotys-Inflectra Platform
Transform Software Testing and Quality with the Neotys-Inflectra PlatformTransform Software Testing and Quality with the Neotys-Inflectra Platform
Transform Software Testing and Quality with the Neotys-Inflectra PlatformInflectra
 
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...Aberla
 
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...VMware Tanzu
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKSPhil Reay
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKSPhil Reay
 
Webinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterpriseWebinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterpriseDBmaestro - Database DevOps
 
Oracle EBS R12.2 - The Upgrade Know-How Factory
Oracle EBS R12.2 - The Upgrade Know-How FactoryOracle EBS R12.2 - The Upgrade Know-How Factory
Oracle EBS R12.2 - The Upgrade Know-How Factorypanayaofficial
 
Planning guide sap business suite 7 2013 landscape implementation
Planning guide sap business suite 7 2013  landscape implementationPlanning guide sap business suite 7 2013  landscape implementation
Planning guide sap business suite 7 2013 landscape implementationLeonardo Parpal Roig
 
A Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere ToolsA Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere Toolsghodgkinson
 
Cloud Native Serverless Java — Orkhan Gasimov
Cloud Native Serverless Java — Orkhan GasimovCloud Native Serverless Java — Orkhan Gasimov
Cloud Native Serverless Java — Orkhan GasimovGlobalLogic Ukraine
 
206510 p6 upgrade considerations
206510 p6 upgrade considerations206510 p6 upgrade considerations
206510 p6 upgrade considerationsp6academy
 

Similar to Introducing Performance Awareness in an Integrated Specification Environment (20)

Legacy Renewal of Central Framework in the Enterprise
Legacy Renewal of Central Framework in the EnterpriseLegacy Renewal of Central Framework in the Enterprise
Legacy Renewal of Central Framework in the Enterprise
 
Elastic-Engineering
Elastic-EngineeringElastic-Engineering
Elastic-Engineering
 
FlexPod-Performance-Fall2014-slideshare
FlexPod-Performance-Fall2014-slideshareFlexPod-Performance-Fall2014-slideshare
FlexPod-Performance-Fall2014-slideshare
 
SiriusCon2016 - Modelling Spacecraft On-board Software with Sirius
SiriusCon2016 - Modelling Spacecraft On-board Software with SiriusSiriusCon2016 - Modelling Spacecraft On-board Software with Sirius
SiriusCon2016 - Modelling Spacecraft On-board Software with Sirius
 
Allan_John_R_Salgado-MCSD.NET, MCTS,MCPD-Resume(LinkedIn)
Allan_John_R_Salgado-MCSD.NET, MCTS,MCPD-Resume(LinkedIn)Allan_John_R_Salgado-MCSD.NET, MCTS,MCPD-Resume(LinkedIn)
Allan_John_R_Salgado-MCSD.NET, MCTS,MCPD-Resume(LinkedIn)
 
Migrating Mission-Critical Workloads to Intel Architecture
Migrating Mission-Critical Workloads to Intel ArchitectureMigrating Mission-Critical Workloads to Intel Architecture
Migrating Mission-Critical Workloads to Intel Architecture
 
Spring Cloud Function — Going Serverless
Spring Cloud Function — Going ServerlessSpring Cloud Function — Going Serverless
Spring Cloud Function — Going Serverless
 
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
 
Continuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchainContinuous Delivery series: How to automate your infrastructure toolchain
Continuous Delivery series: How to automate your infrastructure toolchain
 
Transform Software Testing and Quality with the Neotys-Inflectra Platform
Transform Software Testing and Quality with the Neotys-Inflectra PlatformTransform Software Testing and Quality with the Neotys-Inflectra Platform
Transform Software Testing and Quality with the Neotys-Inflectra Platform
 
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
ESEconf2011 - Hanin Makram: "Embedding Performance into Continuous Integratio...
 
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Webinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterpriseWebinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterprise
 
Oracle EBS R12.2 - The Upgrade Know-How Factory
Oracle EBS R12.2 - The Upgrade Know-How FactoryOracle EBS R12.2 - The Upgrade Know-How Factory
Oracle EBS R12.2 - The Upgrade Know-How Factory
 
Planning guide sap business suite 7 2013 landscape implementation
Planning guide sap business suite 7 2013  landscape implementationPlanning guide sap business suite 7 2013  landscape implementation
Planning guide sap business suite 7 2013 landscape implementation
 
A Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere ToolsA Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere Tools
 
Cloud Native Serverless Java — Orkhan Gasimov
Cloud Native Serverless Java — Orkhan GasimovCloud Native Serverless Java — Orkhan Gasimov
Cloud Native Serverless Java — Orkhan Gasimov
 
206510 p6 upgrade considerations
206510 p6 upgrade considerations206510 p6 upgrade considerations
206510 p6 upgrade considerations
 

More from Fabian Keller

The Challenges of Taking Open Source Cloud Foundry to Production
The Challenges of Taking Open Source Cloud Foundry to ProductionThe Challenges of Taking Open Source Cloud Foundry to Production
The Challenges of Taking Open Source Cloud Foundry to ProductionFabian Keller
 
Cloud Foundry - A Platform for Everyone
Cloud Foundry - A Platform for EveryoneCloud Foundry - A Platform for Everyone
Cloud Foundry - A Platform for EveryoneFabian Keller
 
Quo Vadis Netflix Stack?
Quo Vadis Netflix Stack?Quo Vadis Netflix Stack?
Quo Vadis Netflix Stack?Fabian Keller
 
Blasting Through the Clouds - Automating Cloud Foundry with Concourse CI
Blasting Through the Clouds - Automating Cloud Foundry with Concourse CIBlasting Through the Clouds - Automating Cloud Foundry with Concourse CI
Blasting Through the Clouds - Automating Cloud Foundry with Concourse CIFabian Keller
 
Skalierbare Multicast Konzepte
Skalierbare Multicast KonzepteSkalierbare Multicast Konzepte
Skalierbare Multicast KonzepteFabian Keller
 
Referenzmodelle für das Informationsmanagement in der Smart Factory
Referenzmodelle für das Informationsmanagement in der Smart FactoryReferenzmodelle für das Informationsmanagement in der Smart Factory
Referenzmodelle für das Informationsmanagement in der Smart FactoryFabian Keller
 

More from Fabian Keller (6)

The Challenges of Taking Open Source Cloud Foundry to Production
The Challenges of Taking Open Source Cloud Foundry to ProductionThe Challenges of Taking Open Source Cloud Foundry to Production
The Challenges of Taking Open Source Cloud Foundry to Production
 
Cloud Foundry - A Platform for Everyone
Cloud Foundry - A Platform for EveryoneCloud Foundry - A Platform for Everyone
Cloud Foundry - A Platform for Everyone
 
Quo Vadis Netflix Stack?
Quo Vadis Netflix Stack?Quo Vadis Netflix Stack?
Quo Vadis Netflix Stack?
 
Blasting Through the Clouds - Automating Cloud Foundry with Concourse CI
Blasting Through the Clouds - Automating Cloud Foundry with Concourse CIBlasting Through the Clouds - Automating Cloud Foundry with Concourse CI
Blasting Through the Clouds - Automating Cloud Foundry with Concourse CI
 
Skalierbare Multicast Konzepte
Skalierbare Multicast KonzepteSkalierbare Multicast Konzepte
Skalierbare Multicast Konzepte
 
Referenzmodelle für das Informationsmanagement in der Smart Factory
Referenzmodelle für das Informationsmanagement in der Smart FactoryReferenzmodelle für das Informationsmanagement in der Smart Factory
Referenzmodelle für das Informationsmanagement in der Smart Factory
 

Recently uploaded

Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxnada99848
 

Recently uploaded (20)

Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptx
 

Introducing Performance Awareness in an Integrated Specification Environment

  • 1. Introducing Performance Awareness in an Integrated Specification Environment Master‘s Thesis / University of Stuttgart May – November, 2016 Fabian Keller
  • 2. Introducing Performance Awareness in an Integrated Specification Environment 2 Fabian Keller University of Stuttgart D-70569 Stuttgart Markus Völter voelter – Ingenieurbüro für Softwaretechnologie D-70327 Stuttgart André van Hoorn University of Stuttgart D-70569 Stuttgart Klaus Birken itemis AG D-70565 Stuttgart Hello
  • 3. Building Software with Performance in Mind State of the Art Introducing Performance Awareness in an Integrated Specification Environment 3
  • 4. Introducing Performance Awareness in an Integrated Specification Environment 4 Performance prediction at its finest Palladio Becker et al. [2009]
  • 5. Introducing Performance Awareness in an Integrated Specification Environment 5 Or how to ship performant code Software Performance Engineering RE
  • 6. Introducing Performance Awareness in an Integrated Specification Environment 5 Or how to ship performant code Software Performance Engineering RE SPL
  • 7. Introducing Performance Awareness in an Integrated Specification Environment 5 Or how to ship performant code Software Performance Engineering RE SPL SA
  • 8. Introducing Performance Awareness in an Integrated Specification Environment 5 Or how to ship performant code Software Performance Engineering RE SPL SA NFR
  • 9. Introducing Performance Awareness in an Integrated Specification Environment 5 Or how to ship performant code Software Performance Engineering RE SPL SA NFR IDE
  • 10. Introducing Performance Awareness in an Integrated Specification Environment 6 Integration of performance awareness in Java EE development environments – Chrusciel, 2015 – Related Work
  • 11. Introducing Performance Awareness in an Integrated Specification Environment 7 In Situ Understanding of Performance Bottlenecks through Visually Augmented Code – Beck et al., 2013 – Related Work
  • 12. Room for Improvement? Motivation Introducing Performance Awareness in an Integrated Specification Environment 8
  • 13. Straight from the ISE*, not IDE Performance Awareness Introducing Performance Awareness in an Integrated Specification Environment 9 * ISE = Integrated Specification Environment
  • 14. Straight from the ISE*, not IDE Performance Awareness Introducing Performance Awareness in an Integrated Specification Environment 9 * ISE = Integrated Specification Environment
  • 15. Introducing Performance Awareness in an Integrated Specification Environment 10 Variability analysis Software Product Lines
  • 16. • What impact does this decision have on the performance? • Are all performance requirements fulfilled? • Are all performance requirements fulfilled for all relevant configurations? • Having an incomplete configuration, which features yield the best performance? • Oh this is interesting, can we have a thorough analysis? Introducing Performance Awareness in an Integrated Specification Environment 11 Immediate feedback raises performance awareness Questions
  • 17. Overview & Infrastructure Approach Introducing Performance Awareness in an Integrated Specification Environment 12
  • 18. Introducing Performance Awareness in an Integrated Specification Environment 13 Modeling components JetBrains MPS and IETS3
  • 19. Introducing Performance Awareness in an Integrated Specification Environment 13 Modeling components JetBrains MPS and IETS3
  • 20. Introducing Performance Awareness in an Integrated Specification Environment 14 Modeling systems JetBrains MPS and IETS3
  • 21. Introducing Performance Awareness in an Integrated Specification Environment 14 Modeling systems JetBrains MPS and IETS3
  • 22. Modeling resources and allocations JetBrains MPS and IETS3 Introducing Performance Awareness in an Integrated Specification Environment 15
  • 23. Modeling resources and allocations JetBrains MPS and IETS3 Introducing Performance Awareness in an Integrated Specification Environment 15
  • 24. Introducing Performance Awareness in an Integrated Specification Environment 16 Use cases and requirements JetBrains MPS and IETS3
  • 25. Introducing Performance Awareness in an Integrated Specification Environment 16 Use cases and requirements JetBrains MPS and IETS3
  • 26. Introducing Performance Awareness in an Integrated Specification Environment 17 Open source: github.com/DECLARE-Project Projects
  • 27. Define Performance Analyses Introducing Performance Awareness in an Integrated Specification Environment 18 A framework for model-agnostic performance analysis fastpan PerformanceAnalyz er AnalysisContext PerformanceResult DECLARE- Project/fastpan
  • 28. Define Performance Analyses Define Variability Analyses Introducing Performance Awareness in an Integrated Specification Environment 18 A framework for model-agnostic performance analysis fastpan PerformanceAnalyz er AnalysisContext PerformanceResult VariabilityAnalyzer VariabilityContext ? DECLARE- Project/fastpan
  • 29. Define Performance Analyses Define Variability Analyses Performance result standard (semantics!) Introducing Performance Awareness in an Integrated Specification Environment 18 A framework for model-agnostic performance analysis fastpan PerformanceAnalyz er AnalysisContext PerformanceResult VariabilityAnalyzer VariabilityContext ? Attach.<NamedElement>to(action).utilization(Percentage.of(result.getUtilization())).mean(); Attach.<NamedElement>to(action).serviceTime(serviceTime).normalDistribution(serviceTimeVariance)) PerformanceMetric PerformanceMeasu re DECLARE- Project/fastpan
  • 30. palladio-environment • Use Palladio outside Eclipse (i.e. headless) palladio-builder • Build PCM models with fluent Java API palladio-analysis • Supports LQN solver • Implements fastpan PerformanceAnalyzer Introducing Performance Awareness in an Integrated Specification Environment 19 Palladio outside Eclipse palladio-headless DECLARE-Project/palladio- headless
  • 31. Introducing Performance Awareness in an Integrated Specification Environment 20 palladio-environment implementation palladio-headless Contributions are welcome!
  • 32. Introducing Performance Awareness in an Integrated Specification Environment 20 palladio-environment implementation palladio-headless Contributions are welcome!
  • 33. Model-to-model transformation IETS3 =?= PCM Introducing Performance Awareness in an Integrated Specification Environment 21
  • 34. Mapping Processors M2M Transformation Introducing Performance Awareness in an Integrated Specification Environment 22
  • 35. Mapping Processors M2M Transformation Introducing Performance Awareness in an Integrated Specification Environment 22
  • 36. Introducing Performance Awareness in an Integrated Specification Environment 23 Resources M2M Transformation
  • 37. Introducing Performance Awareness in an Integrated Specification Environment 23 Resources M2M Transformation
  • 38. Live Demo Oh yeah! Introducing Performance Awareness in an Integrated Specification Environment 24
  • 40. Round-trip analysis time Evaluation Introducing Performance Awareness in an Integrated Specification Environment 26
  • 41. • Palladio can provide real-time diagnostics • Variability analysis in IETS 3 • [Yes] What impact does this decision have on the performance? • [Yes] Are all performance requirements fulfilled? • [Yes] Are all performance requirements fulfilled for all relevant configurations? • [Not yet] Having an incomplete configuration, which features yield the best performance? Results & Conclusion Introducing Performance Awareness in an Integrated Specification Environment 27
  • 42. • Slide 1: https://commons.wikimedia.org/wiki/File:Fale_F1_Monza_2004_73.jpg • Slide 4: Becker, Steffen, Heiko Koziolek, and Ralf Reussner. "The Palladio component model for model-driven performance prediction." Journal of Systems and Software 82.1 (2009): 3-22. • Slide 5: Doors Screenshot: https://www.ibm.com/developerworks/mydeveloperworks/blogs/requirementsmanageme nt/resource/BLOGS_UPLOADED_IMAGES/seg2.jpg • Slide 5: ArchStudio Screenshot: http://y.web.umkc.edu/yzheng/img/archfeature/ArchFeature.PNG • Slide 5: EnterpriseArchitect Screenshot: http://assets.devx.com/articlefigs/Fig3_DetailedClassDiagrams.jpg • Slide 5: Palladio Bench Screenshot: http://sdq.ipd.kit.edu/uploads/media/palladio- bench_3.4_screenshot_01.jpg • Slide 5: IntelliJ IDEA Screenshot: https://www.jetbrains.com/idea/img/screenshots/idea_overview_5_1@2x.png Introducing Performance Awareness in an Integrated Specification Environment 28 Image References