Estimating Software Reliability by Monitoring Software Execution through OpCode

Full Text (PDF, 455KB), PP.23-30

Views: 0 Downloads: 0


Ritika Wason 1,* A. K. Soni 2 M. Qasim Rafiq 3

1. Bharati Vidyapeeth’s Institute of Computer Applications and Management, Delhi, 110063, India

2. Department of Computer Science and Engineering, Sharda University, Greater Noida, 201306, India

3. Department of Computer Science and Engineering, Aligarh Muslim University, Aligarh, 202002, India

* Corresponding author.


Received: 7 Oct. 2014 / Revised: 3 Feb. 2015 / Accepted: 11 May 2015 / Published: 8 Aug. 2015

Index Terms

Automata-Based Software Reliability Model, Opcode, Software Reliability, Stochastic Finite State Machine, Automata-Based Runtime Execution, Stochastic Automata


Previous studies on estimating software reliability employed statistical functions for next system failure prediction. These models used parameters based on assumptions regarding the nature of software faults and debugging process. However, none of the existing models, attempted on ensuring reliable runtime system operation. To serve the current demand of autonomous, reliable, service-oriented software, we present a novel approach for runtime reliability estimation of executable software. The approach can help control software execution at runtime by monitoring software state-to-state transition at runtime. The approach involves representing executable software as an automata using opcode extracted from executable code. The extracted opcode is then used to learn stochastic finite state machine (SFSM) representation of executable software which is later employed to trace software state-to-state transition at each runtime instance. An evaluation of our approach on Java-based Chart generator application is also discussed to explain how we can ensure reliable software execution and prevent software failures at runtime with the proposed approach.

Cite This Paper

Ritika Wason, A. K. Soni, M. Qasim Rafiq, "Estimating Software Reliability by Monitoring Software Execution through OpCode", International Journal of Information Technology and Computer Science(IJITCS), vol.7, no.9, pp.23-30, 2015. DOI:10.5815/ijitcs.2015.09.04


[1]M. Krejsa, P. Janas and V. Kresja, “ Direct Optimized Probabilistic Calculations,” in Proc. of 3rd WSEAS International Conference on Mathematical Models for Engineering Sciences (MMES’12), Paris, pp. 216–221, 2012.

[2]Danial Rahdari, Amir Masoud Rahmani and Afsane Arabshahi, “Fault Tolerant Message Efficient Coordinator Election Algorithm in High Traffic Bidirectional Ring Network,” (IJITCS) International Journal of Information Technology and Computer Science, vol. 5, no.1, pp. 1-14, December 2012.doi:10.5815/ijitcs.2013.01.02.

[3]Karima Mahdi, Raida Elmansouri and Allaoua Chaoui, ”On Transforming Business Patterns to Labeled Petri Nets Using Graph Grammars,” (IJITCS) International Journal of Information Technology and Computer Science, vol. 5, no.2,pp.15-27, January 2013.doi:10.5815/ijitcs.2013.02.02.

[4]P. Lokesh Kumar Reddy, B. Rama Bhupal Reddy and S. Rama Krishna, ”Self-Organized Detection of Relationships in a Network,” (IJITCS) International Journal of Information Technology and Computer Science, vol. 5, no.2,pp.80-87, January 2013.doi:10.5815/ijitcs.2013.02.02.

[5]M. Viswanathan, “Foundations for the Run-time Analysis of Software Systems,” Ph.D. Dissertation, Univ. of Pennysylvania, Philadelphia, PA, USA, AAI9989666, 2000.

[6]Md. Anjum, Md. Asraful Haque and Nesar Ahmed, “Analysis and Ranking of Software Reliability Models Based on Weighted Criteria Value,” (IJITCS) International Journal of Information Technology and Computer Science, vol.5,no.2,pp. 1-14, January 2013. doi: 10.5815/ ijitcs. 2013. 02.01.

[7]A.L. Goel, “Software Reliability Models: Assumptions, Limitations and Applicability,” IEEE Trans. Software Engineering, vol. SE-11, no. 12, pp. 1411–1423, 1985.

[8]J.D. Musa, “A Theory of Software Reliability and its Applications,” IEEE Transactions on Software Engineering, vol.SE-1, no.3, pp. 312–327, 1975.

[9]Pan Jiantao, “Software Reliability”, (Accessed On: 12-01-2013).

