The effectiveness of an agile software methodology: empirical evidence on humanistic aspects / Mazni Omar - Omar, Mazni (2012)
Agile methodology emerged in response to the recognition of the imponance of humanistic aspects in software engineering (SE). However, there is lack of empirical evidence that supports its effectiveness in SE. The lack of empirical evidence demands more research in this field to generate more empirical data. Therefore, the first aim of this research is to investigate empirically the effect of agile meihodology on the members of sofiwaxe development teams. To achieve this goal, a series of longitudinal empirical studies were carried out in both academic and industrial settings. For the academic setting, Universiti Utara Malaysia (UUM) was chosen because participants are representative sample enrolled in a project-based course that requires them to develop an application in a team. Three replicated experiments and two case studies were carried out, To generalize findings, an empirical inquiry in the form of a case study was carried out in a computer centre in Malaysia. The case study focused on four software development teams working on different applications in an organization Both quantitative and qualitative analyses were used to triangulate and strengthen the empirical results. The humanistic aspect in SE that was addressed was the impact of an agile methodology on work-related well-being and positive affectivity of team members, The study findings indicate that, the agile methodology does not have a statistically significant effect on both aspects. However, it does have a significant impact on software quality. To further understand the humanistic issues, a follow up study on the personality type composition was carried out. It was observed that the presence of certain personality types amongst team members did contribute to the success of a software development team. Understanding human potential in teams is crucial because having the right people in a team can impact team performance. However, to date, were is no consensus on the right composition of team members because team dynamism and its interrelated factors are complex to uncover. Therefore, findings from these empirical studies were further used to design a team performance prediction model (eTiPs). A knowledge discovery in databases (KDD) approach was used as a guide to establish the prediction model. Four predictor variables—prior academic achievement, personality types, team personality diversity, and sofiware methodology—were used to train, test, and validate the prediction model. Three data mining techniques—a classical logistic regression, decision trees, and tough set—were compared to determine the best technique for identifying association patterns in the data and to achieve optimal classification accuracy. The rough set technique was proved to be the most suitable technique for designing the prediction model. The designed model was further cross-validated using an area under receiver operating characteristic (ROC) curve and new data sets. Results show that the eTiPs prediction model has the potential to become a useful tool for decision-makers. This research contributes by providing additional empirical evidence that addresses the humanistic aspects in software engineering. The outcome of this research is a team performance prediction model that can assist decision makers in determining the effective team composition.