WIR FORSCHEN FÜR SIE The Palladio Component Model (PCM) for Performance and Reliability Prediction of Component-based Software Architectures Franz Brosch 28/11/2011
1.Foundations 2.PCM overview 3.Performance & reliability prediction 4.PCM applications & further research Outline 2
Software System Quality 3 Foundations Overview Prediction Applications Quality Requirements Actual Quality Product (Software System) Requirements Specification Software Development Process
Design-time Modeling & Prediction 4 Architectural model of a component-based software system Prediction of expected quality Performance Reliability … Foundations Overview Prediction Applications
AUTOMATION SUPPORT Architectural Design Loop 5 Predicted Quality Metrics Evaluation Feedback Architectural Model Estimation, Benchmark Annotated Architectural Model Quality models (e.g. queueing networks for Performance) Model Transfor- mation Analysis / Simulation Foundations Overview Prediction Applications
The Palladio Approach 6 A Component Model Multiple Analysis Methods A Development Process Foundations Overview Prediction Applications
Component Quality Influences 7 User behaviour Hardware External Services Code Foundations Overview Prediction Applications
PCM Developer Roles 8 Foundations Overview Prediction Applications
Models and Analyses 9 Domain Expert System Deployer Software Architect Component Developer Transformation Java Code Skeletons Completion + Compilation Transformation Queueing Network Simulation Transformation Performance Prototype Execution + Measurement Part of PCM Instance Foundations Overview Prediction Applications Markov Chains Analysis
PCM Bench 10 Foundations Overview Prediction Applications
Comprehensive quality modeling approach Improved support for CBSE process Improved prediction accuracy Sophisticated usage model & usage propagation Stochastic Expression language for specification of arbitrary probability distributions and parametric dependencies Support for trade-off analyses Tool support available PCM Features 11 Foundations Overview Prediction Applications
Performance Prediction 12 > RDSEFF > RDSEFF Service Call CPU HDD Memory Resource demandsCommunication link latency & throughput Hardware resource processing speed System workload Foundations Overview Prediction Applications Resource utilization > Response time Resource utilization Response time Resp. time Throughput Return
Quality models Queueing network (evaluation through simulation) Result metrics Response times (system level / component level) Throughput Hardware resource utilization Features Developer roles, UML-like modeling, usage propagation Multi-user scenarios with concurrent behavioral specification Arbitrary input distributions / full result distributions Performance Prediction 13 Foundations Overview Prediction Applications
Reliability Prediction 14 > RDSEFF > RDSEFF Service Call Return CPU HDD Memory Software failures Communication link failures Hardware resource unavailability Foundations Overview Prediction Applications P(SUCCESS)
Quality model Set of absorbing discrete-time Markov Chains (DTMC) Evaluation through analysis Result metrics Probability of successful execution of a usage scenario (= 1 – POFOD) Features Developer Roles, UML-like modeling, usage propagation Accurate modeling of control and data flow Combined consideration of software reliability & hardware availability Reliability Prediction 15 Foundations Overview Prediction Applications
PCM Applications: Research 16 Foundations Overview Prediction Applications CoCoME Common Component Modelling Example Academic modelling contest SLA management and service-oriented infrastructures Application of PCM to service-oriented systems Q-ImPrESS Integrated architecture-based quality modelling & prediction PCM provides conceptual and tooling input
PCM Applications: Industry 17 IBM zSeries Mainframe Design alternatives for storage virtualization SAP Service-based system Sizing of resources CAS CRM-Software Quality prediction for architecture evolution scenarios PTV Navigation software Web service response time evaluation Foundations Overview Prediction Applications
Further Research Directions 18 Architecture optimization Architecture reengineering Run-time prediction Maintainability Security Component certification Foundations Overview Prediction Applications
Thank You 19 Thank you!