Article ID Journal Published Year Pages File Type
493402 Procedia Technology 2012 5 Pages PDF
Abstract

Software maintenance plays an important role in the life cycle of software product. It is estimated that more than 80% of code in production is unstructured and not well documented. Since the coding style varies to each programmer, it is very difficult to do a change in existing software. It necessitates the developer to reconstruct the design module and requirements specification from existing code.This paper presents an approach to reverse engineer the internal state of an object from C++ programs, resulting in state machines. The state of an object can be determined in two ways. In the first approach objects can be extracted by statically analyzing the programs. In the second approach extraction of objects and the transitions between the objects can be achieved by executing a program on set of test cases which can be restricted by testing the independent paths in the behavior of an object.

Related Topics
Physical Sciences and Engineering Computer Science Computer Science (General)