This paper introduces a set of simple software complexity metrics that has been inspired by developments within cognitive psychology. Complexity measures are constructed by analysing the distance be tween components of a program. The greater the distance between program fragments, the greater the resulting spatial complexity of a program. Suggestions are made as to how spatial complexity measures can be tailored to individual programmer teams. Using these metrics, the complexity of a software system can be adjusted using subjective measures of programmer experience and knowledge. A related set of simple object-oriented metrics based around the same principles of are also suggested. Finally, a number of further research possibilities are suggested. Index Terms : Software metrics, software complexity, psychological com plexity, spatial reasoning, object-oriented programming, human-factors in software engineering, programmer experience, software maintenance.
[1]
Norman Wilde,et al.
Maintaining object-oriented software
,
1993,
IEEE Software.
[2]
Chris F. Kemerer,et al.
Towards a metrics suite for object oriented design
,
2017,
OOPSLA '91.
[3]
Austin Melton,et al.
Deriving structurally based software measures
,
1990,
Journal of Systems and Software.
[4]
Anas N. Al-Rabadi,et al.
A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions
,
2004
.
[5]
Elaine J. Weyuker,et al.
Evaluating Software Complexity Measures
,
2010,
IEEE Trans. Software Eng..
[6]
Alan D. Baddeley,et al.
Human Memory: Theory and Practice, Revised Edition
,
1990
.
[7]
Ruven E. Brooks,et al.
Towards a Theory of the Comprehension of Computer Programs
,
1983,
Int. J. Man Mach. Stud..
[8]
Maurice H. Halstead,et al.
Elements of software science
,
1977
.