阅读以下关于软件项目可行性分析方面的叙述,回答问题1至问题4。某信息技术公司拟开发一套新的信息系统,以提高公司业务运作的效率。按照公司总裁的要求,公司软件开发部系统分析人员张工和李工对新系统方案的各项可行性指标进行分析,重点分析了新系统方案的经济可行性。张工根据财务部门提供的各项数据给出了项目的投资回收表如下表1所示。通过对上面数据进行分析,计算出项目的投资回收期是2.75年。李工对此提出了自己的观点,认为应该基于货币时间价值来计算各项数据,并给出了在贴现率是12%时的投资回收表如下表2所示,其中“***

题目

阅读以下关于软件项目可行性分析方面的叙述,回答问题1至问题4。

某信息技术公司拟开发一套新的信息系统,以提高公司业务运作的效率。按照公司总裁的要求,公司软件开发部系统分析人员张工和李工对新系统方案的各项可行性指标进行分析,重点分析了新系统方案的经济可行性。张工根据财务部门提供的各项数据给出了项目的投资回收表如下表1所示。

通过对上面数据进行分析,计算出项目的投资回收期是2.75年。李工对此提出了自己的观点,认为应该基于货币时间价值来计算各项数据,并给出了在贴现率是12%时的投资回收表如下表2所示,其中“***”表示此处的数据未给出。

大家经过讨论,认为李工给出的投资回收表中的数据更为合理,并将其作为系统方案建议书的部分内容上报公司管理层。

请简要说明系统分析中可行性分析包括哪几个方面,并简要说明其具体含义。


