当前位置:首页 > 全部子站 > IT > 水平考试

2011年软考系统架构设计师学习笔记第十三章7

来源:长理培训发布时间:2017-11-22 17:01:38

  13.4.1 软件可靠性设计

  实践证明,保障软件可靠性,最有效、最经济、最重要的手段是 在软件设计阶段采取措施进行可靠性控制。

  1、软件可靠性设计是软件设计的一部分,必须在软件的总体设计框架中使用,并且不能与其他设计原则相冲突。

  2、软件可靠性设计在满足提高软件质量要求的前提下,以提高和保障软件可靠性为最终目标。

  3、软件可靠性设计应确定软件的可靠性目标,不能无限扩大化,排在功能度、用户需求、开发费用之后考虑。

  容错设计、检错设计、降低复杂度设计 等技术。

  1、容错设计技术

  1. 恢复块设计,一旦文本出现故障,用备份文本加以替换。

  2. N版本程序设计,对于相同初始条件和相同输入的操作结果,实行多数表决,防止其中某一软件模块/版本的故障提供错误的服务。

  必须注意以下两方面:

  使软件的需求说明具有完整性和精确性。

  设计全过程的不相关性。

  3. 冗余设计

  在相同的运行环境中,一套软件出故障的地方,另外一套也一定会出现故障。

  在一套完整的软件系统之外,设计一种不同路径、不同算法或不同实现方法的模块或系统作为备份。

  费用可能接近单个版本软件开发费用的两倍,还有可能导致软件运行时所花费的存储空间、内存消耗、运行时间有所增加,需要在可靠性要求和额外付出代价之间做出折中。

  2、检错技术

  检错技术实现的代价一般低于容错技术和冗余技术,但它有一个明显的缺点,就是不能自动解决故障。

  着重考虑几个要素:检测对象、检测延时、实现方式、处理方式。

  3、降低复杂度设计

  模块复杂性主要包含模块内部数据流向和程序长度两个方面,结构复杂性用不同模块之间的关联程度表示。

  软件复杂性是产生软件缺陷的重要根源。

  在设计师就应该考虑降低软件的复杂性,是提高软件可靠性的有效方法。

  在保证实现软件功能的基础上,简化软件结构,缩短程序代码长度,优化软件数据流向,降低软件复杂度,从而提高软件可靠性。

  13.4.2 软件可靠性管理

  为了进一步提高软件可靠性,又提出软件可靠性管理的概念,把软件可靠性活动贯穿于软件开发的全过程。

  各个阶段的可靠性活动的目标、计划、进度、任务、修正措施等。

  由于软件之间的差异较大,下面的每项活动并不是每一个软件系统的可靠性管理的必须内容,也不是软件可靠性管理的全部内容。

责编:罗莉

发表评论(共0条评论)
请自觉遵守互联网相关政策法规,评论内容只代表网友观点,发表审核后显示!

国家电网校园招聘考试直播课程通关班

  • 讲师:刘萍萍 / 谢楠
  • 课时:160h
  • 价格 4580

特色双名师解密新课程高频考点,送国家电网教材讲义,助力一次通关

配套通关班送国网在线题库一套

课程专业名称
讲师
课时
查看课程

国家电网招聘考试录播视频课程

  • 讲师:崔莹莹 / 刘萍萍
  • 课时:180h
  • 价格 3580

特色解密新课程高频考点,免费学习,助力一次通关

配套全套国网视频课程免费学习

课程专业名称
讲师
课时
查看课程
在线题库
面授课程更多>>
图书商城更多>>
在线报名
  • 报考专业:
    *(必填)
  • 姓名:
    *(必填)
  • 手机号码:
    *(必填)
返回顶部