With the development of programming languages, various graphical and
structural representations of their programs have also emerged—one of these
forms is the so-called data flow code, which can be modeled using graph
theory. The problem arises, for example, when several members of a team
try to independently modify such code and then merge all the changes into
a single version after the work is done. In the case of textual code, changes
can be merged quickly and with less risk, whereas the same process for some
graph representation is often incorrect. In this thesis, we explore an efficient
method for solving a form of the maximum common subgraph problem by
developing a heuristic algorithm to identify changes between versions of data
flow graphs and resolve conflicts that arise during the merging process. In
the final chapters, we also describe the functionality of an interactive user
interface designed to facilitate the entire merging process.
|