1、软件工程复习题软件工程单项选择题1. 哪个活动可在可行性分析阶段进行?A.编码 B.测试 C.设计 D.制订市场营销计划2. 在数据流程图中,有名字及方向的成分是( )。A.控制流 B.信息流 C.数据流 D.信号流3. 以下各图中不是UML使用的图是( )。A.数据流程图 B.用例图 C.类图 D.顺序图4. 下图中,类的关系是( )。A.依赖 B.关联 C.聚集 D.泛化5. 甘特图是一种( )。A.UML模型 B.过程模型 C.系统构架的抽象模型 D.进度计划的表达方式6. 下面不属于软件配置管理任务的是( )。A.变更控制 B.配置审核 C.状态报告 D.用例分析7. 数据耦合、公共耦
2、合、印记耦合、控制耦合的耦合性从低到高的顺序是( )A.数据、公共、印记、控制 B.数据、印记、控制、公共C.控制、数据、印记、公共 D.控制、数据、公共、印记8. 软件需求分析的主要任务是准确地定义出要开发的软件系统是( )A.如何做 B.怎么做C.做什么 D.对谁做 9. 可行性分析研究的目的是( )A.争取项目 B.项目值得开发否C.开发项目 D.规划项目10. 具有风险分析的软件生存周期模型是( )A.瀑布模型 B.喷泉模型C.螺旋模型 D.增量模型11. 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( ) A.软件工程 B.软件周期 C.软件危机 D.软件产生12
3、. 程序的三种基本控制结构的共同特点是()A只能用来描述简单程序 B不能嵌套使用C单入口,单出口 D仅用于自动控制系统13. 数据字典是用来定义_中的各个成份的具体含义的。()A流程图 B功能结构图C系统结构图 D数据流图14. 为了使软件具有清晰结构和良好的风格,下面关于程序设计风格的叙述不可取的有( )A. 尽量不要进行浮点数的相等比较 B. 应当有适量的注释 C. 尽可能对代码优化 D. 使用有意义的标识符15. 使用白盒技术设计测试用例的方法包括()A.边界值分析 B.循环测试C.等价类划分 D.回归测试16. 下列模块内聚中,内聚性最强的是( )。A.功能内聚 B.偶然内聚 C.过程
4、内聚 D.顺序内聚17. 若有一个计算类型的程序,它的输入量只有一个X,其范围是-1.0,1.0,现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是( )A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法18. 下列哪一种程序设计语言不是面向对象的( )。A.C+ B.JAVA C.C# D.C19. 下列测试方法不属于集成测试的是( )。A.自顶向下 B.自底向上 C.三明治测试 D.自中间向两极测试20. 关于用例的概念,下列说法不正确的是( )。A.用例是一个连贯的功能性单元 B.用例是通过Actor确认的C.可以借助状态转
5、换图来描述用例 D.用例是一个类,而不是事件21. 源程序文档化要求在每个模块之前加序言性注释。该注释内容不应有()A.模块的功能 B.语句的功能C.模块的接口 D.开发历史22. DFD中的每个加工至少需要( ) A. 一个输入流 B. 一个输出流 C. 一个输入或输出流 D. 一个输入流和一个输出流 23. 为了提高模块的独立性,模块之间最好是( ) A. 控制耦合 B. 公共耦合 C. 内容耦合 D. 数据耦合 24. 测试的关键问题是( ) A. 如何组织对软件的评审 B. 如何验证程序的正确性 C. 如何采用综合策略 D. 如何选择测试用例 25. 软件维护困难的主要原因是( ) A
6、. 费用低 B. 人员少 C. 开发方法的缺陷 D. 得不到用户支持 26. 源程序文档化要求在每个模块之前加序言性注释。该注释内容不应有() A. 模块的功能 B. 语句的功能 C. 模块的接口 D. 开发历史 27. 结构化程序设计采用的三种基本控制结构是() A. 顺序、分支、选择 B. 选择、循环、重复 C. 顺序、选择、循环 D. 输入、变换、输出 28. 通信内聚、过程内聚、顺序内聚和时间内聚的内聚性从高到低顺序是()A.通信、过程、顺序、时间 B.通信、时间、顺序、过程C.顺序、通信、时间、过程 D.顺序、通信、过程、时间29. 使用程序设计的控制结构导出测试用例的测试方法是(
7、)A、黑盒测试 B、白盒测试 C、边界测试 D、系统测试 30. 软件工程学的目的应该是最终解决软件生产的( )问题。A.提高软件的开发效率 B.使软件生产工程化C.消除软件的生产危机 D.加强软件的质量保证31. 软件过程模型有多种,下列选项中,( )不是软件过程模型。A.螺旋模型 B.增量模型 C.行为模型 D.瀑布模型32. 准确地解决“软件系统必须做什么”是( )阶段的任务。A.可行性研究 B.详细设计 C.需求分析 D.编码33 下列哪个是RAD模型的优点( )。A.适用于可变需求 B.开发速度快C.适用于高风险项目 D.可用于超大规模软件项目开发34. 瀑布模型是一种什么模型?()
8、A风险驱动模型 B线性开发模型C增量模型 D迭代模型35. 下列哪个不属于软件的基础特征量?( )A. 软件规模 B.开发成本 C.开发期限 D.软件完整性36. 软件需求分析应确定的是用户对软件的( )。A. 功能需求和非功能需求 B. 性能需求 C. 非功能需求 D. 功能需求37. 在软件开发中,()是指对将要开发的系统的开发成本进行估算,然后与可能取得的效益进行比较和权衡。A.成本效益分析 B.可行性分析C.结构化分析 D.软件需求分析38. 瀑布模型的关键不足在于( )。 A. 过于简单 B. 各个阶段需要进行评审 C. 过于灵活 D. 不能适应需求的动态变更39. 下面说法正确的是
9、( )。 A. 经过测试没有发现错误说明程序正确 B. 测试的目标是为了证明程序没有错误 C. 成功的测试是发现了迄今尚未发现的错误的测试 D. 成功的测试是没有发现错误的测试 40. 软件部件的内部实现与外部可访问性的分离,是指软件的( )。A、继承性 B、共享性 C、封装性 D、抽象性41. 下面哪个不属于良好的人机界面设计原则?( )A. 系统的全部界面格式和风格一致B. 为不同的用户和功能提供一致的界面服务C. 力求用户输入量最少D. 具有帮助功能42. 当模块中包含复杂的条件组合,只有( )能够清晰地表达出各种动作之间的对应关系。 A判定表和判定树B盒图C流程图D关系图43. 下面哪
10、个不是基于抽象的软件设计原则?( )A里氏替换原则 B. 开-闭原则 C. 远离实现原则 D. 依赖倒转原则44. 假设目标系统如下图的层次结构,对其按宽度优先顺序进行集成测试,正确的顺序是( )。A. abehcfidgilmkB. abcdefghijklmC. abehcdfigjklmD. lmhijkefgbcda45. 下列哪个阶段不是软件生存期三个阶段中的内容( )。A 定义阶段B 开发阶段C 编码阶段D 维护阶段46. 模块的内聚性最高的是( ) A.逻辑内聚 B.时间内聚 C.偶然内聚 D.功能内聚47 采用甘特图表示软件项目进度安排,下列说法中正确的是( ) A.能够反映多
11、个任务之间的复杂关系 B.能够直观表示任务之间相互依赖制约关系 C.能够表示哪些任务是关键任务 D.能够表示子任务之间的并行和串行关系48. DFD中的每个加工至少需要( )A. 一个输入流 B. 一个输出流C. 一个输入或输出流 D. 一个输入流和一个输出流49. 下列关于功能性注释不正确的说法是( )A. 功能性注释嵌在源程序中,用于说明程序段或语句的功能以及数据的状态 B. 注释用来说明程序段,需要在每一行都要加注释 C. 可使用空行或缩进,以便很容易区分注释和程序 D. 修改程序也应修改注释50. 需求规格说明书的作用不包括()A软件验收的依据B用户与开发人员对软件要做什么的共同理解C
12、软件可行性研究的依据D软件设计的依据51. 为了克服软件危机,人们提出了用( )的原理来设计软件,这就是软件工程诞生的基础。A. 数学 B. 软件学 C. 运筹学 D. 工程学52. 以下哪一项不是软件危机的表现形式( )。 A. 开发的软件不满足用户需要 B. 开发的软件可维护性差 C. 开发的软件价格便宜 D. 开发的软件可靠性差53. 结构化设计是一种面向( )的设计方法。 A. 数据流 B. 模块 C. 数据结构 D. 程序 54. 与确认测试阶段有关的文档是( )。 A. 需求规格说明书 B. 概要设计说明书 C. 详细设计说明书 D. 源程序55 软件开发的需求活动,其主要任务是(
13、 )。A. 给出软件解决方案 B. 给出系统模块结构C. 定义模块算法 D. 定义需求并建立系统模型56. 一个项目是否开发,从经济上来说是否可行,归根结底是取决于( )。 A. 成本估算 B. 项目计划 C. 工程管理 D. 工程网络图 57. 在面向对象的设计中,我们应遵循的设计准则除了模块化、抽象、低耦合、高内聚以外,还有( )。 A. 隐藏复杂性 B. 信息隐蔽 C. 经常类的复用 D. 类的开发 58. 面向对象的主要特征除对象惟一性、封装、继承外,还有( )。 A. 多态性 B. 完整性 C. 可移植性 D. 兼容性 59、软件是一种( )A、程序 B、数据C、逻辑产品 D、物理产
14、品 60、软件部件的内部实现与外部可访问性的分离,是指软件的( )。A、继承性 B、共享性 C、封装性 D、抽象性61、单元测试是发现编码错误,集成测试是发现模块的接口错误,确认测试是为了发现功能错误,那么系统测试是为了发现( )的错误。A、接口错误 B、编码错误C、性能、质量不合要求 D、功能错误62、在结构化分析方法中用状态转移图表达系统或对象的行为。在状态转移图中,由一个状态和一个事件所决定的下一状态可能会有( )个。A. 1 B. 2 C. 多个 D. 不确定63、软件需求分析的任务不应包括( )。A. 问题分析 B. 信息域分析 C. 结构化程序设计 D. 确定逻辑模型64、可使用多
15、种工具进行需求分析,下面( )是不适用的。A. 数据流图 B. 判定表 C. PAD图 D. 数据词典65、需求规格说明书的内容不应当包括( )。A. 对重要功能的描述 B. 对算法的详细过程性描述C. 软件确认准则 D. 软件的性能66、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于( )系统。A. 需求不确定性高的 B.需求确定的 C. 管理信息 D. 决策支持67、在需求分析中,用于数据建模的图形是( )。AE-R图 B. 数据流程图 C. 状态转移图 D. 层次图68、下面( )不是数据流图中的基本元素。A数据处理 B. 数据存储 C. 数据对象 D. 数据流 69、需求
16、分析中用于行为建模的图形是( )。AE-R图 B. 数据流程图 C. 状态转移图 D. 层次图70、下列模块的耦合关系中,耦合度最高的是( )。A. 数据耦合 B. 内容耦合 C. 公共耦合 D. 控制耦合二、填空题1、软件是由计算机程序、数据、及 文档 三部分组成的完整集合。其中,计算机程序是按事先设计的功能和性能要求执行的指令序列。数据是使程序能够正确操纵信息的数据结构。文档 是与程序开发、维护和使用有关的图文材料。2、描述软件生存周期的瀑布模型在开发阶段一般包括需求分析、总体设计、详细设计、系统实现和软件测试等几个阶段。瀑布模型的各阶段依次线形连接,是文档驱动的模型。3、喷泉模型适用于面
17、向对象方法。4、快速原型模型建立原型的主要目的是定义需求,实际的软件在充分考虑了质量和可行性后才被开发。5、软件工程的主要思想是在软件生产中用 工程化方法_代替传统手工方法。 6、软件工程方法学的三个要素是方法、工具和过程。其中, 软件工具 为软件工程方法提供了自动或半自动软件支撑环境。7、需求分析的快速原型化方法中,原型分为追加型(或进化型)和废弃型两类。8、结构化方法基于 模块化 思想, 采用 抽象 和 分解 的原则进行分析和设计。9、数据流程图(DFD)用于系统的 功能建模,其组成成分包括 数据存储、数据处理、源点和汇点 和 数据流。10、实体-关系图包括 对象,属性 和 关系 三方面信
18、息。11、由客户和用户在软件开发团队的管理下执行的测试称作_。12、“软件生命周期”理论将软件过程划分到软件开发的三个时期中,分别是软件定义时期、软件开发时期和_。13设银行年利率为i,假设n年后能收入F元,则当前的价值为_。14数据流程图是一个分层的概念模型,分为三个层次,分别是总体图、_、细节图。15数据字典定义了4种元素,分别是数据元素、_、处理和数据文件或者数据库。16时序图、协作图、状态图这些都属于UML中的_建模图。17一个软件项目中,对LOC进行估计,保守值为1000,最有可能值为800,乐观值为600,则可估计出期望值为_。18_又称实施图,用来表示系统中的计算节点的拓扑结构和
19、通信路径与节点上运行的软构件等。19当A模块调用B模块时,若两个模块之间传递的是数值型参数,则这两个模块的耦合方式是_。20数据流图中的箭头表示_。21软件设计活动一般分为总体设计和详细设计,前者的目的是确定目标系统的_,后者是在此基础上进一步精化。22RUP模型将软件开发过程分为4个大的阶段,分别是先启、精化、_和产品化。23由客户和用户在他们的工作现场进行的测试称作_。24软件设计活动一般分为_和详细设计两个阶段。25传统的结构化软件工程方法中,人们通过_提高模块的抽象程度。26依据模块的编码导出测试用例,这种测试称作_。27程序的三种基本控制结构包括顺序结构、分支结构和_。28在单元测试
20、时,需要为被测模块设计_。29需求分析应交付的主要文档是_。30设计出软件的初步结构以后,应该进一步分解或合并模块,力求降低耦合提高_。31划分模块时尽量做到_,保持模块的独立性。32类的实例化是_。33若年利率为i,现存入P元, n年后可得钱数为F=_。34在面向对象方法中,对象实现了数据和操作的结合,使数据和操作_于对象的统一体中。35类中操作的实现过程叫_。36在处理过程定义中,对于复杂的条件组合问题,用自然语言不能直观清楚地表述,因此常常使用判定表、_方法。37软件生存周期一般可分为问题定义、_、需求分析、设计、编码、测试、运行与维护阶段。38一个进行学生成绩统计的模块其功能是先对学生
21、的成绩进行累加,然后求平均值,则该模块的内聚性是_。39从结构化程序设计到_,是程序设计方法的又一次飞跃。40软件生存周期一般可分为问题定义、可行性研究、_、设计、编码、_、运行与维护阶段。41数据流图的基本符号包括外部实体、数据处理、_和数据流。三简答题1、什么是软件生存周期?它一般由哪些阶段组成?2、数据流图的作用是什么?它由哪些基本成份构成?3、简单说明概要设计的基本步骤?4 什么是软件工程?5 功能内聚和顺序内聚各有什么特点?哪一个的内聚程度更高?6RUP模型的优点有哪些?7 对系统进行抽象设计有哪些优点?8 传统的构架建模方法有哪些?传统的详细设计建模方法有哪些?面向对象的设计建模方
22、法又有哪些?(每种要求至少说出2种)9 数据字典与数据流程图和状态变迁图相比较有什么特点?它的基本元素有哪些?10 详细设计的任务是什么?具体包括哪些?11 什么是白盒测试?白盒测试主要有哪几种测试技术?12 软件开发有哪些特性?13 增量模型有哪些优点?14 瀑布模型的主要缺陷是什么?15 类之间的关系有哪些?16 什么是黑盒测试法?什么是白盒测试法?17 软件实施活动就是编码吗?为什么?18 作为软件工程中的重要环节,软件配置管理的任务有哪些?四设计题1分析如下DFD图,指出其中有哪些错误?2假设一个数据库产品规范要求该产品能够处理从1到1000中间的任何数量的记录。请首先为其划分等价类,
23、并利用等价类划分和边界值分析技术为其设计测试用例,并说明每个测试用例属于某等价类成员还是属于边界值或是邻接边界值。3工资计算系统中的一个子系统有如下功能: ( 1 )计算扣除部分由基本工资计算出应扣除(比如水电费、缺勤)的部分; ( 2 )计算奖金部分根据职工的出勤情况计算出奖励金; ( 3 )计算工资总额部分根据输入的扣除额及奖金计算出总额; ( 4 )计算税金部分由工资总额中计算出应扣除各种税金; ( 5 )生成工资表根据计算总额部分和计算税金部分传递来的有关职工工资的详细信息生成工资表。 试根据要求画出该问题的数据流程图。4一个考试录取统计分数子系统有如下功能:(1) 计算标准分:根据考
24、生原始分计算,得到标准分,存入考生分数文件;(2) 计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。试根据要求画出该系统的数据流程图。5阅读如下程序,说出该程序属于哪种耦合方式,为什么?并说明可以采用何种方式降藕。public class Test public int calSum(Worker w) /Worker为类名 int wLevel=w.getLevel(); int wSalary=w.getSalary(); /计算工人奖金收入等 .6首先说出什么是基本途径测试,然后为以下程序流程图设计基本途径测试的测试用例,并标明路径。dbFF、TT开始(x
25、2) AND (y=0)(x=3) AND (z1)结束语句段1语句段2ace7某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当电工;年龄在20岁至35岁之间者,中学文化程度男性当钳工,女性当车工,大学文化程度都当技术员;年龄在35岁以上者,中学文化程度当材料员,大学文化程度当技术员。请根据以上材料分别采用伪码和判定树两种方式描述之。8阅读下列说明,回答问题。说明:某图书管理系统的主要功能如下:1.图书管理系统的资源目录中记录着所有可供读者借阅的资源,每项资源都有一个唯一的索引号。系统需登记每项资源的名称、出版时间和资源状态(可借阅或已借出)。2.资
26、源分两类:图书和唱片。对于图书,系统还需登记作者和页数;对于唱片,还需登记演唱者和介质类型(CD或磁带)。3.读者信息保存在该系统的读者信息数据库中,记录的信息包括:读者的识别码和姓名。系统为每个读者创建了一个借书记录文件,用来保存读者所借资源的相关信息。现采用面向对象方法开发该系统。系统的所用名词如下表所示:图书管理系统资源目录读者资源索引号系统名称出版时间资源状态图书唱片作者页数演唱者介质类型CD磁带读者信息读者信息数据库识别码姓名借书记录文件信息建立如下类图,回答问题。(1)请从名词表中挑选名词为a、b、c三个类替换类名。(2)资源条目和b、c三个类都有各自的属性,请分别写出它们的属性名
27、。(3)识别关系多重度,完成(1)(2)(3)(4)。9比较下列两段语句,从编码风格的角度分析其优、劣。程序段一:/ position_x is the position x of object; position_y is the position y of object; /if ab then a=belse if position_xposition_y then b=position_y else a=position_x end ifend if程序段二:if abthenif xythen b=yelsea=xend ifelsea=bend if10某个用户输入设定有如下规则:
28、只能输入#或三位数字;假定设计的程序可接受所有符合规定的密码,请使用等价类划分法为其设计测试用例,并给出预期结果是有效还是无效。11欲开发一个银行的活期存取款业务的处理系统:储户将填好的存/取款单和存折交给银行工作人员,然后由系统作以下处理;(1)业务分类处理:系统首先根据储户所填的存/取款单,确定本次业务的性质,并将存/取款单和存折交下一步处理;(2)存款处理:系统将存款单上的存款金额分别记录在存折和帐目文件中,并将现金存入现金库;最后将存折还给储户;(3)取款处理:系统将取款单上的取款金额分别记录在存折和帐目文件中,并从现金库提取现金;最后将现金和存折还给储户。该系统的总体图如下图所示,请画出该系统的零级图。12、某学校需要开发一个学生成绩管理系统,教务人员可以通过该系统维护学生信息、课程信息和成绩信息,学生可以随时查询自己的成绩单,该系统的实体关系图如下所示:请问图中是否应该增加教务人员?试说明理由。五综合题1. 假设你需要划出一个小组专门开发一个组件,该组件的乐观尺寸Sopt为7
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1