Early reliability assessment of component-based software system using colored petri net

Early reliability assessment of component-based software system using colored petri net

Assessment of reliability in the early stages of software development from architectural models is one ofthe major challenges that many studies have addressed in this field in the last decade. The main drawbacks of existingmethods are the following: 1) considering equal impact for all parts of the software architecture on system reliability,and 2) inability to determine the contribution of each part of the software in the system failure. This paper introducesthe extended version of the colored petri net as an underlying verifiable model to evaluate the reliability of a softwaresystem. The proposed model enhances reliability assessment of the software system by measuring the density of failure foreach part of the software system, predicting the reliability during execution of a scenario, and estimating the reliabilityof every structural part of a program, such as loops and conditions. These innovations enable software architects tocost-effectively identify and correct the vulnerable parts of a system in the early stages of software development. Thehigh-level model of the scenario is taken as a UML sequence diagram. Synthesis of the formal model is conducted usingan introduced graph called a fragments dependency graph. The practicality of the suggested approach is illustrated bya case study.

___

  • [1] Pressman RS. Software Engineering: A Practitioner’s Approach. 7th ed. New York, NY, USA: McGraw-Hill, 2010.
  • [2] Singh L K, Tripathi AK, Vinod G. Software reliability early prediction in architectural design phase: overview and limitations. Journal of Software Engineering and Applications 2011; 4 (3): 181-186. doi: 10.4236/ jsea.2011.43020
  • [3] Sinha S, Goyal NK, Mall R. Early prediction of reliability and availability of combined hardware-software systems based on functional failures. Journal of Systems Architecture 2019; 92: 23-38. doi: 10.1016/j.sysarc.2018.10.007
  • [4] Singh LK, Vinod G, Tripathi AK. Reliability prediction through system modeling. ACM SIGSOFT Software Engineering Notes 2013; 38 (6): 1-10. doi: 10.1145/2532780.25328012
  • [5] Goševa-Popstojanova K, Trivedi K. Architecture-based approach to reliability assessment of software systems. Performance Evaluation 2001; 45 (2-3): 179-204. doi: 10.1016/S0166-5316(01)00034-7
  • [6] Yacoub S, Cukic B, Ammar H. A scenario-based reliability analysis approach for component-based software. IEEE Transactions on Reliability 2004; 53 (4): 465-480. doi: 10.1109/TR.2004.838034
  • [7] Ali A, Jawawi DN, Isa MA. Modeling and calculation of scenarios reliability in component-based software systems. In: IEEE 2014 Malaysian Software Engineering Conference (MySEC); Langkawi, Malaysia; 2014. pp. 160-165.
  • [8] Rodrigues G, Rosenblum D, Uchitel S. Using scenarios to predict the reliability of concurrent component-based software systems. In: Springer 2005 International Conference on Fundamental Approaches to Software Engineering; Berlin, Germany; 2005. pp. 111-126.
  • [9] Dobrica L, Niemela E. A survey on software architecture analysis methods. IEEE Transactions on Software Engineering 2002; 28 (7): 638-653. doi: 10.1109/TSE.2002.1019479
  • [10] Karimpour J, Isazadeh A, Izadkhah H. Early performance assessment in component-based software systems. IET Software 2013; 7 (2): 118-128. doi: 10.1049/iet-sen.2011.0143
  • [11] Micskei Z, Waeselynck H. The many meanings of UML 2 Sequence Diagrams: a survey. Software and Systems Modeling 2011; 10 (4): 489-514. doi: 10.1007/s10270-010-0157-9
  • [12] Choppy C, Klai K, Zidani H. Formal verification of UML state diagrams: a petri net based approach. ACM SIGSOFT Software Engineering Notes 2011; 36 (1): 1-8. doi: 10.1145/1921532.1921561
  • [13] Wiper MP, Palacios AP, Mareen J. Bayesian software reliability prediction using software metrics information. Quality Technology and Quantitative Management 2012; 9 (1): 35-44. doi: 10.1080/16843703.2012.11673276
  • [14] Meedeniya DA. Correct model-to-model transformation for formal verification. PhD, University of St Andrews, St Andrews, UK, 2013.
  • [15] Yin ML, Hyde CL, James LE. A petri-net approach for early-stage system-level software reliability estimation. In: IEEE 2000 Annual Reliability and Maintainability Symposium, International Symposium on Product Quality and Integrity; Los Angeles, CA, USA; 2000. pp. 100-105.
  • [16] Gou Z, Ahmadon MA, Yamaguchi S, Gupta BB. A Petri net-based framework of intrusion detection systems. In: IEEE 2015 Global Conference on Consumer Electronics; Osaka, Japan; 2015. pp. 579-583.
  • [17] Mahato DP, Singh RS. Load balanced scheduling and reliability modeling of grid transaction processing system using coloured Petri nets. ISA Transactions 2019; 84: 225-236. doi: 10.1016/j.isatra.2018.08.022
  • [18] Peterson JL. Petri nets. ACM Computing Surveys 1977; 9 (3): 223-252. doi: 10.1145/356698.356702
  • [19] Volovoi V. Modeling of system reliability Petri nets with aging tokens. Reliability Engineering & System Safety 2004; 84 (2): 149-161. doi: 10.1016/j.ress.2003.10.013
  • [20] Bowles J, Meedeniya D. Formal transformation from sequence diagrams to coloured petri nets. In: IEEE 2010 Asia Pacific Software Engineering Conference; Sydney, Australia; 2010. pp. 1216-225.
  • [21] Staines TS. Transforming UML sequence diagrams into Petri Net. Journal of Communication and Computer 2013; 10 (1): 72-81.
  • [22] Reussner RH, Schmidt HW, Poernomo IH. Reliability prediction for component-based software architectures. Journal of Systems and Software 2003; 66 (3): 241-252. doi: 10.1016/S0164-1212(02)00080-8
  • [23] Azgomi MA, Entezari-Maleki R. Task scheduling modelling and reliability evaluation of grid services using coloured Petri nets. Future Generation Computer System 2010; 26 (8): 1141-1150. doi: 10.1016/j.future.2010.05.015
  • [24] Jensen K, Kristensen L, Wells L. Coloured petri nets and CPN tools for modelling and validation of concurrent systems. International Journal on Software Tools for Technology Transfer 2007; 9 (3-4): 213-254. doi: 10.1007/s10009- 007-0038-x
  • [25] Ciardo G, Muppala J, Trivedi K. Analyzing concurrent and fault-tolerant software using stochastic reward nets. Journal of Parallel and Distributed Computing 1992; 15 (3): 255-269. doi: 10.1016/0743-7315(92)90007-A
  • [26] Cheraghlou M, Khadem-Zadeh A, Haghparast M. A survey of fault tolerance architecture in cloud computing. Journal of Network and Computer Applications 2016; 61: 81-92. doi: 10.1016/j.jnca.2015.10.004
  • 27] Qiu X, Ali S, Yue T, Zhang L. Reliability-redundancy-location allocation with maximum reliability and minimum cost using search techniques. Information and Software Technology 2017; 82: 36-54. doi: 10.1016/j.infsof.2016.09.010
  • [28] Hu H, Jiang CH, Cai KY, Wong WE, Mathur AP. Enhancing software reliability estimates using modified adaptive testing. Information and Software Technology 2017; 55 (2): 288-300. doi: 10.1016/j.infsof.2012.08.012
  • [29] Singh LK, Vinod G, Tripathi AK. Impact of change in component reliabilities on the system reliability estimation. ACM SIGSOFT Software Engineering Notes 2014; 39 (3): 1-6. doi: 10.1145/2597716.2631647
  • [30] Zio E. Reliability engineering: Old problems and new challenges. Reliability Engineering & System Safety 2009; 94 (2): 125-141. doi: 10.1016/j.ress.2008.06.002
Turkish Journal of Electrical Engineering and Computer Sciences-Cover
  • ISSN: 1300-0632
  • Yayın Aralığı: Yılda 6 Sayı
  • Yayıncı: TÜBİTAK