Change search
Link to record
Permanent link

Direct link
Publications (10 of 44) Show all publications
Unver, B. & Britto, R. (2023). Automatic Detection of Security Deficiencies and Refactoring Advises for Microservices. In: Proceedings - 2023 IEEE/ACM International Conference on Software and System Processes, ICSSP 2023: . Paper presented at 17th IEEE/ACM International Conference on Software and System Processes, ICSSP 2023, Melbourne, 14 May through 15 May 2023 (pp. 25-34). Institute of Electrical and Electronics Engineers (IEEE)
Open this publication in new window or tab >>Automatic Detection of Security Deficiencies and Refactoring Advises for Microservices
2023 (English)In: Proceedings - 2023 IEEE/ACM International Conference on Software and System Processes, ICSSP 2023, Institute of Electrical and Electronics Engineers (IEEE), 2023, p. 25-34Conference paper, Published paper (Refereed)
Abstract [en]

The microservice architecture enables organizations to shorten development cycles and deliver cloud-native applications rapidly. However, it also brings security concerns that need to be addressed by developers. Therefore, security testing in microservices becomes even more critical. Recent research papers indicate that security testing of microservices is often neglected for reasons such as lack of time, lack of experience in the security domain, and absence of automated test environments. Even though several security scanning tools exist to detect container, containerized workload management (Kubernetes), and network issues, none individually is sufficient to cover all security problems in microservices. Using multiple scanning tools increases the complexity of analyzing findings and mitigating security vulnerabilities. This paper presents a fully automated test tool suite that can help developers address security issues in microservices and resolve them. It targets to reduce time and effort in security activities by encapsulating open-source scanning tools into one suite and providing improved feedback. The developed security scanning suite is named Pomegranate. To develop Pomegranate, we employed Design Science and conducted our investigation in Ericsson. We have evaluated our tool using a static approach. The evaluation results indicate that the Pomegranate could be helpful to developers by providing simplified and classified outputs for security vulnerabilities in microservices. More than half of the practitioners who give us feedback found Pomegranate helpful in detecting and mitigating security problems in microservices. We conclude that a fully automated test tool suite can help developers to address most security issues in microservices. Based on the findings in this paper, the direction for future work is to conduct a dynamic validation of Pomegranate in a live project. © 2023 IEEE.

Place, publisher, year, edition, pages
Institute of Electrical and Electronics Engineers (IEEE), 2023
Keywords
Kubernetes, Microservices, Security, Security Scanning Tools, Automation, Fully automated, Microservice, Scanning tool, Security problems, Security scanning, Security scanning tool, Security testing, Security vulnerabilities, Containers
National Category
Computer Sciences
Identifiers
urn:nbn:se:bth-25262 (URN)10.1109/ICSSP59042.2023.00013 (DOI)001032744000003 ()2-s2.0-85166196449 (Scopus ID)9798350311969 (ISBN)
Conference
17th IEEE/ACM International Conference on Software and System Processes, ICSSP 2023, Melbourne, 14 May through 15 May 2023
Available from: 2023-08-11 Created: 2023-08-11 Last updated: 2023-08-31Bibliographically approved
Steinmacher, I., Clarke, P., Tuzun, E. & Britto, R. (2023). Editorial: Best papers of the 14th International Conference on Software and System Processes (ICSSP 2020) and 15th International Conference on Global Software Engineering (ICGSE 2020). Journal of Software: Evolution and Process, 35(5), Article ID e2544.
Open this publication in new window or tab >>Editorial: Best papers of the 14th International Conference on Software and System Processes (ICSSP 2020) and 15th International Conference on Global Software Engineering (ICGSE 2020)
2023 (English)In: Journal of Software: Evolution and Process, ISSN 2047-7473, E-ISSN 2047-7481, Vol. 35, no 5, article id e2544Article in journal, Editorial material (Other academic) Published
Abstract [en]

