Code clones have long been recognized as bad smells in software systems and are assumed to cause maintenance problems during evolution. Recent research activities on evolving code clones have shown that a relation between code clones and change couplings (co-changing source code files) cannot be verified. Since change couplings are calculated on the level of files, it is unverifiable (automatically) whether change couplings are due to changes in the cloned source code fragments.
The goal of this diploma thesis is first to extract those change couplings due to changes in cloned source code fragments using fine-grained source code change analysis. Further it has to be investigated if existing code clone and change coupling relation analysis can be improved with the fine-grained coupling information. The methodology should be evaluated with the Mozilla project and an other C++ or Java project.
The typical rules of academic work must be followed. "So what is a (Diploma) Thesis" describes guidelines which must be followed. At the end of the thesis, a final report has to be written. The report should clearly be organized, follow the usual academic report structure, and has to be written in English using our s.e.a.l. LaTeX-template.
Since implementing software is also part of this thesis, state-of-the-art design, coding, and documentation standards for the software have to be obeyed.
The diploma thesis has to be concluded with a final presentation for the members of the Software Evolution and Architecture Lab (s.e.a.l.).