Abstract
Machine Learning (ML) projects incur novel challenges in their development and productionisation over traditional software applications, though established principles and best practices in ensuring the project's software quality still apply. While using static analysis to catch code smells has been shown to improve software quality attributes, it is only a small piece of the software quality puzzle, especially in the case of ML projects given their additional challenges and lower degree of Software Engineering (SE) experience in the data scientists that develop them. We introduce the novel concept of project smells which consider deficits in project management as a more holistic perspective on software quality in ML projects. An open-source static analysis tool mllint was also implemented to help detect and mitigate these. Our research evaluates this novel concept of project smells in the industrial context of ING, a global bank and large software- and data-intensive organisation. We also investigate the perceived importance of these project smells for proof-of-concept versus production-ready ML projects, as well as the perceived obstructions and benefits to using static analysis tools such as mllint. Our findings indicate a need for context-aware static analysis tools, that fit the needs of the project at its current stage of development, while requiring minimal configuration effort from the user.
Original language | English |
---|---|
Title of host publication | Proceedings - 2022 ACM/IEEE 44th International Conference on Software Engineering |
Subtitle of host publication | Software Engineering in Practice, ICSE-SEIP 2022 |
Publisher | IEEE |
Pages | 211-220 |
Number of pages | 10 |
ISBN (Electronic) | 978-1-6654-9590-5 |
DOIs | |
Publication status | Published - 2022 |
Event | 44th ACM/IEEE International Conference on Software Engineering, ICSE 2022: Software Engineering in Practice (ICSE-SEIP) - Pittsburgh, United States Duration: 22 May 2022 → 27 May 2022 Conference number: 44th |
Publication series
Name | Proceedings - International Conference on Software Engineering |
---|---|
ISSN (Print) | 0270-5257 |
Conference
Conference | 44th ACM/IEEE International Conference on Software Engineering, ICSE 2022 |
---|---|
Abbreviated title | ICSE 2022 |
Country/Territory | United States |
City | Pittsburgh |
Period | 22/05/22 → 27/05/22 |
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-careOtherwise 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.
Keywords
- code smells
- context-aware
- dependency management
- machine learning
- mllint
- project smells
- Python
- software quality
- static analysis