Graf kontrolnega toka (CFG) je vizualna predstavitev različnih poti, ki jih lahko prehodi koda računalniškega programa. CFG je sestavljen iz serije simbolov, imenovanih vozlišča, ki so povezana s puščicami, ki prikazujejo pot, ki jo lahko vsak popelje do naslednjega vozlišča. Vsako vozlišče predstavlja pomembno vrstico ali vrstice programske kode. Obstaja več načinov za upodabljanje CFG, vendar so vsi na splošno beremo na enak način.Graf toka nadzora ni drugačen od diagrama poteka.
Eden od primarnih namenov ustvarjanja grafa kontrolnega toka je odkriti, ali obstajajo deli računalniškega programa, ki so nepotrebni. To je mogoče zlahka doseči, če pogledamo diagram kontrolnega toka. Vsako vozlišče, ki nima puščico, ki jo povezuje s preostalimi vozlišči, je mogoče odstraniti.
Drug namen, ki mu služi graf kontrolnega toka, je pomagati izolirati težave, kot so neskončne zanke, kjer se izvajanje programa ne premakne dlje od enega vozlišča. Vsaka puščica na diagramu kaže, kateri pogoj mora biti izpolnjen, da se premakne na vozlišče, v katero se premika. točke, tako da je mogoče opaziti situacije, ko ta pogoj nikoli ni izpolnjen, ker povzroči, da se program znova in znova vrača na prejšnje vozlišče.
Končno lahko graf kontrolnega toka pomaga ustvariti graf odvisnosti programa. Ta vrsta grafa prikazuje, katera področja programa so odvisna od drugih delov. V računalniški znanosti se to uporablja za vzpostavitev vrstnega reda vrednotenja za zagotoviti, da se programska koda izvaja v pravilnem zaporedju.
Vizualna narava grafa kontrolnega toka je ena od lastnosti, zaradi katere je lahko potencialno neprecenljiv. Delci kode, ki niso nikoli neposredno poklicani ali dostopni, bodo dokaj očitni, ker bodisi ne bo nobenih puščic, ki bi jih povezovale z glavnim programom ali pa bodo pogoji pokazali, da jih nikoli ni mogoče izpolniti, da bi dosegli kodo.. Obstajajo računalniški programi, ki lahko samodejno generirajo graf toka krmiljenja na podlagi niza datotek izvorne kode, kar dodatno poenostavi postopek.
Graf kontrolnega toka je lahko predstavljen na več načinov in se zato lahko zdi drugače, odvisno od tega, kdo ga je izdelal. Nekateri grafi uporabljajo kroge ali kvadrate izključno za predstavljanje vozlišč, medtem ko drugi uporabljajo enake oblike kot standardni diagram poteka Čeprav se berejo na popolnoma enak način, je izbrana metoda izključno osebna želja.