Mainframe systems are facing a critical shortage of developer workforce as the current generation of COBOL developers retires. Furthermore, due to the limited availability of public COBOL resources, entry-level developers, who assume the mantle of legacy COBOL systems maintainers, face significant difficulties during routine maintenance tasks, such as code comprehension and defect location. While we made substantial advances in the field of software maintenance for modern programming languages yearly, mainframe maintenance has received limited attention. With this study, we aim to direct the attention of researchers and practitioners towards investigating and addressing challenges associated with mainframe development. Specifically, we explore the scope of defects affecting COBOL systems and defect location strategies commonly followed by COBOL developers and compare them with the modern programming language counterparts. To this end, we surveyed 30 COBOL and 74 modern Programming Language (PL) developers to understand the differences in defects and defect location strategies employed by the two groups. Our preliminary results show that (1) major defect categories affecting the COBOL ecosystem are different than defects encountered in modern PL software projects; (2) the most challenging defect types in COBOL are also the ones that occur most frequently; and, (3) COBOL and modern PL developers follow similar strategies to locate defective code.
翻译:由于目前一代COBOL开发商退休,主机系统面临开发者劳动力严重短缺的问题;此外,由于公共COBOL资源有限,承担CCOBOL系统遗留维护者的初级开发者在日常维护任务(如代码理解和缺陷定位)中面临重大困难;尽管我们每年在现代编程语言软件维护领域取得重大进展,主机维护工作受到的关注有限;通过这项研究,我们的目标是将研究人员和从业人员的注意力引向调查和解决主机开发方面的挑战;具体地说,我们探索COBOL开发商通常遵循的对COBOL系统和缺陷定位战略产生影响的缺陷范围,并将其与现代编程语言对应方进行比较;为此,我们调查了30个COBOL和74个现代编程语言开发者,以了解这两个组采用的缺陷和缺陷定位战略的差异;我们的初步结果表明:(1) 影响COBOL生态系统的主要缺陷类别不同于现代PL软件项目遇到的缺陷;(2) COBOL开发商中最具挑战性的缺陷类型也是经常发生的缺陷类型;(3) COBOL和现代PL开发商遵循类似代码的战略。