Eine Def-Use-Kette ist eine Datenstruktur, die aufeinanderfolgende Paare von Schreib- und Lesezugriffen einer Variablen beschreibt.
Im Rahmen des Software Engineerings werden beim White-Box-Testing mittels Def-Use-Ketten Datenflusstests durchgeführt, welche das Durchlaufen von Code mittels Testwerten für Variablen ermöglichen.
Im Folgenden soll eine Def-Use-Kette für die Variable "d" erzeugt werden. Der nachfolgende Code findet den größten gemeinsamen Teiler (GGT) zweier Zahlen "a" und "b" und ist in Java implementiert.
public int ggt(int a, int b){
int c = a;
int d = b;
if(c == 0)
return d;
while(d != 0){
if(c > d)
c = c - d;
else
d = d - c;
}
return c;
}
Um alle Def-Use-Ketten für die Variable "d" zu erzeugen, ist folgendermaßen vorzugehen:
Nun werden diese Schritte wiederholt, wobei jeder Schreibzugriff mit jedem Lesezugriff der untersuchten Variablen verbunden wird.
Das Ergebnis ist dann: