某软件系统无需在线容错,也不能采用冗余设计,如果对可靠性要求较高,故障有可能导致严重后果,一般采用(51)。A.恢复块设计B.N版本程序设计C.检错技术D.降低复杂度设计

题目

某软件系统无需在线容错,也不能采用冗余设计,如果对可靠性要求较高,故障有可能导致严重后果,一般采用(51)。

A.恢复块设计

B.N版本程序设计

C.检错技术

D.降低复杂度设计


相似考题
更多“某软件系统无需在线容错,也不能采用冗余设计,如果对可靠性要求较高,故障有可能导致严重后果,一般 ”相关问题
  • 第1题:

    对于一个具有容错能力的系统,(32)是错误的。

    A.通过硬件冗余来设计系统,可以提高容错能力

    B.在出现一般性故障时,具有容错能力的系统可以继续运行

    C.容错能力强的系统具有更高的可靠性

    D.容错是指允许系统运行时出现错误的处理结果


    正确答案:D
    解析:本题考查的是系统容错的基本知识。容错(Fault Tolerance),确切地说是容故障(Fault),而并非容错误(Error)。指系统在故障存在的情况下不失效,仍然能够正常工作的特性。简单地说,容错就是当由于种种原因在系统中出现了数据、文件损坏或丢失时,系统能够自动将这些损坏或丢失的文件和数据恢复到发生事故以前的状态,使系统能够连续正常运行的一种技术。例如,在双机容错系统中,一台机器出现问题时,另一台机器可以取而代之,从而保证系统的正常运行。在早期计算机硬件不是特别可靠的情况下,这种情形比较常见。现在的硬件虽然较之从前稳定可靠得多,但是对于那些不允许出错的系统,硬件容错仍然是十分重要的途径。计算机系统的容错性通常可以从系统的可靠性、可用性、可测性等方面来衡量。

  • 第2题:

    对于一个具有容错能力的系统,(10)是错误的。

    A.通过硬件冗余来设计系统,可以提高容错能力

    B.在出现一般性故障时,具有容错能力的系统可以继续运行

    C.容错能力强的系统具有更高的可靠性

    D.容错是指允许系统运行时出现错误的处理结果


    正确答案:D
    解析:见公共试题Ⅰ(11)。

  • 第3题:

    某软件系统无需在线容错,也不能采用冗余设计,如果对可靠性要求较高,故障有可能导致严重后果,一般采用( )。

    A.恢复块设计
    B.N版本程序设计
    C.检错技术
    D.降低复杂度设计

    答案:C
    解析:

  • 第4题:

    试题五(共25分)

    阅读以下信息系统可靠性问题的说明,在答题纸上回答问题 1至问题 3。

    【说明】

    某软件公司开发一项基于数据流的软件,其系统的主要功能是对输入数据进行多次分析、处理和加工,生成需要的输出数据。需求方对该系统的软件可靠性要求很高,要求系统能够长时间无故障运行。该公司将该系统设计交给王工负责。王工给出该系统的模块示意图如图5-1所示。王工解释:只要各个模块的可靠度足够高,失效率足够低,则整个软件系统的可靠性是有保证的。

    李工对王工的方案提出了异议。李工认为王工的说法有两个问题:第一,即使每个模块的可靠度足够高,但是整个软件系统模块之间全部采用串联,则整个软件系统的可靠度明显下降。假设各个模块的可靠度均为 0.99,则整个软件系统的可靠度为 0.994≈0.96;第二,软件系统模块全部采用串联结构时,一旦某个模块失效,则意味着整个软件系统失效。

    李工认为, 应该在软件系统中采用冗余技术中的动态冗余或者软件容错的N 版本程序设计技术,对容易失效或者非常重要的模块进行冗余设计,将模块之间的串联结构部分变为并联结构,来提高整个软件系统的可靠性。同时,李工给出了采用动态冗余技术后的软件系统模块示意图,如图5-2所示。

    刘工建议,李工方案中 M1 和 M4 模块没有采用容错设计,但 M1 和 M4 发生故障有可能导致严重后果。因此,可以在M1和M4模块设计上采用检错技术,在软件出现故障后能及时发现并报警,提醒维护人员进行处理。

    注:假设各个模块的可靠度均为0.99。

    【问题 1】(4分)

    在系统可靠性中,可靠度和失效率是两个非常关键的指标,请分别解释其含义。

    【问题 2】(13分)

    请解释李工提出的动态冗余和N 版本程序设计技术,给出图 5-1中模块M2采用图5-2 动态冗余技术后的可靠度。

    请给出采用李工设计方案后整个系统可靠度的计算方法,并计算结果。

    【问题 3】(8分)

    请给出检错技术的优缺点,并说明检测技术常见的实现方式和处理方式。


    正确答案:
    试题五分析本题考查信息系统中可靠性的设计,是比较传统的题目,要求考生细心分析题目中所描述的内容。【问题1】本问题考查信息系统可靠性的两个基本概念:可靠度和失效率。可靠性是指产品在规定的条件下和规定的时间内完成规定功能的能力。考虑到软件本身的复杂性,软件可靠性的定义是:在规定的条件下,在规定的时间内,软件不引起系统失效的概率。在软件可靠性的定量描述中,软件可靠性可以基于使用条件、规定时间、系统输入、系统使用和软件缺陷等变量构建数学表达式,来对软件可靠性进行定量描述。相关概念有规定时间、失效概率、可靠度、失效强度、失效率、平均无失效时间等。其中可靠度是表示可靠性最直接的方式,是软件系统在规定的条件下、规定的实践内不发生失效的概率。而失效率又称风险函数,也可以称为条件失效强度,是指运行至此刻系统未出现失效的情况下,单位时间系统出现失效的概率。【问题2】本问题考查在常规的软件设计中,应用各种方法和技术,使程序设计在兼顾用户功能和性能需求的同时,全面满足软件的可靠性要求。常见的软件可靠性技术主要有容错设计、检错设计和降低复杂度设计等技术。其中,容错设计技术主要有恢复快设计、N版本程序设计和冗余设计三种方法。N版本程序设计是一种静态的故障屏蔽技术,其设计思想是用N个具有相同功能的程序同时执行一项计算,结果通过多数表决来选择。其中N个版本的程序必须由不同的人独立设计,使用不同的方法、设计语言、开发环境和工具来实现,目的是减少N个版本的程序在表决点上相关错误的概率。动态冗余又称为主动冗余,它是通过故障检测、故障定位及故障恢复等手段达到容错的目的。其主要方式是多重模块待机储备,当系统检测到某工作模块出现错误时,就用一个备用的模块来替代它并重新运行。各备用模块在其待机时,可与主模块一样工作,也可以不工作。前者叫热备份系统(双重系统),后者叫冷备份系统(双工系统、双份系统)。计算机系统是一个复杂系统,影像其可靠性的因素很多,很难直接进行可靠性分析,往往需要建立对应的数学模型。组合模型是分析系统可靠性的一种常用方法。组合模型下可靠度的计算方法为:串联系统:R=R1×R2×……×Rn;并联系统:R=1-(1-R1)×(1-R2)×……×(1-Rn);串联和并联混合系统则根据实际情况,灵活运用上述两个计算公式。M2采用动态冗余后,成为并联系统,则其可靠度为:R=1-(1-0.99)3=0.999999。李工给出的方案同时采用了串联和并联方式,其计算方法为首先计算出中间M2和M3两个并联系统的可靠度,再按照串联系统的计算方法计算出整个系统的可靠度。R=0.99*0.999999*0.999999*0.99=0.98【问题3】本问题考查软件可靠性设计中的检错技术。检错技术常见的实现方式有多种,最直接的一种实现方式是判断返回结果,如果返回结果超出正常范围,则进行异常处理;计算运行时间也是一种常用技术,如果某个模块或函数运行时间超过预期时间,可以判断出现故障;还有置状态标志位等多种方法,自检的实现方式需要根据实际情况来选用。检错技术的处理方式也有多种,大多数都采用“查处故障-停止软件运行-报警”的处理方式。但根据故障的不同情况,也有采用不停止或部分停止软件系统运行的情况,这一般由故障是否需要实时处理来决定。检错技术实现的代价一般低于容错技术和冗余技术,但有一个明显的缺点,就是不能自动解决故障,出现故障后如果不进行人工干预,将最终导致软件系统不能正常运行。解答要点【问题1】可靠度就是系统在规定的条件下、规定的时间内不发生失效的概率。失效率又称风险函数,也可以称为条件失效强度,是指运行至此刻系统未出现失效的情况下,单位时间系统出现失效的概率。【问题2】动态冗余又称为主动冗余,它是通过故障检测、故障定位及故障恢复等手段达到容错的目的。其主要方式是多重模块待机储备,当系统检测到某工作模块出现错误时,就用一个备用的模块来替代它并重新运行。各备用模块在其待机时,可与主模块一样工作,也可以不工作。前者叫热备份系统(双重系统),后者叫冷备份系统(双工系统、双份系统)。N版本程序设计是一种静态的故障屏蔽技术,其设计思想是用N个具有相同功能的程序同时执行一项计算,结果通过多数表决来选择。其中N个版本的程序必须由不同的人独立设计,使用不同的方法、设计语言、开发环境和工具来实现,目的是减少N个版本的程序在表决点上相关错误的概率。M2采用动态冗余后的可靠度为:R=1-(1-0.99)3=0.999999李工给出的方案同时采用了串联和并联方式,其计算方法为首先计算出中间M2和M3两个并联系统的可靠度,再按照串联系统的计算方法计算出整个系统的可靠度。R=0.99*0.999999*0.999999*0.99=0.98【问题3】检错技术实现的代价一般低于容错技术和冗余技术,但有一个明显的缺点,就是不能自动解决故障,出现故障后如果不进行人工干预,将最终导致软件系统不能正常运行。检错技术常见的实现方式:最直接的一种实现方式是判断返回结果,如果返回结果超出正常范围,则进行异常处理;计算运行时间也是一种常用技术,如果某个模块或函数运行时间超过预期时间,可以判断出现故障;还有置状态标志位等多种方法,自检的实现方式需要根据实际情况来选用。检错技术的处理方式,大多数都采用“查处故障-停止软件运行-报警”的处理方式。但根据故障的不同情况,也有采用不停止或部分停止软件系统运行的情况,这一般由故障是否需要实时处理来决定。

  • 第5题:

    某软件系统无需在线容错,也不能采用冗余设计,如果对可靠性要求较高,故障有可能导致严重后果,一般采用( )

    A.恢复块设计
    B.N版本程序设计
    C.检错技术
    D.降低复杂度设计

    答案:C
    解析: