Journal article Open Access

Experience With Managing Technical Debt in Scientific Software Development Using the EXA2PRO Framework

Nikolaos Nikolaidis; Dimitrios Zisis; Apostolos Ampatzoglou; Alexander Chatzigeorgiou; Dimitrios Soudris

Technical Debt (TD) is a software engineering metaphor that resembles the production of poor-
quality code to going into debt. In particular, a development team that ‘‘saves’’ effort while developing by
not removing inefficiencies, has to ‘‘pay-back’’ with interest, in the form of additional maintenance costs
(i.e., fixing bugs, adding features, etc.) due to the poor maintainability of the developed code. Although
maintainability assurance is an established practice in traditional software development (lately known as TD
management), it has still not attracted the attention of scientific software developers; i.e., researchers writing
code and developing tools for purely research purposes. Nevertheless, based on the literature and practice,
maintainability seems to be ranked as an important key-driver for the development of such applications; since
the effort needed to update the code before the experimentation (e.g., executing a simulation) is common
and should not receive low priority. In this paper, we present the outcome of a 3-year research project on
Technical Debt Management (TDM) for scientific software development. The outcome of the project is a
framework (termed: EXA2PRO TDM framework) and an accompanying platform for assisting scientific
software developers in managing the TD of their applications. The framework is a collection of methods
tailored for the mainstream programming languages of scientific software development, which have been
empirically validated through five pilot applications. The majority of the EXA2PRO framework suggestions
have been applied by scientific software developers and eased future maintenance activities.

11
10
views
downloads
Views 11
Downloads 10
Data volume 12.8 MB
Unique views 8
Unique downloads 8

Share

Cite as