Abstract
Architecture-based reliability estimation is challenging: modern software is complex with numerous factors affecting a system’s reliability. In this article, we address three core challenges for architecture-based estimation of a system’s reliability: (1) defining an appropriate failure model based on characteristics of the system being analyzed, (2) dealing with uncertainties of the reliability-related parameters, due to the lack of system implementation, and (3) overcoming the barriers of complexity and scale inherent in modern software. For each challenge, we identify the essential elements of the problem space, outline promising solutions, and illustrate the problems and solutions using a robotics case study. First, we show how a failure model can be derived from the system requirements and architecture. Second, we suggest how information sources available during architectural design can be combined to mitigate model parameter uncertainties. Third, we foresee hierarchical techniques as a promising way of improving the computational tractability of reliability models.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Avizienis, A., Laprie, J.-C., Randell, B., Landwehr, C.: Basic concepts and taxonomy of dependable and secure computing. IEEE Transactions on Dependable and Secure Computing 1(1), 11–33 (2004)
Cheung, L., Roshandel, R., Medvidovic, N., Golubchik, L.: Early prediction of software component reliability. In: Proceedings of the 30th international conference on Software engineering, pp. 111–120 (2008)
Cheung, R.C.: A user-oriented software reliability model. In: IEEE Transactions on Software Engineering, vol. 6, pp. 118–125 (1980)
Cortellessa, V., Grassi, V.: A modeling approach to analyze the impact of error propagation on reliability of component-based systems. In: Proceedings of the 10th International ACM SIGSOFT Symposium on Component-Based Software Engineering, pp. 140–156 (2007)
Cortellessa, V., Singh, H., Cukic, B.: Early reliability assessment of UML based software models. In: Proceedings of the 3rd international workshop on Software and performance, pp. 302–309 (2002)
Das, O., Woodside, C.M.: Layered dependability modeling of an air traffic control system. In: Workshop on Software Architectures for Dependable Systems (May 2003)
El-Kharboutly, R., Ammar, R.A., Gokhale, S.S.: UML-based methodology for reliability analysis of concurrent software applications. International Journal of Computers and Their Applications 14(4), 250–259 (2007)
Fielding, R.T., Taylor, R.N.: Principled design of the modern web architecture. In: Proceedings of the 22nd International Conference on Software Engineering (2000)
Goel, A.L., Okumoto, K.: Time-dependent error-detection rate models for software reliability and other performance measures. IEEE Trans. on Reliability 28(3) (1979)
Gokhale, S.S.: Architecture-Based software reliability analysis: Overview and limitations. IEEE Transactions on Dependable and Secure Computing 4(1), 32–40 (2007)
Gokhale, S.S., Lyu, M.R., Trivedi, K.S.: Reliability simulation of component-based software systems. In: Proceedings of the 9th International Symposium on Software Reliability Engineering, pp. 192–201 (1998)
Gokhale, S.S., Trivedi, K.S.: Reliability prediction and sensitivity analysis based on software architecture. In: ISSRE 2002 (2002)
Goseva-Popstojanova, K., Hassan, A., Abdelmoez, W., Nassar, D.E.M., Ammar, H., Mili, A.: Architectural-level risk analysis using UML. IEEE Transactions on Software Engineering 29(3) (2003)
Goseva-Popstojanova, K., Trivedi, K.S.: Architecture-based approaches to software reliability prediction. Computers and Mathematics with Applications 46(7), 1023–1036 (2003)
Immonen, A., Niemelä, E.: Survey of reliability and availability prediction methods from the viewpoint of software architecture. Software and Systems Modeling 7(1), 49–65 (2008)
Jelinski, Z., Moranda, P.B.: Software reliability research. Statistical Computer Performance Evaluation (1972)
Krishnamurthy, S., Mathur, A.P.: On the estimation of reliability of a software system using reliabilities of its components. In: Proceedings of ISSRE 1997 (1997)
Krka, I., Cheung, L., Edwards, G., Golubchik, L., Medvidovic, N.: Architecture-based software reliability estimation: Problem space, challenges, and strategies. In: DSN 2008 Companion: Proceedings of DSN 2008 Workshop on Architecting Dependable Systems (2008)
Kubat, P.: Assessing reliability of modular software. Operations Research Letters 8 (1989)
Littlewood, B.: A reliability model for Markov structured software. In: Proceedings of the international conference on Reliable software, pp. 204–207 (1975)
Littlewood, B., Verrall, J.L.: A bayesian reliability growth model for computer software. Applied Statistics 22, 332–346 (1973)
Lyu, M.R.: Handbook of Software Reliability. Princeton University Press, Princeton (1996)
Malek, S., Mikic-Rakic, M., Medvidovic, N.: A style-aware architectural middleware for resource-constrained, distributed systems. IEEE Transactions on Software Engineering 31(3), 256–272 (2005)
Malek, S., Seo, C., Ravula, S., Petrus, B., Medvidovic, N.: Reconceptualizing a family of heterogeneous embedded systems via explicit architectural support. In: Proceedings of the 29th International Conference on Software Engineering, pp. 591–601 (2007)
Medvidovic, N., Taylor, R.N.: A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering 26(1), 70–93 (2000)
Musa, J.D.: Operational profiles in software-reliability engineering. Software, IEEE 10(2), 14–32 (1993)
Musa, J.D.: Software Reliability Engineering. McGraw-Hill, New York (1999)
Musa, J.D., Okumoto, K.: Logarithmic poisson execution time model for software reliability measurement. In: Proceedings of. Compsac (1984)
Rabiner, L.R.: A tutorial on hidden markov models and selected applications in speech recognition. Proceedings of the IEEE 77(2), 257–286 (1989)
Reussner, R.R., Schmidt, H.W., Poernomo, I.H.: Reliability prediction for component-based software architectures. Journal of Systems and Software 66(3) (2003)
Rodrigues, G., Rosenblum, D.S., Uchitel, S.: Using scenarios to predict the reliability of concurreny component-based software systems. In: Proceedings of the 8th International Conference on Fundamental Approaches to Software Engineering (2005)
Roshandel, R., Medvidovic, N., Golubchik, L.: A Bayesian model for predicting reliability of software systems at the architectural level. In: Proceedings of the 3rd International Conference on the Quality of Software Architectures (2007)
Rugina, A.-E., Kanoun, K., Kaâniche, M.: A system dependability modeling framework using aadl and gspns. In: de Lemos, R., Gacek, C., Romanovsky, A. (eds.) Architecting Dependable Systems IV. LNCS, vol. 4615, pp. 14–38. Springer, Heidelberg (2007)
Shooman, M.L.: Structural models for software reliability prediction. In: Proceedings of ICSE 1976 (1976)
Siegrist, K.: Reliability of systems with Markov transfer of control. IEEE TSE 13(7) (1988)
Siegrist, K.: Reliability of systems with markov transfer of control, II. IEEE Trans. Softw. Eng. 14(10) (1988)
Sommerville, I.: Software Engineering. Addison Wesley, Reading (2004)
Stewart, W.: Introduction to the numerical solution of Markov chains. Princeton University Press, Princeton (1994)
Taylor, R.N., Medvidovic, N., Dashofy, E.M.: Software Architecture: Foundations, Theory and Practice. John Wiley and Sons, Chichester (2009)
Tosun, S., Mansouri, N., Arvas, E., Kandemir, M., Xie, Y., Hung, W.-L.: Reliability-centric hardware/software co-design. In: ISQED 2005: Proceedings of the 6th International Symposium on Quality of Electronic Design, Washington, DC, USA, pp. 375–380. IEEE Computer Society, Los Alamitos (2005)
Wallace, M.: Modular architectural representation and analysis of fault propagation and transformation. Elec. Notes in Theoretical Computer Science 18(3), 351–356 (2002)
Wang, W.-L., Pan, D., Chen, M.-H.: Architecture-based software reliability modeling. Journal of Systems and Software 79(1) (2006)
Yacoub, S.M., Cukic, B., Ammar, H.H.: A scenario-based reliability analysis approach for component-based software. IEEE Transactions on Reliability 53(4), 465–480 (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Krka, I., Edwards, G., Cheung, L., Golubchik, L., Medvidovic, N. (2009). A Comprehensive Exploration of Challenges in Architecture-Based Reliability Estimation. In: de Lemos, R., Fabre, JC., Gacek, C., Gadducci, F., ter Beek, M. (eds) Architecting Dependable Systems VI. Lecture Notes in Computer Science, vol 5835. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-10248-6_9
Download citation
DOI: https://doi.org/10.1007/978-3-642-10248-6_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-10247-9
Online ISBN: 978-3-642-10248-6
eBook Packages: Computer ScienceComputer Science (R0)