《软件工程习题+答案.doc》由会员分享,可在线阅读,更多相关《软件工程习题+答案.doc(37页珍藏版)》请在金锄头文库上搜索。
1、一、选择题1 软件开发瀑布模型中的软件定义时期各个阶段依次是:(B)A) 可行性研究,问题定义,需求分析.) 问题定义,可行性研究,需求分析。C) 可行性研究,需求分析,问题定义D)以上顺序都不对。(软件开发时期:概要设计、详细设计、软件实现、软件测试)2 可行性研究主要从以下几个方面进行研究: (A)A) 技术可行性,经济可行性,操作可行性。B)技术可行性,经济可行性,系统可行性.C) 经济可行性,系统可行性,操作可行性。D)经济可行性,系统可行性,时间可行性.3 耦合是对软件不同模块之间互连程度的度量.各种耦合按从强到弱排列如下: ( C) 内容耦合,控制耦合,数据耦合,公共环境耦合.B)
2、 内容耦合,控制耦合,公共环境耦合,数据耦合。C)内容耦合,公共环境耦合,控制耦合,数据耦合。(内容耦合、公共耦合、外部耦合、控制耦合、特征耦合、数据耦合)D)控制耦合,内容耦合,数据耦合,公共环境耦合。4 在详细设计阶段所使用到的设计工具是:(C )) 程序流程图,PAD图,图,HIPO图,判定表,判定树。B)数据流程图,Yoron图,程序流程图,PD图,NS图,HIPO图。C) 判定表,判定树,PDL,程序流程图,D图,NS图.)判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。详细设计阶段工具:判定表、判定树、数据流程图、系统流程图、程序流程图、AD图、N-S图、PD在软件详细
3、设计阶段,常用的图形描述工具有程序流程图,盒图(NS图)和问题分析图(PAD)。常用的语言描述工具为 PD(程序设计语言) ,常用的表格描述工具有判定表和判定树。D数据流图:总体设计阶段5 按照软件工程的原则,模块的作用域和模块的控制域之间的关系是: ( A)A)模块的作用域应在模块的控制域之内.B)模块的控制域应在模块的作用域之内.)模块的控制域与模块的作用域互相独立。D)以上说法都不对。6 在软件生命周期中,能准确确定软件系统的体系结构的功能阶段是 (C )A。概要设计B。详细设计 C。需求分析.可行性分析7 下面不是软件工程的3个要素的是( C)A过程 .方法。环境 D.工具软件工程的三
4、个要素:方法、工具、过程8 下面不属于软件的组成的是(B )A程序 。记录 C.文档 。数据软件=程序数据+文档+服务9 在瀑布模型中,将软件分为若干个时期,软件项目的可行性研究一般归属于( )。维护时期运行时期 C.定义时期.开发时期10。在瀑布模型中,下面( )是其突出的缺点。A。不适应平台的变动.不适应算法的变动C。不适应用户需求的变动D.不适应程序语言的变动11下面不属于软件的特点的是( D).A软件是一种软件产品B软件产品不会用坏,不存在磨损、消耗问题C软件产品的生产主要是研制D软件产品非常便宜2 软件开发工具是协助开发人员进行软件开发活动所使用的软件或环境。下面不是软件开发工具的是
5、。AA。维护工具 B.编码工具 C。测试工具 。需求分析工具13.下列叙述中不属于软件生命周期模型的是(D )。原型模型 B。瀑布模型 C.螺旋模型 D.快速组装模型14。软件设计中,用抽象和分解的目的是( )。A。提高易读性。降低复杂性 C增加内聚性D。降低耦合性 5软件生命周期中所花费用最多的阶段是(D )。A。详细设计B。软件编码 C。概要设计 D。软件测试和维护16。开发软件时对提高开发人员工作效率至关重要的是(B).A。操作系统的资源管理功能B.先进的软件开发工具和环境C程序人员的数量D.计算机的并行处理能力7.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作( B)
6、。软件投机 。软件危机 C.软件工程 D软件产生18软件开发的结构化生命周期方法将软件生命周期划分成(A)A.定义、开发、运行维护B。设计阶段、编程阶段、测试阶段。总体设计、详细设计、编程调试D.需求分析、功能定义、系统设计。软件工程的理论和技术性研究的内容主要包括软件开发技术和(B ).。消除软件危机B。软件工程管理C.程序设计自动化D。实现软件可重用2软件工程的出现是由于( C)。程序设计方法学的影响B.软件产业化的需要C.软件危机的出现.计算机的发展2.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D )。A。概要设计B。详细设计C.问题定义D。需求分析22
7、. 开发大型软件时,产生困难的根本原因是(A )。A。大系统的复杂性 B。人员知识不足C.客观世界千变万化 D。时间紧、任务重3。 文档是软件开发人员、软件管理人员、维护人员、用户以及计算机之间的( B),软件开发人员在各个阶段以文档作为前段工作成果的体现和后段工作的基础。A。接口B.桥梁.科学D。继续24软件工程学的目的是以较低的成本,研制(A )质量的软件。A较高较低.可靠D。优秀25软件从一个计算机系统或环境转换到另一个计算机和环境的容易程度称为( )。可用性。兼容性C.可靠性D。可移植性6软件生存周期是指( D)阶段。软件开始使用到用户要求修改为止软件开始使用到被淘汰为止.从开始编写程
8、序到不能再使用为止D。从立项制定计划,进行需求分析到不能再使用为止27。软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是( B)。引入新技术提高空间利用率B用较少的投资获得高质量的软件缩短研制周期扩大软件功能D硬软件结合使系统面向应用2。 软件可行性分析是着重确定系统的目标和规模。对成本效益进行发现应属于下列选项中的( )。.经济可行性B。操作可行性。技术可行性D。社会可行性 29在数据流图中,用圆或者椭圆来表示(B)。A。数据流。加工C。数据存储D.数据源点或终点3。 需求分析阶段的任务是确定( C)。A软件开发方法B。软件开发费用C。软件系统功能D。软件开发工具3(D )
9、的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发.A需求分析 B概要设计 C总体设计 可行性研究32.下列选项中( D)不是软件需求规格目标。A。便于用户、分析员和软件设计人员进行理解及交流B.控制系统的实施过程C。作为软件测试和验收以及维护的依据D.便于软件的维护3下面描述中,不符合结构化程序设计风格的是(B)。使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B模块只有一个入口,可以有多个出口C注重提高程序的执行效率不使用oto语句34。下列工具中属于需求分析常用工具的是(D).A。D BF C.NSD。D.在数据流图(DD)中,带有名字的箭头
10、表示(C)。控制程序的执行顺序B。模块之间的调用关系(直线)C。数据的流向D.程序的组成成分长方形代表起点或者终点3。 在软件生产过程中,需求信息的给出是(D)。程序员 B项目管理者 C.软件分析设计人员 .软件用户3下列叙述中,不属于结构化分析方法的是( C)。.面向数据流的结构化分析方法面向数据结构的结构化数据系统开发方法C.面向对象的分析方法3结构设计(D)是一种应用最广泛的系统设计方法,是以( )为基础、自顶向下、逐步求精和模块化的过程.数据流 .数据流图。数据库 D数据结构39需求分析是由分析员经了解用户的要求,认真细致地调研、分析,最终应建立目标系统的逻辑模型并写出( B).模块说
11、明书B软件规格说明书C项目开发计划D。合同文档4. 结构化分析方法以数据流图、( D)和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。A。DFD图 B。PA图C.IPO图D数据字典41数据字典是软件需求分析阶段的重要工具之一,它的基本功能是( A)。数据定义B.数据维护C数据通讯D。数据库设计42。以下( A)不是详细设计中常用的图形描述工具。A.数据流图B。程序流图C。盒图(NS)D。问题分析图(PAD)3。 在结构图的有关术语中,用于表示软件结构中控制的层数的是 (C)A扇入B扇出C深度D宽度4。 模块的独立程度是评价设计好坏的重要标准。( )是衡量软件的模块独立性的两个
12、定性度量标准。A耦合性和内聚性B内聚性和可靠性C耦合性和独立性可靠性和独立性5。软件设计包括(B)两个阶段。A。接口设计和结构设计B。概要设计和详细设计。数据设计和概要设计D.结构设计和过程设计4在详细设计阶段,经常采用的工具是( )。A.PAD B.SA C.S(结构图,总体设计) D。F47。 在软件开发中,下面任务不属于设计阶段的是( )。A。数据结构设计B给出系统模块结构定义模块算法 定义需求并建立系统模型。对建立良好的程序设计风格,下面描述正确的是( A)A程序应简单、清晰、可读性好 B符号名的命名要符合语法 C充分考虑程序的执行效率 D程序的注释可有可无49.下面不属于软件设计原则
13、的是(C ).A抽象B模块化C自底向上D信息隐蔽50。为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为(C )。A AD图BNS图C。结构图 D数据流图1软件测试按照功能划分可以分为(B )。A黑盒测试和单元测试 白盒测试和黑盒测试C集成测试和单元测试D白盒测试和静态测试软件测试按照功能划分可以分为白盒测试和黑盒测试按照开发阶段划分,软件测试可分为单元测试、集成测试,系统测试和验收测试白盒测试方法:逻辑覆盖、循环测试、基本路径测试黑盒测试方法:等价分类法,边界值分析法、错误推断法,因果图法,场景法。52在软件测试过程的4个步骤中,测试依据是需求规
14、格说明的是( C)A单元测试集成测试确认测试D系统测试3黑盒测试法属于( C).A集成测试系统测试C动态测试静态测试静态测试(不实际运行软件,对软件的格式和结构进行评估)包括:代码规则检查、程序结构分析、代码质量度量(程序复杂度分析)动态测试:功能确认与接口测试、覆盖率分析、性能分析、内存分析5下列叙述中错误的是(C)。测试是为了寻找错误而运行程序的过程B一个成功的测试是揭示了迄今为止尚未发现的错误的测试C测试的目的是为了证明程序是正确的D一个好的测试用例是指很可能找到迄今为止尚未发现的错误的测试55软件测试过程是软件开发过程的逆过程,其最基础性的测试应是(B)集成测试B单元测试C有效性测试D系统测试55。1 有一组测试用例使得每一个被测试用例的分支覆盖至少被执行一次,它满足的覆盖标准_。(B)。语句覆盖B。判定覆盖C.条件覆盖D路径覆盖6.关于白盒测试与黑盒测试的最主要区别,正确的是_。().白盒测试侧重于程序结构,黑盒测试侧重于功能B白盒测试可以使用测试工具,黑盒测试不能使用工具.