自考《软件工程》基础知识点复习:软件质量与质量保证
软件质量与质量保证
1、软件质量定义即3个一致性:与所确定的功能和性能需求、与所成文的开发标准、与所有专业开发的软件所期望的隐含特性的一致性。
2、影响软件质量的因素:可直接度量因素和只能间接度量的因素。
3、软件质量保证是指确定、达到、维护所需的软件质量而进行的所有有计划、有系统的管理活动。从产品计划和设计开始(必须加以保证),直到投入使用和售后服务的软件生存期的每一阶段的每一步骤。其工作重点放在过程管理上,对制造的每一道工序进行质量控制。
为提高软件质量和效率,主要任务:力争不重复劳动、掌握开发新软件方法、用户要求定义、组织外部力量协助排除无效劳动、发挥每个开发者的能力、提高软件开发的工程能力、提高计划和管理质量。
4、质量保证策略发展的三个时期:以检测为重、以过程管理为重、以新产品开发为重。
5、质量度量模型:McCall质量度量模型、ISO质量度量模型(分为质量特征层、质量子特征层、度量层)。
McCall质量度量模型有11个特性:
面向软件产品操作的特性有:正确性、可靠性、效率、可用性。
面向软件产品修改的特性有:可维护性、可测量性、适应性。
面向软件产品适应的特性有:可移植性、可重用性、可互操作性。
其中,正确性是指软件满足设计规格说明及用户预期目标的程度。可靠性是指软件按设计要求,在规定时间和条件下不出故障,持续运行的时间。完整性是指对非授权人访问软件或数据行为的控制程度。可用性是指用户熟悉、使用及准备输入和解释输出所需工作量的大小。
6、度量软件复杂度使用代码行度量法和基于程序控制流的McCabe度量法。
McCabe度量法一种基于程序控制流的复杂性度量法,也称为环路度量。先画出程序图,再计算环路数。公式为:V(G)=m-n+2p; 其中,V(G)是有向图G中环路数,m是图中G的弧度数,n是图中结点数,p是G中的强连通分量个数。
McCabe度量法的缺点:(1)不能区分不同种类的控制流复杂性;(2)简单IF语句与循环语句、嵌套IF语句与简单CASE语句的复杂性同等看待;(3)把模块间接口当做简单分支处理;(4)一个具有1000行的顺序程序和一行语句的复杂性相同。
7、软件复杂性度量参数:规模(总共指令数或源代码行数)、难度(由程序中出现的操作数的数目所决定的量表示)、结构(与程序结构有关的度量来表示)、智能度(算法难易程度)。
8、软件可靠性表明一个程序按用户要求和设计的目标,执行其功能的正确程序,指在给定时间内,在规定环境下系统完成所指定功能的概率。使用硬件可靠的定量度量:MTFF(平均失效等待时间)和MTBF(平均失效间隔时间)。
9、提高软件质量和可靠性的技术有:避开错误技术(在开发过程中不让差错潜入软件)和容错技术。
容错软件是在一定程度上具容错能力的规定功能软件。设计过程为:(1)常规设计,尽量保证设计正确。(2)对可能出现的错误分类,确定容错范围。(3)按“成本-效率”最优原则,选择容错的冗余手段实现错误屏蔽(如关键程序和数据冗余存储和调用)。(4)分析或验证上述冗余结构的容错效果。
10、冗余是所有对于实现系统规定功能来说多余的那部分资源,包括硬件、软件、信息、时间,是实现容
错技术的主要手段。冗余分为四类:结构冗余(又分静态、动态、混合冗余)、信息冗余、时间冗余、冗余附加技术。
11、软件生存期每个阶段都可能引入人为错误,若不及时纠正就会传播到开发后续阶段,将引出更多错误,故要进行软件评审,以提高软件质量为目标。把“用户满意程度”理解为软件质量,包括设计质量(设计的规格说明书符合用户要求)和程序质量(程序要按照设计规格说明所规定的情况正确执行)。
设计质量的评审针对需求分析阶段产生的软件需求、规格说明书、数据需求说明,在软件总体设计阶段产生的软件概要设计说明书。
程序质量的评审从开发者角度进行评审,直接和开发技术有关,着眼于软件本身的结构、与运行环境的接口和变更带来的影响而进行的评审活动。
12、提高程序效率的根本途径在于选择良好的设计方法、良好的数据结构算法,而不是靠编程时对程序语句做调整。
最新资讯
- 考前必背!自学考试《中国近现代史纲要》论述题高频考点2024-10-19
- 自考报考策略:科学搭配科目,加速毕业进程2024-07-20
- 2025年考研考生五一假期,英语科目应该如何复习?2024-05-03
- 备考指南!2024年4月自学考试考前要做哪些准备?2024-03-31
- 考前备考冲刺!自考如何一次就过?2024-03-30
- 考点汇总:《中国近现代史纲要》论述题2024-03-25
- 备考资料:《中国近现代史纲要》简答题考点汇总2024-03-25
- 自考可以从哪些维度进行备考?2024-02-17
- @自考生,这里有备考技巧2024-02-17
- 自学考试备考复习方法!建议收藏2024-02-16