《电子科技大学《软件工程》自测题答案.docx》由会员分享,可在线阅读,更多相关《电子科技大学《软件工程》自测题答案.docx(18页珍藏版)》请在三一办公上搜索。
1、电子科技大学软件工程自测题答案软件工程自测题一 一、 选择 、是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。 A 软件过程 B 软件工具 C 质量保证 D 软件工程 、是以追求更高的效益和效率为目标的持续性活动。 A 质量策划 B 质量控制 C 质量保证 D 质量改进 、CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。除第1级外,每一级都包含了实现这一级目标的若干关键过程域,每一个关键过程域又包含若干。 A 关键实践 B 软件过程性能 C 软件过程能力 D 软件过程 、在各种不同的软件需求中,功能需求描述了用户
2、使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。 A 业务需求 B 功能要求 C 非功能需求 D 用户需求 、意味着一个操作在不同的类中可以有不同的实现方式。 A 多态性 B 多继承 C 类的复用 D 封装 、在面向对象的系统中,系统责任的良好分配原则是。 A 在类之间均匀分配 B 集中分配在少数控制类中 C 根据交互图的消息进行分配 D 根据个人喜好进行分配 、软件配置项是软件配置管理的对象,即软件工程过程中产生的。 A 接口 B 软件环境 C 信息项 D 版本 、软件测试计划开始于需求分析阶段,完成于阶
3、段。 A 需求分析 B 软件设计 C 软件实现 D 软件测试 二、判断下列叙述的正确性,将结果填入中,并改正错误的说法。 (1).在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。 改正:_ (2).在需求分析中,分析员要从用户那里解决的最重要的问题是明确软件做什么。 改正:_ (3).软件需求规格说明书在软件开发中具有重要的作用,是软件可行性分析的依据。 改正:_ (4).模型是对现实的简化,建模是为了更好地理解所开发的系统。 改正:_ (5).UML语言支持面向对象的主要概念,并与具体的开发过程相关。 改正:_ (6).用例图定义了系统的功能需求,它是从系
4、统的外部看系统功能,并不描述系统内部对功能的具体实现。 改正:_ (7).好的测试用例应能证明软件是正确的。 改正:_ (8).白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。 改正:_ (9).当软件开发项目的进度有可能拖延时,增加开发人员并不能加快进度。 改正:_ (10).软件技术复审是由用户和测试人员实施的一种质量保证活动。 改正:_ 三简答 1、你认为一个好的软件开发人员应具备哪些基本素质? 2、需求工程包括哪些基本活动?每一项活动的主要任务是什么? 3、为什么软件需要维护?简述软件维护的过程。 四、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。 一
5、个程序读入3个整数,它们分别代表一个三角形的3个边长。该程序判断所输入的整数是否构成一个三角形,以及该三角形是一般的、等腰的或等边的,并将结果打印出来。 要求:设三角形的3条边分别为A、B、C,并且 列出等价类表,格式如下: 输入条件 有效等价类 无效等价类 设计测试用例,格式如下: 用例n:输入覆盖等价类,输出结果为。 五、下图显示了配置管理中的存取和控制,请选择合适的答案,将其对应的序号填入中。 A,B,C,D。 供选择的答案: A: 软件工程人员 配置人员 质量保证人员 B: 异步控制 同步控制 存取控制 CD: 管理 登入 检出 填写变更请求 六、UML关系包括关联、聚合、泛化、实现、
6、依赖等5种类型,请将合适的关系填写在下列描述的中。 用例及其协作之间是关系。 在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是关系。 类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是关系。 在MFC类库中,Window类和DialogBox类之间是关系。 森林和树木之间是关系。 一答案 1、a 2、d 3、a 4、c 5、a 6、b 7、c 8、b 二、1、判断下列叙述的正确性,将结果填入中,并改正错误的说法。 (1). 改正:在软件开发的过程中,一个错误修复和改正得越晚,为此所花费的代价就会越高。 (2). (3). 改
7、正:软件可行性分析应在需求分析之前,因此,软件需求规格说明书不应成为软件可行性分析的依据。 (4). (5). 改正:UML语言支持面向对象的概念,并独立于具体的开发过程。 (6). (7). 改正:好的测试用例在于能发现至今未发现的错误。 (8). (9). (10).改正:软件技术复审是由软件开发人员实施的一种质量保证活动。 三、 1答: 牢固掌握计算机软件的基本知识和技能; 善于分析和综合问题,具有严密的逻辑思维能力; 工作踏实细致,遵循标准和规范,具有严格的科学作风; 工作有耐心、有毅力、有责任心; 善于听取别人的意见,善于与周围人员团结协作,建立良好的人际关系; 具有良好的书面和口头
8、表达能力。 2、答: 需求获取: 采集、识别和提取用户的需求,对问题和需求形成文档化的描述,使各种人员达成一致的理解和认可。 需求分析: 分析和综合所采集的信息,建立系统的详细逻辑模型。 需求规格说明: 编写软件需求规格说明书,明确、完整和准确地描述已确定的需求。 需求验证: 评审软件需求规格说明,以保证其正确性、一致性、完备性、准确性和清晰性。 需求管理: 定义需求基线,在整个项目过程中跟踪需求状态及其变更情况。 3、答: 在软件开发完成交付用户使用后,为了保证软件在一个相当长的时期能够正常运行,就需要对软件进行维护。 软件维护的过程: 确认维护要求。 对于改正性维护申请,评价错误的严重性。
9、对于严重的错误,立即安排人员,分析问题原因,进行救火性的紧急维护;对于不严重的错误,根据任务情况和轻重缓急进行统一安排。 对于适应性和完善性维护申请,需要确定申请的优先级,然后安排维护工作。并不是所有的完善性维护申请都必须承担,需要考虑商业需要、现有资源、未来发展方向等进行决定。 四、答: 列出等价类表 输入条件 有效等价类 无效等价类 是否构成一个三角形 A0且B0且C0A0或B0或C0 且 ABC或ACB ABC且BCA且 或BCA ACB。 AB或AC或BAB且AC且BC C AB且AC且BAB或AC或BC C 是否等腰三角形 是否等边三角形 设计测试用例 用例1:输入覆盖等价类,输出结
10、果为构成一般三角形。 用例2:三者取一 输入覆盖等价类,输出结果为不构成三角形。 输入覆盖等价类,输出结果为不构成三角形。 输入覆盖等价类,输出结果为不构成三角形。 用例3:三者取一 输入覆盖等价类,输出结果为不构成三角形。 输入覆盖等价类,输出结果为不构成三角形。 输入覆盖等价类,输出结果为不构成三角形。 用例4:三者取一 输入覆盖等价类,输出结果为等腰三角形。 输入覆盖等价类,输出结果为等腰三角形。 输入覆盖等价类,输出结果为等腰三角形。 用例5:输入覆盖等价类,输出结果为不是等腰三角形。 用例6:输入覆盖等价类,输出结果为等边三角形。 用例7:三者取一 输入覆盖等价类,输出结果为不是等边
11、三角形。 输入覆盖等价类,输出结果为不是等边三角形。 输入覆盖等价类,输出结果为不是等边三角形。 五、答: A B C D 六、答: 实现 关联 依赖 泛化 聚合 软件工程自测题二 一、单项选择题 1在下列工具与环境中属于较早期的CASE。 A基于信息工程CASE B人工智能CASE C结构的基于图形CASE D集成的CASE环境 2Putnam成本估算模型是一个模型。 A静态单变量 B动态单变量 C静态多变量 D动态多变量 3在McCall软件质量度量模型中,属于面向软件产品修改。 A可靠性 B可重用性 C适应性 D可移植性 4ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是
12、 ASQIC BSQMC CSQRC DSQDC 5软件复杂性度量的参数包括 A效率 B规模 C完整性 D容错性 6对象实现了数据和操作的结合,使数据和操作于对象的统一体中。 A结合 B隐藏 C封装 D抽象 7软件调试技术包括 A边界值分析 B演绎法 C循环覆盖 D集成测试 8瀑布模型的存在问题是 A用户容易参与开发 B缺乏灵活性 C用户与开发者易沟通 D适用可变需求 9软件测试方法中的静态测试方法之一为 A计算机辅助静态分析 B黑盒法 C路径覆盖 D边界值分析 10软件生命周期中所花费用最多的阶段是 A详细设计 B软件编码 C软件测试 D软件维护 11第一个体现结构化编程思想的程序设计语言是
13、 AFORTRAN语言 BPascal语言 CC语言 DPL/1语言 12程序的三种基本控制结构是 A过程、子程序和分程序 B顺序、选择和重复 C递归、堆栈和队列 D调用、返回和转移 13在详细设计阶段,经常采用的工具有 APAD BSA CSC DDFD 14详细设计的结果基本决定了最终程序的 A代码的规模 B运行速度 C质量 D可维护性 15需求分析中开发人员要从用户那里了解 A软件做什么 B用户使用界面 C输入的信息 D软件的规模 16结构化程序设计主要强调的是 A 程序的规模 B 程序的效率 C 程序设计语言的先进性 D 程序易读性 17IDEF。图反映系统 A怎么做 B对谁做 C何时
14、做 D做什么 18经济可行性研究的范围包括 A资源有效性 B管理制度 C效益分析 D开发风险 19可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开 发的决策依据,因必须给出的回答。 A确定 B行或不行 C正确 D无二义 20需求分析阶段的任务是确定 A 软件开发方法 B 软件开发工具 C 软件开发费 D 软件系统的功能 二、填空题。 21在软件开发过程中要产生大量的信息,要进行大量的修改, 能协调软件开发,并使混乱减到最低程度。 22规定功能的软件,在一定程度上对自身错误的作用具有屏蔽能力,则称此软件具有 的软件。 23McCall提出的软件质量模型包括 个软件质量特
15、性。 24软件可维护性度量的七个质量特性是可理解性、可测试性、可修改性、可靠性、 、 可使用性和效率。 25为了便于对照检查,测试用例应由输入数据和预期的 两部分组成。 26程序设计语言的心理特性主要表现在 、简洁性、传统性、局部性和顺序性。 27软件结构是以 为基础而组成的一种控制层次结构。 28在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、 。 29结构化语言是介于自然语言和 之间的一种半形式语言。 30若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P= 。 三、名词解释题 每小题3分,共15分。 31软件生存周期模型 32数据字典 33内聚性 34J
16、SP方法 35多态性 四、简答题 每小题5分,共20分。 36简述容错技术的四种主要手段,并解释。 37以G.J.Myers的观点,简述对软件测试的目的。 38就程序设计语言的工程特性而言,对程序编码有哪些要求? 39模块的内聚性包括哪些类型? 五、应用题 第40小题7分,第41小题8分,第42小题10分,共25分。 40下面是某程序的流程图: 计算它的环路复杂性。 为了完成基本路径测试,求它的一组独立的路径。 41根据下列条件使用等价划分法设计测试用例。 某一8位微机,其十六进制常数定义为:以0x或0X开头的数是十六进制整数,其值的范围是-7f7f,如0X13,0X6A,-0X3c。 答案
17、一、单项选择题 每小题1分,共20分。 1.C 2.D 3.C 4.D 5.B 6.C 7.B 8.B 9.A 10.D 11.B 12.B 13.A 14.C 15.A 16.D 17.D 18.C 19.B 20.D 二、填空题。 21.软件配置管理 22.容错功能 23.11 24.可移植性 25.输出结果 26.歧义性 27.模块 28.判定树 29.形式语言 30.F/(1+(n*i) 三、名词解释题 每小题3分,共15分。 31.是描述软件开发过程中各种活动如何执行的模型。 32数据字典是用来定义数据流图中的各个成分的具体含义的。它以一种准确的、无二义性的说明方式为系统的分析、设计
18、及维护提供了有关元素的一致的定义和详细的描述。 33内聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。 34JSP方法是面向数据结构的设计方法,其定义了一组以数据结构为指导的映射过程,它根据输入,输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构。 35指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。或 四、简答题 每小题5分,共20分。 36结构冗余:包括静态冗余、动态冗余和混合冗余。 信息冗余:为检测或纠正信息在运算或传输中的错误,须外加一部分信息。 时间冗余:指重复执行指令或程序来消除瞬时错误带来的影响
19、。 冗余附加技术:指为实现上述冗余技术所需的资源和技术。 37软件测试是为了发现错误而执行程序的过程;一个好的用例能够发现至今尚未发现的错误的测试。一个成功的测试是发现至今尚未发现的错误的测试。 38就程序设计语言的工程特性而言,对程序编码有如下要求: 可移植性 开发工具的可利用性 软件的可重用性 可维护性 39模块的内聚性包括: 偶然内聚 逻辑内聚 时间内聚 通信内聚 顺序内聚 功能内聚 五、应用题 共25分。 40解: 环路复杂性=判断数1617 路径1: 路径2: 路径3: 路径4: 路径5: 路径6: 路径7: 41: 解答:等价划分法 划分等价类并编号,如下表所示。 十六进制整型常量
20、输入条件的等价类表 不合理等价类 3 非0x或非打头的串 4 含有非数字且1 0x或0X开头12以外字位数字串 符 十六进制整数 2 以0x打头的125 多于5个字符 位数字串 6 后跟非0的多位串 7 0后跟数字串 8 后多于3个数字 10小于7f 十六进制数范围 9在7f7f之间 11大于7f 为合理等价类设计测试用例,表中有三个合理等价类,设计两个例子 测试数据 023 015 期望结果 显示有效输入 显示有效输入 覆盖范围 1,9 2,9 输入数据 合理等价类 为每个不合理等价类至少设计一个测试用例 测试数据 期望结果 覆盖范围 2 显示无效输入 3 G12 显示无效输入 4 1233
21、11 显示无效输入 5 1012 显示无效输入 6 011 显示无效输入 7 0134 显示无效输入 8 0x777 显示无效输入 10 0x87 显示无效输入 11 软件工程自测题三 判断题 1软件实际就是程序 ( ) 2.成功的测试是没有发现错误的测试 3软件工程的主要思想是从理论的角度来观察分析软件开发盒生产活动 4一个模块直接引用另一个模块中的数据,这两个模块之间的耦合不是内容耦合 5程序只要逻辑正确,能够被机器理解并执行就够了 二选择题 1.在软件质量因数中,软件在异常条件下人能运行的能力称为软件的 A)可靠性 B)健壮性 C)可用性 D)安全性 2软件开发可行性研究,一般涉及经济,
22、技术盒操作可行性,而进行可行性研究的基本依据是用户提出的软件 A)系统质量 B)系统目标 C)系统功能 D)系统性能 3结构化程序设计中,一般包含3种基本结构,下列结构中哪个不属于基本结构 A)顺序结构 B)嵌套结构 C)顺序结构 D)选择结构 4JACKSON方法是一种面向的方法 A)对象 B )数据结构 C)数据流 D)控制流 5模块内部过程描述就是模块内部的,它的表述形式就是详细设计语言 A)模块化设计 B)算法设计 C)程序设计 D)详细设计 6在设计测试用例时,是用的最多的一种黑盒测试方法 A)等价类划分 B)边值分析 C)因果图 D)判定表 7软件的可维护性,可使用性, ( ) 是
23、衡量软件质量的几个主要特性 A)可靠性 B)可复用性 C)可理解性 D)可修改性 8原型化方法是一种型的设计过程 A)自外向内 B)自顶向下 C)自内向外 D)自底向上 9模块定义为受该模块内一个判断影响的所有模块集合 A)控制流 B)作用域 C)宽度 D)接口 10程序控制的3种基本结构中,结构可提供程序重复控制 A)遍历 B)排列 C )循环 D)分支 三填空题 1黑箱测试即、白箱测试即。 2开发期的主要任务是、。 3. 结构化方法将软件生命周期分为、 、三个时期。 名词解释 数据字典 内聚性 3软件生存周期模型 4多态性 简答题 数据字典具有的特点? 软件工程的内容是什么 3软件测试的目
24、的是什么? 答案 判断题 全错 选择题 BCBBBABBBC 三填空题 功能测试 结构测试 需求分析 总体设计 详细设计 编码 测试 3计划 开发 运行 名词解释 数据字典是用来定义数据流图中的各个成分的具体含义的。它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。 内聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。 是描述软件开发过程中各种活动如何执行的模型。 指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。或 简答题 1. a. 通过名字能方便地查阅数据的定义 b. 没有冗余 c. 尽量不重复其他部分已说明的信息 d. 能单独处理描述每个名字的信息 e.书写方法简单方便而且严格,容易更新和修改 2. 软件过程,软件开发方法,软件过程,软件工具,软件开发环境,计算机辅助软件工程,软件经济学 3 软件测试的目的是在软件投入生产性运行之前,尽可能多地发现软件中的错误,测试是对软件规格说明,设计和编码的最后复审。所以软件测试贯穿在整个软件开发期的全过程。