Today's software industry is global, virtual, and depending more than ever on strong and reliable processes. Stakeholders and infrastructure are distributed across the globe, posing challenges that go beyond those with co-located teams and servers. Software Engineering continues to be a complex undertaking, with projects challenged to meet expectations, especially regarding costs. We know that Software Engineering is an ever-changing discipline, with the result that firms and their employees must regularly embrace new methods, tools, technologies, and processes. In 2020, the International Conference on Global Software Engineering (ICGSE) and the International Conference on Systems and Software Processes (ICSSP) joined forces aiming to create a holistic understanding of the software landscape both from the perspective of human and infrastructure distribution and also the processes to support software development. Unfortunately, these challenges have become even more personal to many more in 2020 due to the disruption introduced by the COVID-19 pandemic, which forced both conferences to be held virtually. As an outcome of the joint event, we selected a set of the best papers from the two conferences, which were invited to submit extended versions to this Special Issue in the Journal of Software: Maintenance and Evolution. Dedicated committees were established to identify the best papers. Eight papers were invited and ultimately, seven of these invited papers have made it into this Special Issue. © 2023 John Wiley & Sons, Ltd.

Place, publisher, year, edition, pages
John Wiley & Sons, 2023
Keywords
global software engineering, Machine Learning, software process
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-24377 (URN)10.1002/smr.2544 (DOI)2-s2.0-85149321739 (Scopus ID)
Available from: 2023-03-17 Created: 2023-03-17 Last updated: 2023-06-19Bibliographically approved
Steinmacher, I., Clarke, P., Tuzun, E. & Britto, R. (2023). Editorial: Machine learning, software process, and global software engineering. Journal of Software: Evolution and Process, 35(6), Article ID e2545.
Open this publication in new window or tab >>Editorial: Machine learning, software process, and global software engineering
2023 (English)In: Journal of Software: Evolution and Process, ISSN 2047-7473, E-ISSN 2047-7481, Vol. 35, no 6, article id e2545Article in journal, Editorial material (Other academic) Published
Abstract [en]

On June 26–28, 2020, the International Conference on Software and Systems Processes (ICSSP 2020) and the International Conference on Global Software Engineering (ICGSE 2020) were held in virtual settings during the first year of the COVID pandemic. Several submissions to the joint event have been selected for inclusion in this special issue, focusing on impactful and timely contributions to machine learning (ML). At present, many in our field are enthusiastic about the potential of ML, yet some risks should not be casually overlooked or summarily dismissed. Each ML implementation is subtly different from any other implementation, and the risk profile varies greatly based on the approach adopted and the implementation context. The ICSSP/ICGSE 2020 Program Committees have encouraged submissions that explore the risks and benefits associated with ML so that the important discussion regarding ML efficacy and advocacy can be further elaborated. Four contributions have been included in this special issue. © 2023 John Wiley & Sons, Ltd.

Place, publisher, year, edition, pages
John Wiley & Sons, 2023
Keywords
global software engineering, machine learning, software process
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-24376 (URN)10.1002/smr.2545 (DOI)2-s2.0-85149326527 (Scopus ID)
Available from: 2023-03-17 Created: 2023-03-17 Last updated: 2023-06-19Bibliographically approved
Badampudi, D., Unterkalmsteiner, M. & Britto, R. (2023). Modern Code Reviews - Survey of Literature and Practice. ACM Transactions on Software Engineering and Methodology, 32(4), Article ID 107.
Open this publication in new window or tab >>Modern Code Reviews - Survey of Literature and Practice
2023 (English)In: ACM Transactions on Software Engineering and Methodology, ISSN 1049-331X, E-ISSN 1557-7392, Vol. 32, no 4, article id 107Article, review/survey (Refereed) Published
Abstract [en]

