A
measure of how
complex a section of
code is. Stands for the number of
unique paths that can be
taken through said code. Also gives an
upper limit on the number of
test cases that must be written to fully test that code.
Can grow quite quicky and easily, often to unmanageable proportions. Ten is often considered a good maximum to allow maintainable code.
A quote from Edmond VanDoren of the Software Engineering Institute at Carnegie Mellon University:
A low cyclomatic complexity contributes to a program's understandability and indicates it is amenable to modification at lower risk than a more complex program. A module's cyclomatic complexity is also a strong indicator of its testability.
I saw one function at work with a complexity of 237. Scary.