Ineffective software team composition has become recognized as a prominent aspect of software project failures. Reports from results extracted from different theoretical personality models have produced contradicting fits, validity challenges, and missing guidance during software development personnel selection. It is also believed that the technique/s used while developing a model can impact the overall results. Thus, this study aims to: 1) discover an effective classification technique to solve the problem, and 2) develop a model for composition of the software development team. The model developed was composed of three predictors: team role, personality types, and gender variables; it also contained one outcome: team performance variable. The techniques used for model development were logistic regression, decision tree, and Rough Sets Theory (RST). Higher prediction accuracy and reduced pattern complexity were the two parameters for selecting the effective technique. Based on the results, the Johnson Algorithm (JA) of RST appeared to be an effective technique for a team composition model. The study has proposed a set of 24 decision rules for finding effective team members. These rules involve gender classification to highlight the appropriate personality profile for software developers. In the end, this study concludes that selecting an appropriate classification technique is one of the most important factors in developing effective models.
Deep Dive into Finding an Effective Classification Technique to Develop a Software Team Composition Model.
Ineffective software team composition has become recognized as a prominent aspect of software project failures. Reports from results extracted from different theoretical personality models have produced contradicting fits, validity challenges, and missing guidance during software development personnel selection. It is also believed that the technique/s used while developing a model can impact the overall results. Thus, this study aims to: 1) discover an effective classification technique to solve the problem, and 2) develop a model for composition of the software development team. The model developed was composed of three predictors: team role, personality types, and gender variables; it also contained one outcome: team performance variable. The techniques used for model development were logistic regression, decision tree, and Rough Sets Theory (RST). Higher prediction accuracy and reduced pattern complexity were the two parameters for selecting the effective technique. Based on the re
Journal of Software: Evolution and Process, 29(10), DOI: 10.1002/smr.1920, Wiley, October 2017.
FINDING AN EFFECTIVE CLASSIFICATION
TECHNIQUE TO DEVELOP A SOFTWARE
TEAM COMPOSITION MODEL
Abdul Rehman Gilal 1, Jafreezal Jaafar 2, Luiz Fernando Capretz 3, Mazni Omar 4, Shuib Basri 5, Izzatdin
Abdul Aziz 6
1, 2, 5, 6 Department of Computer and Information Sciences, Universiti Teknologi PETRONAS, Malaysia
1 Department of Computer Science, Sukkur Institute of Business Administration, Pakistan
3 Western University, London, Canada
4 School of Computing, Universiti Utara Malaysia
1a-rehman@iba-suk.edu.pk, 2jafreez@utp.com.my, 3lcapretz@uwo.ca, 4mazni@uum.edu.my,
5shuib_basri@utp.edu.my, 6Izzatdin@utp.edu.my
Abstract— Ineffective software team composition has become recognized as a prominent aspect of software project failures. Reports
from results extracted from different theoretical personality models have produced contradicting fits, validity challenges, and missing
guidance during software development personnel selection. It is also believed that the technique/s used while developing a model can
impact the overall results. Thus, this study aims to: 1) discover an effective classification technique to solve the problem, and 2) develop
a model for composition of the software development team. The model developed was composed of three predictors: team role,
personality types, and gender variables; it also contained one outcome: team performance variable. The techniques used for model
development were logistic regression, decision tree, and Rough Sets Theory (RST). Higher prediction accuracy and reduced pattern
complexity were the two parameters for selecting the effective technique. Based on the results, the Johnson Algorithm (JA) of RST
appeared to be an effective technique for a team composition model. The study has proposed a set of 24 decision rules for finding
effective team members. These rules involve gender classification to highlight the appropriate personality profile for software
developers. In the end, this study concludes that selecting an appropriate classification technique is one of the most important factors in
developing effective models.
Keywords: software development, team composition, classification technique, personality, Rough set
I.
INTRODUCTION
The software development industry has been involved in detrimental situations where only 6% of software under
development is being delivered on time and on budget [1]. This community has been underestimated because
they were thought to be less productive in creating software that can live up to its original expectations, due to
the cost and frustration of failed or underperforming software. Some people think that they can only credit luck
when software development projects and their performance succeed. To change this myth, several studies were
conducted to discover the detrimental factors in software development [2]–[5]. Based on the identified factors,
ineffective team composition appeared to be one of the important aspects of failure [6], [7]. In this study the term
‘team’ refers to a number of people who are correspondingly skillful and strive together to meet a common
purpose. The criterion of team composition in software development projects has been mainly based on the
technical skills of team members. However, a team can function most ideally if the technical (hard) skills are
combined with non-technical (soft: social or personality) skills [8]. In the same vein, Dingsøyr and Dybå [9]
maintained that isolation of either skill (technical or social) can be one of the reasons for poor software
development. It is also believed that the consideration of technical skills of developers can be advantageous as
long as software developers are also evaluated in terms of their personality traits, a soft skill, to determine whether
they can work cooperatively with other team members [10]. Personality refers to an internal psychological
pattern, such as feelings and thoughts, that shape the behavior of a person [11]. Including personality-based skills
can create a healthy behavior among employees, which can lead to overall project success. If this is improperly
managed it can also cause damage within project development.
Journal of Software: Evolution and Process, 29(10), DOI: 10.1002/smr.1920, Wiley, October 2017.
A plethora of research has been carried out in the past to explore the key importance of team composition and
personality types in software development [11]–[14]. However, the personality types that are useful and
beneficial for ideal and effective teamwork are still not well-defined for practitioners and researchers [15]–[18].
Further, the results, extracted from different theoretical personality models, have produced contradictory fits,
validity challenges, and missing guidance for software development personnel selection. For instance, according
to da Silva et al. [37], dif
…(Full text truncated)…
This content is AI-processed based on ArXiv data.