|
Algorithm 1: Context Slicing |
Input: Edge Tree ET = {e1,e2,…,en}. Choose any edge ek in the edge tree that starts from the slicing point.
output: context-SDG
result = {ek}
queue = {ek}
while queue ! = ∅ do
for ei in queue do
for ej in get_direct_or_indirect_neighbors(ek) do
if ej not in result do
result.add(ej)
end if
end for
end for
end for
context_SDG = {}
for ei in result do
for node in get_ successors_and_ predecessors(ei) do
if node not in context_SDG do
context_SDG.add(node)
end if
end for
end for
return context_SDG
|