Localizing Runtime Anomalies in Service-Oriented Systems

In a distributed, dynamic and volatile operating environment, runtime anomalies occurring in service-oriented systems (SOSs) must be located and fixed in a timely manner in order to guarantee successful delivery of outcomes in response to user requests. Monitoring all component services constantly and inspecting the entire SOS upon a runtime anomaly are impractical due to excessive resource and time consumption required, especially in large-scale scenarios. We present a spectrum-based approach that goes through a five-phase process to quickly localize runtime anomalies occurring in SOSs based on end-to-end system delays. Upon runtime anomalies, our approach calculates the similarity coefficient for each basic component (BC) of the SOS to evaluate their suspiciousness of being faulty. Our approach also calculates the delay coefficients to evaluate each BC's contribution to the severity of the end-to-end system delays. Finally, the BCs are ranked by their similarity coefficient scores and delay coefficient scores to determine the order of them being inspected. Extensive experiments are conducted to evaluate the effectiveness and efficiency of the proposed approach. The results indicate that our approach significantly outperforms random inspection and the popular Ochiai-based inspection in localizing single and multiple runtime anomalies effectively. Thus, our approach can help save time and effort for localizing runtime anomalies occuring in SOSs.

[1]  James R. Larus,et al.  The use of program profiling for software maintenance with applications to the year 2000 problem , 1997, ESEC '97/FSE-5.

[2]  Eyhab Al-Masri,et al.  Investigating web services on the world wide web , 2008, WWW.

[3]  Eyhab Al-Masri,et al.  QoS-based Discovery and Ranking of Web Services , 2007, 2007 16th International Conference on Computer Communications and Networks.

[4]  Jun Han,et al.  Optimizing the Configuration of Web Service Monitors , 2010, ICSOC.

[5]  Rui Abreu,et al.  Online Spectrum-based Fault Localization for Health Monitoring and Fault Recovery of Self-Adaptive Systems , 2012, International Conference on Autonomic and Autonomous Systems.

[6]  Hai Jin,et al.  Spectrum-Based Runtime Anomaly Localisation in Service-Based Systems , 2015, 2015 IEEE International Conference on Services Computing.

[7]  Henry Hoffmann,et al.  Quality of service profiling , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[8]  Ron Kohavi,et al.  Online Experiments: Lessons Learned , 2007, Computer.

[9]  Mary Jean Harrold,et al.  Debugging in Parallel , 2007, ISSTA '07.

[10]  Danilo Ardagna,et al.  Adaptive Service Composition in Flexible Processes , 2007, IEEE Transactions on Software Engineering.

[11]  Baowen Xu,et al.  A theoretical analysis of the risk evaluation formulas for spectrum-based fault localization , 2013, TSEM.

[12]  A. S. Meyer,et al.  Comparison of similarity coefficients used for cluster analysis with dominant markers in maize (Zea mays L) , 2004 .

[13]  Rui Abreu,et al.  GZoltar: an eclipse plug-in for testing and debugging , 2012, 2012 Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering.

[14]  Mark von Rosing,et al.  Business Process Model and Notation - BPMN , 2015, The Complete Business Process Handbook, Vol. I.

[15]  Alexander L. Wolf,et al.  Fault Localization in MANET-Hosted Service-Based Systems , 2012, 2012 IEEE 31st Symposium on Reliable Distributed Systems.

[16]  Annapaola Marconi,et al.  Multi-layered Monitoring and Adaptation , 2011, ICSOC.

[17]  Frank Tip,et al.  Fault Localization for Dynamic Web Applications , 2012, IEEE Transactions on Software Engineering.

[18]  Javier Franch Gutiérrez,et al.  Monitoring Adaptable SOA Systems using SALMon , 2008 .

[19]  Xiaohui Gu,et al.  FChain: Toward Black-Box Online Fault Localization for Cloud Systems , 2013, 2013 IEEE 33rd International Conference on Distributed Computing Systems.

[20]  Hai Jin,et al.  Adaptation of Web Service Composition Based on Workflow Patterns , 2008, ICSOC.