Background: Modern Code Review (MCR) is a lightweight alternative to traditional code inspections. While secondary studies on MCR exist, it is uanknown whether the research community has targeted themes that practitioners consider important.Objectives: The objectives are to provide an overview of MCR research, analyze the practitioners' opinions on the importance of MCR research, investigate the alignment between research and practice, and propose future MCR research avenues.Method: We conducted a systematic mapping study to survey state of the art until and including 2021, employed the Q-Methodology to analyze the practitioners' perception of the relevance of MCR research, and analyzed the primary studies' research impact.Results: We analyzed 244 primary studies, resulting in five themes. As a result of the 1,300 survey data points, we found that the respondents are positive about research investigating the impact of MCR on product quality and MCR process properties. In contrast, they are negative about human factor- and support systems-related research.Conclusion: These results indicate a misalignment between the state of the art and the themes deemed important by most survey respondents. Researchers should focus on solutions that can improve the state of MCR practice. We provide an MCR research agenda that can potentially increase the impact of MCR research. © 2023 Copyright held by the owner/author(s).

Place, publisher, year, edition, pages
Association for Computing Machinery (ACM), 2023
Keywords
literature survey, Modern code review, practitioner survey, Code inspections, Code review, Practitioner surveys, Research analysis, Research communities, Research impacts, State of the art, Systematic mapping studies, Codes (symbols)
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-25220 (URN)10.1145/3585004 (DOI)001020441100026 ()2-s2.0-85163852501 (Scopus ID)
Funder
Knowledge Foundation, 20180010Knowledge Foundation, 20190081
Available from: 2023-08-07 Created: 2023-08-07 Last updated: 2023-08-17Bibliographically approved
Santos, F., Vargovich, J., Trinkenreich, B., Santos, I., Penney, J., Britto, R., . . . Gerosa, M. . (2023). Tag that issue: applying API-domain labels in issue tracking systems. Empirical Software Engineering, 28(5), Article ID 116.
Open this publication in new window or tab >>Tag that issue: applying API-domain labels in issue tracking systems
Show others...
2023 (English)In: Empirical Software Engineering, ISSN 1382-3256, E-ISSN 1573-7616, Vol. 28, no 5, article id 116Article in journal (Refereed) Published
Abstract [en]

Labeling issues with the skills required to complete them can help contributors to choose tasks in Open Source Software projects. However, manually labeling issues is time-consuming and error-prone, and current automated approaches are mostly limited to classifying issues as bugs/non-bugs. We investigate the feasibility and relevance of automatically labeling issues with what we call “API-domains,” which are high-level categories of APIs. Therefore, we posit that the APIs used in the source code affected by an issue can be a proxy for the type of skills (e.g., DB, security, UI) needed to work on the issue. We ran a user study (n=74) to assess API-domain labels’ relevancy to potential contributors, leveraged the issues’ descriptions and the project history to build prediction models, and validated the predictions with contributors (n=20) of the projects. Our results show that (i) newcomers to the project consider API-domain labels useful in choosing tasks, (ii) labels can be predicted with a precision of 84% and a recall of 78.6% on average, (iii) the results of the predictions reached up to 71.3% in precision and 52.5% in recall when training with a project and testing in another (transfer learning), and (iv) project contributors consider most of the predictions helpful in identifying needed skills. These findings suggest our approach can be applied in practice to automatically label issues, assisting developers in finding tasks that better match their skills. © 2023, The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature.

Place, publisher, year, edition, pages
Springer, 2023
Keywords
API identification, Labelling, Mining software repositories, Multi-label classification, Skills, Tagging, Classification (of information), Open source software, Open systems, Tracking (position), Issue Tracking, Labelings, Mining software, Mining software repository, Multi-label classifications, Skill, Software repositories, Tracking system, Forecasting
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-25383 (URN)10.1007/s10664-023-10329-4 (DOI)001058649500001 ()2-s2.0-85169590999 (Scopus ID)
Available from: 2023-09-15 Created: 2023-09-15 Last updated: 2023-09-15Bibliographically approved
Trinkenreich, B., Britto, R., Gerosa, M. A. & Steinmacher, I. (2022). An Empirical Investigation on the Challenges Faced by Women in the Software Industry: A Case Study. In: Proceedings - International Conference on Software Engineering: . Paper presented at 44th ACM/IEEE International Conference on Software Engineering: Software Engineering in Society, ICSE-SEIS 2022, Pittsburgh, 27 May through 22 May 2020 (pp. 24-35). IEEE Computer Society
Open this publication in new window or tab >>An Empirical Investigation on the Challenges Faced by Women in the Software Industry: A Case Study
2022 (English)In: Proceedings - International Conference on Software Engineering, IEEE Computer Society, 2022, p. 24-35Conference paper, Published paper (Refereed)
Abstract [en]

