Cyklomatická zložitosť
Cyklomatická zložitosť je metrika používaná v softvérovom inžinierstve na určenie zložitosti programu alebo jeho časti. Predstavuje maximálny počet lineárnych, nezávislých spôsobov, ktorými možno prejsť programom. Táto metrika pomáha identifikovať, aká zložitá je kontrolná štruktúra programu, a tým aj jeho údržba a testovanie. Cyklomatická zložitosť sa vypočítava pomocou grafu toku programu, kde sa určuje počet uzlov, hrán a nezávislých ciest.
Výpočet cyklomatickej zložitosti je definovaný ako L = N + 2P, kde L je počet hrán/spojov v grafe, N je počet uzlov v grafe a P je počet nespojitých častí grafu, napríklad volaný graf alebo podprogram. Vysoká hodnota cyklomatickej zložitosti môže naznačovať, že program je ťažký na pochopenie a údržbu, čo môže viesť k zvýšenej pravdepodobnosti chýb. Preto je táto metrika užitočná pri návrhu a analýze softvéru, kde sa snažíme optimalizovať zložitosť a zlepšiť kvalitu kódu.