Detecting Dependencies Across Programming Languages
MetadataShow full item record
Information systems, especially large scale ones, are heterogeneous, i.e., they comprise modules, which are developed in diverse programming languages. In order to assess the complexity of such systems a method, which can detect dependencies among their modules is needed. Although there is a variety of methods that detect the dependencies within a programming language, there are not many cross-language detection methods. In this thesis the state of the art methods are reviewed, using a newly proposed evaluation method and a rating schema. The reviewed methods were not highly rated according to our schema because they focus mainly on accuracy. Therefore, a new method is proposed, which focuses on both cost-effectiveness and accuracy. The proposed algorithm is simple and generic, so that it can support a new language with minimal effort. It is also explainable to a non technical audience. In order to be able to assess the new method with the proposed evaluation approach, a tool was created and series of experiments were conducted on a small case study project. The actual dependencies in the project were extracted by manual checking, and they were used as ground truth data, with which the dependencies retrieved by the proposed method were compared. Moreover, the method was executed on a large scale information system, to evaluate the degree of generalisation of the results.