A Refactoring Tool for TTCN-3

Benjamin Zeiß


Software is continuously growing in size and getting more and more complex while development cycles are getting shorter. The resulting software aging effect leads to a decay in software quality causing maintainability problems and bugs. Software engineering techniques like modularization, object-orientation, design patterns, aspect-oriented programming or refactoring have been developed to slow down the software aging effects, increase flexibility and support reuse. Software tests written in the TTCN-3 core notation also suffer from the effects of software aging. Huge efforts are spent to maintain TTCN-3 test suites, but even standardized test suites often consist of few files with a length of several ten-thousand lines each. Refactoring is a proven technique to systematically restructure code to improve its quality and maintainability while preserving the semantics which can also be applied to TTCN-3. In this thesis, existing well known refactorings have been investigated for their applicability and a catalog with 20 specific refactorings for TTCN-3 is presented. In addition, a tool called TRex based on the Eclipse Platform has been implemented which provides the infrastructure for automating TTCN-3 refactorings and corresponding sample implementations of TTCN-3 refactorings.
TTCN-3, Refactoring, Eclipse
Document Type: 
Master's Theses
Göttingen, Germany
Institute of Computer Science, Georg-August-Universität Göttingen
2024 © Software Engineering For Distributed Systems Group

Main menu 2