Skip to main content
Log in

Model-driven estimation approach for system reliability using integrated tasks and resources

  • Published:
Software Quality Journal Aims and scope Submit manuscript

Abstract

The increasing complexity of software systems in embedded systems or industrial business domains has led to the importance of reliability analysis for current systems. Reliability analysis has become a crucial part of the system development life cycle, and a new approach is needed to enable an early analysis for reliability estimation, especially for the system under design. However, the existing approach neglects the correlation between system resource and system task for estimating system reliability. This subsequently restricts accuracy of the estimation as well as causing difficulties in identifying critical resources and tasks during the design phase. This paper proposes a model-driven system reliability estimation using a scenario-based approach to estimate system reliability and identify its critical resources and system tasks during the design phase. This model is based on the PerFAM model, which can specifically view timing failures through a system scenario. The proposed approach is validated by the application of a sensitivity analysis into one case study. The case study demonstrates an essential relationship between system reliability, as well as both resources and tasks, which ultimately becomes the integral part for a system reliability estimation assessment.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16

Similar content being viewed by others

References

  • Amelunxen, C. et al. (2006). MOFLON: A standard-compliant metamodeling framework with graph transformations. In A. Rensink & J. Warmer (Eds.), Model driven architectureFoundations and applications, ECMDA-FA, (Vol. 4066, pp. 361–375). Heidelberg: LNCS.

  • Baier, C., et al. (2010). Performability assessment by model checking of Markov reward models. Formal Methods in System Design, 36(1), 1–36.

    Article  MATH  Google Scholar 

  • Balsamo, S., et al. (2004). Model-based performance prediction in software development: A survey. IEEE Transactions on Software Engineering, 30(5), 295–310.

    Article  Google Scholar 

  • Becker, S., Koziolek, H., & Reussner, R. (2009). The Palladio component model for model-driven performance prediction. The Journal of Systems & Software, 82(1), 3–22. doi:10.1016/j.jss.2008.03.066.

    Article  Google Scholar 

  • Bernardi, S., Campos, J., & Merseguer, J. (2011a). Timing-failure risk assessment of UML design using Time Petri Net bound techniques. Industrial Informatics, IEEE Transactions on, 7(1), 90–104.

    Article  Google Scholar 

  • Bernardi, S., Merseguer, J., & Petriu, D. C. (2011b). A dependability profile within MARTE. Software & Systems Modeling, 10(3), 313–336.

    Article  Google Scholar 

  • Brosch, F., Koziolek, H., Buhnova, B., & Reussner, R. (2012). Architecture-based reliability prediction with the palladio component model. IEEE Transactions on Software Engineering, 38(6), 1319–1339.

    Article  Google Scholar 

  • Cortellessa, V., Di Marco, A., & Inverardi, P. (2007). Integrating performance and reliability analysis in a non-functional MDA framework. In M. B. Dwyer & A. Lopes (Eds.), Fundamental Approaches to Software Engineering, FASE 2007 (Vol. 4422, pp. 57–71). Heidelberg: LNCS.

  • Distefano, S., Scarpa, M., & Puliafito, A. (2011). From UML to Petri nets: The PCM-based methodology. IEEE Transactions on Software Engineering, 37(1), 65–79.

    Article  Google Scholar 

  • Eusgeld, I., & Freiling, F. (2008). Introduction to dependability metrics. In I. Eusgeld, F. C. Freiling, & R. Reussner (Eds.), Dependability metrics (Vol. 4909, pp. 1–4). Heidelberg: LNCS.

  • Garousi, V., Briand, L. C., & Labiche, Y. (2009). A UML-based quantitative framework for early prediction of resource usage and load in distributed real-time systems. Software & Systems Modeling, 8(2), 275–302.

    Article  Google Scholar 

  • Gokhale, S. (2007). Architecture-based software reliability analysis: Overview and limitations. IEEE Transactions on Dependable and Secure Computing, 4(1), 32–40.

    Article  Google Scholar 

  • Gokhale, S. S., & Trivedi, K. S. (2006). Analytical models for architecture-based software reliability prediction: A unification framework. IEEE Transactions on Reliability, 55(4), 578–590.

    Article  Google Scholar 

  • Gokhale, S. S., et al. (2004). An analytical approach to architecture-based software performance and reliability prediction. Performance Evaluation, 58(4), 391–412.

    Article  Google Scholar 

  • Goseva-Popstojanova, K., & Kamavaram, S. (2003). Assessing uncertainty in reliability of component-based software systems. Software reliability engineering, 2003. ISSRE 2003. 14th international symposium on. pp. 307–320.

  • Goseva-Popstojanova, K., & Trivedi, K. S. (2001). Architecture-based approach to reliability assessment of software systems. Performance Evaluation, 45(2–3), 179–204.

    Article  MATH  Google Scholar 

  • Grassi, V., Mirandola, R., & Sabetta, A. (2007). Filling the gap between design and performance/reliability models of component-based systems: A model-driven approach. Journal of Systems and Software, 80(4), 528–558.

    Article  Google Scholar 

  • Hong, D., & Gu, T. (2011). A UML model based white box reliability prediction to identify unreliable components. Secure software integration and reliability improvement companion (SSIRI-C), 2011 5th international conference on, vol., no., pp. 152–159.

  • Immonen, A., & Niemelä, E. (2007). Survey of reliability and availability prediction methods from the viewpoint of software architecture. Software & Systems Modeling, 7(1), 49–65.

    Article  Google Scholar 

  • Isa, M. A., & Jawawi, D. N. A. (2011). An intermediate metamodel for failure-based behavior of performance and reliability. Software engineering (MySEC), 2011 5th Malaysian conference in, vol., no., pp. 234–239.

  • Isa, M. A., Jawawi, D. N. A., & Zaki, M. Z. M. (2013). A formal semantic for scenario-based model using algebraic semantics framework for MOF. International Journal of Software Engineering and Its Applications, 7(1), 107–122.

    Google Scholar 

  • ISO9126-2 (2001) Software engineeringProduct quality: Part 2: External metrics. ISO/IEC.

  • Jawawi, D. N. A., Sabil, S., Mamat, R., Zaki, M. Z. M., Talab, M. A. S., Mohamad, R., Hamdan, N. M., & Kamal, K. (2011). A robotic wheelchair component-based software development. Book chapter for Mobile Robots/Book 2, 2011 (pp. 102–126). Intech Open Access Publisher, ISBN 978-953-307-842-7.

  • Jedlicka, M., Moravcik, O., Schreiber, P., & Tanuska, P. (2011). UML support for reliability evaluation. In 2009 International symposium on computing, communication, and control (ISCCC 2009) Proceedings of CSIT vol.1, pp. 258–261.

  • Jeske, D. (2005). Some successful approaches to software reliability modeling in industry. Journal of Systems and Software, 74(1), 85–99.

    Article  Google Scholar 

  • Koziolek, H., Schlich, B., & Bilich, C. (2010). A large-scale industrial case study on architecture-based software reliability analysis. In 2010 IEEE 21st international symposium on software reliability engineering, pp. 279–288.

  • Krka, I., Edwards, G., Cheung, L., Golubchik, L., & Medvidovic, N. (2009). A comprehensive exploration of challenges in architecture-based reliability estimation. In Architecting dependable systems VI, Lecture notes in computer science (pp. 202–227). Berlin: Springer.

  • Lauer, C., German, R., & Pollmer, J. (2011). Fault tree synthesis from UML models for reliability analysis at early design stages. ACM SIGSOFT Software Engineering Notes, 36(1), 1–8.

    Article  Google Scholar 

  • Liu, C. L., & Layland, J. W. (1973). Scheduling algorithms for multiprogramming in a hard-real-time environment. Journal of the ACM (JACM), 20(1), 46–61.

    Article  MathSciNet  MATH  Google Scholar 

  • Lyu, M. R. (2007). Software reliability engineering: A roadmap. In 2007 future of software engineering. IEEE Computer Society (pp. 153–170).

  • Mohamed, A., & Zulkernine, M. (2010). A taxonomy of software architecture-based reliability efforts. In Proceedings of the 2010 ICSE workshop on sharing and reusing architectural knowledgeSHARK’10, pp. 44–51.

  • Musa, J. (1993). Operational profiles in software reliability engineering. Software, IEEE, 10(2), 14–32.

    Article  Google Scholar 

  • Petriu, D. B., & Woodside, M. (2006). An intermediate metamodel with scenarios and resources for generating performance models from UML designs. Software & Systems Modeling, 6(2), 163–184.

    Article  Google Scholar 

  • Pietrantuono, R., Russo, S., & Trivedi, K. S. (2010). Software reliability and testing time allocation: An architecture-based approach. IEEE Transactions on Software Engineering, 36(3), 323–337.

    Article  Google Scholar 

  • Popic, P., Desovski, D., Abdelmoez, W., & Cukic, B. (2005). Error propagation in the reliability analysis of component based systems. In Software reliability engineering, 2005. ISSRE 2005. 16th IEEE international symposium on (pp. 10-pp). IEEE.

  • Rivers, J. A., & Kudva, P. (2009). Reliability challenges and system performance at the architecture level. IEEE Design and Test of Computers, 26(6), 62–73.

    Article  Google Scholar 

  • Rodrigues, G., Rosenblum, D., & Uchitel, S. (2005). Using scenarios to predict the reliability of concurrent component-based software systems. In M. Cerioli (Ed.), Fundamental Approaches to Software Engineering, FASE 2005 (Vol. 3442, pp. 111–126). Heidelberg: LNCS.

  • Salfner, F., Lenk, M., & Malek, M. (2010). A survey of online failure prediction methods. ACM Computing Surveys (CSUR), 42(3), 10.

    Article  Google Scholar 

  • Schneidewind, N. F. (2009). Analysis of object-oriented software reliability model development. Innovations in Systems and Software Engineering, 5(4), 243–253.

    Article  Google Scholar 

  • Schürr, A., & Klar, F. (2008). 15 years of triple graph grammars. Graph Transformations, 5214, 411–425.

    Article  Google Scholar 

  • Sharma, V., & Trivedi, K. (2006). Reliability and performance of component based software systems with restarts, retries, reboots and repairs. Software reliability engineering, 2006. ISSRE’06. 17th international symposium, pp. 299–310.

  • Shousha, M., Briand, L. C., & Labiche, Y. (2012). A uml/marte model analysis method for uncovering scenarios leading to starvation and deadlocks in concurrent systems. IEEE Transactions on Software Engineering, 38(2), 354–374.

    Google Scholar 

  • Singh, L. K. (2011). Software reliability early prediction in architectural design phase: Overview and limitations. Journal of Software Engineering and Applications, 04(03), 181–186.

    Article  Google Scholar 

  • Su, X., Liu, H., Wu, Z., Yang, X., & Zuo, D. (2011). SA based software deployment reliability estimation considering component dependence. Journal of Electronics (China), 28(1), 118–125.

    Article  Google Scholar 

  • Szulman, P. (2009). WCET analysis of data dependent, component oriented, embedded software systems. Electronic Notes in Theoretical Computer Science, 203(7), 71–85.

    Article  Google Scholar 

  • Valis, D., & Bartlett, L. (2010). The failure phenomenon: A critique. International Journal of Performance Engineering, 6(2), 181–190.

    Google Scholar 

  • Whittaker, J. A., & Poore, J. H. (1993). Markov analysis of software specifications. ACM Transactions on Software Engineering and Methodology, 2(1), 93–106.

    Article  Google Scholar 

  • Wilhelm, R., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D., et al. (2008). The worst-case execution-time problem—Overview of methods and survey of tools. ACM Transactions on Embedded Computing Systems (TECS), 7(3), 36.

    Article  Google Scholar 

  • Williams, B. J., & Carver, J. C. (2010). Characterizing software architecture changes: A systematic review. Information and Software Technology, 52(1), 31–51.

    Article  Google Scholar 

  • Yacoub, S. M., & Ammar, Hany H. (2002). A methodology for architecture-level reliability risk analysis. IEEE Transactions on Software EngineeringI, 28(6), 529–547.

    Article  Google Scholar 

  • Yacoub, S., Cukic, B., & Ammar, H. H. (2004). A scenario-based reliability analysis approach for component-based software. IEEE Transactions on Reliability, 53(4), 465–480.

    Article  Google Scholar 

  • Yang, J., Huang, G., Zhu, W., Cui, X., & Mei, H. (2009). Quality attribute tradeoff through adaptive architectures at runtime. Journal of Systems and Software, 82(2), 319–332.

    Article  Google Scholar 

  • Zio, E. (2009). Reliability engineering: Old problems and new challenges. Reliability Engineering & System Safety, 94(2), 125–141.

    Article  Google Scholar 

Download references

Acknowledgments

We would like to thank the Malaysia Ministry of Higher Education for sponsoring this research.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mohd Adham Isa.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Isa, M.A., Jawawi, D.N.A. & Zaki, M.Z.M. Model-driven estimation approach for system reliability using integrated tasks and resources. Software Qual J 22, 661–697 (2014). https://doi.org/10.1007/s11219-013-9209-z

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11219-013-9209-z

Keywords

Navigation