[10]V. Skorpil, L.Cizek, and J. Stastny, “Path Optimization by Graph Algorithms,” in Proc. 16th WSEAS International on Computers (CSCC’12), Greece, pp. 73–77, 2012.

[11]“A Machine Learning Based Efficient Software Reusability Prediction Model for Java Based Object Oriented Software”

[12]M. Santhosh Prabhu, A. Hazra, P. Dasgupta, "Reliability Guarantees in Automata-Based Scheduling for Embedded Control Software," Embedded Systems Letters”, IEEE , vol.5,no.2,pp.17-20,June2013.doi: 10.1109/LES.2013.2250479.

[13]I. Santos, F. Brezo, X. U. Pedrero and P.G. Bringas, “Opcode Sequences as Representation of Executales for data-mining based unknown malware detection,” Information Sciences: an International Journal, vol 231, pp. 64-82, 2013.

[14]Gera Weiss and Rajeev Alur, “Automata based interfaces for control and scheduling,” in Proc. of the 10th international conference on Hybrid systems: computation and control (HSCC'07), Alberto Bemporad, Antonio Bicchi, and Giorgio Buttazzo (Eds.). Springer-Verlag, Berlin, Heidelberg, 601-613, 2007.

[15]Heui-Seok Seo, In Sang Chung, Byeong Man Kim and Yong Rae Kwou, "The design and implementation of automata-based testing environment for Java multi-thread programs," Software Engineering Conference, APSEC 2001. Eighth Asia-Pacific, pp.221-228, 4-7 Dec. 2001, doi: 10.1109/APSEC.2001.991480.

[16]G. Le Guernic, A. Banerjee, T. Jensen, and D. Schmidt. “Automata-based Confidentiality Monitoring,” in Proc. Asian Computing Science Conference (ASIAN’06),  Revised Selected Papers, vol. 4435 LNCS, pp. 75–89. Springer-Verlag, January 2008.

[17]D. Kochelaev, B. Khasanzyanov, B. Yaminov and A. Shalyto, “Instrumental Tool for Automata Based Software Development UniMod 2,” vol. 1, pp. 55-58. DOI: 10.15514/SYRCOSE-2008-2-11. 

[18]Rui Wang et al. , "Timed automata based motion planning for a self-assembly robot system," Robotics and Automation (ICRA), 2014 IEEE International Conference on , vol., no., pp.5624,5629, May 31 2014-June 7 2014 doi: 10.1109/ICRA.2014.6907686.

[19]A. Khoshkbarchi, H.R. Shahriari and M. Amjadi, "Comparison-based Agent Partitioning with Learning Automata: A Trust Model for Service-Oriented Environments," Information Security and Cryptology (ISCISC), 2014 11th International ISC Conference on , vol., no., pp.109-114, 3-4 Sept. 2014 doi: 10.1109/ISCISC.2014.6994032.

[20]M. O Rabin, “Probabilistic Automata,” Information and Control, vol.6, pp. 230-245, 1963.

[21]Ritika Wason, P. Ahmed and M. Qasim Rafiq, “A Tool for Runtime Reliability Estimation and Control Using Automata-Based Software Reliability Model,” in Proc. of the 2nd WSEAS International Conference on Computers, Digital Communications and Computing (ICDCC 2013), Romania, pp.51-56, 2013.

[22]A. Dimov, “Formalizing Nonfunctional Characteristics in Software Architecture- A Way to Achieve System Dynamism,” in Proc. of 2nd WSEAS International Conference on Computers, Digital Communications and Computing (ICDCC 2013), Romania,  pp. 14, 2013.

[23]M. Iliescu, V.Ursianu, F. Moldoveanu, R. Ursianu and E. Ursianu, “Mathematical Models to Estimate the Quality of Monitoring Software Systems for Electrical Substantiations,” in Proc. of 2nd WSEAS International Conference on Applied and Computational Mathematics (ICACM’13), Greece, pp 112-117, 2013 .

[24]A. Iannino, J. D. Musa, K. Okumoto and B. Littlewood, “Criteria for Software Reliability Model Comparisons,” IEEE Transactions on Software Engineering, vol. SE-10, no. 6, pp. 687-691, 1984.

[25]J. C. Corbett et al., “Bandera: extracting finite –state models from Java source code,” in Proc. of the 22nd International Conference on Software Engineering, New York, pp.439-448, 2000.