Exploring Performance Assurance Practices and Challenges in Agile Software Development: An Ethnographic Study
Background: Agile principles play a pivotal role in modern software development. Unfortunately, the assessment of non-functional software properties, such as performance, can be challenging in Agile Software Development (ASD). Agile mentality tends to favor functional development over non-functional quality assurance. Additionally, frequent code changes and software releases make impractical the use of classical performance assurance approaches.
Objective: This paper investigates the current practices, problems and challenges of performance assurance in a real context of ASD. To the best of our knowledge, this is the first empirical study that specifically investigate performance assurance in ASD daily work.
Method: Through a 6-months industry collaboration with a large software organization that adopts ASD, we investigated practical and management problems in handling performance assurance activities. The research was conducted in line with ethnographic research, which guided towards building knowledge from participatory observations, unstructured interviews and reviews of documentations.
Results: The study shows that the case organization still relies on a waterfall-like approach for performance assurance. Such an approach showed to be inadequate for ASD, thereby leading to a sub-optimal management of performance assessment activities. We distilled three key challenges when trying to improve the performance assurance process: (i) managing performance assessment activities, (ii) continuous performance assessment and (iii) defining the performance assessment effort.
Conclusions: The assessment of software performance in the context of ASD is still far from being flawless. The lack of guidelines and well-established practices induces the adoption of approaches that can be obsolete and inadequate for ASD. Further research is needed to improve the performance management in this context, and to enable effective continuous performance assessment.
Luca Traini is a postdoctoral researcher in the Department of Computer Science and Engineering, and Mathematics at the University of L’Aquila, Italy. His research interests centre around software performance engineering, encompassing both human and technical aspects, with the goal of improving techniques and methodologies for software performance assurance. His current research is focused on performance assurance processes, performance testing and debugging, and the interplay between software maintenance and performance.
Publications: Google Scholar, DBLP, ORCID, Scopus
Tue 15 NovDisplayed time zone: Beijing, Chongqing, Hong Kong, Urumqi change
10:45 - 12:15 | |||
10:45 15mTalk | Context-Aware Code Change Embedding for Better Patch Correctness Assessment Journal First Bo Lin National University of Defense Technology, Shangwen Wang National University of Defense Technology, Ming Wen Huazhong University of Science and Technology, Xiaoguang Mao National University of Defense Technology Link to publication DOI Pre-print | ||
11:00 15mTalk | BiRD: Race Detection in Software Binaries under Relaxed Memory Models Journal First Ridhi Jain Indraprastha Institute of Information Technology Delhi, Rahul Purandare IIIT-Delhi, Subodh Sharma IIT Delhi Link to publication DOI | ||
11:15 15mTalk | ASTRAEA: Grammar-based Fairness Testing Journal First Ezekiel Soremekun SnT, University of Luxembourg, Sakshi Udeshi Singapore University of Technology and Design, Sudipta Chattopadhyay Singapore University of Technology and Design Link to publication DOI Pre-print | ||
11:30 15mTalk | Exploring Performance Assurance Practices and Challenges in Agile Software Development: An Ethnographic Study Journal First Luca Traini University of L'Aquila Link to publication DOI | ||
11:45 15mTalk | Studying logging practice in test code Journal First Haonan Zhang Concordia University, Yiming Tang Concordia University, Maxime Lamothe Polytechnique Montréal, Heng Li Polytechnique Montréal, Weiyi Shang Concordia University | ||
12:00 15mTalk | Locating Faults with Program Slicing: An Empirical Analysis Journal First Ezekiel Soremekun SnT, University of Luxembourg, Lukas Kirschner Saarland University, Marcel Böhme MPI-SP, Germany and Monash University, Australia, Andreas Zeller CISPA Helmholtz Center for Information Security Link to publication DOI Pre-print |