About this Journal Submit a Manuscript Table of Contents
ISRN Software Engineering
Volume 2012 (2012), Article ID 598150, 20 pages
http://dx.doi.org/10.5402/2012/598150
Research Article

Prioritizing Program Elements: A Pretesting Effort to Improve Software Quality

Department of CS&E, National Institute of Technology Rourkela, Orissa 769008, India

Received 28 September 2011; Accepted 27 October 2011

Academic Editors: K. Framling and G. Visaggio

Copyright © 2012 Mitrabinda Ray and Durga Prasad Mohapatra. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Linked References

  1. S. Naik and P. Tripathy, Software Testing and Quality Assurance: Theory and Practice, Willey, 2008.
  2. J. D. Musa, “Operational profiles in software-reliability engineering,” IEEE Software Magazine, vol. 10, no. 2, pp. 14–32, 1993.
  3. R. H. Cobb and H. D. Mills, “Engineering software under statistical quality control,” IEEE Software, vol. 7, no. 6, pp. 45–54, 1990. View at Publisher · View at Google Scholar · View at Scopus
  4. E. N. Adams, “Optimizing preventive service of software products,” IBM Journal of Research and Development, vol. 28, no. 1, pp. 2–14, 1984. View at Scopus
  5. B. Boehm and V. R. Basili, “Software defect reduction top 10 list,” Computer, vol. 34, no. 1, pp. 135–137, 2001.
  6. B. Boehm and L. G. Huang, “Value-based software engineering: a case study,” Computer, vol. 36, no. 3, pp. 33–41, 2003. View at Publisher · View at Google Scholar · View at Scopus
  7. Q. Li, M. Li, Y. Yang, et al., “Bridge the gap between software test process and business value: a case study,” in Proceedings of the International Conference on Software Process: Trustworthy Software Development Processes (ICSP ’09), 2009.
  8. I. Sommerville, Software Engineering, Pearson, 5th edition, 1995.
  9. J. D. Musa, Software Reliability Engineering: More Reliable Software Faster and Cheaper, AuthorHouse, 2004.
  10. R. C. Cheung, “A user-oriented software reliability model,” IEEE Transactions on Software Engineering, vol. 6, no. 2, pp. 118–125, 1980. View at Scopus
  11. M. Ray and D. P. Mohapatra, “Reliability improvement based on prioritization of source code,” in 6th International Conference on Distributed Computing and Internet Technology (ICDCIT '10), T. Janowski and H. Mohanty, Eds., vol. 5966 of Lecture Notes in Computer Science, pp. 212–223, Springer, 2010.
  12. M. Ray, K. Lal Kumawat, and D. P. Mohapatra, “Source code prioritization using forward slicing for exposing critical elements in a program,” Journal of Computer Science and Technology, vol. 26, no. 2, pp. 314–327, 2011. View at Publisher · View at Google Scholar
  13. S. R. Chidamber and C. F. Kemerer, “Metrics suite for object oriented design,” IEEE Transactions on Software Engineering, vol. 20, no. 6, pp. 476–493, 1994. View at Publisher · View at Google Scholar · View at Scopus
  14. L. C. Briand, J. Wüst, J. W. Daly, and D. Victor Porter, “Exploring the relationships between design measures and software quality in object-oriented systems,” Journal of Systems and Software, vol. 51, no. 3, pp. 245–273, 2000. View at Publisher · View at Google Scholar · View at Scopus
  15. A. Hassan, K. Goseva-Popstojanova, and H. Ammar, “UML based severity analysis methodology,” in Proceedings of the Annual Reliability and Maintainability Symposium (RAMS '05), pp. 158–164, Alexandria, Va, USA, January 2005. View at Scopus
  16. R. Ramler, S. Biffl, and P. Grnbacher, Value-Based Management of Software Testing, Springer, Berlin, Germany, 2005.
  17. B. Boehm, “Value-based software engineering: reinventing,” ACM SIGSOFT Software Engineering Notes, vol. 28, no. 2, pp. 3–10, 2003.
  18. M. Ray and D. P. Mohapatra, “A scheme to prioritize classes at the early stage for improving observable reliability,” in the 3rd India Software Engineering Conference (ISEC '10), pp. 69–72, February 2010. View at Publisher · View at Google Scholar · View at Scopus
  19. N. Nagappan, T. Ball, and B. Murphy, “Using historical in-process and product metrics for early estimation of software failures,” in Proceedings of the 17th International Symposium on Software Reliability Engineering, pp. 62–74, 2006.
  20. L. Larsen and M. J. Harrold, “Slicing object-oriented software,” in Proceedings of the 18th International Conference on Software Engineering (ICSE ’96:), pp. 495–505, 1996.
  21. M. Weiser, “Program slicing,” IEEE Transactions on Software Engineering, vol. SE-10, no. 4, pp. 352–357, 1984. View at Scopus
  22. Y. N. Srikant and P. Shankar, Eds., The Compiler Design Handbook: Optimizations and Machine Code Generation, CRC Press, 2002.
  23. Profiler, http://www.sics.se/man2html/gprof.1.html.
  24. M. H. Tang, M. H. Kao, and M. H. Chen, “Empirical study on object-oriented metrics,” in Proceedings of the 6th International Software Metrics Symposium, pp. 242–249, November 1999. View at Scopus
  25. S. R. Luke, “Failure mode, effects and criticality analysis (fmeca) for software,” in 5th Fleet Maintenance Symposium, pp. 731–735, Virginia Beach, Va, USA, October 1995.
  26. L. H. Rosenberg, R. Stapko, and A. Gallo, “Risk-based object oriented testing,” in Proceedings of the 24th Annual Software Engineering Workshop, NASA, Software Engineering Laboratory, 1999.
  27. J. A. Whittaker and M. G. Thomason, “Markov chain model for statistical software testing,” IEEE Transactions on Software Engineering, vol. 20, no. 10, pp. 812–824, 1994. View at Publisher · View at Google Scholar · View at Scopus
  28. D. Department, “Procedures for performing a failure mode, effects, and criticality analysis,” US MIL STD 1629A/Notice 2, November 1984.
  29. N. Ozarin, “Failure modes and effects analysis during design of computer software,” in Proceedings of the Annual Reliability and Maintainability Symposium, pp. 201–206, January 2004. View at Scopus
  30. P. Vyas and R. K. Mlittal, “Operation level safety analysis for object oriented software design using sfmea,” in WEE International Advance Computing Conference, Patiala, India, March 2009.
  31. S. M. Yacoub and H. H. Ammar, “A methodology for architecture-level reliability risk analysis,” IEEE Transactions on Software Engineering, vol. 28, no. 6, pp. 529–547, 2002. View at Publisher · View at Google Scholar · View at Scopus
  32. K. Goseva-Popstojanova, A. Hassan, A. Guedem et al., “Architectural-level risk analysis using UML,” IEEE Transactions on Software Engineering, vol. 29, no. 10, pp. 946–959, 2003. View at Publisher · View at Google Scholar · View at Scopus
  33. I. Jacobson and M. Christerson, Object-Oriented Software Engineering: A Use Case Driven Approach, Addison-Wesley, 1992.
  34. L. Huang and B. Boehm, “How much software quality investment is enough: a value-based approach,” IEEE Software, vol. 23, no. 5, pp. 88–95, 2006. View at Publisher · View at Google Scholar · View at Scopus
  35. R. Mall, Fundamentals of Software Engineering, Prentice Hall of India, 3rd edition, 2009.
  36. S. Horwitz, T. Reps, and D. Binkley, “Interprocedural slicing using dependence graphs,” in Proceedings of the ACM SIGPLAN Conference on Programming Language design and Implementation (PLDI ’88), pp. 35–46, 1988.
  37. S. Bhattacharya and A. Kanjilal, “Code based analysis for object-oriented systems,” Journal of Computer Science and Technology, vol. 21, no. 6, pp. 965–972, 2006. View at Publisher · View at Google Scholar · View at Scopus
  38. S. Yacoub, B. Cukic, and H. H. Ammar, “A scenario-based reliability analysis approach for component-based software,” IEEE Transactions on Reliability, vol. 53, no. 4, pp. 465–480, 2004. View at Publisher · View at Google Scholar · View at Scopus
  39. B. Boehm, B. Clark, E. Horowitz, C. Westland, R. Madachy, and R. Selby, “Cost models for future software life cycle processes: Cocomo 2.0,” 1995.
  40. O. Point, 2008, http://sunset.usc.edu/csse/research/COCOMOII/cocomo_main.html.
  41. J. H. Andrews, L. C. Briand, and Y. Labiche, “Is mutation an appropriate tool for testing experiments?” in the 27th International Conference on Software Engineering (ICSE '05), pp. 402–411, May 2005. View at Scopus
  42. S. K. John, J. A. Clark, and J. A. Mcdermid, “Class mutation: mutation testing for object-oriented programs,” in Proceedings of the Net.ObjectDays Conference on Object-Oriented Software Systems, pp. 9–12, 2000.
  43. M. E. Delamaro, J. C. Maldonado, A. Pasquini, and A. P. Mathur, “Interface mutation test adequacy criterion: an empirical evaluation,” Empirical Software Engineering, vol. 6, no. 2, pp. 111–142, 2001. View at Publisher · View at Google Scholar · View at Scopus
  44. R. Binder, Testing Object-Oriented Systems—Models, Patterns and Tools, Addison-Wesley, 2000.
  45. L. C. Briand, Y. Labiche, and Y. Wang, “A comprehensive and systematic methodology for client-server class integration testing,” in Proceedings of the 14th International Symposium on Software Reliability Engineering (ISSRE ’03), p. 14, Washington, DC, USA, 2003.
  46. A. M. R. Vincenzi, W. E. Wong, M. E. Delamaro, and J. C. Maldonado, “Jabuti java bytecode understanding and testing: users guide,” Carlos,S. and SP, Brazil, March 2003.
  47. J. J. Li, “Prioritize code for testing to improve code coverage of complex software,” in Proceedings of the 16th IEEE International Symposium on Software Reliability Engineering (ISSRE ’05), pp. 75–84, 2005.
  48. J. J. Li, D. Weiss, and H. Yee, “Code-coverage guided prioritized test generation,” Information and Software Technology, vol. 48, no. 12, pp. 1187–1198, 2006. View at Publisher · View at Google Scholar · View at Scopus
  49. M. Eaddy, T. Zimmermann, K. D. Sherwood et al., “Do crosscutting concerns cause defects?” IEEE Transactions on Software Engineering, vol. 34, no. 4, pp. 497–515, 2008. View at Publisher · View at Google Scholar · View at Scopus
  50. T. J. Ostrand, E. J. Weyuker, and R. M. Bell, “Automating algorithms for the identification of fault-prone files,” in Proceedings of the International Symposium on Software Testing and Analysis (ISSTA ’07), pp. 219–227, July 2007. View at Publisher · View at Google Scholar · View at Scopus
  51. K. El Emam, W. Melo, and J. C. Machado, “The prediction of faulty classes using object-oriented design metrics,” Journal of Systems and Software, vol. 56, no. 1, pp. 63–75, 2001. View at Scopus
  52. T. J. Ostrand, E. J. Weyuker, and R. M. Bell, “Predicting the location and number of faults in large software systems,” IEEE Transactions on Software Engineering, vol. 31, no. 4, pp. 340–355, 2005. View at Publisher · View at Google Scholar · View at Scopus
  53. J. C. Munson and T. M. Khoshgoftaar, “The detection of fault-prone programs,” IEEE Transactions on Software Engineering, vol. 18, no. 5, pp. 423–433, 1992. View at Publisher · View at Google Scholar · View at Scopus
  54. R. Subramanyam and M. S. Krishnan, “Empirical analysis of CK metrics for object-oriented design complexity: implications for software defects,” IEEE Transactions on Software Engineering, vol. 29, no. 4, pp. 297–310, 2003. View at Publisher · View at Google Scholar · View at Scopus
  55. M. R. Lyu, “Software reliability engineering: Aroadmap,” in Future of Software Engineering (FOSE ’07), pp. 153–170, 2007.
  56. K. El Emam, W. Melo, and J. C. Machado, “The prediction of faulty classes using object-oriented design metrics,” Journal of Systems and Software, vol. 56, no. 1, pp. 63–75, 2001. View at Scopus
  57. B. Littlewood, “A reliability model for systems with markov structure,” Journal of the Royal Statistical Society. Series C, vol. 24, no. 2, pp. 172–177, 1975.
  58. T. L. Booth, “Performance optimization of software systems processing information sequences modeled by probabilistic languages,” IEEE Transactions on Software Engineering, vol. SE-5, no. 1, pp. 31–44, 1979. View at Scopus
  59. J. H. Lo, S. Y. Kuo, M. R. Lyu, and C. Y. Huang, “Optimal resource allocation and reliability analysis for component-based software applications,” in the 26th Annual International Computer Software and Applications Conference (COMPSAC ’02), pp. 7–12, August 2002. View at Scopus
  60. G. Rothermel, R. H. Untcn, C. Chu, and M. J. Harrold, “Prioritizing test cases for regression testing,” IEEE Transactions on Software Engineering, vol. 27, no. 10, pp. 929–948, 2001. View at Publisher · View at Google Scholar · View at Scopus
  61. S. Elbaum, A. G. Malishevsky, and G. Rothermel, “Test case prioritization: a family of empirical studies,” IEEE Transactions on Software Engineering, vol. 28, no. 2, pp. 159–182, 2002. View at Publisher · View at Google Scholar · View at Scopus
  62. S. Elbaum, A. Malishevsky, and G. Rothermel, “Incorporating varying test costs and fault severities into test case prioritization,” in Proceedings of the 23rd International Conference on Software Engineering (ICSE ’01), pp. 329–338, 2001.
  63. D. Jeffrey and N. Gupta, “Experiments with test case prioritization using relevant slices,” Journal of Systems and Software, vol. 81, no. 2, pp. 196–221, 2008. View at Publisher · View at Google Scholar · View at Scopus
  64. P. G. Sapna and H. Mohanty, “Clustering test cases to achieve effective test selection,” in Proceedings of the 1st Amrita ACM-W Celebration of Women in Computing in India (A2CWiC '10), September 2010. View at Publisher · View at Google Scholar · View at Scopus
  65. R. C. Bryce, S. Sampath, and A. M. Memon, “Developing a single model and test prioritization strategies for event-driven software,” IEEE Transactions on Software Engineering, vol. 37, no. 1, pp. 48–64, 2011. View at Publisher · View at Google Scholar · View at Scopus