Date of Award


Degree Type


Degree Name

Bachelor of Science (Hons.)


Faculty of Computing, Health and Science.

First Advisor

Michael Collins


Fully automated programming language translation has been described as an unrealistic goal, with previous research being limited by a ceiling of 90% successful code translation. The key issues hindering automatic translation efficacy are the: maintainability of the translated constructs; full utilisation of the target language's features; and amount of manual intervention required to complete the translation process. This study has concentrated on demonstrating improvements to the translation process by introducing the programming-language-independent, Unified Modelling Language (UML) and Computer Assisted Software Engineering (CASE) tools to the legacy-system language migration project. UML and CASE tools may be used to abstract the static framework of the source application to reduce the so called "opaqueness" of the translated constructs, yielding a significantly more maintainable product. The UML and CASE tools also enhance use of the target language features, through forward engineering of the native constructs of the target language during the reproduction of the static framework. Source application algorithmic code translation, performed as a separate process using transliteration, may preserve maximum functionality of the source application after completion of the static structure translation process. Introduction of the UML and CASE tools in conjunction with algorithmic code transliteration offers a reduction of the manual intervention required to complete the translation process.