1、软件工程考试题带答案一、选择题1软件开发瀑布模型中的软件定义时期各个阶段依次是:( B )A)可行性研究,问题定义,需求分析。B)问题定义,可行性研究,需求分析。C)可行性研究,需求分析,问题定义。D)以上顺序都不对。2可行性研究主要从以下几个方面进行研究: (A)A)技术可行性,经济可行性,操作可行性。B)技术可行性,经济可行性,系统可行性。C)经济可行性,系统可行性,操作可行性。D)经济可行性,系统可行性,时间可行性。3 耦合是对软件不同模块之间互连程度的度量。各种耦合按从强到弱排列如下: (C)A)内容耦合,控制耦合,数据耦合,公共环境耦合。B)内容耦合,控制耦合,公共环境耦合,数据耦合
2、。C)内容耦合,公共环境耦合,控制耦合,数据耦合。D)控制耦合,内容耦合,数据耦合,公共环境耦合。4在详细设计阶段所使用到的设计工具是:(A)A)程序流程图,PAD图,N-S图,HIPO图,判定表,判定树.B)数据流程图,Yourdon 图,程序流程图,PAD图,N-S图,HIPO图。C)判定表,判定树,PDL,程序流程图,PAD图,N-S图。D)判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。5 按照软件工程的原则,模块的作用域和模块的控制域之间的关系是: (A)A)模块的作用域应在模块的控制域之内。B)模块的控制域应在模块的作用域之内。C)模块的控制域与模块的作用域互相独立。D
3、)以上说法都不对。6在软件生命周期中,能准确确定软件系统的体系结构的功能阶段是 (C)A.概要设计 B.详细设计 C.需求分析 D.可行性分析7下面不是软件工程的3个要素的是( C )A过程 B.方法 C.环境 D.工具8.下面不属于软件的组成的是( B )A程序 B.记录 C.文档 D.数据9在瀑布模型中,将软件分为若干个时期,软件项目的可行性研究一般归属于( C )A.维护时期 B.运行时期 C.定义时期 D.开发时期10.在瀑布模型中,下面( C )是其突出的缺点。A.不适应平台的变动B.不适应算法的变动C.不适应用户需求的变动D.不适应程序语言的变动11下面不属于软件的特点的是( D
4、)。A软件是一种软件产品B软件产品不会用坏,不存在磨损、消耗问题C软件产品的生产主要是研制D软件产品非常便宜12 软件开发工具是协助开发人员进行软件开发活动所使用的软件或环境。下面不是软件开发工具的是( A )。A.维护工具 B.编码工具 C.测试工具 D.需求分析工具13.下列叙述中不属于软件生命周期模型的是( D )。A.原型模型 B.瀑布模型 C.螺旋模型 D.快速组装模型14.软件设计中,用抽象和分解的目的是( B )。A.提高易读性B.降低复杂性 C.增加内聚性 D.降低耦合性15软件生命周期中所花费用最多的阶段是( D )。A.详细设计 B.软件编码 C.概要设计 D.软件测试和维
5、护16.开发软件时对提高开发人员工作效率至关重要的是( B )。A.操作系统的资源管理功能B.先进的软件开发工具和环境C.程序人员的数量D.计算机的并行处理能力17.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作( B )。A.软件投机 B.软件危机 C.软件工程 D软件产生18软件开发的结构化生命周期方法将软件生命周期划分成( A )。A.定义、开发、运行维护B.设计阶段、编程阶段、测试阶段C.总体设计、详细设计、编程调试D.需求分析、功能定义、系统设计 19.软件工程的理论和技术性研究的内容主要包括软件开发技术和( B)。A.消除软件危机B.软件工程管理C.程序设计自动化
6、D.实现软件可重用20软件工程的出现是由于( C )。A.程序设计方法学的影响B.软件产业化的需要C.软件危机的出现D.计算机的发展21.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是( D)。A.概要设计B.详细设计C.问题定义D.需求分析22. 开发大型软件时,产生困难的根本原因是( A )。A.大系统的复杂性 B.人员知识不足 C.客观世界千变万化 D.时间紧、任务重23. 文档是软件开发人员、软件管理人员、维护人员、用户以及计算机之间的( B),软件开发人员在各个阶段以文档作为前段工作成果的体现和后段工作的基础。A.接口B.桥梁C.科学D.继续24软件工程学
7、的目的是以 较低的成本,研制( A )质量的软件。A较高B较低C.可靠D.优秀25软件从一个计算机系统或环境转换到另一个计算机和环境的容易程度称为( D)。A.可用性B.兼容性C.可靠性D.可移植性26.软件生存周期是指( D)阶段。A.软件开始使用到用户要求修改为止B.软件开始使用到被淘汰为止C.从开始编写程序到不能再使用为止D.从立项制定计划,进行需求分析到不能再使用为止27.软件工程学是应用科学理论和工程上的技术指导软件开发的学科,其目的是( B)。A引入新技术提高空间利用率B用较少的投资获得高质量的软件C缩短研制周期扩大软件功能D硬软件结合使系统面向应用28. 软件可行性分析是着重确定
8、系统的目标和规模。对成本-效益进行发现应属于下列选项中的( A )。A.经济可行性B.操作可行性C.技术可行性D.社会可行性29在数据流图中,用圆或者椭圆来表示( B)。A.数据流B.加工C.数据存储D.数据源点或终点30. 需求分析阶段的任务是确定( C )。A.软件开发方法B.软件开发费用C.软件系统功能D.软件开发工具31( D)的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。A需求分析B概要设计C总体设计D可行性研究32.下列选项中( D )不是软件需求规格目标。A.便于用户、分析员和软件设计人员进行理解及交流B.控制系统的实施过程C.作为软件测试和
9、验收以及维护的依据D.便于软件的维护33下面描述中,不符合结构化程序设计风格的是( B )。A使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B模块只有一个入口,可以有多个出口C注重提高程序的执行效率D不使用goto语句 34. 下列工具中属于需求分析常用工具的是( D )。A.PAD B.PFD C.N-S D.DFD35. 在数据流图(DFD)中,带有名字的箭头表示( C )。A.控制程序的执行顺序B.模块之间的调用关系C.数据的流向D.程序的组成成分36. 在软件生产过程中,需求信息的给出是( D )。A.程序员 B.项目管理者 C.软件分析设计人员 D.软件用户37下列叙
10、述中,不属于结构化分析方法的是( C )。A.面向数据流的结构化分析方法B.面向数据结构的结构化数据系统开发方法C.面向对象的分析方法38结构设计是一种应用最广泛的系统设计方法,是以( B )为基础、自顶向下、逐步求精和模块化的过程。A.数据流 B.数据流图 C.数据库 D数据结构39需求分析是由分析员经了解用户的要求,认真细致地调研、分析,最终应建立目标系统的逻辑模型并写出( B )。A.模块说明书B.软件规格说明书C.项目开发计划 D.合同文档40. 结构化分析方法以数据流图、( D)和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。A.DFD图 B.PAD图 C.IPO图
11、 D.数据字典41. 数据字典是软件需求分析阶段的重要工具之一,它的基本功能是( A)A.数据定义B.数据维护C.数据通讯D.数据库设计42. 以下( A )不是详细设计中常用的图形描述工具。A.数据流图B.程序流图C.盒图(N-S)D.问题分析图(PAD)43. 在结构图的有关术语中,用于表示软件结构中控制的层数的是 ( C)A.扇入B扇出C深度D宽度44. 模块的独立程度是评价设计好坏的重要标准。( A )是衡量软件的模块独立性的两个定性度量标准。A耦合性和内聚性B内聚性和可靠性C耦合性和独立性D可靠性和独立性45. 软件设计包括( B )两个阶段。A.接口设计和结构设计B.概要设计和详细
12、设计C.数据设计和概要设计D.结构设计和过程设计46在详细设计阶段,经常采用的工具是( A )。A.PAD B.SA C.SC D.DFD47. 在软件开发中,下面任务不属于设计阶段的是( D )。A.数据结构设计 B给出系统模块结构C定义模块算法 D定义需求并建立系统模型48.对建立良好的程序设计风格,下面描述正确的是( A )。A程序应简单、清晰、可读性好 B符号名的命名要符合语法C充分考虑程序的执行效率 D程序的注释可有可无49.下面不属于软件设计原则的是( C )。A抽象B模块化C自底向上D信息隐蔽50. 为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通
13、常也把这种图称为( C )。A PAD图 B.N-S图 C.结构图 D数据流图51软件测试按照功能划分可以分为( B )。A黑盒测试和单元测试 B白盒测试和黑盒测试C集成测试和单元测试 D白盒测试和静态测试52在软件测试过程的4个步骤中,测试依据是需求规格说明的是( C)A单元测试B集成测试C确认测试D系统测试53黑盒测试法属于( C )。A集成测试B系统测试C动态测试D静态测试54下列叙述中错误的是( C )。A测试是为了寻找错误而运行程序的过程B一个成功的测试是揭示了迄今为止尚未发现的错误的测试C测试的目的是为了证明程序是正确的D一个好的测试用例是指很可能找到迄今为止尚未发现的错误的测试5
14、5软件测试过程是软件开发过程的逆过程,其最基础性的测试应是( B )A集成测试B单元测试C有效性测试D系统测试56. 程序的三种基本控制结构是( B )。A. 过程、子程序和分程序 B. 顺序、选择和重复C. 递归、迭代和回溯 D. 调用、返回和转移57. 面向对象的分析方法主要是建立三类模型,即( D )。 A) 系统模型、ER模型、应用模型 B) 对象模型、动态模型、应用模型 C) -模型、对象模型、功能模型 D) 对象模型、动态模型、功能模型 58. 在E-R模型中,包含以下基本成分( C )。 A) 数据、对象、实体 B) 控制、联系、对象 C) 实体、联系、属性 D) 实体、属性、操
15、作59软件测试的目标是( A)。A. 证明软件是正确的 B. 发现错误、降低错误带来的风险C. 排除软件中所有的错误 D. 与软件调试相同60软件生命周期中所花费用最多的阶段是( D )A详细设计 B软件编码 C软件测试 D软件维护61.在数据流图中, 圆或椭圆表示 (1) _A_ ,平行线表示 (2) _D_ 。 (1) A、加工 B、外部实体 C、数据流 D、存储 (2) A、加工 B、外部实体 C、数据流 D、存储62瀑布模型(Waterfall Model)突出的缺点是不适应 ( D )的变动。A、算法 B、平台 C、程序语言 D、用户需求63结构化分析方法(SA)的一个重要指导思想是
16、( C ) 。A自顶向下,逐步抽象B自底向上,逐步抽象C自顶向下,逐步分解D自底向上,逐步分解64模块的控制范围包括它本身及它所有的从属模块,模块的作用范围是指模块内一个判定的作用范围,凡是受到这个判定影响的所有模块都属于这个判定的作用范围,理想的情况是( A)A模块的作用范围应在控制范围之内B模块的控制范围应在作用范围之内C模块的作用范围与控制范围交叉D模块的作用范围与控制范围分离65关于模块设计的原则,以下叙述中正确的是 ( B) A模块的内聚性高,模块之间的耦合度高B模块的内聚性高,模块之间的耦合度低C模块的内聚性低,模块之间的耦合度高D模块的内聚性低,模块之间的耦合度低66软件的用户界
17、面作为人机接口起着越来越重要的作用,用户界面的( D)是用户界面设计中最重要的也是最基本的目标。A灵活性 B风格多样性 C美观性 D易操作性67.原型化方法是一种动态定义需求的方法,( D)不具有原型化方法的特征。A简化项目管理 B尽快建立初步需求C加强用户参与和决策 D提供严格定义的文档68数据流图包含的成分有 ( B)A.关系、实体和属性B.数据流、加工和数据存储 C.数据流、数据源和数据实体D.数据流、属性、数据存储和加工69.如果用户对系统的目标不是很清楚,需求难以定义,这时最好使用 ( A)进行系统开发。 A.原型 B.瀑布模型C.V-模型 D.螺旋模型70.在软件开发的各个阶段中,
18、对软件开发成败影响最大的是 (A)A.需求分析B.概要设计C.详细设计D.编码71.模块内聚度用于衡量模块内部各成分之间彼此结合的紧密程度。 1)一组语句在程序的多处出现,为了节省内存空间把这些语句放在一个模块中,该模块的内聚度是 _A_ 的。2)将几个逻辑上相似的成分放在一个模块中,该模块的内聚度是 _B_ 的。3)模块中所有成分引用共同的数据,该模块的内聚度是 _C_ 的。4)模块内的某成分的输出是另一些成分的输入,该模块的内聚度是 _D_ 的。5)模块中所有成分结合起来完成一项任务,该模块的内聚度是 _E_ 的。它具有简明的外部界面,由它构成的软件易于理解、测试和维护。A 5 B 7 C
19、 3 D 2 E 1供选择的答案AE: 功能性 顺序性 通信性 过程性 偶然性 瞬时性 逻辑性72软件设计中划分模块的一个准则是(3)。两个模块之间的耦合方式中,(4)耦合的耦合度最高,(2)耦合的耦合度最低。一个模块内部的内聚种类中(3)内聚的内聚度最高,(1)内聚的内聚度最低。两个模块之间的耦合方式通常可分为7种,按其耦合度从低到高的次序依此为:非直接耦合、数据耦合、标记耦合、控制耦合、外部耦合、公共耦合、内容耦合。内聚度从低到高的次序依此为:偶然内聚、逻辑内聚、瞬时内聚、过程内聚、通信内聚、顺序内聚、功能内聚供选择的答案:A:低内聚低耦合 低内聚高耦合高内聚低耦合 高内聚高耦合B:数据
20、非直接 控制 内容C:数据 非直接 控制 内容D:偶然 逻辑 功能 过程E:偶然 逻辑 功能 过程二、填空1 黑盒测试又称为_功能测试 数据驱动测试或基于规格说明的测试 ,白盒测试也称为_结构测试或逻辑驱动测试 2、如果用户对系统的目标不是很清楚,需求难以定义,这时最好使用_原型 模型进行系统开发。3、在软件开发的各个阶段中,对软件开发成败影响最大的是_需求分析 阶段。4、研究可行性从 技术可行性,经济可行性,操作可行性 可行性进行研究。5结构化方法的指导思想是 自顶向下,逐步分解 6、在软件开发的各个阶段中,软件维护 阶段成为软件的二次开发。7、类是指具有相同数据结构和相同操作的 对象 的集
21、合。8数据流程图按照信息流的类型主要分为 事务流和变换流 两种。9软件危机是指在计算机软件开发和维护过程中 所遇到的一系列严重问题10、 阶段是解决目标系统做什么的问题, 阶段是解决目标系统怎么做的问题。11、 内聚 是度量一个模块内的各个元素彼此结合的紧密程度,它是信息隐藏概念的自然扩展。12.面向对象的三个子模型分别是对象模型、动态模型和功能模型 13.结构化设计简称 ,分为 和 14软件工程方法学的三要素是 方法 工具 过程 15软件设计的准则是 、 、 和 16JACKSON方法是面向 面向数据结构 的设计方法,它有 种逻辑结构17软件过程模型中 模型是描述用户的动态需求的, 模型是带
22、有风险驱动的18结构化设计方法是面向 过程 的设计方法19传统的软件工程方法学采用 结构化分析技术 完成系统分析工作的20模块的独立性要求 高 内聚 低 耦合 21.在软件测试的步骤中, 单元 测试是检验每个模块能否单独工作22.调试是是在测试发现错误之后 (排除错误)纠错 的过程23.成本效益分析是从 方面进行可行性研究24.Jackson方法是面向 数据结构 的软件设计方法25.内聚越高模块的独立性 越好 ;耦合越高模块的独立性 越差 26.软件维护又称为软件的 二次开发 三.判断:1、开发软件就是编写程序。 ()、系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性
23、等测试。()3、生产高质量的软件产品是软件工程的首要目标。( )4、只有了解用户、了解任务,才能设计出好的用户界面。()5、对象是具有相同状态的一组操作的集合。()6、用户本身的技能,个性上的差异,行为方式的不同,不会对人机界面使用造成影响。()7、编程序时应尽可能利用硬件特点以提高程序效率. ()8、软件开发人员对用户需求的理解有偏差,这将导致软件产品与用户的需求不一致,是产生软件危机的唯一原因。( )9、开发一个软件项目总存在某些不确定性,即存在风险。有些风险如果控制得不好,可能导致灾难性的后果。( )10. 程序的可靠性、可维护性和效率通常由程序设计语言、源代码的质量、和语言的实现机制决
24、定的。()11、一般单元测试不可以并行进行。( )12.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。( )13.数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。()14.如果通过软件测试没有发现错误,则说明软件是正确的。( ) 15.快速原型模型可以有效地适应用户需求的动态变化。( ) 16.白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。( )17.用PDL语言写出的程序不可以在计算机上运行 ()18.黑盒测试主要用于测试步骤的后期阶段 ()19.白盒测试主要用于测试步骤的后期阶段 ()20.测试就是调试,都是在计算机上运行程序
25、的 ()四、简答题1什么是软件危机计算机软件的开发和维护过程所遇到的一系列问题。2什么是黑盒测试和白盒测试黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。3软件开发和写程序有什么不同软件包含程序,程序是软件的一部分。软件是程序、数据及其相关文档的完整集合。程序只是为了实现软件的功能和性能要求而编写的指令序列4软件设计的准则5什么是软件的生命周期,包含哪些阶段是软件产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试
26、、验收与运行、维护升级到废弃等阶段6软件测试的步骤有哪些,含义是什么7软件过程模型有那些,各自特点是什么8. 比较黑盒测试和白盒测试的优缺点黑盒测试的优点:适应于阶段测试,从产品功能角度测试,容易入手生成测试数据。缺点:某些代码得不到测试,如果规格说明有误,可能无法发现,不易进行充分性测试。白盒测试的优点:可构成测试数据使特定程序部分得到测试,有一定的充分性度量手段,可生成较多工具支持。缺点:不易生成测试数据,无法对未实现规格说明的部分进行测试,作量大通常只用于单元测试有应用局限。9. 衡量模块独立性的标准是什么,并解释与模块独立的具体关系内聚性和耦合性。 模块的内聚性越高耦合性越低则模块越独
27、立,反之越不独立。10.详细设计用到的有哪些工具五综合题1画出银行储蓄系统、航空售票系统、患者监护系统、运动会管理系统的DFD,信用卡管理系统2给出DFD会转换为SC(结构图)3给出一段代码会画出PAD(问题分析图)作业总汇:一.以下说明和数据流图,回答问题1-4,讲解答填入答题纸的对应栏内。说明:现准备为某银行开发一个信用卡管理系统CCMS,改系统的基本功能为:1.信用卡申请。非信用卡客户填写信用卡申请表,说明所要申请的信用卡类型及申请者的基本信息,提交CCMS。如果信用卡被银行接受,CCMS将记录该客户的基本信息,并发送确认函给客户,告知客户信用卡的有效期限及信贷限额;否则该客户将会收到一
28、封拒绝函。非信用卡客户收到确认函后成为信用卡客户。2.信用卡激活。信用卡客户向CCMS提交激活请求,用信用卡号和密码激活该信用卡。激活操作结束后,CCMS将激活通知发给客户,告知客户其信用卡是否成功激活。3.信用卡客户信息管理。信用卡客户的个人信息可以在CCMS中进行在线管理。每位信用卡客户可以在线查询和修改个人信息4.交易信息查询。信用卡客户使用信用卡进行的每一笔交易都会记录在CCMS中。信用卡客户可以通过CCMS查询并核实其交易信息(包括信用卡交易记录及交易金额)下面是它的顶层图和0层图:问题:1. 将顶层图中得E1-E3填充完整2. 顶层图中缺少三条数据流,根据上面的说明,分别指出这三条
29、数据流的起点和终点3. 0层图中有两条数据流是错的,请指出这两条数据流的名称,并改正4. 根据说明,将0层图中得P1P4的处理名称填充完整个人信息二.是某系学籍管理的一部分(A)(B)分别是同一模块A的两个不同的设计方案,你认为哪一个设计方案较好?请陈述理由我认为(b)方案较好。要评价一个软件结构设计,主要看模块的独立性,要从软件结构的耦合性和内聚性两个方面来衡量。对于(a)方案,模块A 与模块B 之间形成了控制耦合,因此独立性不高,而在B 模块内部,有两个不同的功能被放在一起,形成的是逻辑内聚,内聚性不高。对于(b)方案,模块A 与B1 和B2 之间是数据耦合,独立性较强,在B1 和B2 内部,只完成单一的功能,是功能内聚,因此内聚性高,可维护性好,因此相比而言(b)方案比(a)方案更好些。3(07年下)对于如下的程序流程,当采用语句覆盖法设计测试案例时,至少需要设计( 2 )个测试用例。4(09年)当选用分支覆盖法对以下流程图进行测试时,至少需要设计(6)个测试用例。5.07年上)下面流程图中当用判定覆盖法进行测试时,至少需要( B)个测试用例。A. 2 B. 4 C. 6 D. 86.(09年上半年)McCabe度量法是通过定义环路复杂度,建立程序复杂性的度量,它基于一
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1