180 likes | 290 Views
Quality Prediction via Probabilistic Model Checking and Component Selection Based on QoS. Danilo Ardagna, Raffaela Mirandola. Background. Situational Software Applications creation of complex applications from independently developed components. Model Driven Engineering:
E N D
Quality Prediction via Probabilistic Model Checking and Component Selection Based on QoS Danilo Ardagna, Raffaela Mirandola
Background Situational Software Applications creation of complex applications from independently developed components Model Driven Engineering: Models play a key role in software development Performance/reliability analysis techniques in software development process Software Engineering MDE Model-based quality assurance for software system composition Performance/reliability analysis
Motivations • Situational Software Applications can benefit from the Model Driven Development (MDD): • Models are built to support software engineers in reasoning at the software architecture level • Early QoS assessment of compositions • Design time QoS evaluation • The use of models extends beyond the initial design of an application: • Support both the evolution of the software architecture • Devise suitable reconfiguration strategies for the dynamic contexts
MDE Reference Framework E.g., Use case diagram + NF constraints E.g., Use case diagram E.g., Activity diagram E.g., Markov model E.g., Deployment diagram E.g., Queueing network
Our work • Service Oriented Architecture and Web services scenario • Overall framework for the automatic service selection and QoS analysis of composed Web services: • Service selection through the solution of a non-linear optimization problem • QoS analysis built on stochastic model checking
SOA Systems Evaluation Framework • Applications functional and non-functional requirements described as annotated abstract BPEL processes • Abstract services and dynamic/late binding mechanism • Specifications annotated in order to provide statistics on processes executions 5
Global view ex. time: 1 sec reliability 0.99 ex. time : 3 sec reliability 0.95 0.2 0.8 0.2 0.8 ex. time : 2 sec reliability 0.999 Web service selection ex. time : 5 sec reliability 0.98
Global view 0.2 0.8 0.2 0.8 Web service selection Translator Analysis results Logic Properties
Architectural Evaluation Framework Quality model includes reliability rj , cost cj , and execution time ej Normalized weights {wke, wkc, wkr} indicate priority Global QoS constraints ekmax, ckmax, rkmin Multiple process instances optimization Service invocations attempts for reliability analysis WS Maximum service rate j for performance analysis Decision variables: xkijprobability that task i inprocess k is executed by the WS j
Architectural Evaluation Framework WS optimizator output: xkij variables The aggregated value of QoS for the abstract service i can be computed as the average of the quality dimensions of the invoked services weighted by xkij The composed service quality analyzer derives through PRISM: Success probability Mean response time
Service Selection Problem Problem P1) is a non linear optimization problem in the continuous variables xkij The objective function of problem P1) is neither concave nor convex Heuristic algorithm, problem instances up to 300 abstract services and 100,000 candidates concrete services in less than half an hour
Composed Service Quality Analyzer DAG representation translated to a Markov models: Discrete Time Markov Chains (DTMC) Continuous Time Markov Chains (CTMC) Properties specified in temporal logic, as an example: P [F (system state = success)] P¸ threshold [F (system state = success)]
Conclusions and Future work Model-driven approach for automatic selection of Web services and probabilistic model checking analyses Extend the optimization model in order to include the parallel execution pattern Include specific characteristics of situational software applications Validation on real case studies Close the loop between runtime observations and the design environment
References • D. Ardagna, C. Ghezzi, R. Mirandola. Model Driven QoS Analyses of Composed Web Services. ServiceWave 2008 Proceedings, Madrid, Spain. • D. Ardagna, C. Ghezzi, R. Mirandola. Rethinking the use of models in software architecture. QoSA 2008 Proceedings, LNCS, 5281, pp 1-27. • Stefano Gallotti, Carlo Ghezzi, Raffaela Mirandola, Giordano Tamburrelli: Quality Prediction of Service Compositions through Probabilistic Model Checking. QoSA 2008 Proceedings, LNCS, 5281,pp 119-134