ML system development projects (ML projects for short) have several unique characteristics that set them apart from traditional software development. One example is the central role of data and models, leading to challenges in the management of complex data formats, as traditional SE versioning tools are not made to work with these data formats. Furthermore, experimentation is an essential activity in building ML models and comes with its own set of challenges. Estimating the time required for an experiment and structuring the experiment itself can be difficult, as the outcomes of ML projects are often uncertain.
However, this is not the first time that software engineering has faced this challenge. For information and embedded systems, for example, a comprehensive package of special processes, development methods, languages, and tools has been developed by researchers and practitioners, which have become standards in the industry.
In this research project, we aim to contribute to the development of new ML-specific system development approaches. To this end, we analyze and aim to improve the development processes and associated tooling environments. This of course involves a close coordination with the people involved in the process and applying the tools.