Reverse Engineering Performance Models for ComponentBased Software Systems - PowerPoint PPT Presentation

Loading...

PPT – Reverse Engineering Performance Models for ComponentBased Software Systems PowerPoint presentation | free to view - id: 273a63-ZDc1Z



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

Reverse Engineering Performance Models for ComponentBased Software Systems

Description:

of a component-based. software architecture. Performance data. Execution time. Throughput. Resource utilisation. Performance Prediction. How to get such models? ... – PowerPoint PPT presentation

Number of Views:20
Avg rating:3.0/5.0
Slides: 16
Provided by: k1064
Category:

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: Reverse Engineering Performance Models for ComponentBased Software Systems


1
Reverse EngineeringPerformance Models for
Component-BasedSoftware Systems
  • 2008-04-22
  • SOSoRNet Workshop

Klaus Krogmann (krogmann_at_ipd.uka.de)
2
Motivation
3
Performance Prediction
?
How to get such models?
  • Performance modelof a component-basedsoftware
    architecture
  • Performance data
  • Execution time
  • Throughput
  • Resource utilisation

4
Why Creating Models? (1)
Sizing / Scalability / Relocation
vs.
Changes in usage profile
vs.
Extensions of legacy software systems
Performance predictions at design time
5
Why Creating Models? (2)
Analytical solvable Performance jumps
Critical contention levels
Simulation Faster than real execution
6
Approach
  • Process and Models

7
Reverse Engineering Component Behaviour
I
(Java)Source Code
8
Example File Share
BusinessLogic
compressed true
compressed false
Callcompress cfile.length fileInput.length
CallcheckFile if(compressed) file.length
fileInput.lengthelse file.length
compress.out.length
checkFile.out true
checkFile.out false
InternalStoreFile HDD file.length 2
25CPU file.length 5.34
Legend Control flow Dataflow Resource
consumption
9
Process for II
10
Genetic Algorithm
  • Learns on monitoring data from running
    application
  • Data argument (call / return) properties
    (primitive types, length of collection types, )
  • Calling frequencies
  • Pre-configured by static analysis results
  • Gene selection (e.g. constants, if-then-else)
  • Initial chromosomes
  • Usually (non-stochastic) functional dependency
    exists

11
Machine Learning
  • Not limited to one approach
  • Genetic Algorithms (GA)
  • Support Vector Machines (SVM)
  • Hill-Climbing / simulated annealing
  • Regression (Splines / linear)
  • Stochastic approximation
  • Greedy optimization

12
Conclusion
  • Approach summed up

13
Conclusion
  • Combination of static and dynamic source code
    analysis for reverse engineering
  • Machine learning applied to reverse engineer a
    parameterised behavioural specification of
    component services
  • Focus of target model
  • Performance prediction
  • Component-based software architectures

14
BACKUP
15
What is to be learned?
  • Loops
  • Break conditions
  • Loop number
  • Branches
  • Branching conditions
  • Probabilities
  • Call of component-external services
  • Frequency / probability
  • Conditions
  • Call parameters (x, y)
  • Return value of provided service (long)
  • Based on (input dimensions)
  • Service input parameters (of described service)
    (a, b)
  • Return parameters (of component-external calls)
    (float)
About PowerShow.com