A novel reliability analysis approach for component‐based software based on the complex network theory

Traditional software reliability evaluation approaches lack the analysis of intercomponent interactions of component‐based software systems, necessitating software reliability evaluation based on the reliabilities of the overall architecture and each component. In this paper, we propose a reliability evaluation model and an importance assessment technique for component‐based software based on the complex network theory. The components of a software system are identified and divided into 2 categories, input/output components and ordinary components. Then, the impact factors of ordinary components and input/output components are calculated based on the complex network theory and execution probabilities, respectively. Finally, the impact factors are used to evaluate the reliability of the software system and assess the importance of each component. Experimental results show that the proposed approach is able to estimate the reliability of component‐based software and provide relative priorities of the components that can be used to guide the system reliability optimization.

[1]  Ding Qiwei ADVANCES IN THE STUDIES ON COMPLEX NETWORKS OF SOFTWARE SYSTEMS , 2008 .

[2]  Michael R. Lyu Software Reliability Engineering: A Roadmap , 2007, Future of Software Engineering (FOSE '07).

[3]  Swapna S. Gokhale,et al.  Importance measures for modular software with uncertain parameters , 2010, Softw. Test. Verification Reliab..

[4]  Yu Dun-hui Software Complexity Metrics Based on Complex Networks , 2006 .

[5]  Chin-Yu Huang,et al.  An Adaptive Reliability Analysis Using Path Testing for Complex Component-Based Software Systems , 2011, IEEE Transactions on Reliability.

[6]  Yushu SUN,et al.  Cascading failure analysis of power flow on wind power based on complex network theory , 2014 .

[7]  Swapna S. Gokhale,et al.  Architecture-Based Software Reliability Analysis: Overview and Limitations , 2007, IEEE Transactions on Dependable and Secure Computing.

[8]  Swapna S. Gokhale,et al.  An analytical approach to architecture-based software performance and reliability prediction , 2004, Perform. Evaluation.

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

[10]  Duncan J. Watts,et al.  Collective dynamics of ‘small-world’ networks , 1998, Nature.

[11]  Bojan Cukic,et al.  Error propagation in the reliability analysis of component based systems , 2005, 16th IEEE International Symposium on Software Reliability Engineering (ISSRE'05).

[12]  Albert,et al.  Emergence of scaling in random networks , 1999, Science.

[13]  Bev Littlewood,et al.  A Bayesian Reliability Growth Model for Computer Software , 1973 .

[14]  Yiping Yao,et al.  Identifying all-around nodes for spreading dynamics in complex networks , 2012 .

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

[16]  Anne-Marie Kermarrec,et al.  Second order centrality: Distributed assessment of nodes criticity in complex networks , 2011, Comput. Commun..

[17]  Xavier Défago,et al.  Reliability prediction for component-based software systems: Dealing with concurrent and propagating errors , 2015, Sci. Comput. Program..

[18]  Kishor S. Trivedi,et al.  Quantifying software performance, reliability and security: An architecture-based approach , 2007, J. Syst. Softw..

[19]  V. E. Johnson,et al.  A hierarchical model for estimating the early reliability of complex systems , 2005, IEEE Transactions on Reliability.

[20]  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.

[21]  Michael R. Lyu,et al.  A Unified Scheme of Some Nonhomogenous Poisson Process Models for Software Reliability Estimation , 2003, IEEE Trans. Software Eng..

[22]  Yang Gao,et al.  A New Approach to Identify Influential Spreaders in Complex Networks , 2013, WAIM.

[23]  Francesco De Pellegrini,et al.  K-shell decomposition for dynamic complex networks , 2010, 8th International Symposium on Modeling and Optimization in Mobile, Ad Hoc, and Wireless Networks.

[24]  Chen Yang,et al.  Linux kernels as complex networks: A novel method to study evolution , 2009, 2009 IEEE International Conference on Software Maintenance.

[25]  Yuval Shavitt,et al.  A model of Internet topology using k-shell decomposition , 2007, Proceedings of the National Academy of Sciences.

[26]  Xavier Défago,et al.  Reliability Prediction for Component-Based Systems: Incorporating Error Propagation Analysis and Different Execution Models , 2012, 2012 12th International Conference on Quality Software.

[27]  Samantha Jenkins,et al.  Software architecture graphs as complex networks: A novel partitioning scheme to measure stability and evolution , 2007, Inf. Sci..

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

[29]  Heiko Koziolek,et al.  Performance evaluation of component-based software systems: A survey , 2010, Perform. Evaluation.

[30]  Jing Liu,et al.  Multi-granularity evolution analysis of software using complex network theory , 2011, J. Syst. Sci. Complex..

[31]  Vincenzo Grassi,et al.  A Modeling Approach to Analyze the Impact of Error Propagation on Reliability of Component-Based Systems , 2007, CBSE.

[32]  Zhang Yi,et al.  Quantitative Evaluation Algorithm for Node Importance of Complex Networks , 2011 .

[33]  James Noble,et al.  Scale-free Geometry in Object-Oriented Programs , 2004 .

[34]  Roger C. Cheung,et al.  A User-Oriented Software Reliability Model , 1978, IEEE Transactions on Software Engineering.

[35]  Leonard M. Freeman,et al.  A set of measures of centrality based upon betweenness , 1977 .

[36]  Lev Muchnik,et al.  Identifying influential spreaders in complex networks , 2010, 1001.5285.

[37]  Wang Yadi,et al.  A Novel Method for Modeling Complex Network of Software System Security , 2012, 2012 IEEE Sixth International Conference on Software Security and Reliability Companion.

[38]  Heiko Koziolek,et al.  Parameterized Reliability Prediction for Component-Based Software Architectures , 2010, QoSA.

[39]  Huan Li,et al.  Dynamical evolution analysis of the object-oriented software systems , 2008, 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence).

[40]  Swapna S. Gokhale,et al.  Analytical Models for Architecture-Based Software Reliability Prediction: A Unification Framework , 2006, IEEE Transactions on Reliability.

[41]  James Noble,et al.  Scale-free geometry in OO programs , 2005, CACM.

[42]  S. Havlin,et al.  Self-similarity of complex networks , 2005, Nature.

[43]  Li Xiang NEW INTERDISCIPLINARY SCIENCE:NETWORK SCIENCE(I) , 2007 .

[44]  Xiang Li,et al.  Evolving Topology of Java Networks , 2006, 2006 6th World Congress on Intelligent Control and Automation.

[45]  Heiko Koziolek,et al.  Architecture-Based Reliability Prediction with the Palladio Component Model , 2012, IEEE Transactions on Software Engineering.

[46]  A. P. Singh,et al.  A new model for Reliability Estimation of Component-Based Software , 2013, 2013 3rd IEEE International Advance Computing Conference (IACC).