Re-engineering is used to support evolutionary maintenance and it is most widely used in modern software development. The Re-engineering occurs at two level of abstraction: at business level and at software level. The term maintenance should be replaced by “re-engineering” or renovation or reclamation because it not only recovers information from existing system but uses this information to alter or reconstitute the existing system in an effect to improve its overall quality. The source code translation is one of the main tasks in software reengineering which is based on source to source transformation which plays an important role. If we want to migrate a procedural language into object oriented programming language because of its reusability of code, the code conversion is necessary due to hardware platform update, staff skill shortage and organization changes.