提高软件质量 保障软件安全性-探讨21世纪计算机科学与软件产业发展战略

发表于:2008-5-15 13:29

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

        计算机软件质量问题一直是软件开发中的一个重要而棘手的问题。近年来,随着计算机应用范围的迅速扩大,计算机开始广泛地应用于工业控制、航天航空、医疗设备、银行、交通等领域,越来越深入人们的日常生活。计算机及其软件虽然改善了人们的生活水平与工作条件,但也更加直接地关系到人们的生命、财产与人类的生存环境的安危。从而,对软件质量提出了一个新的要求,即安全性。在人们憧憬着信息高速公路、多媒体等计算机新技术成为人们开拓崭新的应用领域的同时,西方工业国正在加紧提高软件质量,保障软件安全性的工作。它已成为西方全社会关注的重要问题。

        本文探讨软件安全性在我国计算机科学与软件产业发展中的战略地位。

        一、软件安全性关系人们的生命、财产和生态环境的安危什么是软件安全性?让我们先看几个实例。 ·在西方国家,计算机已用于核电站的控制与安全保护,一旦其软件发生故障,将会造成人员伤亡和环境污染。 ·在伦敦Heathrow国际机场,平均每三分钟就有一架飞机起落。如果调度飞机场飞机着陆次序的软件发生故障,将会造成飞机相撞的灾难。 ·波音747等大型客机都使用计算机自动导航系统,如果它发生故障,就可能造成机毁人亡的事故。 ·在西方国家,铁路信号系统已计算机化。英国已计划在不久的将来实现铁路信号和扳道的全部自动化。铁路交通的安全性将进一步依赖于计算机的正常运行。 ·在巴黎,由于使用计算机进行有效的调度和安全控制,地铁系统中火车的行驶速度得以加快,火车之间的间隔得以缩短。这些系统中的计算机及其软件具有一个共同的特征,这就是,它们的正确运行关系到人的生命安危。这样的系统是否可以依赖呢?让我们再来看几个例子。 ·由于控制放射性治疗设备的软件错误,在加拿大已经造成了多起癌症病人因受到过量射性辐射而死亡的事故。 ·在英国,由于放射性治疗设备中计算辐射量的软件错误,发生了癌症病人因放射性辐射剂量太低而得不到适当的治疗的事故。 ·在伦敦,救护车调度软件刚投入使用几小时就发生故障,造成急诊病人延误达十几小时。 ·飞机自动控制软件的错误造成了飞机在特技飞行表演时坠毁。这类因计算机软件错误而造成的事故引起了西方工业国家的高度重视,把这类一旦发生故障就可能危及人的生命、财产和生存环境的软件称为安全性关键的软件(Safety Critic al Software)。它们的根本特征是安全性具有至关重要的意义。所谓软件安全性,简单地说 ,就是计算机软件能够使其所控制的系统始终处于不危及人的生命、财产和自然环境的安全状态的性质。

