Final published version
Licence: CC BY: Creative Commons Attribution 4.0 International License
Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSN › Conference contribution/Paper › peer-review
Publication date | 18/06/2024 |
---|---|
Host publication | Proceedings of 2024 28th International Conference on Evaluation and Assessment in Software Engineering, EASE 2024 |
Place of Publication | New York |
Publisher | The Association for Computing Machinery |
Pages | 170-180 |
Number of pages | 11 |
ISBN (electronic) | 9798400717017 |
<mark>Original language</mark> | English |
Event | 28th International Conference on Evaluation and Assessment in Software Engineering, EASE 2024 - Salerno, Italy Duration: 18/06/2024 → 21/06/2024 |
Conference | 28th International Conference on Evaluation and Assessment in Software Engineering, EASE 2024 |
---|---|
Country/Territory | Italy |
City | Salerno |
Period | 18/06/24 → 21/06/24 |
Name | ACM International Conference Proceeding Series |
---|
Conference | 28th International Conference on Evaluation and Assessment in Software Engineering, EASE 2024 |
---|---|
Country/Territory | Italy |
City | Salerno |
Period | 18/06/24 → 21/06/24 |
WebAssembly (Wasm) is a binary instruction format designed for secure and efficient execution within sandboxed environments - predominantly web apps and browsers - to facilitate performance, security, and flexibility of web programming languages. In recent years, Wasm has gained significant attention from the academic research community and industrial development projects to engineer high-performance web applications. Despite the offered benefits, developers encounter a multitude of issues rooted in Wasm (e.g., faults, errors, failures) and are often unaware of their root causes that impact the development of web applications. To this end, we conducted an empirical study that mines and documents practitioners' knowledge expressed as 385 issues from 12 open-source Wasm projects deployed on GitHub and 354 question-answer posts via Stack Overflow. Overall, we identified 120 types of issues, which were categorized into 19 subcategories and 9 categories to create a taxonomical classification of issues encountered in Wasm-based applications. Furthermore, root cause analysis of the issues helped us identify 278 types of causes, which have been categorized into 29 subcategories and 10 categories as a taxonomy of causes. Our study led to first-of-its-kind taxonomies of the issues faced by developers and their underlying causes in Wasm-based applications. The issue-cause taxonomies - identified from GitHub and SO, offering empirically derived guidelines - can guide researchers and practitioners to design, develop, and refactor Wasm-based applications.