Related Projects
Psychology and Software Development

MBTI, personality, software development, code-review, debugging, online programming competition, code comprehension.

Too often when considering dependable computing, the human side of the equation is not taken into account. In order to build dependable systems, it is necessary to examine all of the aspects of software creation. A major factor is the people who are involved in the creation of the software.

This particular piece of research is a continuation of the work started in Project Activity 8 - ‘Effective Collaboration in Design’ which was initially inspired by Weinberg’s classic 1971 book ‘The Psychology of Computer Programming’ (Weinberg, 1971). Weinberg conjectured that different stages of the software development process require different abilities and that factors such as personality may, to some extent, be used to predict performance in the various stages. Large variations in programming ability and performance have been observed, and it is in order to examine some of these variations that the three strands of this research were developed. These strands are:

1. A code review and personality study.
2. An online programming competition and personality study.
3. A code comprehension study.

At this point, data collection has been completed for the first two strands of TA Weinberg. The code review study used the Myers-Briggs Type Indicator (MBTI) personality questionnaire and the online programming competition used an online personality questionnaire similar to the MBTI. The code comprehension study will also use the MBTI.

For the code review and personality study, a group of 64 undergraduate computing science students from the University of Newcastle Upon Tyne (UK) were recruited in order to complete an MBTI questionnaire and a code-review task. Four pages of Java code were presented to the students. This code contained a number of bugs which had been inserted into the correct code following thorough review and testing. Prizes were awarded to the students with the highest performance in order to motivate them towards performing well on the task and all students who participated were given course credit. Performance was indicated by the number of correct bugs found in the time allowed.

Of particular interest were the Sensing/iNtuition and Thinking/Feeling scales. As can be seen from Table 1, by examining the performance on the code-review task according to these two scales, some statistically significant differences were found.

Table 1. Mean code-review score by SN/TF types.

  F T
N 8.71 9.10
S 4.27 6.62


There were noticable differences between the groups, with NT (iNtuitive Thinking) participants performing more than twice as well as SF (Sensing Feeling) participants (9.10 compared with 4.27 points on the code-review task).

A t-test (which examines differences between means) comparing NTs with non-NTs returned a statistically significant result, meaning that NTs were significantly better than the other personality combinations at code-review. ‘Intuitive-thinking’ people tend to gain their insights by considering the interactions between factors and about possibilities rather than by simply observing concrete facts. They also make their judgements by the process of logical thought. This combination of characteristics would seem to stand them in good stead for this code-review task. It seems, therefore that there is value in further examining personality types in conjunction with performance on the various tasks associated with software development.

For the online programming competition study, e-mails were sent out to all of the participants who completed one specific programming task on the Valladolid Online Programming Competition inviting them to take part in the research. The e-mail contained a link to a web-form for them to fill in. The form also contained a link to the MBTI-like online personality questionnaire. Approximately 50 participants took part in the research and early analysis indicates some interesting findings with regard to distribution of personality types. Analysis is ongoing with this part of the research.

Further research should be carried out in order to examine if people of different personality types are better at different tasks. To this end, work is being carried out which is concerned with personality and code comprehension, as part of the Ph.D. of one of the authors.

This combined research will in future, allow for a more informed choices to be made when assigning employees to specific jobs and also to begin to understand the mental processes involved in these tasks, as well as why some are better at the tasks than others. Ultimately, this greater understanding could lead to more appropriate teaching and training methods to help increase productivity and reliability.


Online personality questionnaire

Valladolid Online Programming Competition


Devito Da Cunha, A. (2003). The Myers Briggs Personality Type as a Predictor of Success in the Code-Review Task. Unpublished MPhil, University of Newcastle Upon Tyne, Newcastle Upon Tyne.

Devito Da Cunha, A., & Greathead, D. (2004). Code Review and Personality: is Performance Linked to MBTI Type? (Technical Report) (CS-TR: 837). Newcastle: School of Computing Science, University of Newcastle Upon Tyne.

Greathead, D. (2005). Code Comprehension and MBTI Type (Fast Abstract), Dependable Systems and Networks (Vol. Supplemental Volume, pp. 50-51). Yokohama, Japan.

Greathead, D., Arief, B., & Coleman, J. (2005). TA Weinberg. Paper presented at the The 5th Annual DIRC Research Conference, Edinburgh, UK.

Greathead, D., & Devito Da Cunha, A. (2005). Code Review and Personality: The Impact of MBTI Type (Fast Abstract), Fifth European Dependable Computing Conference (Vol. Supplementary Volume, pp. 73-74). Budapest, Hungary.

Other references

Weinberg, G. M. (1971). The psychology of computer programming: Van Nostrand Reinhold.


David Greathead & Alessandra Devito Da Cunha (Newcastle)


Page Maintainer: Credits      Project Members only Last Modified: 10 August, 2005