Making a Pipeline Production-Ready: Challenges and Lessons Learned in the Healthcare Domain

  • Daniel Angelo Esteves Lawand
  • , Lucas Quaresma Medina Lam
  • , Roberto Oliveira Bolgheroni
  • , Renato Cordeiro Ferreira
  • , Alfredo Goldman
  • , Marcelo Finger

Research output: Chapter in Book/Report/Conference proceedingChapterScientificpeer-review

Abstract

Deploying a Machine Learning (ML) training pipeline into production requires good software engineering practices. Unfortunately, the typical data science workflow often leads to code that lacks critical software quality attributes. This experience report investigates this problem in SPIRA, a project whose goal is to create an ML-Enabled System (MLES) to pre-diagnose insufficiency respiratory via speech analysis. This paper presents an overview of the architecture of the MLES, then compares three versions of its Continuous Training subsystem: from a proof of concept Big Ball of Mud (v1), to a design pattern-based Modular Monolith (v2), to a test-driven set of Microservices (v3). Each version improved its overall extensibility, maintainability, robustness, and resiliency. The paper shares challenges and lessons learned in this process, offering insights for researchers and practitioners seeking to productionize their pipelines.
Original languageEnglish
Title of host publicationSoftware Architecture
Subtitle of host publicationECSA 2025 Tracks and Workshops: Limassol, Cyprus, September 15–19, 2025, Proceedings
Pages354-362
Volume15982
ISBN (Electronic)978-3-032-04403-7
DOIs
Publication statusPublished - 9 May 2025

Publication series

NameLecture Notes in Computer Science
PublisherSpringer Nature
Volume15982
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Keywords

  • Code Quality
  • MLOps
  • Software Architecture
  • Machine Learning Enabled Systems
  • Healthcare Domain
  • Experience Report

Fingerprint

Dive into the research topics of 'Making a Pipeline Production-Ready: Challenges and Lessons Learned in the Healthcare Domain'. Together they form a unique fingerprint.

Cite this