软件可靠性综述.pdf

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

软件可靠性综述

作者:徐振洋谢萍武孟

来源:《计算机与网络》2021年第18期

针对大型复杂软件可靠性低、重大任务运行过程中出现软件故障的问题,从软件的全生命

周期角度研究软件可靠性设计方法,从软件架构设计、软件冗余设计、软件健壮性设计、软件

测试设计、软件可读性设计、软件重用设计、数据存储设计、软件错误恢复设计等方面研究软

件可靠性设计方法,涵盖了软件需求、概要设计、详细设计、测试设计等不同阶段,最后以实

例进行验证。

软件是各个系统的必要组成部分,也是各系统的核心功能所在,随着SDN/NFV的出现,

软件的地位和作用越来越突出。同时软件直接面向各级各类运维人员,是网络整体运行状态的

呈现者,为大型任务网可靠高效运行保驾护航,为重大任务的顺利完成提供技术支撑,因此研

制高可靠性高质量的软件势在必行,研究软件可靠性设计是非常有意义的课题。本文从软件生

命周期的角度,研究软件可靠性的各个环节,从软件需求、软件体系架构、软件界面、软件测

试等方面进行研究。

软件可靠性设计

从软件体系架构设计、软件冗余设计、软件健壮性设计、软件测试设计、软件可读性设计

和软件重用设计方面进行详细研究。

软件架构设计

软件体系架构设计主要从软件体系设计、模块化设计、服务化设计等方面进行设计。

①体系化设计:软件系统越来越复杂,可靠性高的软件要求采用层次结构设计,层与层之

间单向依赖,减少复杂性,提高可靠性,是否进行层次结构设计是关注的重点;

②模块化设计:是否采用层次结构与模块化设计相结合的方法,是否进行模块化设计,模

块化设计是否高内聚、低耦合,模块之间接口是否清晰明确简洁,上述都是软件设计的关注重

点;为降低软件的复杂度,采用层级结构和模块化设计相结合的思想,将软件分层,层与层之

间只存在单向德依赖关系,在此基础上分解为若干个功能独立的模块。各模块相互交互,实现

软件的相关功能。但是,随着软件模块的数量增加,软件模块间的信息交互势必大幅增多,增

加了软件的复杂度。因此,软件模块的划分需要考虑软件模块的功能单一性(即软件模块尽量

小)和软件模块间信息交互少的原则。

③服务化设计:将独立功能的软件模块进行了服务化封装,服务之间的通信是否简单明

确,服务是否进行了注册、发布、共享,该项目的服务是全新设计还是基于已有项目的设计;

是否最大限度重用了服务库中的服务,重用服务占整个软件项目服务设计的百分比是多少;因

为成熟的入库服务,均已经经过测试部署使用,其可靠性比较高,直接应用于新项目中既可以

缩短开发時间,又可以提高可靠性。

软件冗余设计

①主备热备设计:对于可靠性要求极高的软件,如航天系统相关软件,一定要采用主备热

备、双机热备模式,确保系统故障时的零切换和数据的实时存储备份。

②重要模块备份设计:针对系统功能强大复杂,软件模块众多的系统的,要重点设计关键

硬件、关键模块备份模式,冷热备份根据实际需求选择。

③信息冗余设计:针对大型复杂系统,数据库是重要的信息存储方式,数据库的选型,选

择达梦、金仓国产化数据库,数据高效存储和读取。

软件健壮性设计

软件健壮性设计包括界面设计、数据设计和软件操作防护设计:

①在界面设计中:对输入数据的有效性及合理性进行设计,数据输入范围设计。

②数据健壮性设计:对输入数据的格式和存储方式进行设计。

③软件误删除防护设计:针对软件的删除设计做防范操作,首先进行删除提示和确认操作

设计,同时针对删除的数据做短时间备份存储,以便出现误操作删除时进行撤销和数据恢复操

作。

软件测试设计

在软件测试设计中,主要关注如下方法:

①需求阶段:是否有详尽的需求说明和设计文档(重点关注是否与用户进行透彻沟通交

流),需求不透彻的话,可能会导致整个系统重新设计翻盘代价甚大。

②概要和详细阶段:进行体系架构设计,软件模块划分设计,软件流程设计和函数设计,

能指导软件编码;

③测试阶段:设计测试用例、测试策略,黑盒测试和白盒测试,进行软件正常运行,超负

荷运行检测并采取手段。

软件可读性设计

软件编程风格是否统一、合理,对增加软件代码可读性、提高软件可靠性、便于软件的维

护等方面有重要影响。要求每一个软件模块标准功能、作用、包含函数。要求软件代码注释率

不低于15%。

针对不同的编程语言分别制定了相应的编程规范,建立了专门编程规范执行制度来约束编

码人员按编程规范编写代码。统一、合理的软件编程风格

文档评论(0)

各类考试卷精编 + 关注
官方认证
内容提供者

各类考试卷、真题卷

认证主体社旗县兴中文具店(个体工商户)
IP属地宁夏
统一社会信用代码/组织机构代码
92411327MAD627N96D

1亿VIP精品文档

相关文档