Handling Consistency of Software Evolution in an Efficient Way

  • Authors:
  • Nguyen Truong Thang;Takuya Katayama

  • Affiliations:
  • Japan Advanced Institute of Science and Technology;Japan Advanced Institute of Science and Technology

  • Venue:
  • IWPSE '04 Proceedings of the Principles of Software Evolution, 7th International Workshop
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software evolution [Evolutionary domains: A basis for sound software evolution] is about changes to software. A typical evolution scenario is to incorporate additional features into a system. In such a situation, there is a fundamental issue to be dealt with. It is to verify that the extra features do not violate existing properties adhered to the system, i.e. consistency. The verification method is also required to be efficient. This paper focuses on the formal solution of these two issues. Systems are essentially structured in terms of features. Between features are interfaces through which features communicate with each other. The consistency betweenthe system (base) and an extra feature (extension) during evolution is then verified via a modular model checking method [Modular verification of collaboration-based softwaredesigns, Towards a sound modular model checking of collaboration-based software designs]. Insteadof checking entirely the newly evolved system, the proposed method only executes in the extension with some base behavior assumption at the interface. This approach turns outto be very efficient as the verification complexity only depends on the extension. Further, themethod is very flexible since the interface is open for unanticipated software changes. A case study is also provided to illustrate two eminent merits of the approach - efficiency in consistency verification and openness.