软件工程酒店管理系统

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

7-8 对一个包含10000条机器指令的程序进行一个月集成测试后,总共改正了15个错误,此时MTTF=10h;经过两个月测试后,总共改正了25个错误(第二个月改正10个错误),MTTF=15h。要求:(1) 根据上述数据确定MTTF与测试时间之间的函数关系,画MTTF与测试时间τ的关系曲线。在画这条曲线时做了什么假设?(2) 为做到MTTF=100h,必须进行多长时间的集成测试?当集成测试结束时总共改正了多少个错误,还有多少个错误潜伏在程序中?

答:所做假设:1)单位长度里的错误数近似为常数;2)失效率正比于软件中剩余的错误数,而平均无故障时间与剩余的错误数成反比. 3)发现的每一个错误都立即正确地改正了.

(2)由Shooman公式:MTTF=IT/(K*(ET-EC(T)))IT=104,MTTF1=10,n1=15,MTTF2=15,n2=25。得:MTTF1=IT/(K*(ET-EC(T1))) 10=10000/(K*(ET-15)) MTTF2=IT/(K*(ET-EC(T2)))

15=10000/(K*(ET-25)) 解得程序中固有的错误总数ET=45,此外K=100/3。

(2)设MTTF=100,有100=10000/((100/3)*(45-x))解得x=42。

所以,当集成测试结束时,改正了42个错误,还剩3个错误。

7-9 如对一个长度为100000条指令的程序进行集成测试期间记录下下面的数据:

(a) 7月1日:集成测试开始,没有发现错误。(b) 8月2日:总共改正100个错误,此时MTTF=0.4h(c) 9月1日:总共改正300个错误,此时,MTTF=2h根据上列数据完成下列各题:

(1) 估计程序中的错误总数;(2) 为使MTTF达到10h,必须测试和调试这个程序多长时间?

(3) 画出MTTF和测试时间τ之间的函数关系线。

答:MTTF=IT/(K*(ET-EC(T))) IT=105,MTTF1=0.4,T1=160,n1=100,MTTF2=2,T2=320,n2=300。得:MTTF1=IT/(K*(ET-EC(T1))) 0.4=100000/(K*(ET-100)) MTTF2=IT/(K*(ET-EC(T2)))

2=100000/(K*(ET-300))(1)解得程序中固有的错误总数ET=350,K=1000。

(2)设MTTF=10,有10=100000/(1000*(350-x))解得x=340。由可靠性积累曲线EC(t)=ET(1-exp (-K1t))得:100=350*(1-exp(-160K1))300=350*(1-exp(-320K1))

解得:K=0.01。代入340=350*(1-exp(-K1t))= 350*(1-exp(-0.01t),

得:t=(ln(35))/0.01=356h

2.在测试一个长度为24000条指令的程序时,第一个月由甲、乙两名测试员各自独立测试这个程序。经一个月测试后,甲发现并改正20个错误,使MTTF达到10h。与此同时,乙发现24个错误,其中6个错误甲也发现了。以后由甲一个人继续测试这个程序。问:

(1)刚开始测试时程序中总共有多少个潜藏的错误?

(2)为使MTTF达到60h,必须再改正多少个错误?

(1)本题中采用了分别测试法,可以估算出刚开始测试时程序中错误总数为ET=24*20/6=80

(2)MTTF=1/K[E T/I T-E C(t)/I T]即10=24000/K(80-20)所以K=40因60=24000/40(80-EC(t))

解得:EC(t)=70所以为使平均无故障时间达到60h,共需要改正70个错误,测试员甲和乙分别测试时已经改正了20个错误,因此还需要改正50个错误。

7-8 对一个包含10000条机器指令的程序进行一个月集成测试后,总共改正了15个错误,此时MTTF=10h;经过两个月测试后,总共改正了25个错误(第二个月改正10个错误),MTTF=15h。要求:(1) 根据上述数据确定MTTF与测试时间之间的函数关系,画MTTF与测试时间τ的关系曲线。在画这条曲线时做了什么假设?(2) 为做到MTTF=100h,必须进行多长时间的集成测试?当集成测试结束时总共改正了多少个错误,还有多少个错误潜伏在程序中?

答:所做假设:1)单位长度里的错误数近似为常数;2)失效率正比于软件中剩余的错误数,而平均无故障时间与剩余的错误数成反比. 3)发现的每一个错误都立即正确地改正了.

(2)由Shooman公式:MTTF=IT/(K*(ET-EC(T)))IT=104,MTTF1=10,n1=15,MTTF2=15,n2=25。得:MTTF1=IT/(K*(ET-EC(T1))) 10=10000/(K*(ET-15)) MTTF2=IT/(K*(ET-EC(T2)))

15=10000/(K*(ET-25)) 解得程序中固有的错误总数ET=45,此外K=100/3。

(2)设MTTF=100,有100=10000/((100/3)*(45-x))解得x=42。

所以,当集成测试结束时,改正了42个错误,还剩3个错误。

7-9 如对一个长度为100000条指令的程序进行集成测试期间记录下下面的数据:

(a) 7月1日:集成测试开始,没有发现错误。(b) 8月2日:总共改正100个错误,此时MTTF=0.4h(c) 9

月1日:总共改正300个错误,此时,MTTF=2h根据上列数据完成下列各题:

(1) 估计程序中的错误总数;(2) 为使MTTF达到10h,必须测试和调试这个程序多长时间?

(3) 画出MTTF和测试时间τ之间的函数关系线。

答:MTTF=IT/(K*(ET-EC(T))) IT=105,MTTF1=0.4,T1=160,n1=100,MTTF2=2,T2=320,n2=300。得:MTTF1=IT/(K*(ET-EC(T1))) 0.4=100000/(K*(ET-100)) MTTF2=IT/(K*(ET-EC(T2)))

2=100000/(K*(ET-300))(1)解得程序中固有的错误总数ET=350,K=1000。

(2)设MTTF=10,有10=100000/(1000*(350-x))解得x=340。由可靠性积累曲线EC(t)=ET(1-exp (-K1t))得:100=350*(1-exp(-160K1))300=350*(1-exp(-320K1))

解得:K=0.01。代入340=350*(1-exp(-K1t))= 350*(1-exp(-0.01t),

得:t=(ln(35))/0.01=356h

2.在测试一个长度为24000条指令的程序时,第一个月由甲、乙两名测试员各自独立测试这个程序。经一个月测试后,甲发现并改正20个错误,使MTTF达到10h。与此同时,乙发现24个错误,其中6个错误甲也发现了。以后由甲一个人继续测试这个程序。问:

(1)刚开始测试时程序中总共有多少个潜藏的错误?

(2)为使MTTF达到60h,必须再改正多少个错误?

(1)本题中采用了分别测试法,可以估算出刚开始测试时程序中错误总数为ET=24*20/6=80

(2)MTTF=1/K[E T/I T-E C(t)/I T]即10=24000/K(80-20)所以K=40因60=24000/40(80-EC(t))

解得:EC(t)=70所以为使平均无故障时间达到60h,共需要改正70个错误,测试员甲和乙分别测试时已经改正了20个错误,因此还需要改正50个错误。

鞠躬尽瘁,死而后已。——诸葛亮

相关文档
最新文档