相似考题
更多“ 阅读以下关于软件项目可行性分析方面的叙述,回答问题1至问题4。某信息技术公司拟开发一套新的信息系统,以提高公司业务运作的效率。按照公司总裁的要求,公司软件开发部系统分析人员张工和李工对新系统方案的各项可行性指标进”相关问题
  • 第1题:

    阅读下列说明,回答问题1至问题3。

    【说明】

    某公司希望开展电子商务业务,委托其技术开发部进行网站规划与开发。张工是项目负责人,他在进行项目规划、需求分析、开发与设计过程中,要制定相应的软件测试计划并实施测试。

    软件测试步骤的关系关联图如图14-5所示,请将图中的步骤(1)、(2)补充完整。


    正确答案:(1)单元测试 (2)系统测试
    (1)单元测试 (2)系统测试 解析:本问题考查软件测试的概念。
    总体来说,软件测试过程有4个步骤,即单元测试、集成测试、确认测试和系统测试。单元测试集中对用源代码实现的每个程序单元进行测试,检查各个程序模块是否正确地实现了相应的功能;集成测试是根据软件设计规定的软件体系结构,把已测试过的模块组装起来,检查程序结构的正确性;确认测试是检查已实现的软件是否满足了需求规格说明中所确定的各种软件需求,以及软件配置是否完全、正确;系统测试是把已确认的软件纳入实际运行环境中,与其他系统成分组合在一起进行测试。

  • 第2题:

    A公司是一个专业的航空软件开发公司,当前正在为某用户开发某航空嵌入式实时软件,王工是该软件开发项目的负责人。应用户要求,A公司委托乙公司对其开发的航空软件进行第三方测试。张工是乙公司中该测试项目的负责人。 【问题1】王工在与张工讨论该软件的测试计划时,就软件的测试环境产生了争执。张工认为所有的第三方测试工作都必须在目标机环境下完成,否则无法保证测试的有效性。王工认为开发工作进度很紧,而且开发工作需要频繁占用目标机环境,第三方测试在仿真环境下进行就可以了,没有必要非得在目标机环境下测试。请在200字以内对上述两人意见的正确性进行评价与分析,并简述你对本题目中的测试环境问题的建议。 【问题2】 由于该软件是质量要求很高的航空嵌入式实时软件,在双方就签订该软件第三方测试技术协议进行磋商时,A公司要求乙方的第三方测试结构覆盖率必须达到修正的条件判定覆盖(MC/DC)。请分别简述修正的条件判定覆盖MC/DC与条件判定覆盖 (C/DC)对测试用例集的要求条件,下面给出了一个含有两个判定条件的例子,请说明两种覆盖测试用例集的设计方法。 例子: IF A OR B THEN … … ELSE … … ENDIF 【问题3】 张工的项目组根据王工的项目组提供的软件需求文档和设计文档,严格按照协议要求进行了第三方测试,但是软件交付给用户使用后,仍然出了很多问题,用户对软件质量评价不高。王工认为张工项目组没有很好地进行软件第三方测试,张工觉得并无不妥之处,请对这一状况和原因进行分析。


    答案:
    解析:
    一、试题分析这是一道关于嵌入式系统软件的测试问题的试题,主要涉及到第三方测试相关问题,以及测试用例的设计。【问题1】对于一般商用软件的测试,嵌入式软件测试有其自身的特点和测试困难。在嵌入式开发中,开发环境被认为是主机平台,软件运行环境为目标机平台。如果所有测试都放在目标机上有很多不利的因素,例如:(1)测试软件可能会造成与开发者争夺时间的瓶颈,为了避免这个问题只有提供更多的目标环境。(2)目标机环境可能还不可行。(3)比起主机平台环境,目标机环境通常是不精密的和不方便的。(4)提供给开发者的目标环境和联合开发环境通常是很昂贵的。(5)开发和测试工作可能会妨碍目标机环境已存在持续的应用。一般情况下:(1)所有单元测试在主机环境上进行。(2)软件集成在主机平台上模拟目标机环境运行,当然在目标环境上重复测试也是必须的。(3)所有的系统测试和确认测试必须在目标机环境下执行。【问题2】第2个问题要求比较修正的条件判定覆盖MC/DC与条件判定覆盖(C/DC),并根据给出的例子分别设计测试用例。控制流测试根据程序的内部逻辑结构设计测试用例,常用的技术是逻辑覆盖,即使用测试数据运行被测程序,考察对程序逻辑的覆盖程度。主要的覆盖标准有语句覆盖、判定覆盖、条件覆盖、条件/判定覆盖、条件组合覆盖、修正的条件/判定覆盖和路径覆盖等。(1)语句覆盖。语句覆盖是指选择足够多的测试用例,使得运行这些测试用例时,被测程序的每个语句至少执行一次。很显然,语句覆盖是一种很弱的覆盖标准。(2)判定覆盖。判定覆盖也称为分支覆盖,它是指不仅每个语句至少执行一次,而且每个判定的每种可能的结果(分支)都至少执行一次。判定覆盖比语句覆盖强,但对程序逻辑的覆盖程度仍然不高。(3)条件覆盖。条件覆盖是指不仅每个语句至少执行一次,而且使判定表达式中的每个条件都取得各种可能的结果。条件覆盖不一定包含判定覆盖,判定覆盖也不一定包含条件覆盖。(4)条件/判定覆盖。同时满足判定覆盖和条件覆盖的逻辑覆盖称为判定/条件覆盖。它的含义是,选取足够的测试用例,使得判定表达式中每个条件的所有可能结果至少出现一次,而且每个判定本身的所有可能结果也至少出现一次。(5)条件组合覆盖。条件组合覆盖是指选取足够的测试用例,使得每个判定表达式中条件结果的所有可能组合至少出现一次。显然,满足条件组合覆盖的测试用例,也一定满足判定/条件覆盖。因此,条件组合覆盖是上述5种覆盖标准中最强的一种。然而,条件组合覆盖还不能保证程序中所有可能的路径都至少遍历一次。(6)修正的条件/判定覆盖。修正的条件/判定覆盖需要足够的测试用例来确定各个条件能够影响到包含的判定结果。首先,每个程序模块的入口和出口点都要考虑至少要被调用一次,每个程序的判定到所有可能的结果值要至少转换一次;其次,程序的判定被分解为通过逻辑操作符(and和or)连接的布尔条件,每个条件对于判定的结果值是独立的。(7)路径覆盖。路径覆盖是指选取足够的测试用例,使得程序的每条可能执行到的路径都至少经过一次(如果程序中有环路,则要求每条环路路径至少经过一次)。路径覆盖实际上考虑了程序中各种判定结果的所有可能组合,因此是一种较强的覆盖标准。但路径覆盖并未考虑判定中的条件结果的组合,并不能代替条件覆盖和条件组合覆盖。【问题3】第3个问题的意思是经过了第三方测试后,软件仍然有问题,要求考生回答原因是什么。要注意的一句话:“张工的项目组根据王工的项目组提供的软件需求文档和设计文档,严格按照协议要求进行了第三方测试”,这就说明不是测试本身的问题。既然不是测试本身的问题,那原因是什么呢?第一个可能的原因是,王工提供的文档有问题,或者设计本身有问题;第二个可能的原因是,模拟的测试环境与实际的目标环境存在差异;第三个可能的原因是,软件质量不是靠测试出来的,而是形成于整个软件开发的过程。二、参考答案【问题1】(1)张工和王工的意见都不完全正确。为了节省对目标机环境的争用,测试的很多工作可以在仿真环境下进行;但是为了防止由于仿真环境与目标环境差异带来的测试错误,最终的测试程序必须在目标机环境上重新运行,以查看软件最终在目标环境下的实际运行情况。(2)针对本题所述情况,为了提高开发与测试工作的并行度,张工的项目组可以先在仿真环境下开发和运行测试程序;待王工项目组的代码开发工作完成后,再在目标机环境下完整地运行所有的测试程序。【问题2】(1)对于C/DC,要求测试集满足如下条件:判定中每个条件的真值与假值都至少取一次;同时判定的真值与假值也要求至少取一次。(2)对MC/DC,要求测试集满足如下条件:首先应满足C/DC的测试条件;判定中每个条件的取值都必须独立地影响判定的结果,即在其他条件取值不变的前提下,仅改变这个条件的值,而使判定结果改变。(3)两个判定例子的C/DC测试集设计方法:满足C/DC要求的测试用例集是{TT,FF};说明:因为该测试用例集中,条件A与B分别取了T与F,判定 A OR B,也取了T值(当A=T,B=T时)和F值(当A=F,B=F时)。(4)两个判定例子的MC/DC测试集设计方法:满足MC/DC要求的测试用例集是{FF,TF,FT}说明:C/DC要求的测试用例集是{TT,FF}无法满足MC/DC的要求,条件A与B均没有独立地影响判定的输出结果。【问题3】(1)软件测试的作用是查找软件中存在的问题,但是不能保证软件的正确性。软件正确性需要软件研发的全过程来保证。(2)从本题的情况来看,问题的根源很可能是王工或张工项目组的开发或测试工作中的某些点没有做好,主要原因包括:软件需求规格说明没有全面地反映用户的要求;需求文档和设计文档质量不高;软件代码的质量本身不高,可读性较差;测试用例没有100%覆盖需求;测试和开发人员责任心不够,开发过程控制不到位;软件开发无标准可循,测试人员难以理解。

  • 第3题:

    【说明】阅读下列关于软件开发方法的讨论,回答问题1、问题2和问题3。张工和李工分别是某公司信息系统项目组和系统开发组的负责人。下面是张工与李工讨论信息系统项目组承接的新项目时的对话。张工:我们这次承接的新系统很具有挑战性,在开发过程中不仅要使用一种新的数据库管理系统,用户所给的开发时间也比较短。我担心使用传统的SDLC(软件开发生存周期)方法可能无法按期完成系统开发任务。李工:这个项目有什么特点吗?张工:我不知道用户是否确切地明白他们想要一个怎样的新系统。他们提出了许多要求,但是我不敢确定他们是否真正理解这个新系统的功能。而且,这个系统可能会相当复杂,因为它要与多个已有的系统进行交互。李工:我希望我们有更多使用RAD (Rapid Application Development,快速应用开发)方法的经验。目前你所面临的状况可能比较适合使用这种方法。李工:我希望我们有更多使用RAD (Rapid Application Development,快速应用开发)方法的经验。目前你所面临的状况可能比较适合使用这种方法。张工:我同意。但是这个项目的时限不允许我们去学习运用RAD方法的工具以及即将要使用的新的RDBMS(关系数据库管理系统)。[问题1](8分)用100字以内文字,分析使张工放弃采用传统的SDLC方法的原因。[问题2](9分)用200字以内文字,说明RAD方法的基本思想。[问题3](8分)如果张工采用RAD方法开发该项目,应如何解决对RAD工具不熟悉以及使用新数据库管理系统的问题?用150字以内文字说明。


    答案:
    解析:
    [问题1](8分)(1) 开发时间成为制约软件开发的重要因素。(2) 不明确的用户需求。(3) 必须使用不熟悉的开发技术。[问题2](9分)(1) 让用户更主动地参与到系统分析、设计和构造活动中来。(2) 将项目开发组织成一系列重点突出的研讨会,研讨会要让项目投资方、用户、分析员、设计人员和构造人员一同参与。(3) 通过一种迭代的构造方法加速需求分析和设计阶段。(4) 让用户提前看到一个可工作的系统。[问题3](8分)(1 )张工应尽可能在项目启动之前对项目组的部分成员进行RAD工具和相关技术,以及采用新的RDBMS的培训。(2)可以聘请一个专业顾问来指导项目组使用RAD工具和相关技术。

  • 第4题:

    阅读以下关于嵌入式软件测试方面的叙述,回答问题1至问题3。

    甲公司是一个专业的航空软件开发公司,当前正在为某用户开发某航空嵌入式实时软件,王工是该软件开发项目的负责人。应用户要求,甲公司委托乙公司对其开发的航空软件进行第三方测试。张工是乙公司中该测试项目的负责人。

    王工在与张工讨论该软件的测试计划时,就软件的测试环境产生了争执。张工认为所有的第三方测试工作都必须在目标机环境下完成,否则无法保证测试的有效性。王工认为开发工作进度很紧,而且开发工作需要频繁占用目标机环境,第三方测试在仿真环境下进行就可以了,没有必要非得在目标机环境下测试。请在200字以内对上述两人意见的正确性进行评价与分析,并简述你对本题目中的测试环境问题的建议。


    正确答案:(1)张工和王工的意见都不完全正确。 为了节省对目标机环境的争用测试的很多工作可以在仿真环境下进行;但是为了防止由于仿真环境与目标环境差异带来的测试错误最终的测试程序必须在目标机环境上重新运行以查看软件最终在目标环境下的实际运行情况。 (2)针对本题所述情况为了提高开发与测试工作的并行度张工的项目组可以先在仿真环境下开发和运行测试程序;待王工项目组的代码开发工作完成后再在目标机环境下完整地运行所有的测试程序。
    (1)张工和王工的意见都不完全正确。 为了节省对目标机环境的争用,测试的很多工作可以在仿真环境下进行;但是为了防止由于仿真环境与目标环境差异带来的测试错误,最终的测试程序必须在目标机环境上重新运行,以查看软件最终在目标环境下的实际运行情况。 (2)针对本题所述情况,为了提高开发与测试工作的并行度,张工的项目组可以先在仿真环境下开发和运行测试程序;待王工项目组的代码开发工作完成后,再在目标机环境下完整地运行所有的测试程序。 解析:本题重点考查考生对软件测试技术的掌握程度。作为系统分析员,承担着管理项目和分解项目实施的工作,第三方软件测试是提高软件产品质量的有效手段,因此掌握好软件测试技术,是软件工程师(尤其是项目负责人)必不可少知识。
    问题1主要考查考生在嵌入式软件测试方面如何解决开发和测试对资源需求竞争的问题。通常,根据V字形软件研制过程,用户不可能为测试而专门研制一套目标机,只能依赖真是目标机完成所有测试任务,为了节省对目标机环境的争用,测试的很多工作一般可以在仿真环境下进行。但是,在仿真环境下完成测试工作后,并不代表测试工作的结束,为了防止由于仿真环境与目标环境差异带来的测试错误(此差别永远存在),最终的测试程序必须在目标机环境上重新运行,以查看软件最终在目标环境下的实际运行情况。因此,两者之间缺一不可。在理解了这种现象下,为了提高开发与测试工作的并行度,张工的项目组可以先在仿真环境下开发和运行测试程序;待王工项目组的代码开发工作完成后,再在目标机环境下完整地运行所有的测试程序。
    如果考生从事过嵌入式软件开发和测试工作(尤其是航空软件),应该知道嵌入式软件可根据所依附的嵌入式设备在系统中的失效影响程度,分为多种级别,而不同的软件级别,其测试项要求也不相同。本问题主要考查考生对安全级别较高的软件,对修正的条件判定覆盖(MC/DC)和条件判定覆盖(C/DC)两项测试技术的掌握程度。
    (1)对于C/DC,要求测试集满足如下条件:判定中每个条件的真值与假值都至少取一次;同时判定的真值与假值也要求至少取一次。
    (2)对MC/DC,要求测试集满足如下条件:
    首先应满足C/DC的测试条件。
    判定中每个条件的取值都必须独立地影响判定的结果,即在其他条件取值不变的前提下,仅改变这个条件的值,而使判定结果改变。
    根据上述有关C/DC和MC/DC的测试要求,在所给例子中,A和B的C/DC测试集应是{TT,FF},因为该测试用例集中,条件A与B分别取了T与F,判定A OR B,也取了T值(当A=T,B=T时)和F值(当A=F,B=F时);而A和B的MC/DC测试集是{FF,TF,FT},因为C/DC要求的测试用例集是{TT,FF}无法满足MC/DC的要求,条件A与B均没有独立地影响判定的输出结果。
    问题三主要考查考生对测试工作的看法,这里考生应清楚的是以下几点:软件测试的作用是查找软件中存在的问题,但是不能保证软件的正确性。软件正确性需要软件研发的全过程来保证。
    从本题的情况来看,问题的根源很可能是王工或张工项目组的开发或测试工作中的某些点没有做好,主要原因包括:
    (1)软件需求规格说明没有全面地反应用户的要求。
    (2)需求文档和设计文档质量不高。
    (3)软件代码的质量本身不高,可读性较差。
    (4)测试用例没有100%覆盖需求。
    (5)测试和开发人员责任心不够,开发过程控制不到位。
    (6)软件开发无标准可循,测试人员难以理解。
    等等。

  • 第5题:

    阅读以下关于软件系统可行性分析的叙述,在答题纸上回答问题1至问题3。【说明】某软件开发企业受对外贸易公司委托开发一套跨境电子商务系统,项目组从多个 方面对该电子商务系统进行了可行性分析,在项目组给出的可行性分析报告中,对项目的成本、收益情况进行了说明:建设投资总额为300万元,建设期为1年,运营期为4年,该方案现金流量表如表1-1所示。【问题1】(12分)软件系统可行性分析包括哪几个方面?用200以内文字说明其含义。


    答案:
    解析:
    【问题1】(12分)答案:系统可行性分析包括以下个方面:(1)经济可行性。主要评估项目的建设成本、运行成本和项目建成后可能的经济收益。(2)技术可行性。研究的对象是信息系统需要实现的功能和性能,以及技术能力约束。(3)法律可行性。具有比较广泛的内容,它需要从政策、法律、道德、制度等社会因素来论证信息系统建设的现实性。(4)用户使用可行性。从信息系统用户的角度来评估系统的可行性,包括企业的行政管理和工作制度、使用人员的素质和培训要求等。【问题2】(7分)