arrow
返回

On technical debt in mathematical programming: An exploratory study

delete2022-08-05
delete2
delete
OA
AI
M
Melina Vidoni *
DOI:10.1007/s12532-022-00225-1delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
The Technical Debt (TD) metaphor describes development shortcuts taken for expediency that cause the degradation of internal software quality. It has served the discourse between engineers and management regarding how to invest resources in maintenance and extend into scientific software (both the tools, the algorithms and the analysis conducted with it). Mathematical programming has been considered 'special purpose programming', meant to program and simulate particular problem types (e.g., symbolic mathematics through Matlab). Likewise, more traditional mathematical programming has been considered 'modelling programming' to program models by providing programming structures required for mathematical formulations (e.g., GAMS, AMPL, AIMMS). Because of this, other authors have argued the need to consider mathematical programming as closely related to software development. As a result, this paper presents a novel exploration of TD in mathematical programming by assessing self-reported practices through a survey, which gathered 168 complete responses. This study discovered potential debts manifested through smells and attitudinal causes towards them. Results uncovered a trend to refactor and polish the final mathematical model and use version control and detailed comments. Nonetheless, we uncovered traces of negative practices regarding Code Debt and Documentation Debt, alongside hints indicating that most TD is deliberately introduced (i.e., modellers are aware that their practices are not the best). We aim to discuss the idea that TD is also present in mathematical programming and that it may hamper the reproducibility and maintainability of the models created. The overall goal is to outline future areas of work that can lead to changing current modellers' habits and assist in extending existing mathematical programming (both practice and research) to eventually manage TD in mathematical programming.
Keyword:
Mathematical modelling
Soft-or
Software engineering
Technical debt

期刊

Mathematical Programming Computation 封面图
Mathematical Programming Computation
IF:
3.6
论文数:
201
被引数:
1.9K

机构

A
Australian National University
学者数:
2.1W
论文数: 2.3W
被引数: 3.9W
引用论文

引用论文

err分享
err收藏
The cytoplasmic protein GAP is implicated as the target for regulation by the ras gene product
err1988-04-01
err0
PREAI
errCarmela Calés; John F. Hancock; Christopher J. Marshall; Alan Hall
err分享
err收藏
Platinum-a non-inert material reacting with oxides
err1995-01-01
err0
errOAAI
errFu-Hsing Lu; Martin L. Newhouse; Rüdiger Dieckmann; Jie Xue
err分享
err收藏
err分享
err收藏
err分享
err收藏
err分享
err收藏
学者 查看更多内容