还剩5页未读,继续阅读
文本内容:
软件工程、程序设计基础考试题目汇编
09091.软件设计中划分模块的一个准则是A)低内聚低耦合B)高内聚低耦合C)低内聚高耦合D)高内聚高耦合
2.下列选项中不属于结构化程序设计原则的是A)可封装B)自顶向下C)模块化D)逐步求精
3.软件详细设计产生的图如下该图是A)N-S图(P.104)B)PAD图C)程序流程图D)E-R图
4.程序流程图中的菱形框表示的是【1】逻辑判断(参见教材P.103)
5.软件开发过程主要分为需求分析、设计、编码与测试四个阶段,其中【2】阶段产生软件需求规格说明书需求分析
09031.下面叙述中错误的是A)软件测试的目的是发现错误并改正错误B)对被调试的程序进行“错误定位”是程序调试的必要步骤0程序调试通常也称为DebugD)软件测试应严格执行测试计划,排除测试的随意性
2.耦合性和内聚性是对模块独立性度量的两个标准下列叙述中正确的是A)提高耦合性降低内聚性有利于提高模块的独立性B)降低耦合性提高内聚性有利于提高模块的独立性0耦合性是指一个模块内部各个元素间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度
3.软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件),下面属于应用软件的是A)编译程序B)操作系统C)教务管理系统D)汇编程序
4.软件测试分为白盒测试和黑盒测试基本路径测试属于【1】测试白盒
5.符合结构化原则的三种基本控制结构是选择结构、循环结构和【2】顺序0809L数据流程图中带有箭头的线段表示的是A)控制流B)事件驱动C)模块调用D)数据流
2.在软件开发中,需求分析阶段可以使用的工具是A N-S图B DFD图C PAD图D)程序流程图常见的需求分析方法主要有结构化分析方法和面向对象的分析方法结构化分析的常用工具有数据流图(DFD)、数据字典(DD)、判定树和判定表等3•按照软件测试的一般步骤,集成测试应在【1】测试之后进行单元
4.软件工程三要素包括方法、工具和过程,其中,【2】支持软件开发的各个环节的控制和管理过程
08041.程序流程图中带有箭头的线段表示的是A)图元关系B)数据流C)控制流D)调用关系
2.结构化程序设计的基本原则不包括A)多态性B)自顶向下C)模块化D)逐步求精
3.软件设计中模块划分应遵循的准则是A)低内聚低耦合B)高内聚低耦合C)低内聚高耦合D)高内聚高耦合
4.在软件开发中,需求分析阶段产生的主要文档是A)可行性分析报告B)软件需求规格说明书C)概要设计说明书D)集成测试计划
5.测试用例包括输入值集和【1】值集输出
07091.软件是指A)程序B)程序和文档C)算法加数据结构D)程序、数据与相关文档的完整集合
2.软件调试的目的是A)发现错误B)改正错误C)改善软件的性能D)验证软件的正确性
3.在面向对象方法中,实现信息隐蔽是依靠A)对象的继承B)对象的多态C)对象的封装D)对象的分类
4.下列叙述中,不符合良好程序设计风格要求的是A)程序的效率第一,清晰第二B)程序的可读性好C)程序中要有必要的注释D)输入数据前要有提示信息
5.软件需求规格说明书应具有完整性,无岐义性、正确性、可验证性、可修改性等特征,其中最重要的是【1】无歧义性软件需求规格说明书(Software RequirementSpecification,SRS)是需求阶段的最后成果,它有以下几个方面的作用
①便于用户和开发人员进行理解和交流;
②反映用户问题的结构,作为软件开发工作的基础和依据;
③作为确认测试和验收的依据
6.在两种基本测试方法中,
[2]测试的原则之一是保证所测模块中每一个独立路径至少执行一次白盒测试
07041.在结构化程序设计中,模块划分的原则是A)各模块应包括尽量多的功能B)各模块的规模应尽量大C)各模块之间的联系应尽量紧密D)模块内具有高内聚度、模块间具有低耦合度
2.下列叙述中正确的是A)软件测试的主要目的是发现程序中的错误B)软件测试的主要目的是确定程序中错误的位置C)为了提高软件测试的效率,最好由程序编制者自己来完成软件的测试工作D)软件测试是证明软件没有错误
3.下面选项中不属于面向对象程序设计特征的是A)继承性B)多态性C)类比性D)封装性
4.软件测试分为白箱(盒)测试和黑箱(盒)测试,等价类划分法属于【1】测试黑盒
5.软件生命周期可分为多个阶段,一般分为定义阶段、开发阶段和维护阶段编码和测试属于【2】阶段开发
6.在结构化分析使用的数据流图(DFD)中,利用【3】对其中的图形元素进行确切解释数据字典
06091.下列选项中不符合良好程序设计风格的是A)源程序要文档化B)数据说明的次序要规范化C)避免滥用goto语句D)模块设计要保证高耦合、高内聚
2.从工程管理角度,软件设计一般分为两步完成,它们是A)概要设计与详细设计B)数据设计与接口设计C)软件结构结构设计与数据设计D)过程设计与数据设计
3.下列选项中不属于软件生命周期开发阶段任务的是A)软件测试B)概要设计C)软件维护D)详细设计
4.
[1]的任务是诊断和改正程序中的错误调试
5.下列软件系统结构图的宽度为【2】o3结构图是精确表达系统内模块组织结构的图形工具(见课件)
06041.下列选项中不属于结构化程序设计方法的是A)自顶向下B)逐步求精C)模块化D)可复用
2.两个或两个以上模块之间关联的紧密程度为A)耦合度B)内聚度C)复杂度D)数据传输特性
3.下列叙述中正确的是A)软件测试应该由程序开发者来完成B)程序经调试后一般不再需要测试0软件维护只包括对程序代码的维护D)以上三种说法都不对
4.在面向对象方法中,【1】描述的是具有相似属性与操作的一组对象类
5.程序测试分为静态测试和动态测试其中【2】是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现错误静态测试
05091.下列叙述中正确的是A)程序设计就是编制程序B)程序的测试必须由程序员自己去完成C)程序经调试改错后还应进行再测试D)程序经调试改错后不必进行再测试
2.下列描述中正确的是A)软件工程只是解决软件项目的管理问题B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D)软件工程只是解决软件开发中的技术问题
3.在软件设计中,不属于过程设计工具的是A)PDL(过程设计语言)B)PAD图C)N-S图D)DFD图常见的过程设计(详细设计)工具包括程序流程图、NS图、PAD图、HIP0图
4.下列叙述中正确的是A)软件交付使用后还需要进行维护B)软件一旦交付使用就不需要再进行维护C)软件交付使用后其生命周期就结束D)软件维护是指修复程序中被破坏的指令
5.在进行模块测试时,要为每个被测试的模块另外设计两类模块驱动模块和承接模块(桩模块)其中【1】的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果驱动模块由于模块不是一个独立的程序,不能单独运行,因此在进行模块测试时,还要为没个被测试的模块另外设计两类模块,即驱动模块和承接模块驱动模块的作用是将测试的数据传送给被测试模块,并显示被测试模块产生的结果;承接模块的作用是模拟被测试模块的下层模块,承接模块通常有多个
05041.下列对于软件测试的描述中正确的是A)软件测试的目的是证明程序是否正确B)软件测试的目的是使程序运行结果正确C)软件测试的目的是尽可能多地发现程序中的错误D)软件测试的目的是使程序符合结构化原则
2.为了使模块尽可能独立,要求A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强
3.下列描述中正确的是A)程序就是软件B)软件开发不受计算机系统的限制C)软件既是逻辑实体,又是物理实体D)软件是程序、数据与相关文档的集合
4.在面向对象方法中,类的实例称为【1】o对象
5.诊断和改正程序中错误的工作通常称为【2】o程序调试出现频率较高的知识点
6.软件工程的基本概念软件生命周期根据某一软件从被提出并着手开始实现,直到软件完成其使命被废弃为止的全过程划分为一些阶段,并称这一过程为软件生命周期软件工程的三要素方法、工具和过程,需要关注——软件生命周期分为三个大阶段(时期)——过程问题定义(理解用户要求,划清工作范围)软件定〈可行性研究(可行性及其代价)义系统分、需求分析(系统的目标及其应该完成的工作)析(通常采用结构化分析方法,SAo常用工具有数据流图(DFD)、数据字典(DD)、判定树和判定表等)广概要设计(也称总体设计、逻辑设计)(决定系统的模块结构)(通常采用结构化设计方法,SDo常用工具层次图、HIP0图、软件结构图,也称结构图)详细设计(各模块内部的具体设计)软件开发((结构化设计方法,SDo常用工具程序流程图、盒图,N-S图、系统设计PAD图)编码(结构化程序设计方法,SP)〔测试{运行维护以及每个阶段使用的主要方法、工具以及产生的主要文档
7.结构化分析方法(SA)针对软件开发的不同阶段,可以采用不同的结构化方法,包括结构化分析(SA)、结构化设计(SD)、结构化程序设计(SP)方法结构化分析方法主要用于系统分析阶段,常用工具有数据流图(DFD)、数据字典(DD)、判定树和判定表等
8.结构化设计方法(SD)结构化设计方法主要用于系统设计阶段,分为总体设计和详细设计两个阶段总体设计阶段的常用工具层次图、HIPO图、软件结构图,也称结构图生成的主要文档是结构图(SC)以及相应的模块功能说明过程设计(详细设计)阶段常见工具包括程序流程图、NS图、PAD图、HIPO图
9.软件测试的方法白盒法和黑盒法测试用例的设计10程序的调试静态调试与动态调试软件的测试与调试的区别测试的目的是暴露错误,评价程序的可靠性;调试的目的是发现错误的位置,并改正错误。