Programflöden
Programflöden är sättet ett program följer när det körs, det vill säga ordningen i vilken instruktioner utförs och hur kontrollen överförs mellan olika kodblock. I praktiken beskriver programflödet hur beslut tas (om-satser), hur upprepningar genomförs (loopar) och hur funktionsanrop och undantag hanteras. Ett vanligt sätt att organisera och analysera programflöden är att skilja mellan kontrollflöde och dataflöde: kontrollflödet beskriver vilken väg exekveringen tar genom koden, medan dataflödet följer hur variabler och data bearbetas och flyttas mellan steg.
Kontrollflödet modelleras ofta med kontrollflödesgrafer (CFG) eller flödesscheman. Dessa verktyg används av kompilatorer och statiska analysverktyg
Samtidighet och parallellitet lägger till ytterligare dimensioner i programflödet. Trådar, asynkrona uppgifter och händelselopp möjliggör samtidighet
Användningen av programflöden är grundläggande för felsökning, prestandaoptimering och formell verifiering. Genom att analysera flödet kan