A tool supporting root cause analysis for synchronous retrospectives in distributed software teams

Context: Root cause analysis (RCA) is a useful practice for software project retrospectives, and is typically carried out in synchronous collocated face-to-face meetings. Conducting RCA with distributed teams is challenging, as face-to-face meetings are infeasible. Lack of adequate real-time tool support exacerbates this problem. Furthermore, there are no empirical studies on using RCA in synchronous retrospectives of geographically distributed teams. Objective: This paper presents a real-time cloud-based software tool (ARCA-tool) we developed to support RCA in distributed teams and its initial empirical evaluation. The feasibility of using RCA with distributed teams is also evaluated. Method: We compared our tool with 35 existing RCA software tools. We conducted field studies of four distributed agile software teams at two international software product companies. The teams conducted RCA collaboratively in synchronous retrospective meetings by using the tool we developed. We collected the data using observations, interviews and questionnaires. Results: Comparison revealed that none of the existing 35 tools matched all the features of our ARCA-tool. The team members found ARCA-tool to be an essential part of their distributed retrospectives. They considered the software as efficient and very easy to learn and use. Additionally, the team members perceived RCA to be a vital part of the retrospectives. In contrast to the prior retrospective practices of the teams, the introduced RCA method was evaluated as efficient and easy to use. Conclusion: RCA is a useful practice in synchronous distributed retrospectives. However, it requires software tool support for enabling real-time view and co-creation of a cause-effect diagram. ARCA-tool supports synchronous RCA, and includes support for logging problems and causes, problem prioritization, cause-effect diagramming, and logging of process improvement proposals. It enables conducting RCA in distributed retrospectives.

[1]  David N. Card,et al.  Learning from Our Mistakes with Defect Causal Analysis , 1999, IEEE Softw..

[2]  Robert G. Mays Applications of Defect Prevention in Software Development , 1990, IEEE J. Sel. Areas Commun..

[3]  Kevin C. Desouza,et al.  Experiences with conducting project postmortems: reports versus stories , 2005, Softw. Process. Improv. Pract..

[4]  Alf Inge Wang,et al.  Improving the effectiveness of root cause analysis in post mortem analysis: A controlled experiment , 2009, Inf. Softw. Technol..

[5]  John Terzakis Virtual Retrospectives for Geographically Dispersed Software Teams , 2011, IEEE Software.

[6]  Janice Singer,et al.  Studying Software Engineers: Data Collection Techniques for Software Field Studies , 2005, Empirical Software Engineering.

[7]  Fabio Q. B. da Silva,et al.  Challenges and solutions in distributed software development project management: A systematic literature review , 2010, 2010 5th IEEE International Conference on Global Software Engineering.

[8]  Mario Piattini,et al.  Challenges and Improvements in Distributed Software Development: A Systematic Review , 2009, Adv. Softw. Eng..

[9]  Aurora Vizcaíno,et al.  Collaboration Tools for Global Software Engineering , 2010, IEEE Software.

[10]  J. F. Courtney,et al.  A system for organizational learning using cognitive maps , 1992 .

[11]  Laurie A. Williams,et al.  What agile teams think of agile principles , 2012, Commun. ACM.

[12]  Torgeir Dingsøyr,et al.  Post Mortem - An Assessment of Two Approaches , 2003, ESERNET.

[13]  Mika Mäntylä,et al.  Development and evaluation of a lightweight root cause analysis method (ARCA method) - Field studies at four software companies , 2011, Inf. Softw. Technol..

[14]  Michael D. Myers,et al.  A Set of Principles for Conducting and Evaluating Interpretive Field Studies in Information Systems , 1999, MIS Q..

[15]  Gerardine DeSanctis,et al.  A foundation for the study of group decision support systems , 1987 .

[16]  Robert B. Grady,et al.  Software Failure Analysis for High-Return Process Improvement Decisions , 1996 .