、除此之外,安全性关键的软件还有如下重要特征。 1、高质量需求安全性关键的软件对软件质量往往具有很高的要求。例如,英国Sizewell-B核电站安全保护系统的可靠性要求失败率不高于10-4。美国联邦航空管理局用于空中交通控制的关键计算机系统的可靠性要求是系统总失效率低于10-7,即软件处于故障状态的时间每年不超过三秒钟。一个城市火车调度系统中,安全性关键的处理器的失败概率必须低于10-12/小时。民用航空系统对系统可靠性的需求是人们常常引用的数据,它要求在每小时操作中出现"空难性事故"的概率低于10-9。 2、高复杂性许多安全性关键的软件是实时系统(real-time system)和嵌入式系统(embedded syst em)。分布式系统和混成系统(hybrid system)也不鲜见。它们往往具有很高的复杂性。 3、高开发代价由于安全性关键软件本身的高度复杂性,以及所需满足的高质量需求,开发安全性关键的软件往往代价极大。有人曾作过统计,安全性关键软件的平均开发代价是约500美元一行程序。

        二、软件安全性已引起西方国家的高度重视安全性关键的软件引起了西方工业国的高度重视,投以巨资予以研究,并迅速采取相应的法律与管理措施,以保障这类软件的质量。如英国工贸部与科学与工程研究委员会(SERC )于三年前开始联合组织实施一个庞大的题为"安全性关键的系统"的研究计划(Safety Cri tical Systems Programme),设立软件安全性与可靠性研究中心,联合高等院校与工业界共同研究,第一阶段就投资逾三亿英镑。一批保障软件安全性的软件生产、使用和维护的规范与标准也开始实施。其他西方国家也采取了相应的措施。1994年底,由欧共体的ESSI(Euro pean Systems and Software Initiative Programme)出面组织,将英、德、法、丹麦、奥地利、意大利、瑞典、希腊等欧洲国家的软件可靠性和安全性俱乐部联合起来,组成欧洲俱乐部网ENCRESS,以利交流信息和合作研究。在学术界,软件安全性已成为国际上一个十分活跃的研究领域。计算机软件学术刊物近年来纷纷设立以安全关键的软件为题的专刊,如IEEE Transactions on Software Enginee ring、IEEE Software、Communications of ACM、Journal of Software Engineering,等等。一些重大国际学术会议也开始设立以安全性为题的分组。一批以计算机可靠性和安全性为专题的国际系列学术会议已经召开,如Safety-critical Systems Symposiums、IMA Con ferences on Dependable Systems、European Conferences on Dependable Computings、 International Conferences on Computer Safety、Reliability and Security (Safeco mp),等等。软件安全性不仅受到西方国家工业界和学术界的高度重视,它已成为西方社会一个普遍关注的问题。例如,伦敦救护车事件、放射性治疗设备事件都曾引起新闻媒介的关注。Siz ewell-B核电站安全保护系统的安全性论证(safety case)曾引起新闻媒介以及社会各界的高度关注。总之,软件安全性已成为西方工业国家政府、工业界、学术界以及社会各界关注的重要问题。

        三、保障软件安全性的战略意义为什么软件安全性具有如此重要的意义呢?我们从以下几个方面进行分析。

        1.忽视软件安全性的后果严重显而易见,忽视软件安全性将会造成严重后果。对于社会来说,灾难性事故的后果不仅是人员伤亡、财产损失,它还会造成环境的大规模破坏,对国民经济造成重大影响,其后果甚至会超越国界。对于一个工商企业来说,灾难性事故还意味着失去信誉,从而失去竞争力,最终失去市场,而招致失败。软件安全性在我国尚未引起普遍重视。随着国民经济的高速发展,计算机应用范围将会迅速扩大,计算机软件安全性也将日益显示出其重要性。目前,我国正在进行的"金桥"、"金卡"等"八金"工程将推动计算机应用的迅速发展,正在建设中的核电站、大型水利枢纽等也势必应用计算机进行控制。它们的安全性将关系到我国人民生命财产与生态环境的安危。如何保障这些软件的安全性,防止灾难性事故,已成为一个刻不容缓的课题。

        2.现有理论、技术和方法对软件安全性保障乏术多年来,对系统安全性和可靠性的研究积累了一定的理论、方法和技术,如系统潜在危险分析技术、可靠性分析技术、可靠性设计技术,等等。这些技术在保障物理系统的可靠性和安全性上取得了成效。但是,由于软件系统与物理系统的一些本质区别,这些技术不能有效地应用于软件的可靠性分析和安全性保障。例如,以物理器件发生故障的随机独立性为基础,器件多备份是提高物理系统可靠性的一个基本手段。但是,软件可靠性不能靠程序的多备份来得到。这是因为,软件故障绝大多数源于软件设计错误,不能简单地看作是随机独立事件。另一方面,软件理论研究和计算机科学的发展虽然提出了一些提高软件质量和可靠性的理论、方法和技术,如形式化方法、容错技术、软件工程的理论和方法,等等,在保障软件质量上也取得了一定的进展,但是,国际上计算机科学家普遍认为,由于安全性关键软件的高度复杂性和极高可靠性需求,这些理论、方法和技术尚不具备开发安全性关键软件的能力 ,甚至连测试一个软件系统是否具备10-4以上的可靠性的技术也未具备。总之,如何提高软件质量,保障软件安全性是一个涉及面广、难度大的研究课题。

        3.安全性关键软件的应用前景广阔安全性关键软件往往是高技术、大系统的核心部分,如大型客机、高速铁路、核电站、高度自动化工厂,等等,其应用前景十分广阔。由于现有理论、技术和方法对保障软件安全性乏术,软件安全性已成为制约计算机应用的主要障碍。可以说,21世纪的高技术市场将与安全性关键软件体戚相关。安全性关键软件的开发技术将是打开21世纪高技术市场的钥匙。1994年夏,微软公司、IBM公司等计算机厂商邀请了在英国的一些世界著名的计算科学家探讨21世纪计算机软件的发展方向与战略。与会专家一致认为,21世纪计算机软件发展的大方向将是质量的提高优先于性能和功能的改进。

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号