第1题:
( 13 )下列关于软件可靠性测试的说法中,错误的是
A )发现软件缺陷是软件可靠性测试的主要目的
B )软件可靠性测试通常用于有可靠性要求的软件
C )在一次软件可靠性测试中,执行的测试用例必须完全符合所定义的软件运行剖面
D )可靠性测试通常要对测试结果进行分析才能获得测试结论
第2题:
以下关于软件可靠性测试的说法中.正确的是
A.软件可靠性测试总是能比白盒测试发现更多的错误
B.软件可靠性测试总是能比黑盒测试发现更多的错误
C.软件可靠性测试不关注与软件性能有关的软件故障
D.软件可靠性测试度量出来的软件可靠性特定于所定义的软件运行剖面
第3题:
论软件可靠性评价软件可靠性评价是指选用和建立合适的可靠性数学模型,运用统计技术和其他手段,对软件可靠性测试和系统运行期间的软件失效数据(也可能包含软件生命周期内其他可靠性数据)进行处理,并评估和预测软件可靠性的过程。软件可靠性评价是软件可靠性活动的重要组成部分,既可在软件开发过程实施,也可针对最终软件系统实施。软件可靠性评价的难点在于软件可靠性模型的选择和软件可靠性数据的收集与处理。请围绕"软件可靠性评价"论题,依次从以下3个方面进行论述:①简要概述你参与实施的软件开发项目及你承担的主要工作。②说明你在项目实施过程中所选择的软件可靠性模型,并论述在软件可靠性模型选择时应该考虑的主要因素。③收集软件可靠性数据时经常遇到的问题有哪些?简述你收集软件可靠性数据时所遇到的具体问题及解决的方法。
写作要点
①说明软件开发项目的基本情况及自己承担的主要工作。
②当前的软件可靠性模型众多,但并没有一个最好的或者可以适用所用软件系统的软件可靠性模型,因此对于不同的软件系统,出于不同的可靠性分析目的,需要选择合适的软件可靠性模型。
常见的10类软件可靠性模型有种子法模型、失效率类模型、曲线拟合类模型、可靠性增长模型、程序结构分析模型、输入域分类模型、执行路径分析方法模型、非齐次泊松过程模型、马尔可夫过程模型和贝叶斯分析模型。
软件可靠性模型的选择主要需要考虑以下4个方面:
模型假设的适用性:模型假设是可靠性模型的基础,模型假设需要符合软件系统的现有状况,在软件系统中与假设冲突的因素达到几乎不存在的程度。
往往一个模型的假设有很多,需要在选择模型时对每一条假设进行分析,评估现有软件系统中不符合假设的因素对可靠性评价有多大影响,以确定模型是否符合软件系统的可靠性评价工作。
模型预测的能力与质量:预测的能力和质量是指模型根据现在和历史的可靠性数据,预测将来的可靠性和失效概率的能力,以及预测结果的准确程度。
因此,应尽可能选择比较成熟的、应用较广的模型。
模型输出值能否满足可靠性评价需求:根据可靠性测试目的来确定哪些模型的输出值满足可靠性评价需求。重要的可靠性定量指标包括当前可靠度、平均无失效时间、故障密度、期望达到规定可靠性目标的日期、达到规定可靠性目标的成本要求等。
模型使用的简便性:模型使用的数据在软件系统中易于收集;模型应该简单、易懂;模型应该便于使用,最好有工具支持。
三、软件可靠性数据的收集是一项艰巨而又烦琐的工作,受到许多潜在因素的影响和制约。常见的问题如下:
可靠性数据规范不一致,对软件进行度量的定义混乱。
数据收集过程存在于整个软件生命周期,但由于成本等因素,其连续性往往不能保证。
缺乏有效的技术和工具支持,难以进行自动分析。
数据完整性不能保证,收集到的数据大多数是不完全的。
数据质量和准确性不能保证。
缺乏可靠性数据的交流与共享。
考生应叙述在项目中遇到了上述中的哪些问题。
可供采用的解决方法主要有:
尽早确定可靠性模型,明确需要搜集的可靠性数据,确定涉及的术语、记录方法等。
制订可实施的可靠性数据搜集计划,并指定专人负责。保证数据的收集和验证与软件开发过程同步进行。
重视软件测试特别是可靠性测试产生的测试结果的整理和分析。
尽可能地利用工具进行收集工作,如利用数据库进行存储和分析等。
第4题:
第5题:
关于软件可靠性测试,说法不正确的是______。
A.若对软件可靠性要求很高,那么必须执行软件可靠性测试
B.软件可靠性测试的目标是预测软件在正式运行中的可靠性
C.由于软件可靠性的预测依赖于出错数据的统计,软件在可靠性测试中的运行情况必须完全符合软件的实际运行情况
D.在实施可靠性测试之前必须保证软件已经进行严格的测试
第6题:
试题五(共20分)
阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
软件在机载设备中的运用越来越广泛,驻留于机载设备中的嵌入式软件失效会产生灾难性后果,一般要求其具有较高的可靠性,因此,软件可靠性测试对机载软件至关重要。
【问题1】(8分)
解释软件可靠性的含义及影响软件可靠性的主要因素。
【问题2】(6分)
可靠性评价时,经常使用的定量指标包括失效概率、可靠度和平均无失效时间(MTTF),请分别解释其含义。
【问题3】(6分)
对某嵌入式软件,设计要求其可靠度为1000小时无失效概率99.99%。经实测得出其失效概率函数F(1000)=0.0012,问该软件是否符合设计可靠性要求,并说明原因。
试题分析
【问题1】
可靠性是指产品在规定的条件下和规定的时间内完成规定功能的能力或者在指定条件下使用时,软件产品维持规定的性能级别的能力
从技术的角度来看,影响软件可靠性的主要因素如下:
运行剖面(环境):软件可靠性的定义是相对运行环境而言的,一样的软件在不同的运行剖面下,其可靠性的表现是不一样的
软件规模:也就是软件的大小,一个只有数十行代码的软件和几千行代码的软件是不能相提并论的
软件内部结构:结构对软件可靠性的影响主要取决于软件结构的复杂程度,一般来说,内部结构越复杂的软件,所包含的软件缺陷数就可能越多
软件的开发方法和开发环境:软件工程表明,软件的开发方法对软件的可靠性有显著影响,例如,与非结构化方法相比,结构化方法可以明显减少软件的缺陷数
软件的可靠性投入:软件在生命周期中可靠性的投入包括开发者在可靠性设计、可靠性管理、可靠性测试、可靠性评价等方面投入的人力、资金、资源和时间等。经验表明,在早期重视软件可靠性并采取措施开发出来的软件,可靠性有明显的提高
【问题2】
失效概率:软件从运行开始,到某一个时刻为止,出现失效的概率。如果将失效的概率看作关于软件运行时间的一个随机函数,用F(t)表示。函数F(t)具有如下特征:F(0)=0,即软件运行初始时刻失效概率为0;F(t)在时间域(0,+∞)上是单调递增的;F(+∞)=1,即失效概率在运行时间不断增长时趋向于1
可靠度:是软件系统在规定的条件下,规定的时间内不发生失效的概率。如果用F(t)来表示到t时刻为止,软件不出现失效的概率,则可靠度的公式为R(t)=1-F(t)
平均无失效时间(MTTF):是软件运行后,到下一次出现失效的平均时间。通常平均无失效时间更能直观地表明一个软件的可靠程度
【问题3】
不符合设计要求,题干中要求无1000小时无失效概率为99.99%。依据公式R(t)=1-F(t)可以得出实际的R(t)=1-0.0012=99.88%,实际的无失效概率99.88%要低于设计要求的99.99%
试题答案
【问题1】
可靠性是指产品在规定的条件下和规定的时间内完成规定功能的能力或者在指定条件下使用时,软件产品维持规定的性能级别的能力
从技术的角度来看,影响软件可靠性的主要因素如下:
运行剖面(环境);软件规模;软件内部结构;软件的开发方法和开发环境;软件的可靠性投入
【问题2】
失效概率:软件从运行开始,到某一个时刻为止,出现失效的概率
可靠度:是软件系统在规定的条件下,规定的时间内不发生失效的概率
平均无失效时间(MTTF):是软件运行后,到下一次出现失效的平均时间。通常平均无失效时间更能直观地表明一个软件的可靠程度
【问题3】
不符合设计要求,题干中要求无1000小时无失效概率为99.99%。依据公式R(t)=1-F(t)可以得出实际的R(t)=1-0.0012=99.88% < 99.99%
第7题:
以下关于软件可靠性测试的说法中,正确的是______。
A.定义软件运行剖面是软件可靠性测试的重要步骤
B.软件可靠性测试使用的测试用例应该满足分支覆盖
C.软件可靠性测试可以在单元测试中实施
D.软件可靠性预测模型的作用是指导软件可靠性测试中的测试用例生成
第8题:
试题四 论软件可靠性评价
软件可靠性评价是指选用和建立合适的可靠性数学模型,运用统计技术和其他手段,对软件可靠性测试和系统运行期间的软件失效数据(也可能包含软件生命周期内其他可靠性数据)进行处理,并评估和预测软件可靠性的过程。
软件可靠性评价是软件可靠性活动的重要组成部分,既可在软件开发过程实施,也可针对最终软件系统实施。软件可靠性评价的难点在于软件可靠性模型的选择和软件可靠性数据的收集与处理。
请围绕“软件可靠性评价”论题,依次从以下三个方面进行论述。
1. 简要概述你参与实施的软件开发项目以及你承担的主要工作。
2. 说明你在项目实施过程中所选择的软件可靠性模型, 并论述在软件可靠性模型选择时应该考虑的主要因素。
3. 收集软件可靠性数据时经常遇到的问题有哪些?简述你收集软件可靠性数据时所遇到的具体问题及解决的方法。
第9题:
第10题: