问答题论软件可靠性评价 软件可靠性评价是指选用和建立合适的可靠性数学模型,运用统计技术和其他手段,对软件可靠性测试和系统运行期间的软件失效数据(也可能包含软件生命周期内其他可靠性数据)进行处理,并评估和预测软件可靠性的过程。 软件可靠性评价是软件可靠性活动的重要组成部分,既可在软件开发过程实施, 也可针对最终软件系统实施。软件可靠性评价的难点在于软件可靠性模型的选择和软 件可靠性数据的收集与处理。 请围绕"软件可靠性评价"论题,依次从以下3个方面进行论述: ①简要概述你参与实施的软件开发项目及你承担的主要

题目
问答题
论软件可靠性评价 软件可靠性评价是指选用和建立合适的可靠性数学模型,运用统计技术和其他手段,对软件可靠性测试和系统运行期间的软件失效数据(也可能包含软件生命周期内其他可靠性数据)进行处理,并评估和预测软件可靠性的过程。 软件可靠性评价是软件可靠性活动的重要组成部分,既可在软件开发过程实施, 也可针对最终软件系统实施。软件可靠性评价的难点在于软件可靠性模型的选择和软 件可靠性数据的收集与处理。 请围绕"软件可靠性评价"论题,依次从以下3个方面进行论述: ①简要概述你参与实施的软件开发项目及你承担的主要工作。 ②说明你在项目实施过程中所选择的软件可靠性模型,并论述在软件可靠性模型选择时应该考虑的主要因素。 ③收集软件可靠性数据时经常遇到的问题有哪些?简述你收集软件可靠性数据时所遇到的具体问题及解决的方法。

