目录
2017年中国矿业大学717软件工程考研复试核心题库(一) ............................................... 2
2017年中国矿业大学717软件工程考研复试核心题库(二) ............................................. 11
2017年中国矿业大学717软件工程考研复试核心题库(三) ............................................. 18
2017年中国矿业大学717软件工程考研复试核心题库(四) ............................................. 24
2017年中国矿业大学717软件工程考研复试核心题库(五) ............................................. 31
第 1 页,共 38 页
2017年中国矿业大学717软件工程考研复试核心题库(一)
说明:本资料为学员内部使用,整理汇编了2017考研复试重点题及历年复试常考题型。 ————————————————————————————————————————
一、名词解释
1. 黑盒测试
【答案】黑盒测试一种单元测试方法,它把被测试的对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件接口处进行测试,依照需求规格说明书,检查程序是否满足功能要求。因此,黑盒测试又称为功能测试或数据驱动测试。
二、简答题
2. 什么是结构化维护?结构化维护的特点是什么?
【答案】(1)结构化维护的定义
若采用软件工程的方法开发软件,则各阶段都有相应的文档,容易进行维护工作,这是一种结构化的维护。
(2)结构化维护的特点
①有软件工程思想开发的软件具有各个阶段的文档,这对于理解和掌握软件功能、性能、系统结构、数据结构、系统接口和设计约束有很大作用。
②进行维护活动时,首先从评价需求说明开始,搞清楚功能、性能上的改变,然后对设计说明文档进行评价,对设计说明文档进行修改和复查;根据设计的修改,再进行程序的变动;其后根据测试文档中的测试用例进行回归测试;最后,把修改后的软件再次交付使用。这对于减少精力、减少花费、提高软件维护效率有很大作用。
3. 简述事件如何触发操作。
【答案】(1)如果仅描述事件的模式,那状态图就会失去意义。一个对象的行为描述必须指出在事件的响应中该对象做些什么。在响应所对应的状态和事件过程中,完全依附于状态和变迁的操作。
(2)活动是需要花费时间来完成的操作
①活动与状态有关,一个活动可以是连续的操作,例如在电视机屏幕上显示一幅画面。
②一个活动也可以包括经过一段时间间隔之后的自动终结顺序操作,例如关闭阀门,或者执行一次计算。
③一个状态可以控制一个连续性活动,这种控制可以持续到一个事件使该状态发生变迁时才结束,例如电话铃响。在状态框中用 表示活动A开始进入该状态并在退出该状态时结束。
表示时序活动A开始进④一个状态也可以控制时序的活动,例如机器人移动一个零件,这种控制持续到完成该行动,或因另一个事件被中断而提前停止该活动时才结束。相同的记号
入该状态,当完成时停止。
第 2 页,共 38 页
(3)如果一个事件在行动完成之前发生状态的变迀,则该活动被提前终止。例如机器人遇到阻碍而停止移动。这两种使用没有本质的区别:连续性活动可以被看成延续时间不确定的时序活动。
4. 三种模型的建立过程。
【答案】(1)对象模型:确定类、准备数据字典、确定联系、确定属性、完善对象模型。 (2)动态模型:准备脚本、准备事件跟踪、构造状态图。
(3)功能模型:确定输入输出值、建立DFD。
5. 模块的内聚性有哪几种?各表示什么含义?
【答案】(1)模块内聚性的分类
内聚性有七种类型:偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚、功能内聚,它们的内聚性由低到高。
(2)模块内聚性的含义
①偶然内聚
偶然内聚指一个模块内的各处理元素之间没有任何联系,这是最差的内聚情况。
②逻辑内聚
逻辑内聚指模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。如产生各种类型错误的信息输出放在一个模块,或从不同设备上的输入放在一个模块,这是一个单人口多功能模块。这种模块内聚程 度有所提高,各部分之间在功能上有相互关系,但不易修改,当某个调用模块要修改此模块公用代码时,而另一些调用模块又不要求修改。另外,调用时需要进行控制参数的传递,造成模块间的控制耦合,调用此模块时,不用的部分也占据了主存,降低了系统效率。
③时间内聚
时间内聚把需要同时执行的动作组合在一起形成的模块称为时间内聚模块。如初始化一组变量,同时打开若干文件,同时关闭文件等等,都与特定时间有关。时间内聚比逻辑内聚程度高一些,因为时间内聚模块中的各部分都要在同一时间内完成。但是由于这样的模块往往与其他模块联系的比较紧密,如初始模块对许多模块的运行有影响,因此和其他模块耦合的程度较高。
④过程内聚
如果一个模块内的处理元素是相关的,而且必须以特定的次序执行,称为过程内聚。过程内聚模块的各组成功能由控制流联结在一起,实际上是若干个处理功能的公共过程单元。
⑤通信内聚
通信内聚指模块内所有处理元素都在同一个数据结构上操作(有时称之为信息内聚),或者指各处理使用相同的输入数据或者产生相同的输出数据。
通信内聚的模块各部分都紧密相关于同一数据(或者数据结构),所以内聚性要高于前几种类型。同时,可把某一数据结构、文件、设备等操作都放在一个模块内,可达到信息隐藏。
第 3 页,共 38 页
⑥顺序内聚
顺序内聚指一个模块中各个处理元素都紧密相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入。
⑦功能内聚
功能内聚是最强的内聚,指模块内所有元素共同完成一个功能,缺一不可。因此模块不能再分割。功能内聚的模块易于理解、易修改,因为它的功能是明确的、单一的,因此与其他模块的耦合是弱的。功能内聚的模块有利于实现软件的重用,从而提高软件开发的效率。
6. 动态测试的四个阶段分别是什么?请简述各阶段的主要工作?
【答案】(1)动态测试的四个阶段
动态测试的四个阶段分别是单元测试、集成测试、系统测试、确认测试。
(2)动态测试各阶段的主要工作
①单元测试
把每个模块作为一个单独的实体来测试,检验其正确性。目的是保证每个模块作为一个单元能正确运行。模块测试所发现的是编码和详细设计的错误。
②集成测试
把经过单元测试的模块放在一起形成一个子系统来测试。模块相互间的协调和通信是这个测试过程中的主要 问题,即集成测试着重测试模块的接口。
③系统测试
把经过测试的子系统装配成一个完整的系统来测试。系统测试发现的是软件设计中和需求说明中的错误。
④确认测试
把软件系统作为单一的实体进行测试,它是在用户积极参与下进行的,而且主要使用实际数据进行测试。确认测试的目的是验证系统确实能够满足用户的需要,确认测试发现的是系统需求说明书中的错误。
7. 需求分析有哪些特点?
【答案】(1)用户与开发人员很难进行交流
需求分析是对用户的业务活动进行分析,明确在用户的业务环境中软件系统应该“做什么”。但是在开始时,开发人员和用户双方都不能准确地提出系统要“做什么?”。由于用户和开发人员互相不了解对方的工作,又缺乏共同语言,所以在交流时存在着隔阂。
(2)用户的需求是动态变化的
对于一个大型而复杂的软件系统,用户很难精确完整地提出它的功能和需求分析性能要求。一开始只能提出一个大概、模糊的功能,只有经过长时间的反复认识才逐步明确。有时进入到设计、编程阶段才能明确,更有甚 者,到开发后期还在提新的要求。
(3)系统变更的代价呈非线性增长
第 4 页,共 38 页
www.99jianzhu.com/包含内容:建筑图纸、PDF/word/ppt 流程,表格,案例,最新,免费下载,施工方案、工程书籍、建筑论文、合同表格、标准规范、CAD图纸等内容。