Machine learning (ML) components are being added to more and more critical and impactful software systems, but the software development process of real-world production systems from prototyped ML models remains challenging with additional complexity and interdisciplinary collaboration challenges. This poses difficulties in using traditional software lifecycle models such as waterfall, spiral, or agile models when building \textit{ML-enabled systems}. In this research, we apply a Systems Engineering lens to investigate the use of V-Model in addressing the interdisciplinary collaboration challenges when building ML-enabled systems. By interviewing practitioners from software companies, we established a set of 8 propositions for using V-Model to manage interdisciplinary collaborations when building products with ML components. Based on the propositions, we found that despite requiring additional efforts, the characteristics of V-Model align effectively with several collaboration challenges encountered by practitioners when building ML-enabled systems. We recommend future research to investigate new process models that leverage the characteristics of V-Model such as the system decomposition, clear system boundary, and consistency of Validation \& Verification (V\&V) for building ML-enabled systems.
翻译:机器学习(ML)组件正被越来越多地集成到关键且具有影响力的软件系统中,但从原型化ML模型到实际生产系统的软件开发过程仍面临额外复杂性及跨学科协作挑战。这导致在构建“ML赋能系统”时,传统软件生命周期模型(如瀑布模型、螺旋模型或敏捷模型)的应用面临困难。本研究通过系统工程视角,探讨V模型在解决ML赋能系统构建中跨学科协作挑战的作用。通过对软件公司从业者的访谈,我们提出了一套包含8项主张的框架,用于指导V模型管理ML组件产品开发中的跨学科协作。基于这些主张,我们发现V模型的特性(如系统分解、明确系统边界及验证与确认的一致性)虽需额外投入,却能与从业者在构建ML赋能系统中遇到的若干协作挑战有效契合。我们建议未来研究探索利用V模型特性(如系统分解、明确系统边界及验证与确认一致性)的新流程模型,以支撑ML赋能系统的构建。