Context: Addressing women's under-representation in the soft-ware industry, a widely recognized concern, requires attracting as well as retaining more women. Hearing from women practitioners, particularly those positioned in multi-cultural settings, about their challenges and and adopting their lived experienced solutions can support the design of programs to resolve the under-representation issue. Goal: We investigated the challenges women face in global software development teams, particularly what motivates women to leave their company; how those challenges might break down according to demographics; and strategies to mitigate the identified challenges. Method: To achieve this goal, we conducted an ex-ploratory case study in Ericsson, a global technology company. We surveyed 94 women and employed mixed-methods to analyze the data. Results: Our findings reveal that women face socio-cultural challenges, including work-life balance issues, benevolent and hos-tile sexism, lack of recognition and peer parity, impostor syndrome, glass ceiling bias effects, the prove-it-again phenomenon, and the maternal wall. The participants of our research provided different suggestions to address/mitigate the reported challenges, including sabbatical policies, flexibility of location and time, parenthood support, soft skills training for managers, equality of payment and opportunities between genders, mentoring and role models to sup-port career growth, directives to hire more women, inclusive groups and events, women's empowerment, and recognition for women's success. The framework of challenges and suggestions can inspire further initiatives both in academia and industry to onboard and retain women. Women represent less than 24% of employees in software development industry and experience various types of prejudice and bias. Even in companies that care about Diversity & Inclusion, 'untying the mooring ropes' of socio-cultural problems is hard. Hearing from women, especially those working in a multi-cultural organization, about their challenges and adopting their suggestions can be vital to design programs and resolve the under-representation issue. In this work we work closely with a large software development or-ganization which invests and believes in diversity and inclusion. We listened to women and the challenges they face in global soft-ware development teams of this company and what these women suggest reduce the problems and increase retention. Our research showed that women face work-life balance issues and encounter invisible barriers that prevent them from rising to top positions. They also suffer micro-aggression and sexism, need to show com-petence constantly, be supervised in essential tasks, and receive less work after becoming mothers. Moreover, women miss having more female colleagues, lack self-confidence and recognition. The women from the company suggested sabbatical policies, the flexibil-ity of location and time, parenthood support, soft skills training for managers, equality of opportunities, role models to support career growth, directives to hire more women, support groups, and more interaction between women, inclusive groups and events, women's empowerment by publishing their success stories in media and recognizing their achievements. Our results had been shared with the company Human Resources department and management and they considered the diagnosis helpful and will work on actions to mitigate the challenges that women still perceive. © 2022 IEEE.

Place, publisher, year, edition, pages
IEEE Computer Society, 2022
Series
Proceedings - International Conference on Software Engineering, ISSN 02705257, E-ISSN 15581225 ; 2022
Keywords
Employment, Personnel training, Professional aspects, Software design, Case-studies, Diversity, Gender, Role model, Skill training, Socio-cultural, Soft skills, Woman, Women empowerment, Work-life balance, Audition, inclusion, software engineering, women
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-23549 (URN)10.1109/ICSE-SEIS55304.2022.9793931 (DOI)000850206000003 ()2-s2.0-85133704611 (Scopus ID)9781665495943 (ISBN)
Conference
44th ACM/IEEE International Conference on Software Engineering: Software Engineering in Society, ICSE-SEIS 2022, Pittsburgh, 27 May through 22 May 2020
Note

open access

