Identifying changes in two different versions of file (Dead line : August 27)
Budget: $50 – $100 CAD
Task: Given two different versions of a source file, determine the mapping between methods in those two files. The input to your program should be two different versions of a file written in either python or java language (you can select one of the two languages). For simplicity consider that each file contains only one class consisting of a set of methods.
Methods can be added or deleted in the new version, method in the old version can be renamed or modified (e.g., lines added, deleted, parameters or return type of the methods can also be changed) in the new version
Hints: If you can identify the method bodies along with their signatures, you can apply similarity measures to determine which method in the old versions is similar to which method in the new version. This can help you to determine the mapping. The reference papers will help you to understand the process better. You can reuse any exiting technique or use your own idea or heuristics.
It is related to source code refactoring, first you need to find the method bodies using parser (You can use any parser like Java ADT or AST parser) then later you need to apply similarity measure and heuristic technique to determine changes in two versions of file
Task: you need to develop an program, it should take two files as input and it should find out the what are changes in two versions of file.
--Reference papers are attached in below document
Skills: Java or Python, Parsing, Algorithms, version control, source code refactoring
Methods can be added or deleted in the new version, method in the old version can be renamed or modified (e.g., lines added, deleted, parameters or return type of the methods can also be changed) in the new version
Hints: If you can identify the method bodies along with their signatures, you can apply similarity measures to determine which method in the old versions is similar to which method in the new version. This can help you to determine the mapping. The reference papers will help you to understand the process better. You can reuse any exiting technique or use your own idea or heuristics.
It is related to source code refactoring, first you need to find the method bodies using parser (You can use any parser like Java ADT or AST parser) then later you need to apply similarity measure and heuristic technique to determine changes in two versions of file
Task: you need to develop an program, it should take two files as input and it should find out the what are changes in two versions of file.
--Reference papers are attached in below document
Skills: Java or Python, Parsing, Algorithms, version control, source code refactoring