Optimization of program invariants

  • Authors:
  • A. Ananda Rao;P. Radhika Raju

  • Affiliations:
  • Director IR&P, SCDE, JNTUA, Ananthapuramu, A.P, India;JNTUA College of Engg. Anantapur, Ananthapuramu, A.P, India

  • Venue:
  • ACM SIGSOFT Software Engineering Notes
  • Year:
  • 2014

Quantified Score

Hi-index 0.00

Visualization

Abstract

Program invariants can be detected using both static and dynamic approaches. Dynamic methods that complement static methods will be more useful and effective in analyzing software artifacts. Existing dynamic invariant detection techniques detect both relevant and irrelevant invariants due to the presence of relevant and irrelevant/unused variables in the program. Therefore, the speed and efficiency of the techniques are affected. Also, displaying properties about irrelevant variables distracts the user from concentrating on properties of relevant variables. Moreover, these irrelevant invariants do not contribute to the correctness of the program. Therefore, there is a need to overcome the above deficiencies. This is done in three phases in this paper. In the first phase, only the relevant variables are considered by ignoring irrelevant variables. In the second phase, relevant variables are classified into two different types as design variables and non-design variables by using proposed metrics. These metrics are validated analytically against Weyuker's principles. Similarly, relevant invariants are categorized into three types as design invariants, non-design invariants and hybrid invariants in the third phase. For this purpose a set of rules are proposed. This process enormously improves the speed and efficiency of dynamic invariant detection techniques. Also, it drastically reduces the effort that is required to validate program correctness.