一种基于质量检查的联锁车站软件配置管理方法
2024-04-16韩安平
郭 璐,韩安平
计算机联锁系统采用计算机完成联锁的逻辑运算,将运算结果形成控制命令来驱动相应的电子电路设备,从而实现对站场设备和进路的控制,是保证行车安全的重要铁路信号设备[1]。联锁车站软件(以下简称“车站软件”)是实现车站信号系统功能安全的核心软件模块,是根据具体车站的站型在标准软件的基础上配置特定应用数据形成的软件。
随着计算机联锁系统的不断发展,设备需求的变化、设备制式的更新,以及为克服软件本身缺陷的需要,大量的软件变更不可避免[2]。为了能够帮助工作人员更好地记录与控制版本变更[3],多数企业是通过引入配置管理工具如SVN、Git 等来进行配置管理,能够自动化地协助开发人员完成代码和产品的版本管理。每次检入的代码均会由工具分配一个commit id(提交标识号),来唯一标识这个版本[4]。配置管理工具可以保存及追溯到个人上传至服务器上的各个历史版本,还支持多人修改同一文件并由系统合并保存。在标准软件的开发阶段,通过配置管理工具来管理软件版本较有优势。
但在具体车站软件的生产阶段,更需要重点关注软件中关键数据配置是否正确,变更的测试范围是否完全覆盖需求,测试过程是否完整,测试过程发现的问题是否全部关闭等,仅关注到软件的历史版本无法满足要求,故本文提出一种基于质量检查的联锁车站软件配置管理方法,用于提高车站软件的生产质量。
1 前期准备
配置管理的主要目的是保证产品整个生命周期内,工作产品处于受控状态、为项目参与者提供准确的信息、实现历史版本维护,以及保证产品可追溯性[5]。为完成配置管理工作,需进行前期准备,具体内容见图1。
图1 配置管理质量检查前期准备内容
1)建立配置管理组织。需配备配置管理员,运行并控制其过程[6],以有效地实施质量管理体系。配置管理员独立于数据实现人员和软件测试人员,负责执行配置管理方案、版本控制和变更控制方案,编制配置管理报告,并跟踪处理过程中发现的不符合项。配置管理员需掌握联锁基础知识、车站软件数据配置知识、配置管理和质量管理知识,经培训考核后持证上岗。
2)建立配置库。选用高性能、安全可靠的服务器建立配置库。服务器的硬盘、网卡、内存、电源等需稳定耐用,且需冗余备份。强化网络安全理念[7],配置库所在网络应与办公网物理隔离,需设置访问权限,测试通过后的车站软件进入配置库进行受控管理。只有配置管理员具有读写和删除权限,其他相关人员只能具有读取权限。
3)识别配置项。车站软件生产过程中各个版本的车站软件及生产输出记录,两者间具有继承关系[8],前后版本之间相互衔接,都需被识别为需要配置管理的配置项。
4)制定配置项命名方式。配置管理通过标识记录配置项的功能和特性,通过控制这些特性的变更,记录和报告变更的过程和状态[9],故配置项命名是配置管理的重要工作。合理、科学地命名是区分配置项的有效方法,配置项命名需包含配置项名称和版本,且具有唯一性和可追溯性。
5)制定配置库准入规则。需对车站软件和生产输出记录的质量检查内容,制定详细的检查规则及放行准则,配置管理员根据规则对相关配置项进行检查,检查通过后的配置项才可以入配置库进行受控管理。
6)入库复核和配置审计。车站软件的最终目的是要交付现场安装使用,为防止软件前期生产工作顺利完成后,入库阶段配置了错误路径或内容,而造成下一环节取用软件错误甚至现场安装失败,所以配置管理工作完成后还需要设置后续人员进行监督和审查。
2 质量检查
配置管理员根据入库准则对车站软件和生产输出记录进行质量检查,通过后配置项才能入库。这一环节对软件的功能及安全性有直接影响,是车站软件生产的关键过程[10]。依据多年的生产管理经验,质量检查应包括软件类配置项检查和记录类配置项检查,工作流程见图2。
图2 配置管理工作流程
2.1 软件质量检查
1)版本控制。版本控制属于软件配置管理中的核心功能。配置管理员首先需要确认车站软件使用的标准软件版本是否为已正式发布,再确认车站软件的名称、版本是否正确。《铁路信号产品运用管理办法》第四十条、四十三条、四十六条都有规定,所有软件实现版本号规范管理并可查询,要保证软件的完整性、唯一性、可追溯性。车站版本号格式为VA.B.C.D[11]。D 位为车站软件的数据版本号,每次软件变更都需要变更数据版本号,2 位的数据版本号取值范围为01~99,即可支持99 次变更。单一车站任务生产,软件版本号比较容易控制,但在实际的生产活动中,经常会出现多任务版本车站穿插修改的情况,现场安装施工调试也可能出现多版本交替换装的情况,配置管理要特别关注多任务号版本的命名方式。为解决多任务间版本相互穿插的情况,可以在车站软件名称的标识上体现车站任务的标识及数据版本号,采用双保险的方式保障软件生产和现场施工取用正确的版本。
2)标准软件升级检查。车站软件是在标准软件基础上添加车站的特定应用数据,但标准软件多年来不断优化,更新过多个版本,故车站软件在有条件的情况下也会通过升级标准软件版本来完善功能。在软件升级过程中,标准软件需执行程序变更和配置项变更,有些配置项变更后,测试人员不易通过可视化的检验手段来验证,故在配置管理阶段增加相应检查就非常必要。配置管理阶段需识别每个版本的变更内容,确认升级前后新旧软件使用的可执行程序和配置项内容的正确。
3)软硬件匹配性检查。计算机联锁产品经历多年的发展,产品由最早自主研发的双机热备型,到目前各路局广泛应用的引进国外技术的国产二乘二取二型,再到现在软硬件系统均为自主研发的二乘二取二型,产品和工控机的型号、内置各种板卡的型号都有变化。车站软件可通过修改软件中的相关配置项(如看门狗、中断、端口号)来适配不同的硬件设备。实验室测试完毕后,为避免提交受控管理的车站软件没有修改为现场硬件需使用的配置项,需要对软硬件匹配相关的配置项进行识别并检查,保障变更后现场设备可顺利运行。
4)文件时序性检查。车站软件里部分文件有时序性要求,如软件生产修改的数据文件,需要转换成机器能够读取的二进制文件,软件才能执行。如果修改了数据文件,没有做相应的转换工作,会出现执行结果不正确的情况;再如联锁软件需要将可执行文件烧录入CPU 板,系统才能正确运行,如果修改了数据文件,没有重新生成相应的可执行文件,也会造成软件执行不正确。故需要识别出有时序性要求的文件清单并加以检查,才能保证车站软件的正确运行。
5)文件一致性检查。车站软件里的有些文件为多个软件共用,如站场图形文件为操作机和维修机共用,如果操作机软件修改了站场图形文件中的数据,没有及时更新至维修机软件,会造成维修机界面显示与操作机不一致,对后续电务人员维护造成影响,所以需要识别出各软件共用文件清单并加以检查。识别出来的文件一致性检查项目包括:网络图配置文件联锁机软件和维修机软件的一致性、站场图形文件操作机软件和维修机软件的一致性、采集执行层数据文件操作机软件和联锁机软件的一致性、采集/驱动信息表文件联锁软件和维修机软件的一致性等。
6)软件结构正确性检查。为避免因设备运行环境问题,车站软件在压缩或解压缩过程中出现冗余、缺失文件(夹)的现象,需要识别车站软件的文件夹结构和文件组成,对相关冗余或缺失的情况做出识别,并完成相应检查。在检查过程中还要注意,本次变更不涉及修改的文件要保持和变更前一致,检查内容示例见图3。
图3 软件结构正确性检查示例
2.2 记录质量检查
生产输出记录是车站软件数据生产和软件测试已完成的客观证据,记录填写规范、完整、正确也是质量管理体系有效运行的重要保障。通过记录的操作流程、测试内容,能综合反映人、机、料、法、环[12]等生产要素是否满足要求,记录的问题还可以为采取纠正、预防措施提供有效的数据来源和方向。应识别的质量检查项目如下:
1)人,检查执行的人是否具有上岗资质。
2)机,检查测试采用的监视测量设备类型是否正确。
3)料,软件测试对象是车站软件,软件测试依据是需求文件,需要检查软件生产取用、测试完成的软件版本是否正确,测试取用的需求是否为最新版本,所有的需求文件是否都已测试,测试中发现的问题是否关闭,测试过程是否完整。
4)法,检查车站软件生产是否依照最新的作业指导书。
5)环,检查生产环境是否满足安全文明生产的要求。
2.3 质量检查结果及报告
针对上述检查项目,制定质量检查表。由于车站软件的检查内容有明确标准,可以通过人工方式逐项检查确认,也可以制作配置管理质量检查软件,使用软件对质量检查表涉及的文件及文件中的相关配置项逐一检查。检查完成后输出配置管理检查记录,对于不通过的项目必要时还需要重新启动数据生产及软件测试的流程,全部项目质量检查通过后输出配置管理质量检查报告。在质量检查阶段发现的问题,出具不合格记录单,后续跟踪处理直至问题关闭。
2.4 软件入库
质量检查通过的车站软件和生产输出记录,由配置管理员执行入配置库操作,入库完成后,软件可以交付下一环节使用或发布后用于现场开通。
2.5 复核和配置审计
配置管理由配置管理员执行,配置管理员如果将车站软件和记录配置了错误的路径,就会造成下一生产环节取用软件错误,或者接口调试、客户仿真验收取用软件错误,甚至现场安装调试取用软件错误。因此配置入库也需要设置复核监督,还要对入库的配置项定期审计,配置审计的内容包括确认配置项标识无问题、变更符合变更流程、及时入库等。
3 预防及改进
对操作流程和实施过程进行质量检查的目的是提升企业质量管理水平,以保证生产产品的质量[13]。对于各生产阶段质量检查发现的问题,要进行收集和统计,总结经验、吸取教训,制定相应的纠正预防措施,避免问题再次发生,优化生产流程,从而提高产品质量。
如在生产输出记录的检查过程中发现车站软件版本号的填写方式存在问题:在测试完成后只填写最终版本,没有记录问题及解决版本;忽略早期的测试报告及相关记录,未体现全部过程,不易跟踪测试问题是否关闭。后期,质量检查人员协同测试人员更新测试报告及记录的模板,优化相关内容的填写方式,以便后续检查可以清晰地追踪到测试过程出现的各个版本,也能看到测试过程中发现的每个问题,从问题出现、分析、解决、验证到关闭都能得到管控。
4 效果分析
近年来,该配置管理方法累计在全路3 000 多个计算机联锁车站上开展试验应用,应用范围覆盖普速铁路、高速铁路、轨道交通等领域,遍及北京、上海、沈阳、太原、西安等18 个铁路局及北京、天津、深圳、成都等30 多条城轨线路,取得显著效果。经统计,2019—2022 年配置管理质量检查的问题检出率见图4。
图4 配置管理质量检查的问题检出率
由图4 可知,在近4 年的统计周期内配置管理阶段的问题检出率在逐年下降,可见配置管理员站在独立第三方的角度,依据质量检查规则对车站软件和生产输出记录进行检查,在测试阶段结束后对易出错的关键点再确认,进一步提高了车站软件的质量。后续通过对发现问题的收集和分析,也为生产流程的持续优化提供了数据支撑。由此可见,基于质量检查的联锁车站软件配置管理方法在保障联锁车站软件的生产质量方面有效且可行。
5 结束语
联锁系统是整个铁路信号系统的基础,车站软件的生产质量是其重中之重。车站软件如果出现故障,维护成本及造成的影响巨大。本文提出的基于质量检查的配置管理方法,在配置管理活动中增加了质量检查工作,全面贯彻“安全第一,预防为主”的安全技术方针,对软件测试中可能关注不到的环节进行查漏补缺,做好版本控制和变更管理,争取在系统生产阶段发现并解决全部问题,能够进一步保障现场计算机联锁系统安全可靠的运行,确保轨道交通运输的安全。