Can EEG Be Adopted as a Neuroscience Reference for Assessing Software Programmers’ Cognitive Load?

An emergent research area in software engineering and software reliability is the use of wearable biosensors to monitor the cognitive state of software developers during software development tasks. The goal is to gather physiologic manifestations that can be linked to error-prone scenarios related t...

Full description

Bibliographic Details
Main Authors: Júlio Medeiros, Ricardo Couceiro, Gonçalo Duarte, João Durães, João Castelhano, Catarina Duarte, Miguel Castelo-Branco, Henrique Madeira, Paulo de Carvalho, César Teixeira
Format: Article
Language:English
Published: MDPI AG 2021-03-01
Series:Sensors
Subjects:
Online Access:https://www.mdpi.com/1424-8220/21/7/2338
_version_ 1797539837486563328
author Júlio Medeiros
Ricardo Couceiro
Gonçalo Duarte
João Durães
João Castelhano
Catarina Duarte
Miguel Castelo-Branco
Henrique Madeira
Paulo de Carvalho
César Teixeira
author_facet Júlio Medeiros
Ricardo Couceiro
Gonçalo Duarte
João Durães
João Castelhano
Catarina Duarte
Miguel Castelo-Branco
Henrique Madeira
Paulo de Carvalho
César Teixeira
author_sort Júlio Medeiros
collection DOAJ
description An emergent research area in software engineering and software reliability is the use of wearable biosensors to monitor the cognitive state of software developers during software development tasks. The goal is to gather physiologic manifestations that can be linked to error-prone scenarios related to programmers’ cognitive states. In this paper we investigate whether electroencephalography (EEG) can be applied to accurately identify programmers’ cognitive load associated with the comprehension of code with different complexity levels. Therefore, a controlled experiment involving 26 programmers was carried. We found that features related to Theta, Alpha, and Beta brain waves have the highest discriminative power, allowing the identification of code lines and demanding higher mental effort. The EEG results reveal evidence of mental effort saturation as code complexity increases. Conversely, the classic software complexity metrics do not accurately represent the mental effort involved in code comprehension. Finally, EEG is proposed as a reference, in particular, the combination of EEG with eye tracking information allows for an accurate identification of code lines that correspond to peaks of cognitive load, providing a reference to help in the future evaluation of the space and time accuracy of programmers’ cognitive state monitored using wearable devices compatible with software development activities.
first_indexed 2024-03-10T12:51:32Z
format Article
id doaj.art-ab365d7f8b2245ffbbf704366d797e7c
institution Directory Open Access Journal
issn 1424-8220
language English
last_indexed 2024-03-10T12:51:32Z
publishDate 2021-03-01
publisher MDPI AG
record_format Article
series Sensors
spelling doaj.art-ab365d7f8b2245ffbbf704366d797e7c2023-11-21T13:04:05ZengMDPI AGSensors1424-82202021-03-01217233810.3390/s21072338Can EEG Be Adopted as a Neuroscience Reference for Assessing Software Programmers’ Cognitive Load?Júlio Medeiros0Ricardo Couceiro1Gonçalo Duarte2João Durães3João Castelhano4Catarina Duarte5Miguel Castelo-Branco6Henrique Madeira7Paulo de Carvalho8César Teixeira9Department of Informatics Engineering, CISUC-Centre for Informatics and Systems of the University of Coimbra, University of Coimbra, P-3030-790 Coimbra, PortugalDepartment of Informatics Engineering, CISUC-Centre for Informatics and Systems of the University of Coimbra, University of Coimbra, P-3030-790 Coimbra, PortugalDepartment of Informatics Engineering, CISUC-Centre for Informatics and Systems of the University of Coimbra, University of Coimbra, P-3030-790 Coimbra, PortugalDepartment of Informatics Engineering, CISUC-Centre for Informatics and Systems of the University of Coimbra, University of Coimbra, P-3030-790 Coimbra, PortugalICNAS-Institute of Nuclear Sciences Applied to Health, University of Coimbra, P-3000-548 Coimbra, PortugalICNAS-Institute of Nuclear Sciences Applied to Health, University of Coimbra, P-3000-548 Coimbra, PortugalICNAS-Institute of Nuclear Sciences Applied to Health, University of Coimbra, P-3000-548 Coimbra, PortugalDepartment of Informatics Engineering, CISUC-Centre for Informatics and Systems of the University of Coimbra, University of Coimbra, P-3030-790 Coimbra, PortugalDepartment of Informatics Engineering, CISUC-Centre for Informatics and Systems of the University of Coimbra, University of Coimbra, P-3030-790 Coimbra, PortugalDepartment of Informatics Engineering, CISUC-Centre for Informatics and Systems of the University of Coimbra, University of Coimbra, P-3030-790 Coimbra, PortugalAn emergent research area in software engineering and software reliability is the use of wearable biosensors to monitor the cognitive state of software developers during software development tasks. The goal is to gather physiologic manifestations that can be linked to error-prone scenarios related to programmers’ cognitive states. In this paper we investigate whether electroencephalography (EEG) can be applied to accurately identify programmers’ cognitive load associated with the comprehension of code with different complexity levels. Therefore, a controlled experiment involving 26 programmers was carried. We found that features related to Theta, Alpha, and Beta brain waves have the highest discriminative power, allowing the identification of code lines and demanding higher mental effort. The EEG results reveal evidence of mental effort saturation as code complexity increases. Conversely, the classic software complexity metrics do not accurately represent the mental effort involved in code comprehension. Finally, EEG is proposed as a reference, in particular, the combination of EEG with eye tracking information allows for an accurate identification of code lines that correspond to peaks of cognitive load, providing a reference to help in the future evaluation of the space and time accuracy of programmers’ cognitive state monitored using wearable devices compatible with software development activities.https://www.mdpi.com/1424-8220/21/7/2338software engineeringbio-signal processingelectroencephalogrambiofeedbackhuman error
spellingShingle Júlio Medeiros
Ricardo Couceiro
Gonçalo Duarte
João Durães
João Castelhano
Catarina Duarte
Miguel Castelo-Branco
Henrique Madeira
Paulo de Carvalho
César Teixeira
Can EEG Be Adopted as a Neuroscience Reference for Assessing Software Programmers’ Cognitive Load?
Sensors
software engineering
bio-signal processing
electroencephalogram
biofeedback
human error
title Can EEG Be Adopted as a Neuroscience Reference for Assessing Software Programmers’ Cognitive Load?
title_full Can EEG Be Adopted as a Neuroscience Reference for Assessing Software Programmers’ Cognitive Load?
title_fullStr Can EEG Be Adopted as a Neuroscience Reference for Assessing Software Programmers’ Cognitive Load?
title_full_unstemmed Can EEG Be Adopted as a Neuroscience Reference for Assessing Software Programmers’ Cognitive Load?
title_short Can EEG Be Adopted as a Neuroscience Reference for Assessing Software Programmers’ Cognitive Load?
title_sort can eeg be adopted as a neuroscience reference for assessing software programmers cognitive load
topic software engineering
bio-signal processing
electroencephalogram
biofeedback
human error
url https://www.mdpi.com/1424-8220/21/7/2338
work_keys_str_mv AT juliomedeiros caneegbeadoptedasaneurosciencereferenceforassessingsoftwareprogrammerscognitiveload
AT ricardocouceiro caneegbeadoptedasaneurosciencereferenceforassessingsoftwareprogrammerscognitiveload
AT goncaloduarte caneegbeadoptedasaneurosciencereferenceforassessingsoftwareprogrammerscognitiveload
AT joaoduraes caneegbeadoptedasaneurosciencereferenceforassessingsoftwareprogrammerscognitiveload
AT joaocastelhano caneegbeadoptedasaneurosciencereferenceforassessingsoftwareprogrammerscognitiveload
AT catarinaduarte caneegbeadoptedasaneurosciencereferenceforassessingsoftwareprogrammerscognitiveload
AT miguelcastelobranco caneegbeadoptedasaneurosciencereferenceforassessingsoftwareprogrammerscognitiveload
AT henriquemadeira caneegbeadoptedasaneurosciencereferenceforassessingsoftwareprogrammerscognitiveload
AT paulodecarvalho caneegbeadoptedasaneurosciencereferenceforassessingsoftwareprogrammerscognitiveload
AT cesarteixeira caneegbeadoptedasaneurosciencereferenceforassessingsoftwareprogrammerscognitiveload