软件需求分析与设计复习题

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

软件需求分析与设计复习题

一.判断

1、( × ) 程序设计语言种类很多,在进行软件开发时可以随便选择一种语言进行编码。

2. ( x ) 软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。

3、(× ) 在软件开发的各个阶段进行过程中,增加人员肯定会对整个项目提前完成有好处。

4.( x ) 好的测试用例应能证明软件是正确的。

5.( x ) 软件功能测试的测试用例主要是由需求阶段的功能说明部分转化而来。

6、( x ) CoCoMo模型可以用来估算系统的工作量和软件开发所需时间。

7.( x ) 有时为了测试的方便,而可以局部地修改软件系统。

8、( v ) OOA方法的核心思想是利用面向对象的概念和方法为软件需求建造模型,大致步骤是识别对象(属性和方法),识别类及其结构,定义对象之间的消息传递等。

9.( x ) 面向对象方法更适合于软件重用的根本原因在于它是软部件唯一的合成技术。

10、( v ) 系统需求分析员应该具有开发软、硬件系统的经验并且了解用户领域的知识。

11.( x ) 在软件的生命周期中,工作量最大的一个阶段就是编写程序。

12、( x )软件运行正确,可见软件中没有缺陷(fault)。

13.( x ) RUP(Rational Unified Process:统一软件过程)本质上是轻量级的软件过程规范。

14、( v )软件失败(failure)在系统交付之前和交付之后都可能被发现。

15.( x ) 基准测试(benchmark test)是非正式的用户确认和验收测试。

16、( x )开发人员和客户对软件质量因素的认可是完全一致的。

17.( x ) UML语言支持面向对象的主要概念,并与具体的开发过程相关。

18、( v )里程碑(milestone)就是开发过程中的某个活动(activity)。

19.( v ) 好的软件测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。

20、( x )在软件开发中一定要不惜代价避免风险。

21.( v ) 在需求分析中,分析员要从用户那里解决的最重要的问题是明确软件做什么。

对功能的具体实现。

22.( v )用例图定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部

23.( v ) 软件过载缺陷就是当运行程序时,软件内部定长的数据结构被溢出,系统任务无法

24.( v ) 结构化程序设计方法能改善程序结构,提高程序的运行效率。

二、选择从供选择的答案中,选出正确的答案填入()内

1.白盒测试法常用的方法是A方法,黑盒法中常用的方法是B方法和C方法,C方法根据输入的关系设计测试用例。供选择的答案:(②③⑤)

A、B、C:①综合测试②路径测试③等价分类④归纳测试

⑤因果图⑥追踪⑦回溯⑧排错

2. 软件工程的出现是由于( A )。

A.软件危机的出现 B. 计算机硬件技术的发展

C.软件社会化的需求 D. 计算机软件技术的发展

3. 系统技术可行性研究涉及的技术应该是(D)技术。

A.现在已提出的 B. 现在在研究的C.不一定可以获得的 D. 一定可以获得的

4.模块综合测试的方法有A和B两种,A是从下层模块向上层模块依次结合进行测试,为测试需要C 以便调用被测模块,但从开发的初期就能并行进行测试作业,并且每个模块的D都很容易做,是这种方法的优点。其缺点是直到测试的最后阶段,程序的缺陷都难以发现。B是从上层模块向下层模块依次结合进行测试,为了测试需要设计E模块模拟被测模块所调用的下级模块。

供选择的答案:(A:⑦ B:⑥ C:⑥ D:① E:①)

A、B、D:①功能测试②组合测试③综合测试④可靠性测试

⑤结构测试⑥自顶向下测试⑦自底向上测试

C、E:①仿真②模拟③生成④转贮⑤跟踪

⑥驱动模块⑦宏模块⑧支持模块

5.软件设计中划分程序模块通常遵循的原则是要求各模块间的耦合性尽可能________,三种可能的模块耦合是:__________:例如,一个模块直接引用另一模块中的数据。

__________:例如,一个模块把开关量作为参数传送给另一模块。

__________:例如,一个模块把数值量作为参数传送给另一模块。

其中,__________的耦合性最强。(②⑧⑨⑤⑧)

6.软件是计算机系统中与硬件相互依存的部分,它是包括(A)、(B)及(C)的完整集合。其中,(A)是按事先设计的功能和性能要求执行的指令序列,(B)是使程序能够正确操纵信息的数据结构,(C)是与程序开发、维护和使用有关的图文资料。

A,B,C:①软件②程序③代码④硬件

⑤文档⑥外设⑦数据⑧图表

填入答案(A:②B:⑦C:⑤)

7.软件测试的目的是A[ ]。为了提高测试的效率,应该B[ ]。使用白盒测试方法时,测试数据应该根据C[ ]和指定的覆盖标准。一般来说,与设计测试数据无关的文档是D[ ],软件测试工作最好由E[ ]来承担,以提高集成测试的效果。

A:(1)评价软件的质量(2)发现软件的错误

(3)找出软件中的所有错误(4)证明软件是正确的

B:(1)随机的选取测试数据(2)取一切可能的输入数据作为测试数据

(3)在完成编码以后制订测试计划(4)选择发现错误的可能性大的数据作为测试数据

C:(1)程序的内部逻辑(2)程序的复杂程度

(3)使用说明书(4)程序的功能

D:(1)需求规格说明书(2)总体设计说明书

(3)源程序(4)项目开发计划

E:(1)该软件的设计人员(2)该软件开发组的负责人

(3)该软件的编程人员(4)不属该软件开发组的软件设计人员

填入答案:(A:2 B:4 C:1 D:3 E: 4 )

三、名词解释、简答与论述

1、软件工程的定义:软件工程是一种系统工程,不只包括对技术问题的分析与解决,还包括对开发过程和给参与者分配合适的角色等方面的管理。

2、说明错误、缺陷、失败的含义与联系。

答:错误,是进行软件开发过程中人为出错造成的。

缺陷:当人们在进行软件开发活动的过程中出现错误时,就会引起缺陷。

失败:是指系统违背了它应有的行为。可能会在系统交付前或交付后被发现,也可能在测试过程中或者在运行和维护过程中被发现。

(1)单个错误可能产生多个缺陷,并且缺陷可能驻留在任何开发或维护的产品中,如设计人员可能错误理解某个需求,创建处于需求分析人员和用户实际意图不相符的设计,这个设计缺陷是一种错误的编码,可能导致其他缺陷,像不正确的代码或用户手册中不正确的描述等。

(2)并非每一个缺陷都对应于一个失败,如果不执行缺陷代码或者不进入某个特定状态缺陷就不会引起失败。

(3)缺陷是系统的内部视图,这是从开发人员角度看问题而失败是系统的外部视图,它是用户所看到的问题。

3、软件质量应从哪几个方面来衡量?论述之。

答:(1)产品的质量:用户在测量软件质量的时候,用户从故障数目和故障类型等外部特性进行评价,如将失败分为次要的、主要的、灾难性的。设计和编写代码倾向于考虑内部特性,尤其是,从业人员通常会把故障的数目和类型看作产品质量的证据。

(2)生产该产品的过程的质量:任何一个活动出了差错都会影响产品的质量,对过程进行建模的优点是我们能够研究它,并寻找方法对他加以改进。

(3)在产品将使用的商业环境背景下的产品的质量

4、现代软件工程大致包含的几个阶段及各个阶段文档(P23-24)

答:

相关文档
最新文档