东南大学软件学院__软件工程课程——题库之一
- 格式:doc
- 大小:1.25 MB
- 文档页数:21
软件工程学习资料(1)一、填空1、软件工程学的内容可包括理论、结构、方法、工具、环境、管理、规范等。
2、N-S图中的顺序结构:在PAD图中表示为:PAD图设置五种基本控制结构,并允许递归使用。
3、模块的独立程度可以由两个定性标准度量,这两个标准分别称为内聚和耦合。
耦合衡量不同模块彼此之间相互依赖的紧密程度。
内聚衡量一个模块内部各个元素彼此结合的紧密程度。
4、软件测试方法按测试过程是否在实际应用环境中分为静态分析和动态测试。
二、单项选择题1、模块在同一段时间内完成各种初始化工作,这属于。
A.偶然内聚B.逻辑内聚C.时间内聚D.过程内聚2、在编程安全方法方面,一般来说无法做到。
A. 避开错误B.完美无缺,绝无错误C. 冗余D.设计防错程序3、在衡量软件质量时,最重要的标准是。
A. 成本低B. 可维护性好C. 符合要求D. 界面友好4、下列工具中,不属于详细设计工具的是。
A. 测试工具B. 图形工具C. 表格工具D. 语言工具5、下列哪个做法会导致不利的语句结构?A.避免使用ELSE GOTO结构B.对递归定义的数据结构尽量不再使用递归过程C.模块功能尽可能单一化,模块间的耦合能够清晰可见D.利用信息隐蔽,确保每一个模块的独立性三、判断题1、Jackson系统开发方法是一种典型的面向对象的分析设计方法。
(×)2、HIPO图是由一组IPO图加一张HC图组成,是美国IBM公司在软件设计中使用的主要表达工具。
(√)3、在软件开发中采用原型系统策略的主要困难是成本问题。
(√)4、软件开发所需的资源可以画成一个金字塔,塔的高层最基本的资源是人。
(√)5、下图表示的是WHILE型循环。
(×6的顺序,而数据流图只反映数据的流向,不反映处理逻辑的先后。
(√)四、问答题1、什么是软件?答:软件是一种产品,包含下面三方面的含义。
(1)在运行中能提供所希望的功能和性能的指令集(即程序);(2)使程序能够正确运行的数据结构;(3)描述程序研制过程、方法所用的文档。
软件工程习题附答案软件工程是一门研究和应用如何以系统性、规范化、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。
以下是一些与软件工程相关的习题及答案,希望能帮助您更好地理解这门学科。
一、选择题1、软件生存周期中,解决软件“做什么”的阶段是()A 需求分析B 软件设计C 软件实现D 软件测试答案:A解析:需求分析阶段主要是确定软件系统需要完成的功能和性能,解决软件“做什么”的问题。
2、下面不属于软件设计原则的是()A 抽象B 模块化C 自底向上D 信息隐藏答案:C解析:软件设计的原则通常包括抽象、模块化、信息隐藏等,自底向上一般不是软件设计的原则,常见的是自顶向下的设计方法。
3、软件测试的目的是()A 证明软件没有错误B 发现软件中的错误C 改正软件中的错误D 优化软件的性能答案:B解析:软件测试的目的是为了发现软件中存在的错误,而不是证明软件没有错误或直接改正错误、优化性能。
4、下列模型中,不属于软件生命周期模型的是()A 瀑布模型B 快速原型模型C 增量模型D 螺旋模型E 喷泉模型答案:E解析:瀑布模型、快速原型模型、增量模型和螺旋模型都属于常见的软件生命周期模型,喷泉模型则主要强调软件对象之间的无缝迭代。
5、软件维护中,因修改软件而导致出现新错误的维护属于()A 改正性维护B 适应性维护C 完善性维护D 预防性维护答案:A解析:改正性维护是指改正在系统开发阶段已发生而系统测试阶段尚未发现的错误。
在这种维护中,可能会因为修改软件而引入新的错误。
二、填空题1、软件工程包括()、()和()三个要素。
答案:方法、工具、过程2、软件需求分析阶段的工作,可以分为四个方面:()、()、()和()。
答案:需求获取、需求分析、编写需求规格说明书、需求评审3、软件测试的步骤主要包括()、()、()和()。
答案:单元测试、集成测试、系统测试、验收测试4、面向对象的三大特性是()、()和()。
《软件工程》习题集目录一软件与软件工程 (1)二软件项目管理 (4)三需求分析 (7)四面向对象的需求分析 (10)五软件设计 (15)六程序设计语言和编码 (18)七软件测试 (20)八软件维护 (23)综合试卷一 (25)综合试卷二 (28)综合试卷三 (31)附参考答案: (34)一软件与软件工程参考答案 (34)二软件工程管理参考答案 (37)三需求分析参考答案 (39)四面向对象的需求分析参考答案 (43)五软件设计参考答案 (52)六程序设计语言和编码参考答案 (55)七软件测试参考答案 (59)八软件维护参考答案 (62)综合试卷一参考答案及评分标准 (65)综合试卷二参考答案及评分标准 (68)综合试卷三参考答案及评分标准 (71)一软件与软件工程一、选择题1.软件的主要特性是()A、无形性B、高成本C、包括程序和文档D、可独立构成计算机系统2.软件工程三要素是()A、技术、方法和工具B、方法、工具和过程C、方法、对象和类D、过程、模型、方法3.包含风险分析的软件工程模型是()A、螺旋模型B、瀑布模型C、增量模型D、喷泉模型4.软件工程的主要目标是()A、软件需求B、软件设计C、风险分析D、软件实现5.下列属于面向对象开发方法的是()A、BoochB、UMLC、CoadD、OMT6.软件危机的主要表现是()A、软件成本太高B、软件产品的质量低劣C、软件开发人员明显不足D、软件生产率低下7.软件开发方法的主要工作模型有()A、螺旋模型B、循环模型C、瀑布模型D、专家模型8.软件工程的目标有()A、易于维护B、低的开发成本C、高性能D、短的开发期9.软件工程学的目的和意义是()A、应用科学的方法和工程化的规范管理来指导软件开发。
B、克服软件危机。
C、作好软件开发的培训工作。
D、以较低的成本开发出高质量的软件。
二、判断题1.软件就是程序,编写软件就是编写程序。
2.瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。
软件工程题库多选软件工程题库
一、软件工程概述
1.1 软件工程的定义
1.2 软件工程的历史和发展
1.3 软件工程的重要性和作用
1.4 软件工程的基本原则和方法
二、需求分析
2.1 需求分析的目的和任务
2.2 需求获取的方法
2.3 需求分析的基本步骤
2.4 需求规格说明的编写方法
2.5 需求变更管理
三、软件设计
3.1 软件设计的基本概念
3.2 结构化设计方法
3.3 面向对象设计方法
3.4 软件设计的工具和技术
四、软件开发
4.1 软件开发模型
4.2 需求开发
4.3 概要设计和详细设计
4.4 编码和单元测试
4.5 软件集成测试和系统测试
4.6 软件发布和部署
五、软件质量保证
5.1 软件质量的定义和标准5.2 质量保证的方法和技术5.3 质量控制的方法和技术5.4 测试的方法和技术
5.5 缺陷管理和缺陷修复
5.6 配置管理
六、软件项目管理
6.1 项目管理的基本概念
6.2 项目计划和进度管理
6.3 项目资源管理
6.4 项目风险管理
6.5 项目沟通和协作
附件:
附件1:需求规格说明书范例
法律名词及注释:
1:版权:对作品(包括软件)的著作权进行保护的权利。
2:商标:标识企业、商品或服务来源的标记,用于区分同类商品和服务。
3:专利:针对技术发明或创新的独占权。
4:许可证:授予他人使用特定软件的权利的文件。
5:合同:双方或多方达成的法律文件,规定了各方之间的权利和义务。
最新软件工程考试题库(含答案和解析)一、选择题1. 以下哪个不是软件工程的三个基本目标之一?A. 可维护性B. 可靠性C. 可用性D. 低成本答案:D解析:软件工程的三个基本目标是可维护性、可靠性和可用性。
低成本虽然也是一个重要的考虑因素,但并不是软件工程的基本目标。
2. 以下哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A解析:面向对象编程(OOP)通过将数据和操作数据的方法封装在一起,降低了软件复杂性,提高了代码的可重用性和可维护性。
3. 软件开发过程中,以下哪个阶段需要进行需求分析?A. 设计阶段B. 编码阶段C. 测试阶段D. 需求分析阶段答案:D解析:需求分析是软件开发过程中的第一个阶段,其主要任务是明确软件系统的功能、性能等需求。
4. 以下哪个软件工程方法主要关注软件项目的管理?A. 敏捷开发B. ScrumC. UMLD. 设计模式答案:B解析:Scrum 是一种敏捷开发方法,主要关注软件项目的管理和团队协作。
UML(统一建模语言)主要用于软件设计,设计模式主要用于解决软件设计中的常见问题。
5. 以下哪个软件工具主要用于版本控制?A. GitB. EclipseC. JiraD. Visual Studio答案:A解析:Git 是一款分布式版本控制系统,主要用于跟踪和管理软件开发过程中的代码变更。
二、填空题1. 软件工程的基本活动包括______、______、______和______。
答案:需求分析、设计、编码、测试2. 敏捷开发的核心价值观包括______、______、______、______和______。
答案:个体和互动、工作软件、客户协作、响应变化、持续交付3. 软件开发过程中,常用的设计模式包括______、______、______、______和______。
答案:工厂模式、单例模式、策略模式、装饰模式、观察者模式4. 软件测试的目的是______、______和______。
2021年东南大学软件工程专业《计算机组成原理》科目期末试卷B(有答案)一、选择题1、根据存储内容来进行存取的存储器称为()。
A.双端口存储器B.相联存储器C.交叉存储器D.串行存储器2、下列关于虚拟存储器的说法,错误的是()。
A.虚拟存储器利用了局部性原理B.页式虚拟存储器的页面如果很小,主存中存放的页面数较多,导致缺页频率较低,换页次数减少,可以提升操作速度C.页式虚拟存储器的页面如果很大,主存中存放的页面数较少,导致页面调度频率较高,换页次数增加,降低操作速度D.段式虚拟存储器中,段具有逻辑独立性,易于实现程序的编译、管理和保护,也便于多道程序共享3、关于浮点数在IEEE754标准中的规定,下列说法中错误的是()。
I.浮点数可以表示正无穷大和负无穷大两个值Ⅱ.如果需要,也允许使用非格式化的浮点数Ⅲ.对任何形式的浮点数都要求使用隐藏位技术IⅣ.对32位浮点数的阶码采用了偏移值为l27的移码表示,尾数用原码表示4、在浮点机中,判断原码规格化的形式的原则是()。
A.尾数的符号位与第一数位不同B.尾数的第一数位为1,数符任意C.尾数的符号位与第一位相同D.阶符与数符不同5、浮点数加/减运算过程一般包括对阶、尾数运算、规格化、舍入和判断溢出等步骤。
设浮点数的阶码和尾数均采用补码表示,且位数分别为5位和7位(均含两位符号位)。
若有两个数,即x=2×29/32,y=25×5/8,则用浮点数加法计算xty的最终结果是()。
A.001111100010B.001110100010C.010*********D.发生溢出6、在()结构中,外部设备可以和主存储器单元统一编址。
A.单总线B.双总线C.三总线D.以上都可以7、关于总线的叙述,下列说法正确的是()。
I.总线忙信号由总线控制器建立II.计数器定时查询方式不需要总线同意信号III.链式查询、计数器查询、独立请求方式所需控制线路由少到多排序是:链式查询、独立请求方式、计数器查询A.仅I、IIIB.仅II,IIIC.仅IIID.仅II8、计算机硬件能够直接执行的是()。
2021年东南大学软件工程专业《计算机组成原理》科目期末试卷A(有答案)一、选择题1、一个存储器系统中,常常同时包含ROM和RAM两种类型的存储器,如果用lK×8位的ROM芯片和lK×4位的RAM芯片,组成4K×8位的ROM和1K×8位的RAM存储系统,按先ROM后RAM进行编址。
采用3-8译码器选片,译码信号输出信号为Y0~Y7,其中Y4选择的是()。
A.第一片ROMB.第五片ROMC.第一片RAMD.第一片RAM和第二片RAM2、容量为64块的Cache采用组相联映射方式,字块大小为128个字,每4块为一组。
如果主存为4K块,且按字编址,那么主存地址和主存标记的位数分别为()。
A.16,6B.17,6C.18,8 D .19,83、设x为整数,[x]补=1.x1x2x3x4x5,若要x<-16,x1~ x5应满足的条件是()。
A. x1~ x5至少有一个为1B.x1必须为1,x2~x5至少有一个为1C.x1必须为0,x2~x5至少有一个为1D.x1必须为0,x2~x5任意4、对于相同位数(设为N位,且各包含1位符号位)的二进制补码小数和十进制小数,(二进制小数所表示的数的个数)/(十进制小数所能表示的数的个数)为()。
A.(0.2)NB. (0.2)N-1C. (0.02)ND. (0.02)N-15、一个C语言程序在一台32位机器上运行,程序中定义了3个变量x、y、z,其中x和z是int型,y为short型。
当x=127,y=-9时,执行赋值语句z=xty后,x、y、z的值分别是()。
A.x=0000007FH,y=FFF9H,z=00000076HB.x=0000007FH,y=FFF9H,z=FFFFO076HC.X=0000007FH,y-FFF7H,z=FFFF0076HD.X=0000007FH,y=FFF7H,z=00000076H6、某总线共有88根信号线,其中数据总线为32根,地址总线为20根,控制总线36根,总线工作频率为66MHz、则总线宽度为(),传输速率为()A.32bit 264MB/sB.20bit 254MB/sC.20bit 264MB/sD.32bit 254MB/s7、在下列各种情况中,最应采用异步传输方式的是().A.I/O接口与打印机交换信息B.CPU与主存交换信息C.CPU和PCI总线交换信息D.由统一时序信号控制方式下的设备8、在计算机系统中,表明系统运行状态的部件是()。
第一章软件工程概述软件是计算机程序及其有关旳数据和文档旳结合。
软件危机是指在计算机软件开发和维护时所碰到旳一系列问题。
软件危机重要包括两方面旳问题: 一是怎样开发软件以满足对软件日益增长旳需求;二是怎样维护数量不停增长旳已经有软件。
软件工程是软件开发、运行、维护和引退旳系统措施。
软件工程是指导计算机软件开发和维护旳工程学科。
软件工程采用工程旳概念、原理、技术和措施来开发与维护软件。
软件工程旳目旳是实现软件旳优质高产。
软件工程学旳重要内容是软件开发技术和软件工程管理。
软件开发措施学是编制软件旳系统措施, 它确定软件开发旳各个阶段, 规定每一阶段旳活动、产品、验收旳环节和完毕准则。
常用旳软件开发措施有构造化措施、面向数据构造措施和面向对象措施等。
习题参照答案:1) 1. 什么是软件危机?为何会出现软件危机?2)答: 软件危机是指在计算机旳开发和维护过程中所碰到旳一系列严重问题。
这些问题决不仅仅是不能正常运行旳软件才具有旳, 实际上, 几乎所有软件都不一样程度地存在这些问题。
3)出现软件危机旳原因:首先与软件自身旳特点有关, 另首先也和软件开发与维护旳措施不对旳有关。
软件不一样于硬件, 它是计算机系统中逻辑件而不是物理部件。
管理和控制软件开发过程相称困难。
软件是规模庞大, 并且程序复杂性将伴随程序规模旳增长而呈指数上升。
目前相称多旳软件专业人员对软件开发和维护尚有不少糊涂观念, 在实践过程中或多或少地采用了错误旳措施和技术, 这是使软件问题发展成软件危机旳重要原因。
总结如下:4)获得对旳旳顾客需求和对旳地描述需求很困难5)开发人员对需求旳对旳理解也有困难6)常常在没有对旳理解之前就仓促开始编程7)软件项目缺乏有效旳组织、管理和内部交流8)缺乏软件开发措施、模型和工具旳支持9)软件维护旳困难性2. 假设你是一家软件企业旳总工程师, 当你把图1.1给手下旳软件工程师们观看, 告诉他们及早发现并改正错误旳重要性时, 有人不一样意你旳观点, 认为规定在错误进入软件之前就清除它们是不现实旳, 并举例说: “假如一种故障是编码错误导致旳, 那么, 一种人怎么能在设计阶段清除它呢?”你怎么反驳他?答: 在软件开发旳不一样阶段进行修改付出旳代价是很不相似旳, 在初期引入变动, 波及旳面较少, 因而代价也比较低;在开发旳中期, 软件配置旳许多成分已经完毕, 引入一种变动要对所有已完毕旳配置成分都做对应旳修改, 不仅工作量大, 并且逻辑上也更复杂, 因此付出旳代价剧增;在软件已经完毕时再引入变动, 当然付出旳代价更高。
2022年东南大学软件工程专业《计算机网络》科目期末试卷A(有答案)一、选择题1、比特的传播时延与链路带宽的关系是()。
A.没有关系B.反比关系C.正比关系D.无法确定2、以下说法错误的是()。
I..广播式网络一般只包含3层,即物理层、数据链路层和网络层II.Intermet的核心协议是TCP/IPIII.在lnternet中,网络层的服务访问点是端口号A. I、II、IIIB. IIIC. I、ⅢD. I、II3、如果IPv4的分组太大,则会在传输中被分片,那么在()地方将对分片后的数据报重组。
A.中间路由器B.下一跳路由器C.核心路由器D.H的端主机4、在一条点对点的链路上,为了减少地址的浪费,子网掩码应该指定为()。
A.255.255.255.252B.255.255.255.248C.255.255.255.240D.255.255.255.1965、信道速率为4kbit/s,采用停止-等待协议。
传播时延t=20ms,确认帧长度和处理时间均可忽略。
问帧长()才能使信道的利用率达到至少50%。
A.40bitB.80bitC.160bitD.320bit6、通过交换机连接的一组工作站()。
A.组成一个冲突域,但不是一个广播域B.组成一个广播域,但不是一个冲突域C.既是一个冲突域,又是一个广播域D.既不是冲突域,也不是广播域7、如图所示,为两个局域网LAN1和LAN2通过网桥1和网桥2互连后形成的网络结构。
假设站A发送一个帧,但其目的地址均不在这两个网桥的地址转发表中,这样的结果会是该帧()。
A.经网桥1(或网桥2)后被站B接收B.被网桥1(或网桥2)丢弃C.在整个网络中无限次地循环下去D.经网桥1(或网桥2)到达LAN2,再经过网桥2(或网桥1)返回LANI后被站A吸收8、数据段的TCP报头中为什么包含端口号()。
A.指示转发数据段时应使用正确的路由器接口B.标识接收或转发数据段时应使用的交换机端口C.让接收主机以正确的顺序组装数据报D.让接收主机转发数据到适当的应用程序9、有一条TCP连接,它的最大报文段长度为2KB,TCP拥塞窗口为24KB,这时候发生了超时事件,那么该拥塞窗口变成了()。
东南大学软件学院研究生课程考试试卷第一部分:基本概念题(60%)答题要求:(共60题,每题1分)请在每题的四个选项中,选择你认为最合适的一个答案,多选无效。
1、考察软件系统和软件项目的复杂性主要是看√B、技术的复杂度和管理的难度是主要标准2、《人月神话》作者Brooks对寻找银弹感到失望的理由是√C、任何单独的软件工程技术的进展都不能根本解决问题3、软件生命周期模型与软件开发过程的关系是√D、是技术、产品、项目、支撑环节,提供了平台和框架4、你认为,对现在的软件开发而言,传统的瀑布模型实用价值是√B、仍然有实用价值,软件开发团队需要先用好瀑布模型,然后再考虑与其他模型综合5、敏捷开发的小规模、频繁迭代的前提条件是√B、是用户积极参与的项目6、RUP模型更好地反映了现代软件工程的要求,是因为√C、更符合UP的理念,考虑的软件过程模型比较全面7、现代软件工程的过程管理的综合性表现在√D、过程的交汇点要根据项目的目标,综合考虑技术和管理的不同需要8、软件产品线的概念是√D、是满足特定市场或用户需求,具有公共可管理特性的产品的组合9、什么是构成软件产品线基础的核心资源√C、构架、组件、领域模型、需求陈述、工程文档和规格等10、软件产品开发与软件项目开发的区别是√D、项目是产品的具体实施,各自的目标不同11、对于项目章程的内容,以下哪个说法不属实√C、项目章程中,明确认可和承认了项目的存在12、项目经理如何才能更好地获得执行组织对项目的支持√B、把对项目的需求与组织的战略计划相联系13、目标管理是项目管理中基本的原则和方法,同时项目是运用目标管理技术的理想环境,因为?√A、所有项目应该强烈地以项目目标为导向14、下列哪项不是项目生命周期的一个过程√A、可行性研究15、下列哪种文件是项目队伍与项目客户之间通过确定项目目标及主要的项目可交付成果而达成协议的基础√C、范围说明书16、确定项目范围边界的主要因素是√A、依据用户需求及项目资源,对项目做什么和不做什么的定义17、项目章程的最主要意义是√B、确认项目诞生并为项目经理授权18、项目管理中的里程碑事件作用是√C、项目进行绩效考核和沟通协调管理的依据19、用一句话最确切地描述需求是√D、需求是对系统将要实现的功能、性能、质量和必须满足的约束的叙述20、最准确地描述角色与用例概念的一句话是√C、角色是与系统交互的人或其他系统,用例是角色完成的事件序列21、通过角色和用例分析,产生类图的过程中,角色与类的关系是√B、从角色到用例、再到类图,是一个分析过程22、通过建立业务模型,我们能够√A、分析领域中的角色、功能关系、组织架构、业务规则等23、下述哪一个说法是对OMT三种模型的最确切描述√B、对象模型定义了对象及彼此间关系的映射,动态模型表示瞬时的、行为24、需求获取阶段建立的业务模型与项目范围的关系√C、良好的业务模型有利于开发团队与用户就项目范围进行沟通25、现代软件工程需求开发阶段的需求分析是√B、是一个细化系统定义,并在需求与设计之间进行平衡的过程26、需求形式化的意义是√B、使得需求在可分解、可追溯的基础上进行开发和管理27、软件开发的基线的含义是√A、是软件制品通过测试和评审,成为继续开发或发布的基准28、需求状态的意义是√D、需求状态构成控制软件开发过程的需求基线的里程碑29、按CMM的定义要求需求评审的关键是√B、确定他们是否技术可行、适用于软件实现、定义清晰、可测试30、用户界面友好的可检验标准是√D、将友好性转化为可客观度量的其他质量属性进行检验31、在HOLIS系统的范围定义例子中,指令性基线的含义是√D、反映的是功能需求的范围约定32、在HOLIS系统的范围定义例子中,资源限制是如何表现的√B、在功能选择的排序中,考虑资源的因素33、需求评审的主要内容是由公司组织的专家对用户业务的合理性进行评审,你认为√C、需求评审的前提是假定用户需求都是必要和合理的,并由用户自行负责34、需求追踪链的意义是指√D、可以验证需求实现的程度,跟踪需求实现的过程35、需求稳定性的作用是√B、可以检查需求管理与开发的效率和控制水平36、为什么说用功能点度量取代代码行度量更具有合理性√C、功能点度量更全面37、在需求阶段,反映需求过程本身质量的可度量属性应该是√D、功能点的可追踪性和实现过程的稳定性38、组成体系结构的主要要素是√D、构成单元、连接方式和连接关系39、ISO/OSI的网络七层协议为层次结构设计提供的最好参考是√B、提出了基于服务、接口、协议的分层思想和概念40、系统概要设计的任务是√A、将需求分析模型映射为具体的软件体系结构41、基于DFD的传统体系结构设计方法最主要的缺点是√C、当数据流变化的时候,系统结构也要发生变化42、作为一种战术方法,一般应在系统设计的哪个阶段,考虑采用何种面向对象的设计模式√C、在子系统设计阶段,结合模块划分,考虑采用那种设计模式43、在体系结构方法中,“表驱动”是一种√D、用表格表示模块之间的一种间接调用关系44、基于DFD的传统体系结构设计方法最主要的缺点是√C、当数据流变化的时候,系统结构也要发生变化45、为什么说算法的优劣有时对系统性能指标的影响并不是最关键的√C、单个模块性能的提高,对系统性能提升作用有限46、为什么说模块的合理划分比增加一些代码注释更使系统易于维护√C、合理的模块划分可提高问题定位和回归测试的效率47、在评价一个软件系统的易用性时,你会更多地关注√D、运用合理的设计,使得用户很容易使用系统达到自己的应用目的48、MVC模式的关键机制是√D、把数据表示与输入控制、数据存储、功能逻辑分离开来49、MVC控制器的作用是√B、根据模型的状态和需要,改变对用户输入的控制方式50、采用MVC模式的理由是√D、可以采用发布-订阅模式,控制用户的表示和输入操作51、质量要素是指:√C、是一组与用户质量需求相一致的、可度量的系统特性52、项目管理中质量计划与质量体系之间的区别在于:√A、计划的对象是具体的产品、项目、服务或合同53、帕累托图(Pareto Charts)有助于项目经理:√A、集中于质量改进的最关键的问题54、当一项产品或服务完全达到客户要求时:√A、质量也达到了55、软件质量保证的确认(Validation)过程是√D、测试、度量、可靠性增长56、软件质量保证的验证(Verification)过程是√D、评审、度量、配置管理57、集成测试是在项目组还是由独立测试部门进行,主要看√C、软件系统的框架与体系结构的控制需要58、以下内容较好地描述了配置项的分类√A、是开发过程中程序、数据、文档和过程记录59、以下描述最好地说明了基线在软件管理中的作用√A、基线是项目开发过程的制品经过正式评审并被相关人员一致同意,可以作为以后项目开发的基础60、软件项目、软件工程、软件过程、软件产品,从总体到具体的关联关系排列应该是√D、软件工程、软件过程、软件产品、软件项目软工考题回忆判断题1.2道黑盒白盒的概念(求补充)白盒测试:是通过程序的源代码进行测试而不使用用户界面。
东南大学软件学院研究生课程考试试卷第一部分:基本概念题(60%)答题要求:(共60题,每题1分)请在每题的四个选项中,选择你认为最合适的一个答案,多选无效。
1、考察软件系统和软件项目的复杂性主要是看√B、技术的复杂度和管理的难度是主要标准2、《人月神话》作者Brooks对寻找银弹感到失望的理由是√C、任何单独的软件工程技术的进展都不能根本解决问题3、软件生命周期模型与软件开发过程的关系是√D、是技术、产品、项目、支撑环节,提供了平台和框架4、你认为,对现在的软件开发而言,传统的瀑布模型实用价值是√B、仍然有实用价值,软件开发团队需要先用好瀑布模型,然后再考虑与其他模型综合5、敏捷开发的小规模、频繁迭代的前提条件是√B、是用户积极参与的项目6、RUP模型更好地反映了现代软件工程的要求,是因为√C、更符合UP的理念,考虑的软件过程模型比较全面7、现代软件工程的过程管理的综合性表现在√D、过程的交汇点要根据项目的目标,综合考虑技术和管理的不同需要8、软件产品线的概念是√D、是满足特定市场或用户需求,具有公共可管理特性的产品的组合9、什么是构成软件产品线基础的核心资源√C、构架、组件、领域模型、需求陈述、工程文档和规格等10、软件产品开发与软件项目开发的区别是√D、项目是产品的具体实施,各自的目标不同11、对于项目章程的内容,以下哪个说法不属实√C、项目章程中,明确认可和承认了项目的存在12、项目经理如何才能更好地获得执行组织对项目的支持√B、把对项目的需求与组织的战略计划相联系13、目标管理是项目管理中基本的原则和方法,同时项目是运用目标管理技术的理想环境,因为?√A、所有项目应该强烈地以项目目标为导向14、下列哪项不是项目生命周期的一个过程√A、可行性研究15、下列哪种文件是项目队伍与项目客户之间通过确定项目目标及主要的项目可交付成果而达成协议的基础√C、范围说明书16、确定项目范围边界的主要因素是√A、依据用户需求及项目资源,对项目做什么和不做什么的定义17、项目章程的最主要意义是√B、确认项目诞生并为项目经理授权18、项目管理中的里程碑事件作用是√C、项目进行绩效考核和沟通协调管理的依据19、用一句话最确切地描述需求是√D、需求是对系统将要实现的功能、性能、质量和必须满足的约束的叙述20、最准确地描述角色与用例概念的一句话是√C、角色是与系统交互的人或其他系统,用例是角色完成的事件序列21、通过角色和用例分析,产生类图的过程中,角色与类的关系是√B、从角色到用例、再到类图,是一个分析过程22、通过建立业务模型,我们能够√A、分析领域中的角色、功能关系、组织架构、业务规则等23、下述哪一个说法是对OMT三种模型的最确切描述√B、对象模型定义了对象及彼此间关系的映射,动态模型表示瞬时的、行为24、需求获取阶段建立的业务模型与项目范围的关系√C、良好的业务模型有利于开发团队与用户就项目范围进行沟通25、现代软件工程需求开发阶段的需求分析是√B、是一个细化系统定义,并在需求与设计之间进行平衡的过程26、需求形式化的意义是√B、使得需求在可分解、可追溯的基础上进行开发和管理27、软件开发的基线的含义是√A、是软件制品通过测试和评审,成为继续开发或发布的基准28、需求状态的意义是√D、需求状态构成控制软件开发过程的需求基线的里程碑29、按CMM的定义要求需求评审的关键是√B、确定他们是否技术可行、适用于软件实现、定义清晰、可测试30、用户界面友好的可检验标准是√D、将友好性转化为可客观度量的其他质量属性进行检验31、在HOLIS系统的范围定义例子中,指令性基线的含义是√D、反映的是功能需求的范围约定32、在HOLIS系统的范围定义例子中,资源限制是如何表现的√B、在功能选择的排序中,考虑资源的因素33、需求评审的主要内容是由公司组织的专家对用户业务的合理性进行评审,你认为√C、需求评审的前提是假定用户需求都是必要和合理的,并由用户自行负责34、需求追踪链的意义是指√D、可以验证需求实现的程度,跟踪需求实现的过程35、需求稳定性的作用是√B、可以检查需求管理与开发的效率和控制水平36、为什么说用功能点度量取代代码行度量更具有合理性√C、功能点度量更全面37、在需求阶段,反映需求过程本身质量的可度量属性应该是√D、功能点的可追踪性和实现过程的稳定性38、组成体系结构的主要要素是√D、构成单元、连接方式和连接关系39、ISO/OSI的网络七层协议为层次结构设计提供的最好参考是√B、提出了基于服务、接口、协议的分层思想和概念40、系统概要设计的任务是√A、将需求分析模型映射为具体的软件体系结构41、基于DFD的传统体系结构设计方法最主要的缺点是√C、当数据流变化的时候,系统结构也要发生变化42、作为一种战术方法,一般应在系统设计的哪个阶段,考虑采用何种面向对象的设计模式√C、在子系统设计阶段,结合模块划分,考虑采用那种设计模式43、在体系结构方法中,“表驱动”是一种√D、用表格表示模块之间的一种间接调用关系44、基于DFD的传统体系结构设计方法最主要的缺点是√C、当数据流变化的时候,系统结构也要发生变化45、为什么说算法的优劣有时对系统性能指标的影响并不是最关键的√C、单个模块性能的提高,对系统性能提升作用有限46、为什么说模块的合理划分比增加一些代码注释更使系统易于维护√C、合理的模块划分可提高问题定位和回归测试的效率47、在评价一个软件系统的易用性时,你会更多地关注√D、运用合理的设计,使得用户很容易使用系统达到自己的应用目的48、MVC模式的关键机制是√D、把数据表示与输入控制、数据存储、功能逻辑分离开来49、MVC控制器的作用是√B、根据模型的状态和需要,改变对用户输入的控制方式50、采用MVC模式的理由是√D、可以采用发布-订阅模式,控制用户的表示和输入操作51、质量要素是指:√C、是一组与用户质量需求相一致的、可度量的系统特性52、项目管理中质量计划与质量体系之间的区别在于:√A、计划的对象是具体的产品、项目、服务或合同53、帕累托图(Pareto Charts)有助于项目经理:√A、集中于质量改进的最关键的问题54、当一项产品或服务完全达到客户要求时:√A、质量也达到了55、软件质量保证的确认(Validation)过程是√D、测试、度量、可靠性增长56、软件质量保证的验证(Verification)过程是√D、评审、度量、配置管理57、集成测试是在项目组还是由独立测试部门进行,主要看√C、软件系统的框架与体系结构的控制需要58、以下内容较好地描述了配置项的分类√A、是开发过程中程序、数据、文档和过程记录59、以下描述最好地说明了基线在软件管理中的作用√A、基线是项目开发过程的制品经过正式评审并被相关人员一致同意,可以作为以后项目开发的基础60、软件项目、软件工程、软件过程、软件产品,从总体到具体的关联关系排列应该是√D、软件工程、软件过程、软件产品、软件项目软工考题回忆判断题1.2道黑盒白盒的概念(求补充)白盒测试:是通过程序的源代码进行测试而不使用用户界面。
这种类型的测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。
黑盒测试:又被称为功能测试、数据驱动测试或基于规格说明的测试,是通过使用整个软件或某种软件功能来严格地测试, 而并没有通过检查程序的源代码或者很清楚地了解该软件的源代码程序具体是怎样设计的。
测试人员通过输入他们的数据然后看输出的结果从而了解软件怎样工作。
2.可维护性是非功能性需求选择题2.就记得第二题B选项又考到了UML是哪三位大神发明的= =,结果还就选的B。
OMT (James Rumbaugh)OOSE (Ivar Jacobson)Booch (Grady Booch)3.UML状态图关于动作action描述错的是动作是选取一组输入且产生一组输出并最终可改变系统状态的。
动作的执行只需要一小段时间且执行不可中断。
例如,一个动作可通过一个操作调用实现。
动作可在一个状态机中的如下三处位置发生:当一条迁移被选中时;当进入一个状态时;当退出一个状态时。
在迁移期间,源状态的退出状态首先执行,接着执行与该迁移相关联的动作,再接着执行进入目标状态的动作。
当从一个状态进入和退出时,进入动作和退出动作总是会分别被执行。
这些动作不依赖于指定用于进入状态和退出状态的迁移。
4.哪个是计划外沟通(A.EMAIL B.NEWSGROUP C.MEETING D.WWW)答案:A.EMAIL计划内沟通:问题陈述,客户评审,项目浏览,同行评审,现状浏览,集思广益,发布,事后浏览……计划外沟通:需求的澄清,需求的变化,问题求解书P70-775.哪类人不关心类图(A.应用域专家B.end users C.系统分析师D.对象设计师(D不确定))答案:B6.软件并发过程错误发现越早,为改正它所付出的代价越?(A.接近平均水平B.大C.小D.复杂)软件开发时,一个错误发现得越晚,为改正它所付出的代价就【A】。
A)越大 B)越小 C)越不可捉摸 D)越接近平均水平7.模型向源代码的映射属于:(A.前项过程B.后项过程C.模型转换D.我忘了(是我忘了不是卷子写着我忘了))模型转换是作用于某一模型上,以产生另一模型。
重构是通过对源代码的操作而进行转换。
正向工程应用于对象元素集合上,并生成一组对应的源代码语句集合,如类声明、Java表达式或数据库模式。
逆向工程应用于源代码元素集合,并产生模型元素集合,用于现存系统重新构建模型。
10.条件覆盖的涵义是__A.每个判定结果都要执行一次B.判定表达式中的每个条件都要取到各种可能结果C.测试程序中每个语句至少执行一次D.判定表达式中每个条件都取到各种可能值,且每个判定亦取到各种可能值条件覆盖是指选择足够的测试用例,使得运行这些测试用例后,要使每个判断中每个条件的可能取值至少满足一次,但未必能覆盖全部分支对于判断/分支覆盖而言,即使一个布尔表达式含有多个逻辑表达式我们也只需要测试每个布尔表达式的值分别为真和假两种情况就可以了。
条件覆盖要检查每个符合谓词的子表达式值为真和假两种情况,要独立衡量每个子表达式的结果,以确保每个子表达式的值为真和假两种情况都被测试到。
简答题:1.什么是软件工程?软件生命周期一般包含哪几个阶段?软件工程是指导计算机软件开发和维护的一门工程学科,包括技术和管理两个方面。
软件生命周期一般包含三个阶段:软件定义:问题定义,可行性研究,需求分析软件开发:总体设计、详细设计、编码实现、软件测试软件维护:改正性、适应性、完善性、预防性维护2.写出CMM,OOAD,LOC,COCOMO,UML的英文全称写出ODD,OSI,API,OOA的英文全称。