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

上传人:飞*** 文档编号:35977000 上传时间:2018-03-23 格式:DOC 页数:7 大小:132.50KB
返回 下载 相关 举报
软件需求分析与设计复习题_第1页
第1页 / 共7页
软件需求分析与设计复习题_第2页
第2页 / 共7页
软件需求分析与设计复习题_第3页
第3页 / 共7页
软件需求分析与设计复习题_第4页
第4页 / 共7页
软件需求分析与设计复习题_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《软件需求分析与设计复习题》由会员分享,可在线阅读,更多相关《软件需求分析与设计复习题(7页珍藏版)》请在金锄头文库上搜索。

1、1软件需求分析与设计复习题一判断一判断 1、( ) 程序设计语言种类很多,在进行软件开发时可以随便选择一种语言进行编码。 2. ( x ) 软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。 3、( ) 在软件开发的各个阶段进行过程中,增加人员肯定会对整个项目提前完成有好处。 4( x ) 好的测试用例应能证明软件是正确的。 5( x ) 软件功能测试的测试用例主要是由需求阶段的功能说明部分转化而来。 6、( x ) CoCoMo 模型可以用来估算系统的工作量和软件开发所需时间。 7( x ) 有时为了测试的方便,而可以局部地修改软件系统。 8、( v ) OOA 方法的核

2、心思想是利用面向对象的概念和方法为软件需求建造模型,大致步骤是识别对象 (属性和方法) ,识别类及其结构,定义对象之间的消息传递等。 9( x ) 面向对象方法更适合于软件重用的根本原因在于它是软部件唯一的合成技术。 10、( v ) 系统需求分析员应该具有开发软、硬件系统的经验并且了解用户领域的知识。 11( x ) 在软件的生命周期中,工作量最大的一个阶段就是编写程序。 12、( x )软件运行正确,可见软件中没有缺陷(fault) 。 13( x ) RUP(Rational Unified Process:统一软件过程)本质上是轻量级的软件过程规范。 14、( v )软件失败(fail

3、ure)在系统交付之前和交付之后都可能被发现。 15( x ) 基准测试(benchmark test)是非正式的用户确认和验收测试。 16、( x )开发人员和客户对软件质量因素的认可是完全一致的。 17( x ) UML 语言支持面向对象的主要概念,并与具体的开发过程相关。 18、( v )里程碑(milestone)就是开发过程中的某个活动(activity)。 19( v ) 好的软件测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。 20、( x )在软件开发中一定要不惜代价避免风险。 21( v ) 在需求分析中,分析员要从用户那里解决的最重要的问题是明确软件做什么。 对

4、功能的具体实现。 22( v ) 用例图定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部 23( v ) 软件过载缺陷就是当运行程序时,软件内部定长的数据结构被溢出,系统任务无法 24( v ) 结构化程序设计方法能改善程序结构,提高程序的运行效率。 二、选择二、选择 从供选择的答案中,选出正确的答案填入(从供选择的答案中,选出正确的答案填入( )内)内 1白盒测试法常用的方法是 A 方法,黑盒法中常用的方法是 B 方法和 C 方法,C 方法根据输入的关系设 计测试用例。供选择的答案: ( ) A、B、C:综合测试 路径测试 等价分类 归纳测试因 果 图 追 踪 回 溯 排

5、错2. 软件工程的出现是由于( A ) 。 A软件危机的出现 B. 计算机硬件技术的发展 C软件社会化的需求 D. 计算机软件技术的发展 3. 系统技术可行性研究涉及的技术应该是( D )技术。 A现在已提出的 B. 现在在研究的 C不一定可以获得的 D. 一定可以获得的4模块综合测试的方法有 A 和 B 两种,A 是从下层模块向上层模块依次结合进行测试,为测试需要 C 以便调用被测模块,但从开发的初期就能并行进行测试作业,并且每个模块的 D 都很容易做,是这种方法 的优点。其缺点是直到测试的最后阶段,程序的缺陷都难以发现。B 是从上层模块向下层模块依次结合进行 测试,为了测试需要设计 E 模

6、块模拟被测模块所调用的下级模块。供选择的答案: ( A: B: C: D: E: ) A、B、D:功能测试 组合测试 综合测试 可靠性测试结构测试 自顶向下测试 自底向上测试 C、E: 仿真 模拟 生成 转贮 跟踪驱动模块 宏模块 支持模块25软件设计中划分程序模块通常遵循的原则是要求各模块间的耦合性尽可能_,三种可能的模块耦 合是:_:例如,一个模块直接引用另一模块中的数据。 _:例如,一个模块把开关量作为参数传送给另一模块。 _:例如,一个模块把数值量作为参数传送给另一模块。 其中,_的耦合性最强。 ( ) 6软件是计算机系统中与硬件相互依存的部分,它是包括(A) 、 (B)及(C)的完整

7、集合。其中, (A)是 按事先设计的功能和性能要求执行的指令序列, (B)是使程序能够正确操纵信息的数据结构, (C)是与程 序开发、维护和使用有关的图文资料。 A,B,C: 软件 程序 代码 硬件 文档 外设 数据 图表填入答案( A: B: C: ) 7软件测试的目的是 A。为了提高测试的效率,应该 B 。使用白盒测试方法时,测试数据应该 根据 C和指定的覆盖标准。一般来说,与设计测试数据无关的文档是 D ,软件测试工作最好由 E来承担,以提高集成测试的效果。 A: (1)评价软件的质量 (2)发现软件的错误(3)找出软件中的所有错误 (4)证明软件是正确的 B:(1)随机的选取测试数据

