中文

关于不稳定作业失败的诊断:理解与优先级排序失败类别

软件工程 2025-08-26 v1

摘要

现代软件的持续交付需要执行许多自动化流水线作业。这些作业确保频繁发布新软件版本,同时及早检测代码问题。对于我们的工业合作伙伴TELUS(电信领域),可靠的作业执行对于最小化浪费时间并简化持续部署(CD)至关重要。在这种背景下,不稳定的作业失败是阻碍CD的主要问题之一。先前的研究提出了基于机器学习的技术来自动检测不稳定的作业。虽然这些解决方案很有价值,但不足以解决与诊断不稳定失败相关的浪费,由于潜在原因范围广泛,这些失败在很大程度上仍未得到探索。本研究检查了TELUS的4,511个不稳定作业失败,以识别不同的不稳定失败类别,我们根据最近性、频率和货币(RFM)度量对其进行优先级排序。我们识别出46个不稳定失败类别,使用聚类和RFM度量进行分析,以确定14个优先级类别,用于未来的自动诊断和修复研究。我们的发现还提供了关于这些类别演变和影响的宝贵见解。使用RFM分析识别和优先级排序不稳定失败类别引入了一种新颖的方法,可以在其他环境中使用。

关键词

引用

@article{arxiv.2501.04976,
  title  = {On the Diagnosis of Flaky Job Failures: Understanding and Prioritizing Failure Categories},
  author = {Henri Aïdasso and Francis Bordeleau and Ali Tizghadam},
  journal= {arXiv preprint arXiv:2501.04976},
  year   = {2025}
}

备注

This paper has been accepted at the 47th International Conference on Software Engineering: Software Engineering in Practice 2025