[21]  Luciano Baresi,et al.  Dynamo + Astro: An Integrated Approach for BPEL Monitoring , 2009, 2009 IEEE International Conference on Web Services.

[22]  Zibin Zheng,et al.  Collaborative reliability prediction of service-oriented systems , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[23]  Dimosthenis Kyriazis,et al.  A Self-adaptive hierarchical monitoring mechanism for Clouds , 2012, J. Syst. Softw..

[24]  H. Cleve,et al.  Locating causes of program failures , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[25]  Francisco Curbera,et al.  Web Services Business Process Execution Language Version 2.0 , 2007 .

[26]  Radu Calinescu,et al.  Dynamic QoS Management and Optimization in Service-Based Systems , 2011, IEEE Transactions on Software Engineering.

[27]  Rui Abreu,et al.  Zoltar: A Toolset for Automatic Fault Localization , 2009, 2009 IEEE/ACM International Conference on Automated Software Engineering.

[28]  Eric A. Brewer,et al.  Pinpoint: problem determination in large, dynamic Internet services , 2002, Proceedings International Conference on Dependable Systems and Networks.

[29]  Xiangyu Zhang,et al.  Towards locating execution omission errors , 2007, PLDI '07.

[30]  Mary Jean Harrold,et al.  Empirical evaluation of the tarantula automatic fault-localization technique , 2005, ASE.

[31]  Alessandro Orso,et al.  Automated Support for Reproducing and Debugging Field Failures , 2015, ACM Trans. Softw. Eng. Methodol..

[32]  Luciano Baresi,et al.  Self-Supervising BPEL Processes , 2011, IEEE Transactions on Software Engineering.

[33]  Raúl A. Santelices,et al.  Lightweight fault-localization using multiple coverage types , 2009, 2009 IEEE 31st International Conference on Software Engineering.

[34]  Peter Zoeteweij,et al.  A practical evaluation of spectrum-based fault localization , 2009, J. Syst. Softw..

[35]  Richard W. Vuduc,et al.  Falcon: fault localization in concurrent programs , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[36]  Zhendong Su,et al.  HDD: hierarchical delta debugging , 2006, ICSE.

[37]  Srinath Perera,et al.  A Scalable Multi-Tenant Architecture for Business Process Executions , 2012, Int. J. Web Serv. Res..

[38]  Lee Naish,et al.  A model for spectra-based software diagnosis , 2011, TSEM.

[39]  Haifeng Chen,et al.  Fault detection and localization in distributed systems using invariant relationships , 2013, 2013 43rd Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN).

[40]  Xavier Franch,et al.  Integrated Monitoring Approach for Seamless Service Provisioning in Federated Clouds , 2012, 2012 20th Euromicro International Conference on Parallel, Distributed and Network-based Processing.

[41]  Hai Jin,et al.  Quality-Aware Service Selection for Service-Based Systems Based on Iterative Multi-Attribute Combinatorial Auction , 2014, IEEE Transactions on Software Engineering.

[42]  Luciano Baresi,et al.  Comprehensive Monitoring of BPEL Processes , 2010, IEEE Internet Computing.

[43]  Ron Kohavi,et al.  Practical guide to controlled experiments on the web: listen to your customers not to the hippo , 2007, KDD '07.

[44]  Shan Lu,et al.  Flight data recorder: monitoring persistent-state interactions to improve systems management , 2006, OSDI '06.

[45]  A.J.C. van Gemund,et al.  On the Accuracy of Spectrum-based Fault Localization , 2007, Testing: Academic and Industrial Conference Practice and Research Techniques - MUTATION (TAICPART-MUTATION 2007).

[46]  Hai Jin,et al.  Formulating Cost-Effective Monitoring Strategies for Service-Based Systems , 2014, IEEE Transactions on Software Engineering.

[47]  Anne H. H. Ngu,et al.  QoS-aware middleware for Web services composition , 2004, IEEE Transactions on Software Engineering.

[48]  Markus Stumptner,et al.  Model-Based Debugging - State of the Art And Future Challenges , 2007, V&D@FLoC.