MLSmellHound

A Context-Aware Code Analysis Tool

Conference Paper (2022)
Author(s)

Jai Kannan (Deakin University)

Scott Barnett (Deakin University)

Luis Cruz (TU Delft - Software Engineering)

Anj Simmons (Deakin University)

Akash Agarwal (Deakin University)

Research Group
Software Engineering
Copyright
© 2022 Jai Kannan, Scott Barnett, Luis Cruz, Anj Simmons, Akash Agarwal
DOI related publication
https://doi.org/10.1109/ICSE-NIER55298.2022.9793510
More Info
expand_more
Publication Year
2022
Language
English
Copyright
© 2022 Jai Kannan, Scott Barnett, Luis Cruz, Anj Simmons, Akash Agarwal
Research Group
Software Engineering
Bibliographical Note
Green Open Access added to TU Delft Institutional Repository ‘You share, we take care!’ – Taverne project https://www.openaccess.nl/en/you-share-we-take-care Otherwise as indicated in the copyright section: the publisher is the copyright holder of this work and the author uses the Dutch legislation to make this work public. @en
Pages (from-to)
66-70
ISBN (electronic)
978-1-6654-9596-7
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

Meeting the rise of industry demand to incorporate machine learning (ML) components into software systems requires interdisciplinary teams contributing to a shared code base. To maintain consistency, reduce defects and ensure maintainability, developers use code analysis tools to aid them in identifying defects and maintaining standards. With the inclusion of machine learning, tools must account for the cultural differences within the teams which manifests as multiple programming languages, and conflicting definitions and objectives. Existing tools fail to identify these cultural differences and are geared towards software engineering which reduces their adoption in ML projects. In our approach we attempt to resolve this problem by exploring the use of context which includes i) purpose of the source code, ii) technical domain, iii) problem domain, iv) team norms, v) operational environment, and vi) development lifecycle stage to provide contextualised error reporting for code analysis. To demonstrate our approach, we adapt Pylint as an example and apply a set of contextual transformations to the linting results based on the domain of individual project files under analysis. This allows for contextualised and meaningful error reporting for the end user.

Files

MLSmellHound_A_Context_Aware_C... (pdf)
(pdf | 1.1 Mb)
- Embargo expired in 02-01-2023
License info not available