软件成为越来越多的系统中的一个至关重要的部分,它控制硬件并提供任务关键的数据,软件应是安全的。故而,自上世纪80年代以来,以美国国防部为代表的软件采办方率先启动了将软件安全性集成到系统安全性工作(SSP)中,提出了软件安全性任务(300系列任务)扩展集,并纳入美军标MIL-STD-882B《系统安全性工作要求》;1997年,在航天工程等推动下我国制定并发布了GJB/Z 102-1997《军用软件可靠性和安全性设计准则》。
自GJB/Z 102-1997发布以来,软件可靠性和安全性工作越来越受到重视,例如,航天载人工程、航空航天多个型号等均以GJB/Z 102-1997为基础,制定并实施了适用于本工程项目的软件可靠性和安全性设计指南,为保证工程项目和型号的可靠性和安全性发挥了重要的作用。
GJB/Z 102-1997广泛应用于武器装备软件的设计过程中,并取得了良好的效果。但由于GJB/Z 102-1997的制定时间较早,限于当时技术水平及军用软件开发单位的能力,有些要求(如有关软件开发方面的要求)变得不能适应当前的形势,有些原来认为不可行的方法和技术(如SFMEA和SFTA等)已经在武器装备软件开发过程中得到了应用;另外,在军用软件开发过程中,人们也积累了许多良好的实践,并从失败和挫折中总结了许多宝贵的经验和教训;十多年来,国外在软件可靠性和安全性设计研究与实践方面陆续取得了一些新的成果,例如,美国航空航天局(NASA)在2004年发布了NASA-STD-8719.13B《软件安全性标准》、美国军方发布了《软件系统安全性手册》等等。在这种情况下,为了使GJB/Z 102-1997更加符合我国军用软微信小程序开发件开发的实际,迫切需要对GJB/Z 102-1997进行修订,删除或修改与当前实际情况不符的有关要求和准则,增加国内外的最佳实践和经验教训,以便更好地指导军用软件的开发,提高武器装备的可靠性和安全性。
GJB/Z 102-1997修订主要是在总结GJB/Z102-1997实施经验基础上,结合国内外软件可靠性和安全性的研究和实践现状,补充国内外相关研究成果和优秀实践,如,NASA-STD-8719.13B《软件安全性标准》、NASA-STD-8719.13-2004《NASA 软件安全性指南》、美国军方发布的《软件系统安全性手册》、 HSE OP-871《在安全性有关应用中的可编程电子系统:通用技术指南》、DO 178B、以及我国航天员安全性设计工作指南等中的一些内容,提出适用于我国军用软件的安全性设计要求和准则,补充、细化和修订原有设计要求和准则(如“4 一般要求”中有关软件开发规范化的要求等)。修订后的标准将主要涉及软件需求分析、软件设计和软件实现三个方面的安全性设计要求、方法和准则,力求与GJB 900沈阳SEOA-2012《装备安全性工作通用要求》保持协调。
GJB/Z 102修订时指导原则如下:
a) 先进性:尽量采用当前先进有效的软件可靠性和安全性设计实践,尤其要考虑NASA、欧空局、美军有关软件可靠性和安全性方面的标准、指南和手册。
b) 有效性:规定的要求和准则应有助于提高或者保证软件的安全性。
c) 可操作性:规定的要求经国内或国外工程实践证实具有可操性。
d) 可行性:基于我国军用软件研制单位当前技术水平,规定的要求和准则应能够做到,或者通过努力能够在近几年内做到。
e) 协调性:GJB/Z 102修订主要是根据国内外软件可靠性和安全性的研究和实践现状,结合军用软件的特点进行的,是GJB 900A-2012支撑标准,标准框架和技术内容保持与GJB 900A-2012协调一致。
未完待续......