Perceived relevance of automatic code inspection in end-user development

A study on VBA

Conference Paper (2019)
Author(s)

S. Roy (TU Delft - Software Engineering)

A Deursen (TU Delft - Software Technology)

Félienne Hermans (Universiteit Leiden)

Research Group
Software Engineering
Copyright
© 2019 S. Roy, A. van Deursen, F.F.J. Hermans
DOI related publication
https://doi.org/10.1145/3319008.3319028
More Info
expand_more
Publication Year
2019
Language
English
Copyright
© 2019 S. Roy, A. van Deursen, F.F.J. Hermans
Research Group
Software Engineering
Pages (from-to)
167-176
ISBN (electronic)
978-1-4503-7145-2
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Microsoft VBA (Visual Basic for Applications) is a programming language widely used by end-user programmers, often alongside the popular spreadsheet software Excel. Together they form the popular Excel-VBA application ecosystem. Despite being popular, spreadsheets are known to be fault-prone, and to minimize risk of faults in the overall Excel-VBA ecosystem, it is important to support end-user programmers in improving the code quality of their VBA programs also, in addition to improving spreadsheet technology and practices. In traditional software development, automatic code inspection using static analysis tools has been found effective in improving code quality, but the practical relevance of this technique in an end-user development context remains unexplored. With the aim of popularizing it in the end-user community, in this paper we examine the relevance of automatic code inspection in terms of how inspection rules are perceived by VBA programmers. We conduct a qualitative study consisting of interviews with 14 VBA programmers, who share their perceptions about 20 inspection rules that most frequently detected code quality issues in an industrial dataset of 25 VBA applications, obtained from a financial services company. Results show that the 20 studied inspection rules can be grouped into three categories of user perceptions based on the type of issues they warn about: i) 11 rules that warn about serious problems which need fixing, ii) 7 rules that warn about bad practices which do not mandate fixing, and iii) 2 rules that warn about purposeful code elements rather than issues. Based on these perceptions, we conclude that automatic code inspection is considerably relevant in an end-user development context such as VBA. The perceptions also indicate which inspection rules deserve the most attention from interested researchers and tool developers. Lastly, our results also reveal 3 additional issue types that are not covered by the existing inspection rules, and are therefore impetus for creating new rules.

Files

EASE2019_Paper61.pdf
(pdf | 0.604 Mb)
License info not available