[17]  Guilherme Horta Travassos,et al.  Towards a Defect Prevention Based Process Improvement Approach , 2008, 2008 34th Euromicro Conference Software Engineering and Advanced Applications.

[18]  Robert J. Latino,et al.  Root Cause Analysis , 2006 .

[19]  James J. Rooney,et al.  Root cause analysis for beginners , 2004 .

[20]  Paul Conway,et al.  Root cause analysis support for quality improvement in electronics manufacturing , 2011 .

[21]  Torgeir Dingsøyr,et al.  Postmortem reviews: purpose and approaches in software engineering , 2005, Inf. Softw. Technol..

[22]  Craig K. Tyran,et al.  Group Support Systems for Strategic Planning , 1997, J. Manag. Inf. Syst..

[23]  John Gosbee,et al.  Poster Abstract: Patient Safety - Incorporating Drawing Software into Root Cause Analysis Software , 2002, J. Am. Medical Informatics Assoc..

[24]  Bruce T. Battrick,et al.  Joint ESA-NASA Space-Flight Safety Conference , 2002 .

[25]  Jeff Sutherland,et al.  The Scrum Guide , 2012 .

[26]  Inderpal S. Bhandari,et al.  A Case Study of Software Process Improvement During Development , 1993, IEEE Trans. Software Eng..

[27]  Dewayne E. Perry,et al.  A case study in root cause defect analysis , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[28]  Jay F. Nunamaker,et al.  Electronic meeting systems , 1991, CACM.

[29]  Mika Mäntylä,et al.  What are Problem Causes of Software Projects? Data of Root Cause Analysis at Four Software Companies , 2011, 2011 International Symposium on Empirical Software Engineering and Measurement.

[30]  J. Alberto Espinosa,et al.  Learning from Experience in Software Development: A Multilevel Analysis , 2007, Manag. Sci..

[31]  Matti Siekkinen,et al.  A root cause analysis toolkit for TCP , 2008, Comput. Networks.

[32]  James D. Herbsleb,et al.  Guest Editors' Introduction: Global Software Development , 2001, IEEE Softw..

[33]  Ilze Zigurs,et al.  A Theory of Task/Technology Fit and Group Support Systems Effectiveness , 1998, MIS Q..

[34]  S. Jamieson Likert scales: how to (ab)use them , 2004, Medical education.

[35]  Robert L. Glass,et al.  Project retrospectives, and why they never happen , 2002, IEEE Software.

[36]  E. Carayannis,et al.  Post-project reviews as a key project management competence , 2008 .

[37]  Per Runeson,et al.  Guidelines for conducting and reporting case study research in software engineering , 2009, Empirical Software Engineering.

[38]  Robert J. Latino,et al.  Root Cause Analysis: Improving Performance for Bottom Line Results , 1999 .

[39]  P. Jalote,et al.  Using defect analysis feedback for improving quality and productivity in iterative software development , 2005, 2005 International Conference on Information and Communication Technology.

[40]  Casper Lassenius,et al.  Near-Synchronicity and Distance: Instant Messaging as a Medium for Global Software Engineering , 2012, 2012 IEEE Seventh International Conference on Global Software Engineering.

[41]  Bjørn Andersen,et al.  Root Cause Analysis: Simplified Tools and Techniques , 1999 .

[42]  Nils Brede Moe,et al.  Understanding Lacking Trust in Global Software Teams: A Multi-case Study , 2007, PROFES.

[43]  Tor Stålhane Root Cause Analysis and Gap Analysis - A Tale of Two Methods , 2004, EuroSPI.

[44]  Torgeir Dingsøyr,et al.  Augmenting Experience Reports with Lightweight Postmortem Reviews , 2001, PROFES.

[45]  T. Jick Mixing Qualitative and Quantitative Methods: Triangulation in Action. , 1979 .

[46]  Geoffrey Ho,et al.  Using Root Cause Data Analysis for Requirements and Knowledge Elicitation , 2007, HCI.