Service-oriented architecture (SOA) techniques are being increasingly used for developing critical applications, especially network-centric systems. While the SOA paradigm provides flexibility and agility to better respond to changing business requirements, the task of assessing the reliability of SOA-based systems is quite challenging. Deriving high confidence reliability estimates for mission-critical systems can require huge costs and time. SOAsystems/ applications are built by using either atomic or composite services as building blocks. These services are generally assumed to be realized with reuse and logical composition of components. One approach for assessing the reliability of SOA-based systems is to use AI reasoning techniques on dynamically collected failure data of each service and its components as one of the evidences together with results from random testing. Memory-Based Reasoning technique and Bayesian Belief Net-works are verified as the reasoning tools best suited to guide the prediction analysis. A framework constructed from the above approach identifies the least tested and “high usage” input subdomains of the service(s) and performs necessary remedial actions depending on the predicted results.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Amman PE, Brilliant SS, Knight JC (1994) The effect of imperfect error detection on reliability assessment via life testing. IEEE Transactions on Software Engineering 20(2):142-148
Arsanjani A (2004) Service-Oriented modeling and architecture. White paper. IBM developerWorks. http://www.ibm.com/developerworks/webservices/library/ws-soa-design1/. Accessed 24 October 2008
Canfora G, Penta MD (2006) Testing services and service-centric systems: challenges and opportunities. IT Professional 8(2):10-17
Challagulla VUB, Bastani FB, Yen IL (2008) Empirical assessment of machine learning based software defect prediction techniques. International Journal on Artificial Intelligence Tools 17(2):389-400
Cukic B, Bastani FB (1996) On reducing the sensitivity of software reliability to variations in the operational profile. In: Proceedings of the 7th International Symposium on Software Reliability Engineering, White Plains, October 1996, pp 45-54
Cukic B, Gunel E, Singh H (2003) The theory of software reliability corroboration E86-D(10):2121-2129
Delgado N, Gates AQ, Roach S (2004) A taxonomy and catalog of runtime software-fault monitoring tools. IEEE Transactions on Software Engineering 30(12):859-972
Fenton N, Littlewood B, Neil M (1998) Assessing dependability of safety critical systems using diverse evidence. IEE Proceedings Software Engineering 145(1):35-39
Fenton N, Neil M (1999) A critique of software defect prediction models. IEEE Transactions on Software Engineering 25(5):675-689
Frankl P, Hamlet D, Littlewood B et al (1997) Choosing a testing method to deliver reliability. In: Proceedings of the 19th International Conference on Software Engineering, Boston, May 1997, pp 68-78
Gao T, Ma H, Yen IL et al (2005) Toward QoS analysis of adaptive service-oriented architecture. In: Proceedings of the IEEE International Workshop on Service-Oriented System Engineering, Beijing, October 2005, pp 219-226
Gao J, Wu Y, Chang L et al (2006) Measuring component-based systems using a systematic approach and environment. In: Proceedings of the 2nd IEEE International Workshop on Service-Oriented System Engineering, Shanghai, May 2006, pp 121-129
Gokhale S, Wong WE, Trivedi KS et al (1998) An analytical approach to architecture based software reliability prediction. In: Proceedings of 3rd International Computer Performance and Dependability Symposium, Los Alamitos, 1998, pp 13-22
Grassi V, Patella S (2006) Reliability prediction for service-oriented computing environments. IEEE Internet Computing 10(3):43-49
Hamlet D, Mason D, Woit D (2001) Theory of software reliability based on components. In: Proceedings of the 23rd International Conference on Software Engineering, Toronto, May 2001, pp 361-370
Kappes M, Kintala CMR, Klemm RP (2000) Formal limits on determining reliabilities of component-based software systems. In: Proceedings of the 11th International Symposium on Software Reliability Engineering, San Jose, October 2000, pp 356-364
Kuball S, May J, Hughes G (1999) Building a system failure rate estimator by identifying component failure rates. In: Proceedings of the 10th International Symposium on Software Reliability Engineering, Boca Raton, November 1999, pp 32-41
Krishnamurthy S, Mathur AP (1997) On the estimation of reliability of a software system using reliabilities of its components. In: Proceedings of 8th International Symposium on Software Reliability Engineering, Albuquerque, November 1997, pp 146-155
Laprie JC, Kanoun K (1996) Software Reliability and System Reliability. McGraw-Hill, New York
Littlewood B, Strigini L (2000) Software reliability and dependability: A roadmap. In: Proceedings of the 22nd International Conference on Software Engineering, Limerick, June 2000, pp 177-188
Lo JH, Huang CY, Kuo SY et al. (2003) Sensitivity Analysis of Software Reliability for Component-Based Software Applications. In: Proceedings of the 27th Annual International Computer Software and Applications Conference, Dallas, November 2003, pp 500-505
May J (2002) Testing the reliability of component-based safety critical software. In: Proceedings of the 20th International System Safety Conference, Denver, August 2002, pp 214-224
Miller KW, Morell LJ, Noonan RE (1992) Estimating the probability of failure when testing reveals no failures. IEEE Transactions on Software Engineering 18(1):33-43
Mitchell T (1997) Machine Learning. McGraw-Hill Book Co., Singapore
Musa JD (1993) Operational Profiles in Software-Reliability Engineering. IEEE Software 10(2):14-32
Paul RA (2005a) DoD towards software services. In: Proceedings of the 10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems, Sedona, February 2005, pp 3-6
Paul RA (2005b) Tomorrow's needs - yesterday's technology: DoD's architectural dilemma & plan for resolution. In: The 9th IEEE International Symposium on High-Assurance Systems Engineering, Heidelberg, October 2005, pp 9-12
Schneidewind NF (1998) Methods for assessing COTS reliability, maintainability, and availability. In: Proceedings of the International Conference on Software Maintenance, Bethesda, November 1998, pp 224-225
Tsai WT (2005) Service-oriented system engineering: a new paradigm. In: Proceedings of the IEEE International Workshop on Service-Oriented System Engineering, Beijing, October 2005, pp 3-6
Tsai WT, Zhang D, Chen Y et al (2004) A software reliability model for web services. In: Proceedings of the 8th IASTED International Conference on Software Engineering and Applications, Cambridge, November 2004, pp 144-149
Tsai WT, Chen Y, Paul RA (2005) Specification-based verification and validation of Web services and service-oriented operating systems. In: Proceedings of the 10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems, Sedona, February 2005, pp 139-147
Voas J (2001) Why is it so hard to predict software system trustworthiness from software component trustworthiness?. In: Proceedings of the 20th IEEE Symposium on Reliable Distributed Systems, New Orleans, October 2001, p 179
Wohlin C, Runeson P (1998) Reliability certification of software components. In: Proceedings of the 5th IEEE International Conference on Software Reuse, Victoria, June 1998, pp 56-65
Woit D, Mason D (1998) Software component independence. In: Proceedings of the 3rd IEEE High-Assurance Systems Engineering Symposium, Washington, November 1998, pp 74-81
Yacoub SM, Cukic B, Ammar HH (1999) A scenario-based reliability analysis of component-based software. In: Proceedings of 10th International Symposium on Software Reliability Engineering, Boca Raton, November 1999, pp 22-31
Yu Y, Johnson BW (2003) A BBN approach to certifying the reliability of COTS software system reliability. In: Proceedings of the Annual Reliability and Maintainability Symposium, Tampa, January 2003, pp 19-24
Zhang D (2000) Applying machine learning algorithms in software development. In: Proceedings of the Monterey Workshop on Modelling Software System Structures in a Fastly Moving Scenario, Santa Margherita Ligure, June 2000, pp 275-291
Zhang J (2004) An approach to facilitate reliability testing of web services components. In: Proceedings of the 15th International Symposium on Software Reliability Engineering, Saint-Malo, November 2004, pp 210-218
Zhu Y, Gao J (2003) A Method to calculate the reliability of component-based software. In: Proceedings of the 12th Asian Test Symposium, Xian, November 2003, pp. 488-491
Author information
Authors and Affiliations
Corresponding authors
Rights and permissions
Copyright information
© 2009 Springer-Verlag US
About this chapter
Cite this chapter
Challagulla, V.U.B., Bastani, F.B., Yen, IL. (2009). High-Confidence Compositional Reliability Assessment of SOA-Based Systems Using Machine Learning Techniques. In: Machine Learning in Cyber Trust. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-88735-7_11
Download citation
DOI: https://doi.org/10.1007/978-0-387-88735-7_11
Published:
Publisher Name: Springer, Boston, MA
Print ISBN: 978-0-387-88734-0
Online ISBN: 978-0-387-88735-7
eBook Packages: Computer ScienceComputer Science (R0)