相似考题
参考答案和解析
正确答案: 写作要点
①说明软件开发项目的基本情况及自己承担的主要工作。
②当前的软件可靠性模型众多,但并没有一个最好的或者可以适用所用软件系统的软件可靠性模型,因此对于不同的软件系统,出于不同的可靠性分析目的,需要选择合适的软件可靠性模型。
常见的10类软件可靠性模型有种子法模型、失效率类模型、曲线拟合类模型、可靠性增长模型、程序结构分析模型、输入域分类模型、执行路径分析方法模型、非齐次泊松过程模型、马尔可夫过程模型和贝叶斯分析模型。
软件可靠性模型的选择主要需要考虑以下4个方面:
模型假设的适用性:模型假设是可靠性模型的基础,模型假设需要符合软件系统的现有状况,在软件系统中与假设冲突的因素达到几乎不存在的程度。
往往一个模型的假设有很多,需要在选择模型时对每一条假设进行分析,评估现有软件系统中不符合假设的因素对可靠性评价有多大影响,以确定模型是否符合软件系统的可靠性评价工作。
模型预测的能力与质量:预测的能力和质量是指模型根据现在和历史的可靠性数据,预测将来的可靠性和失效概率的能力,以及预测结果的准确程度。
因此,应尽可能选择比较成熟的、应用较广的模型。
模型输出值能否满足可靠性评价需求:根据可靠性测试目的来确定哪些模型的输出值满足可靠性评价需求。重要的可靠性定量指标包括当前可靠度、平均无失效时间、故障密度、期望达到规定可靠性目标的日期、达到规定可靠性目标的成本要求等。
模型使用的简便性:模型使用的数据在软件系统中易于收集;模型应该简单、易懂;模型应该便于使用,最好有工具支持。
三、软件可靠性数据的收集是一项艰巨而又烦琐的工作,受到许多潜在因素的影响和制约。常见的问题如下:
可靠性数据规范不一致,对软件进行度量的定义混乱。
数据收集过程存在于整个软件生命周期,但由于成本等因素,其连续性往往不能保证。
缺乏有效的技术和工具支持,难以进行自动分析。
数据完整性不能保证,收集到的数据大多数是不完全的。
数据质量和准确性不能保证。
缺乏可靠性数据的交流与共享。
考生应叙述在项目中遇到了上述中的哪些问题。
可供采用的解决方法主要有:
尽早确定可靠性模型,明确需要搜集的可靠性数据,确定涉及的术语、记录方法等。
制订可实施的可靠性数据搜集计划,并指定专人负责。保证数据的收集和验证与软件开发过程同步进行。
重视软件测试特别是可靠性测试产生的测试结果的整理和分析。
尽可能地利用工具进行收集工作,如利用数据库进行存储和分析等。
解析: 暂无解析
更多“问答题论软件可靠性评价 软件可靠性评价是指选用和建立合适的可靠性数学模型,运用统计技术和其他手段,对软件可靠性测试和系统运行期间的软件失效数据(也可能包含软件生命周期内其他可靠性数据)进行处理,并评估和预测软件可靠性的过程。 软件可靠性评价是软件可靠性活动的重要组成部分,既可在软件开发过程实施, 也可针对最终软件系统实施。软件可靠性评价的难点在于软件可靠性模型的选择和软 件可靠性数据的收集与处理。 请围绕"软件可靠性评价"论题,依次从以下3个方面进行论述: ①简要概述你参与实施的软件开发项目及你承担的主要”相关问题
  • 第1题:

    试题四 论软件可靠性评价

    软件可靠性评价是指选用和建立合适的可靠性数学模型,运用统计技术和其他手段,对软件可靠性测试和系统运行期间的软件失效数据(也可能包含软件生命周期内其他可靠性数据)进行处理,并评估和预测软件可靠性的过程。

    软件可靠性评价是软件可靠性活动的重要组成部分,既可在软件开发过程实施,也可针对最终软件系统实施。软件可靠性评价的难点在于软件可靠性模型的选择和软件可靠性数据的收集与处理。

    请围绕“软件可靠性评价”论题,依次从以下三个方面进行论述。

    1. 简要概述你参与实施的软件开发项目以及你承担的主要工作。

    2. 说明你在项目实施过程中所选择的软件可靠性模型, 并论述在软件可靠性模型选择时应该考虑的主要因素。

    3. 收集软件可靠性数据时经常遇到的问题有哪些?简述你收集软件可靠性数据时所遇到的具体问题及解决的方法。


    正确答案:
    写作要点
    一、说明软件开发项目的基本情况以及自己承担的主要工作。
    二、当前的软件可靠性模型众多,但并没有一个最好的或者可以适用所用软件系统的软件可靠性模型,因此对于不同的软件系统,出于不同的可靠性分析目的,需要选择合适的软件可靠性模型。
     常见的10类软件可靠性模型有种子法模型、失效率类模型、曲线拟合类模型、可靠性增长模型、程序结构分析模型、输入域分类模型、执行路径分析方法模型、非齐次泊松过程模型、马尔可夫过程模型和贝叶斯分析模型。
    软件可靠性模型的选择主要需要考虑以下4个方面:
    1. 模型假设的适用性:模型假设是可靠性模型的基础,模型假设需要符合软件系统的现有状况,在软件系统中与假设冲突的因素达到几乎不存在的程度。往往一个模型的假设有很多,需要在选择模型时对每一条假设进行分析,评估现有软件系统中不符合假设的因素对可靠性评价有多大影响,以确定模型是否符合软件系统的可靠性评价工作。
    2. 模型预测的能力与质量:预测的能力和质量是指模型根据现在和历史的可靠性数据,预测将来的可靠性和失效概率的能力,以及预测结果的准确程度。因此,应尽可能选择比较成熟的、应用较广的模型。
    3. 模型输出值能否满足可靠性评价需求:根据可靠性测试目的来确定哪些模型的输出值满足可靠性评价需求。重要的可靠性定量指标包括:当前可靠度、平均无失效时间、故障密度、期望达到规定可靠性目标的日期、达到规定可靠性目标的成本要求等。
    4. 模型使用的简便性:模型使用的数据在软件系统中易于收集;模型应该简单易懂;模型应该便于使用,最好有工具支持。
    三、软件可靠性数据的收集是一项艰巨而又繁琐的工作,受到许多潜在因素的影响和制约。常见的问题有:
    (1)可靠性数据规范不一致,对软件进行度量的定义混乱;
    (2)数据收集过程存在于整个软件生命周期,但由于成本等因素,其连续性往往不能保证;
    (3)缺乏有效的技术和工具支持,难以进行自动分析;
    (4)数据完整性不能保证,收集到的数据大多数是不完全的;
    (5)数据质量和准确性不能保证;
    (6)缺乏可靠性数据的交流与共享。
    考生应叙述在项目中遇到了上述中的哪些问题。
    可供采用的解决方法主要有:
    (1)尽早确定可靠性模型,明确需要搜集的可靠性数据,确定涉及的术语、记录方法等;
    (2)制定可实施的可靠性数据搜集计划,并指定专人负责。保证数据的收集和验证与软件开发过程同步进行;
    (3)重视软件测试特别是可靠性测试产生的测试结果的整理和分析;
    (4)尽可能地利用工具进行收集工作,例如利用数据库进行存储和分析等。

  • 第2题:

    试题四 论软件可靠性设计与应用

    目前在企业中,以软件为核心的产品得到了广泛的应用。随着系统中软件部分比例的不断增加,使得系统对软件的依赖性越来越强,对软件的可靠性要求也越来越高。软件可靠性与其它质量属性一样,是衡量软件架构的重要指标。 软件工程中已有很多比较成熟的设计技术,如结构化设计、模块化设计、自顶向下设计等,这些技术为保障软件的整体质量发挥了重要作用。在此基础上,为了进一步提高软件的可靠性,通常会采用一些特殊的设计技术,即软件可靠性设计技术。 在软件可靠性工程体系中,包含有可靠性模型与预测、可靠性设计和可靠性测试方法等。实践证明,保障软件可靠性最有效、最经济、最重要的手段是在软件设计阶段采取措施进行可靠性控制。

    请围绕“软件可靠性设计与应用”论题,依次从以下三个方面进行论述。

    1.概要叙述你参与实施的软件开发项目以及你所承担的主要工作。

    2.简要叙述影响软件可靠性的因素有哪些。

    3.阐述常用的软件可靠性设计技术以及你如何应用到实际项目中,效果如何。


    正确答案:


    试题四 写作要点
        一、论文中要具体介绍项目的总体需求(特别是可靠性需求)、采用的技术等内容和承担的实际工作。
        二、影响软件可靠性的主要因素有:运行环境(软件可靠性的定义是相对于运行环境的);软件规模;软件内部结构(内部结构越复杂,包含的缺陷数就可能越多);软件的开发方法和开发环境;软件的可靠性投入等。
        三、可靠性设计是在常规的软件设计中,应用各种方法和技术使程序设计在兼顾用户功能和性能需求的同时,全面满足软件的可靠性要求。软件可靠性设计技术就是以提高和保障软件的可靠性为目的,在软件设计阶段运用的一种特殊的设计技术。
        主要的软件可靠性设计技术包括:
        (1)容错设计技术。对于软件失效后果特别严重的场合,例如宇航器控制系统、空中交通控制和核反应堆控制系统等,可采用容错设计方法。常用的软件容错技术主要有恢复块设计、N版本程序设计和冗余设计。恢复块设计就是选择一组操作作为容错设计单元,从而把普通的程序块变为恢复块。一个恢复块中包含有若干功能相同、设计差异的程序块,每一时刻有一个程序块处于运行状态,一旦某程序块出现故障,则用备份程序块予以替换。N版本程序设计的核心是通过设计出多个模块或不同版本,对于相同初始条件和相同输入的操作结果进行多数表决(防止因其中某一软件模块/版本的故障而提供了错误的服务,以实现软件容错)。冗余设计的思路来源于硬件系统,但有所不同。软件冗余设计技术是采用多种不同路径、不同算法或不同实现方法的模块或系统作为备份,在出现故障时进行替换,维持系统的正常运行。
    (2)检测技术。在无须在线容错或不能采用冗余设计技术的部分,但又有较高的可靠性要求时,一般采用检测性设计,在软件出现故障后能及时发现并报警。但其明显的缺点是不能自动解决故障,如果没有人工干预,最终将导致系统不能正常运行。
    (3)降低复杂度设计。软件的复杂性与软件可靠性有密切关系。软件复杂性是产生软件缺陷的重要根源。降低复杂度设计的思想就是在保证实现软件功能基础上,简化软件结抅。

  • 第3题:

    以下关于软件可靠性测试的说法中.正确的是

    A.软件可靠性测试总是能比白盒测试发现更多的错误

    B.软件可靠性测试总是能比黑盒测试发现更多的错误

    C.软件可靠性测试不关注与软件性能有关的软件故障

    D.软件可靠性测试度量出来的软件可靠性特定于所定义的软件运行剖面


    正确答案:D

  • 第4题:

    软件具体评价包括。()。

    A.软件性能评价

    B.软件可靠性评价

    C.软件运行评价

    D.响应时间


    参考答案:ABCD

  • 第5题:

    论软件的可靠性设计

    现代军事和商用系统中,随着系统中软件成分的不断增加,系统对软件的依赖性越来越强。软件可靠性已成为软件设计过程中不可或缺的重要组成部分。实践证明,保障软件可靠性最有效、最经济、最重要的手段是在软件设计阶段采取措施进行可靠性控制,由此提出了可靠性设计的概念。可靠性设计就是在常规的软件设计中,应用各种方法和技术,使程序设计在兼顾用户的功能和性能需求的同时,全面满足软件的可靠性要求。

    请以“软件的可靠性设计”为题,依次从以下三个方面进行论述。 1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。 2.简要说明目前比较主流的软件可靠性设计技术,结合项目实际情况,阐述所选择的可靠性设计技术及其原因。 3.结合你具体参与管理和开发的实际项目,举例说明所选取的软件可靠性技术的具体实施过程,并详细分析实施效果。


    正确答案:
    可靠性设计是架构考试中反复考查的一个知识点。
    本文第一部分应花400-600字的篇幅进行项目简介,涉及项目背景、规模、人员、作者的角色,开发的系统有什么样的一些功能,大体的设计。
    接下来介绍主流的软件可靠性设计技术,常见的可靠性设计技术有容错设计、检错设计、降低复杂度设计等技术。
    容错设计技术:对于软件失效后果特别严重的场合,如飞机的飞行控制系统、空中交通管制系统等,采用容错设计技术。常见的容错设计技术有三种:恢复块设计、N版本程序设计和冗余设计。
    恢复块设计:选择一组软件操作作为容错设计单元,把普通的程序块变成恢复块。一个恢复块包含有若千个功能相同、设计差异的程序块文本,一个运行文本,多个备份文本,构成“动态冗余”,一旦运行文本出现故障,则用备份文本替换。软件容错的恢复块方法就是使软件包含有一系列恢复块。
    N版本程序设计:N版本程序的核心是通过设计出多个模块或不同版本,对于相同初始条件和相同输入的操作结果,实现多数表决,防止其中某一软件模块/版本的故障提供错误的服务,以实现软件容错。
    冗余设计:在一套完整的软件系统之外,设计一种不同路径、不同算法或不同实现方法的模块或系统作为备份,在出现故障时可以使用冗余的部分进行替换,从而维持软件系统的正常运行。缺点是费用和资源的消耗会有所增加。
    检错技术:在软件系统中,无需在线容错的地方,或不能采用冗余设计技术的部分,如果对可靠性要求较高,故障有可能导致严重的后果时,一般采用检错技术,在软件出现故障后能及时发现并报警,其缺点是不能自动解决故障。
    降低复杂度设计:软件复杂性与软件可靠性有着密切的关系,是产生软件缺陷的重要根源。在设计时考虑降低软件的复杂性,是提高软件可靠性的有效方法。降低复杂度设计的思想是在保证实现软件功能的基础上,简化软件结构,缩短程序代码,优化软件数据流向,降低软件复杂度,从而提高软件可靠性。
    注意在结合项目进行论述时,只要论述其中的2-3个方面即可。

  • 第6题:

    以下关于软件可靠性测试的说法中,正确的是______。

    A.定义软件运行剖面是软件可靠性测试的重要步骤

    B.软件可靠性测试使用的测试用例应该满足分支覆盖

    C.软件可靠性测试可以在单元测试中实施

    D.软件可靠性预测模型的作用是指导软件可靠性测试中的测试用例生成


    正确答案:A
    解析:软件可靠性测试过程包括五个步骤:①确定可靠性目标;②定义软件运行剖面;③设计测试用例;④实施可靠性测试;⑤分析测试结果。所以说定义软件运行剖面是软件可靠性测试的重要步骤,故选项A正确。

  • 第7题:

    关于软件可靠性测试,说法不正确的是______。

    A.若对软件可靠性要求很高,那么必须执行软件可靠性测试

    B.软件可靠性测试的目标是预测软件在正式运行中的可靠性

    C.由于软件可靠性的预测依赖于出错数据的统计,软件在可靠性测试中的运行情况必须完全符合软件的实际运行情况

    D.在实施可靠性测试之前必须保证软件已经进行严格的测试


    正确答案:A

  • 第8题:

    根据GB/T 14394-2008 《计算机软件可靠性和可维护性管理》,在软件生命周期的测试阶段,为强调软件可靠性和可维护性要求,需要完成的活动是 ( ) 。

    A.建立合适的软件可靠性测试环境
    B.分析和确定可靠性和可维护性的具体设计目标
    C.编写测试阶段的说明书,明确测试阶段的具体要求
    D.提出软件可靠性和可维护性分解目标、要求及经费

    答案:A
    解析:
    根据GB/T 14394-2008 《计算机软件可靠性和可维护性管理》中“4.1.3.5在测试活动中的可靠性和可维护性管理要求”:在软件配置度测试和系统集成测试阶段,建立适当的软件可靠性测试环境,组织分析测试和测量的数据,验证软件可靠性和可维护性的实现,进行风险分析,决定交付时机。

  • 第9题:

    以下关于软件可靠性管理的叙述中,不正确的是( )

    A.在需求分析阶段确定软件的可靠性目标
    B.在设计阶段进行可靠性评价
    C.在测试阶段进行可靠性测试
    D.在实施阶段收集可靠性数据

    答案:B
    解析:
    本题考查软件可靠性管理的基础知识。软件可靠性管理在设计阶段进行可靠性设计,实施阶段进行可靠性评价。故正确答案为B

  • 第10题:

    以下关于软件可靠性管理的叙述中,不正确的是( )。

    A.在需求分析阶段确定软件的可靠性目标
    B.在设计阶段进行可靠性评价
    C.在测试阶段执行可靠性测试
    D.在实施阶段收集可靠性数据

    答案:B
    解析:

  • 第11题:

    论高可靠性系统中软件容错技术的应用 容错技术是当前计算机领域研究的热点之一,是提高整个系统可靠性的有效途径,许多重要行业(如航空、航天、电力、银行等)对计算机系统提出了高可靠、高可用、高安全的要求,用于保障系统的连续工作,当硬件或软件发生故障后,计算机系统能快速完成故障的定位与处理,确保系统正常工作。 对于可靠性要求高的系统,在系统设计中应充分考虑系统的容错能力。通常,在硬件配置上采用了冗余备份的方法,以便在资源上保证系统的可靠性。在软件设计上,主要考虑对错误(故障)的过滤、定位和处理,软件的容错算法是软件系统需要解决的关键技术,也是充分发挥硬件资源效率,提高系统可靠性的关键。 请围绕"高可靠性系统中软件容错技术的应用"论题,依次从以下3个方面进行论述: ①简述你参与设计和开发的、与容错相关的软件项目及你所承担的主要工作。 ②具体论述你在设计软件时,如何考虑容错问题,采用了哪几种容错技术和方法。 ③分析你所采用的容错方法是否达到系统的可靠性和实时性要求。


    正确答案: 软件容错的主要目的是提供足够的冗余信息和算法程序,使系统在实际运行时能够及时发现程序设计错误,采取补救措施,以提高软件可靠性,保证整个计算机系统的正常运行。
    软件容错技术主要有恢复块方法和N版本程序设计,另外还有防卫式程序设计等。
    在进行本文的写作时,要注意以下几个方面:
    ①项目的概述,包括软件项目的功能与性能要求、软件整体结构、硬件环境描述:在项目中对容错的具体要求;所承担的工作内容。
    ②作为容错技术,主要考虑4种冗余:硬件冗余、软件冗余、信息冗余和时间冗余。但作为一个具体软件系统,往往会采用多种技术去实现,这里应给出具体实现方法。
    ③对自己采用的容错技术的结果进行系统的可靠性分析。主要说明以下几点:
    通过容错技术实施,系统整个项目达到了几余度(如两余度、四余度、六余度)。
    给出本软件的可靠性指标。
    分析出软件容错的实时性指标,如恢复时间、重组合(或称重构)时间。

  • 第12题:

    问答题
    论软件可靠性设计与应用 目前在企业中,以软件为核心的产品得到了广泛的应用。随着系统中软件部分比例的不断增加,使得系统对软件的依赖性越来越强,对软件的可靠性要求也越来越高。软件可靠性与其他质量属性一样,是衡量软件架构的重要指标 软件工程中已有很多比较成熟的设计技术,如结构化设计、模块化设计、自顶向下设计等,这些技术为保障软件的整体质量发挥了重要作用。在此基础上,为了进一步提高软件的可靠性,通常会采用一些特殊的设计技术,即软件可靠性设计技术。 在软件可靠性工程体系中,包含有可靠性模型与预测、可靠性设计和可靠性测试方法等。实践证明,保障软件可靠性最有效、最经济、最重要的手段是在软件设计阶段采取措施进行可靠性控制。 请围绕"软件可靠性设计与应用"论题,依次从以下3个方面进行论述。 ①概要叙述你参与实施的软件开发项目及你所承担的主要工作。 ②简要叙述影响软件可靠性的因素有哪些。 ③阐述常用的软件可靠性设计技术及你如何应用到实际项目中,效果如何。

    正确答案: 这是一道关于软件可靠性设计的试题,主要考查影响软件可靠性的因素及软件可靠性设计技术和应用。本题需要特别注意的一点是:文章不能以"系统可靠性设计与应用"为主线组织内容。"系统可靠性设计"与"软件可靠性设计"的区别在于:系统可靠性包括了系统硬件的可靠性和系统软件的可靠性。
    软件的可靠性设计技术主要有:恢复块方法、N版本程序设计、防卫式程序设计。
    解析: 暂无解析

  • 第13题:

    ( 13 )下列关于软件可靠性测试的说法中,错误的是

    A )发现软件缺陷是软件可靠性测试的主要目的

    B )软件可靠性测试通常用于有可靠性要求的软件

    C )在一次软件可靠性测试中,执行的测试用例必须完全符合所定义的软件运行剖面

    D )可靠性测试通常要对测试结果进行分析才能获得测试结论


    正确答案:A


  • 第14题:

    软件可靠性测试过程的正确顺序为______。

    A) 定义软件运行剖面、设计测试用例、确定可靠性目标、实施可靠性测试、分析测试结果

    B) 确定可靠性目标、定义软件运行剖面、设计测试用例、实施可靠性测试、分析测试结果

    C) 设计测试用例、定义软件运行剖面、确定可靠性目标、实施可靠性测试、分析测试结果

    D) 确定可靠性目标、设计测试用例、定义软件运行剖面、实施可靠性测试、分析测试结果

    A.

    B.

    C.

    D.


    正确答案:B

  • 第15题:

    论软件可靠性设计技术的应用

    随着软件的日益普及,系统中软件成分不断增加,使得系统对软件的依赖越来越强。

    软件的可靠性对系统可靠性的影响越来越大。而实践证明,保障软件可靠性最有效、最经济、最重要的手段是在软件设计阶段采取措施进行可靠性控制,为此提出了软件可靠性设计的概念。

    软件可靠性设计就是在常规的软件设计中,应用各种方法和技术,使软件设计在兼顾用户功能和性能需求的同时,全面满足软件的可靠性要求。软件可靠性设计应和软件的常规设计紧密结合,贯穿于软件设计过程的始终。

    请围绕“论软件可靠性设计技术的应用”论题,依次从以下三个方面进行论述。

    1.概要叙述你参与管理和开发的软件项目以及你在其中所承担的主要工作。

    2.结合项目实际,论述你在项目开发过程中,进行软件可靠性设计时遵循的基本原则;论述你在该项目中所采用的具体可靠性设计技术。

    3.阐述你在具体的可靠性设计工作中,为了分析影响软件可靠性的主要因素,所采用的可靠性分析方法。

    的多个相关表,业务逻辑层实体数据可以作为业务过程的部分I/O参数传递,业务逻辑层的实体是可序列化的,以保持它们的当前状态。业务逻辑层是实现系统功能的核心组件,采用容器的形式,便于系统功能的开发、代码重用和管理。

    持久层。持久层主要负责数据的持久化存储,主要负责将业务数据存储在文件、数据库等持久化存储介质中。持久层的主要功能是为业务逻辑提供透明的数据访问、持久化、加载等能力。

    三、考生需要结合项目实际情况,举例说明在设计表现层、中间层和持久层时需要考虑的主要问题,例如:在持久层设计时需要考虑MVC模型中的模型、视图和控制器分别对应哪些组件:在中间层设计时需要考虑框架与业务组件之间的关系;在持久层设计时需要考虑如何支持对多种类型数据的透明访问。


    正确答案:

    写作要点

    一、概要论述你参与管理和开发的信息系统项目以及你在其中所承担的主要工作。

    二、结合项目实际,论述你在进行软件可靠性设计时遵循的基本原则,你所采用的具体可靠性设计技术的基本内容。

    可靠性设计需要遵循的原则有:

    1、软件可靠性设计是软件设计的一部分,必须在软件的总体设计框架中使用,并且不能与其他设计原则相冲突。

    2、软件可靠性设计在满足提高软件质量要求的前提下,以提高和保障软件可靠性为最终目标。

    3、软件可靠性设计应确定软件的可靠性目标,不能无限扩大,并且排在功能、用户需求、开发费用之后考虑。

    常见的可靠性设计技术有容错设计、检错设计、降低复杂度设计等技术。

    容错设计技术:对于软件失效后果特别严重的场合,如飞机的飞行控制系统、空中交通管制系统等,采用容错设计技术。常见的容错设计技术有三种:恢复块设计、N版本程序设计和冗余设计。

    恢复块设计:选择一组软件操作作为容错设计单元,把普通的程序块变成恢复块。一个恢复块包含有若千个功能相同、设计差异的程序块文本,一个运行文本,多个备份文本,构成“动态冗余”,一旦运行文本出现故障,则用备份文本替换。软件容错的恢复块方法就是使软件包含有一系列恢复块。

    N版本程序设计:N版本程序的核心是通过设计出多个模块或不同版本,对于相同初始条件和相同输入的操作结果,实现多数表决,防止其中某一软件模块/版本的故障提供错误的服务,以实现软件容错。

    冗余设计:在一套完整的软件系统之外,设计一种不同路径、不同算法或不同实现方法的模块或系统作为备份,在出现故障时可以使用冗余的部分进行替换,从而维持软件系统的正常运行。缺点是费用和资源的消耗会有所增加。

    检错技术:在软件系统中,无需在线容错的地方,或不能采用冗余设计技术的部分,如果对可靠性要求较高,故障有可能导致严重的后果时,一般采用检错技术,在软件出现故障后能及时发现并报警,其缺点是不能自动解决故障。

    降低复杂度设计:软件复杂性与软件可靠性有着密切的关系,是产生软件缺陷的重要根源。在设计时考虑降低软件的复杂性,是提高软件可靠性的有效方法。降低复杂度设计的思想是在保证实现软件功能的基础上,简化软件结构,缩短程序代码,优化软件数据流向,降低软件复杂度,从而提高软件可靠性。

    (结合实际工作,具体解释遵循的原则和采用的一种或多种可靠性设计技术)

    三、阐述你在具体的可靠性设计工作中,为了分析影响软件可靠性的主要因素,所采用的可靠性分析方法。

    在软件可靠性设计之前和软件可靠性设计过程中,都需要采用软件可靠性分析和预|测方法,来确定当前系统中的主要可靠性因素和目标。常见的软件可靠性分析方法包括故障树分析方法、失效模式与效应分析方法等。

    故障树分析方法:一种自顶向下的软件可靠性分析方法,即从软件系统不希望发生的事件(顶事件),特别是对人员和设备的安全及可靠性产生重大影响的事件开始,向下逐步追查导致顶事件发生的原因,直至基本事件(底事件),从而确定软件故障原因的各种可能组合方式和(或)发生概率。基本的步骤是软件故障树的建立、定性分析和定量分析。

    失效模式与效应分析方法:在软件开发阶段的早期,通过识别软件失效模式,分析造成的后果,研究分析各种失效模式产生的原因,寻找消除和减少其有害后果的方法,以便尽早发现潜在的问题,并采取相应的措施,从而提髙软件的可靠性和安全性。SFMEA的分析对象可以是开发早期阶段的高层次的子系统、部件,也可以是详细设计阶段的单元、模块。对于不同的分析对象,其软件失效模式是不同的,采用的SFMEA分析方法也不同,前者采用系统级分析方法(systemFMEA),后者为详细级分析方法(detailedFMEA)。其基本的步骤是系统定义、软件失效模式分析、软件失效原因分析、软件失效影响分析、改进措施分析。

    (结合实际工作,具体阐述自己所采用的一种或多种可靠性分析方法)


  • 第16题:

    论高可靠性系统中软件容错技术的应用

    容错技术是当前计算机领域研究的热点之一,是提高整个系统可靠性的有效途径,许多重要行业(如航空、航天、电力、银行等)对计算机系统提出了高可靠、高可用、高安全的要求,用于保障系统的连续工作,当硬件或软件发生故障后,计算机系统能快速完成故障的定位与处理,确保系统正常工作。

    对于可靠性要求高的系统,在系统设计中应充分考虑系统的容错能力,通常,在硬件配置上,采用了冗余备份的方法,以便在资源上保证系统的可靠性。在软件设计上,主要考虑对错误(故障)的过滤、定位和处理,软件的容错算法是软件系统需要解决的关键技术,也是充分发挥硬件资源效率,提高系统可靠性的关键。

    请围绕“高可靠性系统中软件容错技术的应用”论题,依次从以下三个方面进行论述。

    简述你参与设计和开发的、与容错相关的软件项目以及你所承担的主要工作。


    正确答案:[写作要点] 通过自己所从事的具有容错能力的软件课题应说明以下几点: . 项目的概述包括软件项目的功能与性能要求、软件整体结构、硬件环境描述; . 在项目中对容错的具体要求; . 所承担的工作内容。
    [写作要点] 通过自己所从事的具有容错能力的软件课题,应说明以下几点: . 项目的概述包括软件项目的功能与性能要求、软件整体结构、硬件环境描述; . 在项目中对容错的具体要求; . 所承担的工作内容。

  • 第17题:

    软件可靠性预测的目的是______。

    A) 根据软件在可靠性与测试揭示的故障情况来预测软件在正在运行时的故障和实效情况

    B) 通过受控的软件测试过程来预测软件在实际运行中的可靠性

    C) 通过软件测试揭示软件缺陷并通过修改缺陷来提高软件可靠性

    D) 关注可能导致失效的事件及其失效概率,并计算出各种事件组合导致失效的概率

    A.

    B.

    C.

    D.


    正确答案:A

  • 第18题:

    软件可靠性测试的目的是______。

    A.通过测试揭示软件中的缺陷

    B.修改发现的缺陷

    C.提高软件可靠性

    D.通过受控的软件测试过程来预测软件在实际运行中的可靠性


    正确答案:D

  • 第19题:

    以下关于软件可靠性测试的叙述中,错误的是( )。

    A.软件可靠性测试的目的是评估软件系统的可靠性
    B.软件可靠性测试前应先确定软件可靠性的目标
    C.应平衡地考虑对软件开发进度和成本的影响
    D.应选用适用于所有软件的标准的可靠性测试模型

    答案:D
    解析:
    没有适用于所有软件的标准的可靠性测试模型,主要还是看软件本身的要求。

  • 第20题:

    软件在机载设备中的运用越来越广泛,驻留于机载设备中的嵌入式软件失效会产生灾难性后果,一般要求其具有较高的可靠性,因此,软件可靠性测试对机载软件至关重要。
    解释软件可靠性的含义及影响软件可靠性的主要因素。


    答案:
    解析:
    软件可靠性是在规定的条件下,在规定的时间内,软件不引起系统失效的概率。影响软件可靠性的主要因素包括:运行剖面、软件规模、软件内部结构、软件的开发方法和开发环境、软件的可靠性投入等。
    【解析】
    本题考查软件可靠性知识与应用。
    软件可靠性(software reliability)是软件产品在规定的条件下和规定的时间区间完成规定功能的能力。规定的条件是指直接与软件运行相关的使用该软件的计算机系统的状态和软件的输入条件,或统称为软件运行时的外部输入条件;规定的时间区间是指软件的实际运行时间区间;规定功能是指为提供给定的服务,软件产品所必须具备的功能。软件可靠性不但与软件存在的缺陷和(或)差错有关,而且与系统输入和系统使用有关。软件可靠性的概率度量称软件可靠度。
    现代软件工程认为,质量形成于过程,过程的因素是影响软件可靠性的主要因素。从软件开发的角度,影响软件可靠性的因素有软件规模、运行剖面、软件内部结构、软件可靠性管理、软件可靠性测试与投入、软件可靠性设计技术、软件开发方法与软件开发环境等。一般地,软件规模越大,其可靠性问题就越多。
    失效概率是软件从运行开始到某一时刻t为止,出现失效的概率;
    可靠度是软件系统在规定的条件下,规定的时间内不发生失效的概率;
    平均无失效时间指软件运行后,到下一次出现失效的平均时间。
    软件可靠度R(t)与软件失效概率之间的关系为R(t)=1-F(t),题目中t=1000,F(t)=0.0012,因此R(t)=1-0.0012=0.9988,显然不符合该嵌入式软件设计要求的0.9999无失效概率。

  • 第21题:

    阅读以下说明,回答下列问题。
    [说明]现代软件的飞速发展,使得系统对软件的依赖越来越强,对软件可靠性的要求也越来越来高,因此发展以发现软件可靠性缺陷为目的的可靠性测试技术也日益迫切。
    问题1:一个完整的软件可行性测试如图5-1所示。



    请写出图中(1)~(5)。
    问题2:解释说明软件可靠性测试的目的,并说明狭义和广义软件可靠性测试的区别。
    问题3:可靠性目标是指客户对软件性能满意程度的期望。通常采用失效严重程度、可靠度、故障强度、平均无故障时间等指标来描述。请分别解释其含义。


    答案:
    解析:
    问题1:一个完整的软件可行性测试如图5-2所示。



    (1)确定可靠性目标 (2)可靠性数据 (3)分析可靠性的因素 (4)可靠性模型 (5)可靠性评价
    问题2:可靠性测试的目的可归纳为以下三个方面:
    ①发现软件系统在需求、设计、编码、测试、实施等方面的各种缺陷。
    ②为软件的使用和维护提供可靠性数据。
    ③确认软件是否达到可靠性的定量要求。
    问题3:
    广义的软件可靠性测试是指为了每终评价软件系统的可靠性而运用建模、统计、试验、分析、评价等一系列手段对软件系统实施的一种测试。
    狭义的软件可靠性测试是指为了获取可靠性数据,按预先确定的测试用例,在软件的预期使用环境中,对软件实施的一种测试。狭义的软件可靠性测试也叫"较件可靠性试验(sottwan: reliability test)",它是面向缺陷的测试,以用户将要使用的方式来测试软件,每一次测试代表用户将要完成的一组操作,使测试成为最终产品使用的预演。这就使得所获得的测试数据与软件的宴际运行数据比较接近,可用于软件可靠性评价。
    失效严重程度类就是对用户具有相同程度影响的失效集合。
    可靠度就是软件系统在规定的条件下,规定的时间内不发生失效的概率。
    故障强度是指:以单位运转时间的软件故障停机小时表示停机时间的长短,其表式为:软件故障强度率=100%*软件故障停机小时/软件实际运转时间。
    平均无故障时间(MTTF):全称是Mean Time To Failure,即平均失效时间。系统平均能够正常运行多长时间,才发生一次故障。系统的可靠性越高,平均无故障时间越长。

  • 第22题:

    论软件的可靠性设计
    现代军事和商用系统中,随着系统中软件成分的不断增加,系统对软件的依赖性越来越强。软件可靠性已成为软件设计过程中不可或缺的重要组成部分。实践证明,保障软件可靠性最有效、最经济、最重要的手段是在软件设计阶段采取措施进行可靠性控制,由此提出了可靠性设计的概念。可靠性设计就是在常规的软件设计中,应用各种方法和技术,使程序设计在兼顾用户的功能和性能需求的同时,全面满足软件的可靠性要求。 请围绕“软件的可靠性设计”论题,依次从以下三个方面进行论述。 1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作。 2.简要说明目前比较主流的软件可靠性设计技术,结合项目实际情况,阐述所选择的可靠性设计技术及其原因。 3.结合你具体参与管理和开发的实际项目,举例说明所选取的软件可靠性技术的具体实施过程,并详细分析实施效果。


    答案:
    解析:
    无解析

  • 第23题:

    问答题
    论高可靠性系统中软件容错技术的应用 容错技术是当前计算机领域研究的热点之一,是提高整个系统可靠性的有效途径,许多重要行业(如航空、航天、电力、银行等)对计算机系统提出了高可靠、高可用、高安全的要求,用于保障系统的连续工作,当硬件或软件发生故障后,计算机系统能快速完成故障的定位与处理,确保系统正常工作。 对于可靠性要求高的系统,在系统设计中应充分考虑系统的容错能力。通常,在硬件配置上采用了冗余备份的方法,以便在资源上保证系统的可靠性。在软件设计上,主要考虑对错误(故障)的过滤、定位和处理,软件的容错算法是软件系统需要解决的关键技术,也是充分发挥硬件资源效率,提高系统可靠性的关键。 请围绕"高可靠性系统中软件容错技术的应用"论题,依次从以下3个方面进行论述: ①简述你参与设计和开发的、与容错相关的软件项目及你所承担的主要工作。 ②具体论述你在设计软件时,如何考虑容错问题,采用了哪几种容错技术和方法。 ③分析你所采用的容错方法是否达到系统的可靠性和实时性要求。

    正确答案: 软件容错的主要目的是提供足够的冗余信息和算法程序,使系统在实际运行时能够及时发现程序设计错误,采取补救措施,以提高软件可靠性,保证整个计算机系统的正常运行。
    软件容错技术主要有恢复块方法和N版本程序设计,另外还有防卫式程序设计等。
    在进行本文的写作时,要注意以下几个方面:
    ①项目的概述,包括软件项目的功能与性能要求、软件整体结构、硬件环境描述:在项目中对容错的具体要求;所承担的工作内容。
    ②作为容错技术,主要考虑4种冗余:硬件冗余、软件冗余、信息冗余和时间冗余。但作为一个具体软件系统,往往会采用多种技术去实现,这里应给出具体实现方法。
    ③对自己采用的容错技术的结果进行系统的可靠性分析。主要说明以下几点:
    通过容错技术实施,系统整个项目达到了几余度(如两余度、四余度、六余度)。
    给出本软件的可靠性指标。
    分析出软件容错的实时性指标,如恢复时间、重组合(或称重构)时间。
    解析: 暂无解析