8、(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、软件工程的定义:软件工程是一种系统工程,不只包括对技术问题的分析与解决,还包括

9、对开发过 程和给参与者分配合适的角色等方面的管理。 2、说明错误、缺陷、失败的含义与联系。 答:错误,是进行软件开发过程中人为出错造成的。缺陷:当人们在进行软件开发活动的过程中出现错误时,就会引起缺陷。 失败:是指系统违背了它应有的行为。可能会在系统交付前或交付后被发现,也可能在测试过程中或 者在运行和维护过程中被发现。 (1)单个错误可能产生多个缺陷,并且缺陷可能驻留在任何开发或维护的产品中,如设计人员可能错 误理解某个需求,创建处于需求分析人员和用户实际意图不相符的设计,这个设计缺陷是一种错误的编码, 可能导致其他缺陷,像不正确的代码或用户手册中不正确的描述等。 (2)并非每一个缺陷都对应

10、于一个失败,如果不执行缺陷代码或者不进入某个特定状态缺陷就不会引 起失败。 (3)缺陷是系统的内部视图,这是从开发人员角度看问题而失败是系统的外部视图,它是用户所看到 的问题。 3、软件质量应从哪几个方面来衡量?论述之。 答:(1)产品的质量:用户在测量软件质量的时候,用户从故障数目和故障类型等外部特性进行评价, 如将失败分为次要的、主要的、灾难性的。设计和编写代码倾向于考虑内部特性,尤其是,从业人员通常 会把故障的数目和类型看作产品质量的证据。 (2)生产该产品的过程的质量:任何一个活动出了差错都会影响产品的质量,对过程进行建模的优点是 我们能够研究它,并寻找方法对他加以改进。 (3)在产品

11、将使用的商业环境背景下的产品的质量 4、现代软件工程大致包含的几个阶段及各个阶段文档(P23-24) 答:35、使现代 SE 实践发生变化的(七个)关键因素是什么? (1)商用产品投入市场时间的紧迫性。(2)计算技术在经济中的转变:更低的硬件成本,更高的开发和维护成 本。 (3)功能强大的桌面计算的可用性。 (4)广泛的局域网和广域网。 (5)面向对象技术的采用及其有效性。 (6)使用窗口、图标、菜单和指示器的图形用户界面 (7)软件开发瀑布模型的不可预测性。 6、请写出下列术语的英文全称或缩写:能力成熟度模型:CMM,极限编程:ExtremeProgramming,简称 XP 7、瀑布模型及

12、各阶段文档,优缺点? 答:需求分析 SRS系统设计 系统设计文档如软件结构图程序设计 模块功能算法和数据描述文档编码 源程序和注释单元测试和集成测试 测试报告系统测试 测试报告验收测试 测试报告运行维护 维护报告 优点:(1)它的简单性使得开发人员很容易向不熟悉软件开发的客户作出解释。(2)明确的表示出为了下一阶段的开发,那些中间产品是必须的。用里程碑明确表示出一个阶段 的 结束,并伴随着提交物。(3)瀑布模型是其他复杂模型的基础。缺点:最大的问题是它不能反映实际代码的开发过程。面临软件变动时, 该模型无法处理实际过程中的重复开发问题-软件是一个创造的过程,不是 一个制造的过程。 文档转换有困

13、难。 没有将开发看成一个迭代的过程。难以适应商业环境和操作环境的变化。 8、论述分阶段开发模型的含义, 分类及特点。 答:分阶段开发模型:系统被设计成部分提交, 每次用户只能得到部分功能, 而其他部分处于开发过程中. 分类:增量开发:系统需求按照功能分成若干子系统,开始建造的版本是规模小的、部分功能的系统,后续 版本添加包含新功能的子系统,最后版本是包含全部功能的子系统集。迭代开发:系统开始就提供了整体功能框架,后续版本陆续增强各个子系统,最后版本使各个子系统的 功能达到最强. 9、在所有的软件开发过程模型中,你认为哪些过程给予你最大的灵活性以应对需求的变更? 1 设计对于分析模型应该是可跟踪

14、的:软件的模块可能被映射到多个需求上。2 设计结构应该尽可能的模拟实际问题。3 设计应该表现出一致性。4 不要把设计当成编写代码。5 在创建设计时就应该能够评估质量。6 评审设计以减少语义性的错误。10、什么是项目进度?项目进度是对特定项目的软件开发周期的刻画。包括对项目阶段、步骤、活动 的分解,对各个活动的交互关系的描述,以及对各活动完成时间的初步估算。可 行 性 分 析系统需求分析程 序 设 计编 写 程 序单 元 测 试集 成 测 试系 统 测 试系 统 交 付系 统 维 护411、软件人员应该具备的能力是什么? 答:(1)完成工作的能力 (2)对工作的兴趣 (3)开发类似应用的经验 (4)使用类似工具或语言的经验 (5)使用类似开发环境的经验 (6)使用类似技术的经验 (7)培训 (8)与他人交流的能力 (9)与他人共同承担责任的能力 (10)管理技能 12、软件项目组织的基本结构?主程序员组式的小组结构有什么优点? 答:(1)主程序员负责制组:简化交流,更快地作出决定(2)无私编程方法:所有小组成员共同决定,共 同承担责任。 13、专家估算法的大致含义? 算式估算法的大致含义? 答:专家估算法:依赖于专家判断,一些是非正式的技术,基于管理人员具有的类似项目的经验。因 此,预测的准确性基于估算者的能力

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号