Available from: 2022-08-15 Created: 2022-08-15 Last updated: 2022-12-13Bibliographically approved
Vieira, R., Mesquita, D., Mattos, C. L., Britto, R., Rocha, L. & Gomes, J. (2022). Bayesian Analysis of Bug-Fixing Time using Report Data. In: Madeiral F., Lassenius C., Conte T., Mannisto T. (Ed.), International Symposium on Empirical Software Engineering and Measurement: . Paper presented at 16th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ESEM 2022, Helsinki, 18-23 September 2022. (pp. 57-68). IEEE Computer Society
Open this publication in new window or tab >>Bayesian Analysis of Bug-Fixing Time using Report Data
Show others...
2022 (English)In: International Symposium on Empirical Software Engineering and Measurement / [ed] Madeiral F., Lassenius C., Conte T., Mannisto T., IEEE Computer Society, 2022, p. 57-68Conference paper, Published paper (Refereed)
Abstract [en]

Background: Bug-fixing is the crux of software maintenance. It entails tending to heaps of bug reports using limited resources. Using historical data, we can ask questions that contribute to betterinformed allocation heuristics. The caveat here is that often there is not enough data to provide a sound response. This issue is especially prominent for young projects. Also, answers may vary from project to project. Consequently, it is impossible to generalize results without assuming a notion of relatedness between projects.

Aims: Evaluate the independent impact of three report features in the bug-fixing time (BFT), generalizing results from many projects: bug priority, code-churn size in bug fixing commits, and existence of links to other reports (e.g., depends on or blocks other bug reports).

Method: We analyze 55 projects from the Apache ecosystem using Bayesian statistics. Similar to standard random effects methodology, we assume each project's average BFT is a dispersed version of a global average BFT that we want to assess. We split the data based on feature values/range (e.g., with or without links). For each split, we compute a posterior distribution over its respective global BFT. Finally, we compare the posteriors to establish the feature's effect on the BFT. We run independent analyses for each feature.

Results: Our results show that the existence of links and higher code-churn values lead to BFTs that are at least twice as long. On the other hand, considering three levels of priority (low, medium, and high), we observe no difference in the BFT.

Conclusion: To the best of our knowledge, this is the first study using hierarchical Bayes to extrapolate results from multiple projects and assess the global effect of different attributes on the BFT. We use this methodology to gain insight on how links, priority, and code-churn size impact the BFT. On top of that, our posteriors can be used as a prior to analyze novel projects, potentially young and scarce on data. We also believe our methodology can be reused for other generalization studies in empirical software engineering. © 2022 Association for Computing Machinery.

Place, publisher, year, edition, pages
IEEE Computer Society, 2022
Series
International Symposium on Empirical Software Engineering and Measurement, ISSN 19493770, E-ISSN 19493789 ; 16
Keywords
Bayesian networks, Codes (symbols), Open source software, Bayesian Analysis, Bayesian modelling, Bayesian statistics, Bug fixing time, Bug reports, Bug-fixing, Feature values, Historical data, Open-source, Random effects, Random processes, Bayesian Modeling
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-23858 (URN)10.1145/3544902.3546256 (DOI)2-s2.0-85139843296 (Scopus ID)9781450394277 (ISBN)
Conference
16th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ESEM 2022, Helsinki, 18-23 September 2022.
Note

open access

Available from: 2022-11-08 Created: 2022-11-08 Last updated: 2022-11-18Bibliographically approved
Cury, O., Avelino, G., Neto, P. S., Britto, R. & Valente, M. T. (2022). Identifying Source Code File Experts. In: Madeiral F., Lassenius C., Conte T., Mannisto T. (Ed.), ESEM '22: Proceedings of the 16th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement. Paper presented at 16th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ESEM 2022, Helsinki, 18 September through 23 September 2022 (pp. 125-136). IEEE Computer Society
Open this publication in new window or tab >>Identifying Source Code File Experts
Show others...
2022 (English)In: ESEM '22: Proceedings of the 16th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement / [ed] Madeiral F., Lassenius C., Conte T., Mannisto T., IEEE Computer Society, 2022, p. 125-136Conference paper, Published paper (Refereed)
Abstract [en]

