Detection and Analysis of Dependencies Between TTCN-3 Modules

Kathrin Becker


Dependency analysis is a popular technique in software engineering to keep projects maintainable. As coupling also occurs in test suites of the testing language TTCN-3 and as size and complexity of several TTCN-3 projects have increased in the last decade, strategies for dependency detection and coupling metric generation in TTCN-3 modules had to be developed. This thesis presents a methodology for the detection and analysis of dependencies between modules of the TTCN-3. The key characteristics of this methodology are import and reference resolution in TTCN-3 test suites combined with the building of a coupling graph detailing the gathered information. It is shown that the presented methodology allows for calculation of coupling metrics as well as further analysis based on the information contained in the coupling graph. A Java implementation is provided as a proof-of-concept as well as to demonstrate the methodology’s effectiveness. The implementation provides visualization of the coupling graph and calculation of several coupling metrics derived from the internal graph representation. Thus it yields useful data for the maintenance of TTCN-3 test suites. To validate this methodology, the tool is applied to a real TTCN-3 test suite consisting of 20101 Lines of Code and 53 modules. Analysis of the tool’s metrics and observation of the tool’s graph visualizations provide various insights into the test suite’s structure. In addition, it is demonstrated how to utilize the metrics and visualizations to decrease coupling, in this particular case by more than thirty percent.
Document Type: 
Bachelor's Theses
Göttingen, Germany
Institute of Computer Science, Georg-August-Universität Göttingen
2020 © Software Engineering For Distributed Systems Group

Main menu 2