Software Cognitive Complexity Measure Based on Scope of Variables
This provides a domain-specific method for software engineering to assess cognitive load in code, but it appears incremental as it builds on existing complexity theories.
The paper tackles the problem of measuring software cognitive complexity by defining a mathematical model of program structure and introducing the Scope Information Complexity Number (SICN), with theoretical validation through nine Weyuker's properties.
In this paper, we define a Mathematical model of program structure. Mathematical model of program structure defined here provides unified mathematical treatment of program structure, which reveals that a program is a large and finite set of embedded binary relations between current statement and previous ones. Then, a program is considered as a composed listing and a logical combination of multiple statements according to the certain composing rules. We also define the Scope Information Complexity Number (SICN) and present the cognitive complexity based on functional decomposition of software, including theoretical validation through nine Weyuker's properties.