QoS modeling and analysis of component-based software systems: a stochastic approach

There is a growing demand for using commercial-off-the-shelf (COTS) software components to facilitate the development of software systems. Among many research topics for component-based software, quality-of-service (QoS) evaluation is yet to be given the importance it deserves. In this paper, we propose a novel analytical model to evaluate the QoS of component-based software systems. We use the component execution graph (CEG) graph model to model the architecture at the process level and the interdependence among components. The CEG graph can explicitly capture sequential, parallel, selective and iterative compositions of components. For QoS estimation, each component in the CEG model is associated with execution rate, failure rate and cost per unit time. Three metrics of the QoS are considered and analytically calculated, namely make-span, reliability and cost. Through a case study, we show that our model is capable of modeling real-world COTS software systems effectively. Also, Monte-Carlo simulation in the case study indicates that analytical results are consistent with simulation and all are covered by 95p confidence intervals. We also present a sensitivity analysis technique to identify QoS bottlenecks. This paper concludes with a comparison with related work. Copyright © 2007 John Wiley & Sons, Ltd.

[1]  J. Ledoux,et al.  Availability modeling of modular software , 1999 .

[2]  Amit P. Sheth,et al.  Modeling Quality of Service for Workflows and Web Service Processes , 2002 .

[3]  Yunni Xia,et al.  Stochastic modeling and quality evaluation of component-based software systems , 2006, QSIC.

[4]  Peter Kubat,et al.  Assessing reliability of modular software , 1989 .

[5]  Yunni Xia,et al.  Stochastic Modeling and Quality Evaluation of Workflow Systems Based on QWF-Nets , 2006, International Conference on Computational Science.

[6]  Tad B. Pinkerton,et al.  Program behavior and control in virtual storage computer systems , 1968 .

[7]  G. Roberts,et al.  Adaptive Markov Chain Monte Carlo through Regeneration , 1998 .

[8]  Katerina Goseva-Popstojanova,et al.  Architecture-based approach to reliability assessment of software systems , 2001, Perform. Evaluation.

[9]  Dai Pan,et al.  Architecture-based software reliability modeling , 2006, J. Syst. Softw..

[10]  Gero Mühl,et al.  QoS aggregation in Web service compositions , 2005, 2005 IEEE International Conference on e-Technology, e-Commerce and e-Service.

[11]  Aditya P. Mathur,et al.  On the estimation of reliability of a software system using reliabilities of its components , 1997, Proceedings The Eighth International Symposium on Software Reliability Engineering.

[12]  John D. Musa,et al.  The operational profile in software reliability engineering: an overview , 1992, [1992] Proceedings Third International Symposium on Software Reliability Engineering.

[13]  Chuang Lin,et al.  Approximate Performance Analysis of Web Services Flow Using Stochastic Petri Net , 2004, GCC.

[14]  Jaideep Srivastava,et al.  A Probabilistic QoS Model and Computation Framework for Web Services-Based Workflows , 2004, ER.

[15]  Katerina Goseva-Popstojanova,et al.  Software reliability estimation under certainty: generalization of the method of moments , 2004, Eighth IEEE International Symposium on High Assurance Systems Engineering, 2004. Proceedings..

[16]  Roger C. Cheung A User-Oriented Software Reliability Model , 1980, IEEE Trans. Software Eng..

[17]  Michael R. Lyu,et al.  Sensitivity analysis of software reliability for component-based software applications , 2003, Proceedings 27th Annual International Computer Software and Applications Conference. COMPAC 2003.

[18]  Viren Shah,et al.  Framework of a software reliability engineering tool , 1997, Proceedings 1997 High-Assurance Engineering Workshop.

[19]  Kishor S. Trivedi,et al.  Architecture based analysis of performance, reliability and security of software systems , 2005, WOSP '05.

[20]  Swapna S. Gokhale,et al.  An analytical approach to architecture-based software reliability prediction , 1998, Proceedings. IEEE International Computer Performance and Dependability Symposium. IPDS'98 (Cat. No.98TB100248).

[21]  Sourav Bhattacharya,et al.  Fault propagation analysis based variable length checkpoint placement for fault-tolerant parallel and distributed systems , 1997, Proceedings Twenty-First Annual International Computer Software and Applications Conference (COMPSAC'97).

[22]  J. Voas,et al.  Error propagation analysis for COTS systems , 1997 .

[23]  C. V. Ramamoorthy The analytic design of a dynamic look-ahead and program segmenting system for multiprogrammed computers , 1966 .

[24]  Mao Xiaoguang,et al.  A general model for component-based software reliability , 2003, 2003 Proceedings 29th Euromicro Conference.

[25]  Jean-Claude Laprie,et al.  Dependability Evaluation of Software Systems in Operation , 1984, IEEE Transactions on Software Engineering.

[26]  Hany H. Ammar,et al.  A scenario-based reliability analysis approach for component-based software , 2004, IEEE Transactions on Reliability.

[27]  W. W. Everett,et al.  Software component reliability analysis , 1999, Proceedings 1999 IEEE Symposium on Application-Specific Systems and Software Engineering and Technology. ASSET'99 (Cat. No.PR00122).

[28]  B. Littlewood Software Reliability Model for Modular Program Structure , 1979, IEEE Transactions on Reliability.

[29]  Dan C. Marinescu,et al.  Performance Equivalent Analysis of Workflow Systems Based on Stochastic Petri Net Models , 2002, EDCIS.

[30]  Michael R. Lyu,et al.  Optimal resource allocation and reliability analysis for component-based software applications , 2002, Proceedings 26th Annual International Computer Software and Applications.

[31]  Amnon Naamad,et al.  The STATEMATE semantics of statecharts , 1996, TSEM.

[32]  Paul Clements,et al.  Recommended Best Industrial Practice for Software Architecture Evaluation. , 1997 .

[33]  Swapna S. Gokhale,et al.  Reliability simulation of component-based software systems , 1998, Proceedings Ninth International Symposium on Software Reliability Engineering (Cat. No.98TB100257).