Background: In software development, the identification of source code file experts is an important task. Identifying these experts helps to improve software maintenance and evolution activities, such as developing new features, code reviews, and bug fixes. Although some studies have proposed repository-mining techniques to automatically identify source code experts, there are still gaps in this area that can be explored. For example, investigating new variables related to source code knowledge and applying machine learning aiming to improve the performance of techniques to identify source code experts. Aim: The goal of this study is to investigate opportunities to improve the performance of existing techniques to recommend source code files experts. Method: We built an oracle by collecting data from the development history and surveying developers of 113 software projects. Then, we use this oracle to: (i) analyze the correlation between measures extracted from the development history and the developers' source code knowledge and (ii) investigate the use of machine learning classifiers by evaluating their performance in identifying source code files experts. Results: First Authorship and Recency of Modification are the variables with the highest positive and negative correlations with source code knowledge, respectively. Machine learning classifiers outperformed the linear techniques (F-Measure = 71% to 73%) in the public dataset, but this advantage is not clear in the private dataset, with F-Measure ranging from 55% to 68% for the linear techniques and 58% to 67% for ML techniques. Conclusion: Overall, the linear techniques and the machine learning classifiers achieved similar performance, particularly if we analyze F-Measure. However, machine learning classifiers usually get higher precision while linear techniques obtained the highest recall values. Therefore, the choice of the best technique depends on the user's tolerance to false positives and false negatives. © 2022 Association for Computing Machinery.

Place, publisher, year, edition, pages
IEEE Computer Society, 2022
Series
International Symposium on Empirical Software Engineering and Measurement, ISSN 1949-3770, E-ISSN 1949-3789
Keywords
machine learning, mining software repository, software evolution, software maintenance, source-code expertise, Classification (of information), Codes (symbols), Computer programming languages, Software design, Learning classifiers, Linear techniques, Machine-learning, Mining software, Performance, Software repositories, Source codes, Computer software maintenance
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-23785 (URN)10.1145/3544902.3546243 (DOI)2-s2.0-85139845140 (Scopus ID)9781450394277 (ISBN)
Conference
16th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, ESEM 2022, Helsinki, 18 September through 23 September 2022
Note

open access

Available from: 2022-10-28 Created: 2022-10-28 Last updated: 2022-12-13Bibliographically approved
Avritzer, A., Britto, R., Trubiani, C., Camilli, M., Janes, A., Russo, B., . . . Chalawadi, R. K. (2022). Scalability testing automation using multivariate characterization and detection of software performance antipatterns. Journal of Systems and Software, 193, Article ID 111446.
Open this publication in new window or tab >>Scalability testing automation using multivariate characterization and detection of software performance antipatterns
Show others...
2022 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 193, article id 111446Article in journal (Refereed) Published
Abstract [en]

Context: Software Performance Antipatterns (SPAs) research has focused on algorithms for their characterization, detection, and solution. Existing algorithms are based on the analysis of runtime behavior to detect trends on several monitored variables, such as system response time and CPU utilization. However, the lack of computationally efficient methods currently limits their integration into modern agile practices to detect SPAs in large scale systems. Objective: In this paper, we extended our previously proposed approach for the automated SPA characterization and detection designed to support continuous integration/delivery/deployment (CI/CDD) pipelines, with the goal of addressing the lack of computationally efficient algorithms. Method: We introduce a machine learning-based approach to improve the detection of SPA and interpretation of approach's results. The approach is complemented with a simulation-based methodology to analyze different architectural alternatives and measure the precision and recall of our approach. Our approach includes SPA statistical characterization using a multivariate analysis of load testing experimental results to identify the services that have the largest impact on system scalability. Results: To show the effectiveness of our approach, we have applied it to a large complex telecom system at Ericsson. We have built a simulation model of the Ericsson system and we have evaluated the introduced methodology by using simulation-based SPA injection. For this system, we are able to automatically identify the top five services that represent scalability choke points. We applied two machine learning algorithms for the automated detection of SPA. Conclusion: We contributed to the state-of-the-art by introducing a novel approach to support computationally efficient SPA characterization and detection that has been applied to a large complex system using performance testing data. We have compared the computational efficiency of the proposed approach with state-of-the-art heuristics. We have found that the approach introduced in this paper grows linearly, which is a significant improvement over existing techniques. © 2022 Elsevier Inc.

