As future investigations, we intend to explore the
following factors: (i) defining an automated refactor-
ing strategy employing search-based refactoring and
cognitive complexity constraints and (ii) carrying out
new empirical-based studies to evaluate restructured
projects with CDD principles, by exploring the num-
ber of faults and understanding development in the
medium and long term.
ACKNOWLEDGEMENT
This study was financed in part by the PROPESP and
PROINTER/UFPA.
REFERENCES
Chandler, P. and Sweller, J. (1991). Cognitive load theory
and the format of instruction. Cognition and instruc-
tion, 8(4):293–332.
Clarke, P., O’Connor, R. V., and Leavy, B. (2016). A com-
plexity theory viewpoint on the software development
process and situational context. In Proceedings of
the International Conference on Software and Systems
Process, pages 86–90.
Duran, R., Sorva, J., and Leite, S. (2018). Towards an anal-
ysis of program complexity from a cognitive perspec-
tive. In Proceedings of the 2018 ACM Conference on
International Computing Education Research, pages
21–30.
Fraser, S. D., Brooks, F. P., Fowler, M., Lopez, R.,
Namioka, A., Northrop, L., Parnas, D. L., and
Thomas, D. (2007). “No Silver Bullet” Reloaded:
Retrospective on “Essence and Accidents of Software
Engineering”. In Companion to the 22nd ACM SIG-
PLAN Conference on Object-Oriented Programming
Systems and Applications Companion, OOPSLA ’07,
page 1026–1030, New York, NY, USA. Association
for Computing Machinery.
Gonc¸ales, L., Farias, K., da Silva, B., and Fessler, J. (2019).
Measuring the cognitive load of software developers:
a systematic mapping study. In 2019 IEEE/ACM 27th
International Conference on Program Comprehension
(ICPC), pages 42–52. IEEE.
ISO:ISO/IEC 25010 (2011). Systems and software engi-
neering – Systems and software Quality Requirements
and Evaluation (SQuaRE), System and software qual-
ity models. International Organization for Standard-
ization ISO.
Lenberg, P., Feldt, R., and Wallgren, L. G. (2015). Human
factors related challenges in software engineering–an
industrial perspective. In 2015 ieee/acm 8th interna-
tional workshop on cooperative and human aspects of
software engineering, pages 43–49. IEEE.
Liskov, B. and Zilles, S. (1974). Programming with abstract
data types. ACM Sigplan Notices, 9(4):50–59.
McCabe, T. J. (1976). A complexity measure. IEEE Trans-
actions on software Engineering, (4):308–320.
Miller, G. A. (1956). The magical number seven, plus or
minus two: Some limits on our capacity for processing
information. Psychological review, 63(2):81.
Misra, S., Adewumi, A., Fernandez-Sanz, L., and Damase-
vicius, R. (2018). A suite of object oriented cognitive
complexity metrics. IEEE Access, 6:8782–8796.
Parnas, D. L. (1972). On the criteria to be used in decom-
posing systems into modules. In Pioneers and Their
Contributions to Software Engineering, pages 479–
498. Springer.
Pinto., V., Tavares de Souza., A., Barboza de Oliveira., Y.,
and Ribeiro., D. (2021). Cognitive-driven develop-
ment: Preliminary results on software refactorings.
In Proceedings of the 16th International Conference
on Evaluation of Novel Approaches to Software En-
gineering - Volume 1: ENASE,, pages 92–102. IN-
STICC, SciTePress.
Shao, J. and Wang, Y. (2003). A new measure of soft-
ware complexity based on cognitive weights. Cana-
dian Journal of Electrical and Computer Engineering,
28(2):69–74.
Shepperd, M. (1988). A critique of cyclomatic complexity
as a software metric. Software Engineering Journal,
3(2):30–36.
Souza, A. L. O. T. d. and Pinto, V. H. S. C. (2020). Toward
a definition of cognitive-driven development. In Pro-
ceedings of 36th IEEE International Conference on
Software Maintenance and Evolution (ICSME), pages
776–778.
Sweller, J. (1988). Cognitive load during problem solving:
Effects on learning. Cognitive science, 12(2):257–
285.
Sweller, J. (2010). Cognitive load theory: Recent theoreti-
cal advances.
Van Solingen, R., Basili, V., Caldiera, G., and Rombach,
H. D. (2002). Goal question metric (gqm) approach.
Encyclopedia of software engineering.
Wang, Y. (2006). Cognitive complexity of software and its
measurement. In 2006 5th IEEE International Confer-
ence on Cognitive Informatics, volume 1, pages 226–
235. IEEE.
Weyuker, E. J. (1988). Evaluating software complexity
measures. IEEE transactions on Software Engineer-
ing, 14(9):1357–1365.
Wohlin, C., Runeson, P., H
¨
ost, M., Ohlsson, M. C., Reg-
nell, B., and Wessl
´
en, A. (2012). Experimentation in
Software Engineering. Springer Berlin Heidelberg.
Yi, T. and Fang, C. (2020). A complexity metric for object-
oriented software. International Journal of Computers
and Applications, 42(6):544–549.
Zuse, H. (2019). Software complexity: measures and meth-
ods, volume 4. Walter de Gruyter GmbH & Co KG.
Effects of Cognitive-driven Development in the Early Stages of the Software Development Life Cycle
51