当前位置: 首页 > news >正文

软考高级系统架构设计师-第13章 软件可靠性基础知识

【本章学习建议】

根据考试大纲,本章主要考查系统架构设计师单选题,预计考2分左右,案例分析偶尔会考到,对应第二版教材第9章,侧重于概念知识,考查知识点多来源于教材。

13.1 软件可靠性基本概念

13.1.1 软件可靠性定义

软件可靠性(Software Reliability)是软件产品在规定的条件下和规定的时间区间完成规定功能的能力。

软件可靠性和硬件可靠性区别

(1)复杂性:软件复杂性比硬件高,大部分失效来自于软件失效。

(2)物理退化:软件不存在物理退化现象,硬件失效主要是由于物理退化所致。

(3)唯一性:软件是唯一的,每个复制版本都一样,而两个硬件不可能完全一样。

(4)版本更新周期:硬件较慢,软件较快

13.1.2 软件可靠性的定量描述

软件可靠性的定量描述

(1)规定时间:自然时间、运行时间、执行时间(占用CPU)。

(2)失效概率:软件运行初始时刻失效概率为0,随着时间增长单调递增,不断趋向于1。

(3)可靠度:软件系统在规定的条件下、规定的时间内不发生失效的概率。等于1-失效概率。

(4)失效强度:单位时间软件系统出现失效的概率。

(5)平均失效前时间(MTTF):平均失效等待时间,系统从开始运行到发生第一次故障所经历的平均时间。

(6)平均恢复前时间(MTTR):平均修复时间,从出现故障到修复成功的时间。

(7)平均故障间隔时间(MTBF):平均失效间隔时间,失效或维护中所需的平均时间,包括故障时间以及检测和维护设备的时间。(系统两次连续故障之间的平均时间)。MTBF=MTTF+MTTR

系统可用性=MTTF/(MTTF+MTTR)*100%。

13.1.3 可靠性目标

可靠性目标是指客户对软件性能满意程度的期望。通常用可靠度、故障强度和平均失效时间(MTTF)等指标来描述。

13.1.4 可靠性测试的意义

可靠性测试的意义:

(1)软件失效可能造成灾难性的后果

(2)软件的失效在整个计算机系统失效中的比例较高

(3)软件可靠性技术很不成熟,加剧了软件可靠性问题的重要性。

(4)软件可靠性问题是造成软件费用增长的主要原因之一

(5)系统对于软件的依赖性越来越强,软件对生产活动和社会生活的影响越来越大,从而增加了软件可靠性问题在软件工程领域乃至整个计算机工程领域的重要性。

可靠性测试的目的:

(1)发现软件系统在需求、设计、编码、测试和实施等方面的各种缺陷

(2)为软件的使用和维护提供可靠性数据

(3)确认软件是否达到可靠性的定量要求

13.1.5 广义的可靠性测试与狭义的可靠性测试

广义的软件可靠性测试是指为了最终评价软件系统的可靠性而运用建模、统计、试验、分析和评价等一系列手段对软件系统实施的一种测试

相关文章:

  • 32-工艺品商城小程序
  • Redis 事件循环(Event Loop)
  • 无法右键下载文档?网页PDF下载方法大全
  • Opencv图像处理:模板匹配对象
  • 基于docker-java封装的工具类
  • Spring Boot 集成Poi-tl实现动态Word文档生成
  • Linux学习——TCP
  • C++ 相关系统软件简介与学习方法【最水的一期】
  • nuxt3前端开发以及nuxt3和nuxt2项目的详细差异点
  • Web前端:常用的布局属性
  • 2000-2017年各省天然气消费量数据
  • PHP伪协议读取文件
  • go语言优雅关机和优雅重启笔记
  • 计算机组成与体系结构:计算机结构的分类(classifications of computer architecture)
  • 数据通信学习笔记之OSPF其他内容3
  • TDengine 整体构架
  • Linux中服务器时间同步
  • 精益数据分析(8/126):从Airbnb案例看精益创业与数据驱动增长
  • 学习笔记十九——Rust多态
  • 不确定与非单调推理的模糊推理
  • 美国鞋类巨头请求白宫豁免关税,称已构成“生存威胁”
  • 今年五一假期出游人群规模预计比去年提升8%,哪里最热门?
  • 光明日报社论:用你我的匠心,托举起繁盛的中国
  • 央行就《关于规范供应链金融业务引导供应链信息服务机构更好服务中小企业融资有关事宜的通知》答问
  • 排除燃气爆炸、人为放火可能,辽宁辽阳火灾事故起火原因正在调查
  • 上汽集团一季度净利润30.2亿元,同比增长11.4%