Place, publisher, year, edition, pages
Elsevier, 2022
Keywords
Characterization, Detection, Multivariate analysis, Software Performance Antipatterns, Automation, Computational efficiency, Large scale systems, Learning algorithms, Load testing, Machine learning, Multivariant analysis, Software testing, Anti-patterns, Computationally efficient, Ericsson, Multi variate analysis, Software performance, Software performance antipattern, State of the art, Testing automation, Scalability
National Category
Computer Systems
Identifiers
urn:nbn:se:bth-23535 (URN)10.1016/j.jss.2022.111446 (DOI)000967989300011 ()2-s2.0-85135348448 (Scopus ID)
Available from: 2022-08-12 Created: 2022-08-12 Last updated: 2023-05-08Bibliographically approved
Avritzer, A. A., Britto, R., Trubiani, C., Russo, B., Janes, A., Camilli, M., . . . Henß, J. (2021). A Multivariate Characterization and Detection of Software Performance Antipatterns. In: ICPE 2021 - Proceedings of the ACM/SPEC International Conference on Performance Engineering: . Paper presented at 2021 ACM/SPEC International Conference on Performance Engineering, ICPE 2021, Virtual, Online, France; 19 April 2021 through 21 April 2021 (pp. 61-72). Association for Computing Machinery, Inc
Open this publication in new window or tab >>A Multivariate Characterization and Detection of Software Performance Antipatterns
Show others...
2021 (English)In: ICPE 2021 - Proceedings of the ACM/SPEC International Conference on Performance Engineering, Association for Computing Machinery, Inc , 2021, p. 61-72Conference paper, Published paper (Refereed)
Abstract [en]

Context. Software Performance Antipatterns (SPAs) research has focused on algorithms for the characterization, detection, and solution of antipatterns. However, existing algorithms are based on the analysis of runtime behavior to detect trends on several monitored variables (e.g., response time, CPU utilization, and number of threads) using pre-defined thresholds. Objective. In this paper, we introduce a new approach for SPA characterization and detection designed to support continuous integration/delivery/deployment (CI/CDD) pipelines, with the goal of addressing the lack of computationally efficient algorithms. Method. Our approach includes SPA statistical characterization using a multivariate analysis approach of load testing experimental results to identify the services that have the largest impact on system scalability. More specifically, we introduce a layered decomposition approach that implements statistical analysis based on response time to characterize load testing experimental results. A distance function is used to match experimental results to SPAs. Results. We have instantiated the introduced methodology by applying it to a large complex telecom system. We were able to automatically identify the top five services that are scalability choke points. In addition, we were able to automatically identify one SPA. We have validated the engineering aspects of our methodology and the expected benefits by means of a domain experts' survey. Conclusion. We contribute to the state-of-The-Art by introducing a novel approach to support computationally efficient SPA characterization and detection in large complex systems using performance testing results. We have compared the computational efficiency of the proposed approach with state-of-The-Art heuristics. We have found that the approach introduced in this paper grows linearly, which is a significant improvement over existing techniques. © 2021 ACM.

Place, publisher, year, edition, pages
Association for Computing Machinery, Inc, 2021
Keywords
multivariate analysis, software performance antipattern characterization, software performance antipattern detection, Computational efficiency, Response time (computer systems), Scalability, Computationally efficient, Continuous integrations, Decomposition approach, Engineering aspects, Large complex systems, Multivariate analysis approaches, Software performance, Statistical characterization, Multivariant analysis
National Category
Software Engineering
Identifiers
urn:nbn:se:bth-21383 (URN)10.1145/3427921.3450246 (DOI)000744413800007 ()2-s2.0-85104556333 (Scopus ID)9781450381949 (ISBN)
Conference
2021 ACM/SPEC International Conference on Performance Engineering, ICPE 2021, Virtual, Online, France; 19 April 2021 through 21 April 2021
Funder
EU, Horizon 2020, 825040
Note

open access

Available from: 2021-05-07 Created: 2021-05-07 Last updated: 2022-02-11Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0002-7220-9570

Search in DiVA

Show all publications