美国国税局还在使用最古老的企业软件


据报道,国际货币基金组织多达 2000 万行的代码是用汇编语言编写的--这是任何现代化的一个主要障碍,因为这种代码是 System/360 结构所特有的,因此除了 IBM 大型机之外无法在其他任何设备上运行。

最老的软件系统很难绝对确定,但很可能是 SABRE 航空预订系统(1960 年推出)或 IRS 个人主文件和商业主文件(1962-63 年推出)。不确定性在于很难证明从这些程序的最早版本到现在的相应版本之间的连续性。

美国国税局的系统稍新一些,但也不太可能剥离所有 20 世纪 60 年代遗留的代码,因此它可能是更有可能的候选系统。

美国国税局 (IRS) 在 20 世纪 60 年代初率先使用自动化数据处理,以更有效地跟踪纳税人账户信息并利用技术的力量。该机构的第一台计算机是 IBM 7074,它使 IRS 能够集中传入的数据。该国每个纳税人的数据都存放在一个客厅大小的存储架中,其中包含估计 500 英里长的磁带。磁带每周一次从全国各地的服务中心空运到位于西弗吉尼亚州马丁斯堡的企业计算中心,那里有 600 名文员每年打出 5000 万张卡。

税务管理的基本职能之一是与纳税人互动以收取适量的欠税。这不仅取决于处理大量数据,还取决于不断适应经常变化的税法。对于 IRS 而言,这一成功很大程度上取决于 CADE 2。

CADE 2 是一个数据库和多方面处理引擎,可实现更快的退款处理、改进的欺诈检测和更快的案件解决。将其视为复杂税务处理环境的核心,由数百个相互关联的系统组成,并影响几乎每个 IRS 职能。

尽管 IRS 使用最先进的硬件进行税务处理,但我们的许多系统都运行在非常古老的编程语言上,例如汇编语言代码 (ALC)。

据报道,其个人主文件系统是用 COBOL 和 IBM 汇编语言混合编写的。由于为美国国税局之前的 System/360 大型机编写的汇编代码无法在任何后续机器上使用,因此 IMF 代码库中最古老的 IBM Assembler 应该是在 1967 年国税局过渡到 System/360 架构之后编写的。不过,COBOL 是一种更容易移植的高级语言,因此,1967 年以前的代码中的某些元素有可能被继承下来。

由于美国税法的复杂性是众所周知的,需要完全向后兼容,而且国税局用于现代化的资金很少,因此这个老 IMF 就一直存在。

目前,核心组件CADE 2 单个主文件正在使用 Java 重写。

以下是有关 CADE 2 计划的一些基本事实及其重要性:

  • 遗留代码转换是该计划中最大、最复杂的组成部分,其中包括 40 年的税法变更。
  • 我们只有一小部分拥有 ALC 专业知识和经验的专家队伍。他们的艰巨任务是更新当前系统,同时完成现代化和其他关键任务工作。只有通过他们顽强的决心和国会的专门资助,我们才能够不断取得进展。我们已将超过 90% 的用于处理个人所得税申报表的核心遗留代码转换为 Java,目标是在 2023 财年完成这部分工作。
  • 虽然很难真正理解 CADE 2 程序的规模和复杂性,但当您了解 IRS 环境的复杂性、必须平衡到一分钱的数十亿行数据以及超过必须考虑 6,000 条逻辑路径,其中一些路径每十年才使用一次!
  • 转换完成并经过测试后,国税局将不再依赖旧代码进行核心个人税务处理。这意味着对于未来的系统更改,更新将使用 Java 编程语言完成,任何经过培训的开发人员都可以使用该语言。