Tool support for social risk mitigation in agile projects
Software engineering techniques have been employed for many years to guide software product creation. In the last decade the appropriateness of many techniques has been questioned, given unacceptably high rates of software project failure. In light of this, there have emerged a new set of agile software development methodologies aimed at reducing software projects risks, on the basis that this will improve the likelihood of achieving software project success. Recent studies show that agile methods have been gaining increasing industry attention. However, while the practices recommended by agile methodologies are said to reduce risks, there exists little evidence to verify this position. In addition, it is posited that the very processes recommended by agile methodologies may themselves introduce other risks. Consequently, this study addresses the risks inherent in the human collaboration practices that are central to agile methods. An analysis of the risk management literature reveals that personality conflicts and customer-developer disagreements are social risks that occur through human collaboration. These risks negatively affect team cohesion and software project success. Personality conflicts are said to be mostly influenced through poor team formation, whereas customer-developer disagreements are induced through excessive customer direct interaction. However, these risks are not adequately addressed by standard risk management theories. Furthermore, an evaluation reveals that these risks are also not considered by existing software tools.This study therefore designs and implements a web-based solution to lessen the social risks that may arise in agile projects. The Agile Social-Risk Mitigation Tool (ASRMT) offers support for personnel capability assessment and management and for remote customer feature management, extending the customer's access through an interface. Using software engineering experts to evaluate ASRMT, the tool is shown to effectively address social risk management theories, and is considered likely to assist agile developers in their handling of social risks. In addition, above and beyond its intended purpose, ASRMT is also likely to assist agile teams with general project management. The findings of the ASRMT user evaluations demonstrate sufficient proof of concept to suggest that such a tool could have value in live software projects.