Exportar Publicação
A publicação pode ser exportada nos seguintes formatos: referência da APA (American Psychological Association), referência do IEEE (Institute of Electrical and Electronics Engineers), BibTeX e RIS.
Rio, J., Brito e Abreu, F. & Mendes, D. A. (2023). Causal inference of server- and client-side code smells in web apps evolution. Causal inference of server- and client-side code smells in web apps evolution.
J. A. Rio et al., "Causal inference of server- and client-side code smells in web apps evolution", in Causal inference of server- and client-side code smells in web apps evolution, 2023
@unpublished{rio2023_1783996975187,
author = "Rio, J. and Brito e Abreu, F. and Mendes, D. A.",
title = "Causal inference of server- and client-side code smells in web apps evolution",
year = "2023"
}
TY - EJOUR TI - Causal inference of server- and client-side code smells in web apps evolution T2 - Causal inference of server- and client-side code smells in web apps evolution AU - Rio, J. AU - Brito e Abreu, F. AU - Mendes, D. A. PY - 2023 AB - Abstract Context: Web apps are heterogeneous in their architecture (split into client and server sides) and the development languages used, so we need to consider CS covering that diversity. Furthermore, the literature provides little evidence for the claim that CS is a symptom of poor design, leading to future problems in web apps. Objective: To study the evolution and inner relationship of CS in web apps on the server- and client-sides, and their impact of CS (from server and client-sides) on maintainability (web app issues and bugs) and app "time to release." Method: We collected and analyzed 18 server-side, and 12 client-side code smells (aka web smells) from 12 typical PHP web apps, summing 811 releases. Additionally, we collected metrics, maintenance issues, reported bugs, and release dates. We used several methodologies to devise causality relationships among the considered irregular time series, such as Granger-causality and Information Transfer Entropy(TE) with CS from previous releases (lag 1 to 4). Results: CS evolution primary trends: server-side: slowly decrease; clientembed: decrease; client-JavaScript: increase. Most significant TE(lag1) between CS groups: CS client-side CS groups to server-side; after client-embed to clientJavaScript; On TE(lag2) is client-embed to server and JS. Individual client-side CS contributes more to issues’ evolution, followed by server-side CS. Almost all CS contribute to bugs’ evolution, especially in lag1; We found statistical evidence of causal inference between CS and time to release(TTR) for almost all the individual. CS. All CS groups contribute to issues, bugs, and TTR; JavaScript CS can cause more issues, (server)PHP and JavaScript CS can cause more bugs, and the time to release (delays) is more impacted by the density of client embed CS. Conclusions: There is evidence of statistical inference between client- and server-side code smells and from the code smells to web app. ER -
English