软件工程复习试题及答案
软件工程复习题及答案
软件工程复习题及答案一、选择题软件工程复习题(一)1、瀑布模型本质上是一种()A、线性顺序模型B、顺序迭代模型C、线性迭代模型D、及早见产品模型2、使用程序设计的控制结构导出测试用例的测试方法是()A、黑盒测试B、白盒测试C、边界测试D、系统测试3、软件结构图的形态特征能反映程序重用率的是()A、深度B、宽度C、扇入D、扇出4、软件结构图中,模块框之间若有直线连接,表示它们之间存在() A、调用关系B、组成关系C、链接关系D、顺序执行关系5、需求分析最终结果是产生()A、项目开发计划B、需求规格说明书C、设计说明书D、可行性分析报告6、快速原型模型的主要特点之一是()A、开发完毕才见到产品B、及早提供全部完整的软件产品C、开发完毕后才见到工作软件D、及早提供工作软件7、若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。
设计这组测试用例的方法是()A、条件覆盖法B、等价分类法C、边界值分析法D、错误推测法8、软件详细设计主要采用的方法是()A、模块设计B、结构化设计C、PDL 语言D、结构化程序设计9、开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 () A、.软件工程B、软件周期C、软件危机D、软件产生10、按软件生命周期方法设计软件的过程中,画数据流图属于下面哪个阶段的工作()A、需求分析B、概要设计C、详细设计D、软件维护11、在快速原型模型的开发过程中,仅作为需求说明的补充形式的原型是()A、探索型模型B、演化型模型C、实验型模型D、提交型模型12、程序设计语言的工程特性之一为()A、软件的可重用性B、数据结构的描述性C、抽象类型的描述性D、数据库的易操作性13、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为 ()A、可用性B、可靠性C、正确性D、完整性14、模块设计中,最不希望的内聚是()A、功能内聚B、通信内聚C、过程内聚D、偶然内聚15、实施快速原型模型方法开发软件的关键在于()A、CASE 工具的支持B、如何开发演化型模型C、项目主管的支持D、开发人员的素质16、程序流程图(框图)中的箭头代表()。
软件工程考试题及答案
软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的三要素不包括以下哪一项?A. 工具B. 方法C. 过程D. 环境答案:D2. 软件需求分析阶段的主要任务是确定软件的()。
A. 功能需求B. 性能需求C. 界面需求D. 所有选项答案:D3. 软件测试的目的是()。
A. 发现软件中的错误B. 证明软件是正确的C. 验证软件是否满足需求D. 所有选项答案:D4. 以下哪一项不是软件维护的类型?A. 纠错性维护B. 适应性维护C. 完善性维护D. 开发性维护答案:D5. 软件项目管理的主要目标是()。
A. 提高软件质量B. 控制成本C. 缩短开发周期D. 所有选项答案:D6. 瀑布模型的主要缺点是()。
A. 缺乏灵活性B. 难以适应需求变化C. 无法并行开发D. 所有选项答案:D7. 敏捷开发方法的核心理念是()。
A. 以文档为中心B. 以人为中心C. 以过程为中心D. 以工具为中心答案:B8. 软件配置管理的主要目的是()。
A. 确保软件的一致性B. 跟踪软件的变更C. 控制软件的版本D. 所有选项答案:D9. 以下哪一项不是软件工程的原则?A. 抽象B. 模块化C. 复用D. 随机性答案:D10. 软件工程的目标是()。
A. 开发高质量的软件B. 提高软件生产率C. 降低软件成本D. 所有选项答案:D二、多项选择题(每题3分,共15分)1. 软件需求分析阶段可能包括以下哪些活动?A. 需求收集B. 需求分析C. 需求规格说明D. 需求验证答案:ABCD2. 软件测试的类型包括以下哪些?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD3. 软件维护的常见原因包括以下哪些?A. 适应环境变化B. 修正软件缺陷C. 提高软件性能D. 增加新功能答案:ABCD4. 软件项目管理的关键活动包括以下哪些?A. 项目规划B. 项目监控C. 项目沟通D. 风险管理答案:ABCD5. 软件工程中的常见开发模型包括以下哪些?A. 瀑布模型B. 螺旋模型C. 敏捷模型D. 增量模型答案:ABCD三、判断题(每题2分,共10分)1. 软件工程的目标是开发出零缺陷的软件。
软件工程复习题及答案
2006-2007-2软件工程复习一、单项选择题(20选10)1. 结构化分析的主要描述手段有( B )。
A. 系统流程图和模块图B. DFD图、数据词典、加工说明C. 软件结构图、加工说明D. 功能结构图、加工说明2. 用于表示模块间的调用关系的图叫( D )。
A.PAD B.SC C.N-S D.HIPO3. 在( B )模型中是采用用例驱动和架构优先的策略,使用迭代增量建造方法,软件“逐渐”被开发出来的。
A.快速原型 B. 统一过程 C.瀑布模型 D. 螺旋模型4. 常用的软件开发方法有面向对象方法、面向( A )方法和面向数据方法。
A. 过程B. 内容C. 用户D. 流程5 从工程管理的角度来看,软件设计分两步完成( D )。
A. ①系统分析②模块设计B. ①详细设计②概要设计C. ①模块设计②详细设计D. ①概要设计②详细设计6. 程序的三种基本结构是( B )。
A. 过程、子程序、分程序 B.顺序、条件、循环C.递归、堆栈、队列 D.调用、返回、转移7. 程序的三种基本结构是( B )。
A. 过程、子程序、分程序 B.顺序、条件、循环C.递归、堆栈、队列 D.调用、返回、转移8. SD方法衡量模块结构质量的目标是( C )。
A. 模块间联系紧密,模块内联系紧密B. 模块间联系紧密,模块内联系松散C. 模块间联系松散,模块内联系紧密D. 模块间联系松散,模块内联系松散9.为提高软件测试的效率,应该( C )。
A.随机地选取测试数据 B.取一切可能的输入数据作为测试数据C.在完成编码后制定软件测试计划 D.选择发现错误可能性大的数据作为测试数据10.( D )测试用例发现错误的能力较大。
A.路径覆盖B.条件覆盖C.判断覆盖D.条件组合覆盖11.软件需求分析应确定的是用户对软件的( A )。
A. 功能需求和非功能需求B. 性能需求C. 非功能需求D. 功能需求12.下列各种图可用于动态建模的有( C )。
软件工程复习题与答案
二、填空题1.为了支持软件人员开发和维护活动而使用的软件一般是指___软件工具_____。
3.在软件结构的设计中,各个模块之间要力求降低耦合性,提高__内聚性_____。
5.数据流图(DFD)一般可分为变换型和__事务性_____两类。
6.软件维护的内容包括校正性维护、适应性维护、__完善性维护__和预防性维护。
7.软件的生产经历了三个阶段,分别是程序设计时代、程序系统时代和___软件工程时代___。
8.渐增模型是瀑布模型的变种,分为两类:增量构造模型和__演化提交模型__。
9.状态图反映了_事件与状态____的关系。
10.软件项目管理过程一个关键的活动是__制定项目计划__,它是软件开发工作的第一步。
11.组成软件的两个部分是:____程序和文档________。
14.变换型数据流图是由输入、__变换(或处理)_____和输出三部分组成的。
15.Jackson方法是一种面向___数据结构_____的开发方法。
16.结构化语言是介于___自然语言_____和形式语言之间的一种半形式语言。
17.软件产品在交付使用之前一般要经过___单元测试___、集成测试、确认测试和系统测试。
18.不采用软件工程的方法开发软件,软件只有程序而无文档,从而导致维护工作困难,这是一种__结构化______的维护。
19.子类自动共享父类数据结构和方法的机制是___继承性_____,这是类之间的一种关系。
21.软件生产的发展经历了三个阶段,分别是程序设计时代、程序系统时代和___软件工程____时代。
22.可行性研究从以下三个方面研究每种解决方法的可行性:经济可行性、社会可行性和__技术可行性____。
23.HIPO图的H图用于描述软件的层次关系,矩形框表示一个模块,矩形框之间的直线表示模块之间的____调用_____关系。
24.数据流图描绘数据在系统中___流动和处理___的过程。
25.为了便于对照检查,测试用例应由输入数据和预期的___输出结果(输出数据)____两部分组成。
软件工程复习题库带答案完整版
软件工程复习题库带答案完整版一、选择题1、白盒测试法是通过分析程序的(C)来设计测试用例的。
A.应用范围B.功能C.内部逻辑D.输入数据2、风险预测从两个方面评估风险,即风险发生的可能性以及(D)。
A.风险产生的原因B.风险监控技术C.风险能否消除D.风险发生所产生的后果3、极限编程(XP)由价值观、原则、实践和行为四部分组成,其中价值观包括沟通、简单性和(C)。
A.好的计划B.不断的发布C.反馈和勇气D.持续集成4、等价分类法的关键是(C)。
A.确定等价类的边界条件B.按照用例来确定等价类C.划分等价类D.确定系统中相同和不同的部分5、下列不属于黑盒测试的技术是(A)。
A.程序段或语句的功能 B.模块的接口C.数据的名称和用途 D.模块的功能6、为了提高模块的独立性,模块之间最好是(D)耦合。
A.控制耦合B.公共耦合C.内容耦合D.数据耦合7、一个软件开发过程描述了“谁做”,“做什么”,“怎么做”和“什么时候做”,RUP用(A)来表述“谁做”。
A.角色B.活动C.制品D.工作流8、功能性注释嵌入在源程序内部,它是用来说明(A)。
A.程序段或语句的功能 B.模块的接口C.数据的名称和用途 D.模块的功能9、在结构化分析方法中,数据字典是重要的文档。
对加工的描述是数据字典的组成内容之一,常用的加工描述方法有( C )。
A.只有结构化语言 B.有结构化语言和判定树C.有结构化语言、判定树和判定表 D.有判定树和判定表10、某银行为了使其网上银行系统能够支持信用卡多币种付款功能而进行扩充升级,这需要对数据类型稍微进行一些改变,这一状况需要对网上银行系统进行( B )维护。
A.正确性 B.适应性C.完善性 D.预防性11、软件危机的主要原因是(A)。
A软件本身特点与开发方法B对软件的认识不够C软件生产能力不足D软件工具落后12、13、下列关于面向对象分析与设计说法错误的是(C)。
A.面向对象的设计以面向对象分析为基础归纳出类B.建立类结构或进一步构造成类库,实现分析结果对问题空间的抽象C.面向对象的设计是面向对象分析的另一种思维方式D.面向对象的设计是面向对象分析进一步的细化和更高的抽象14、在软件的可行性分析中,可以从不同的角度对软件进行研究,其中(B)是从软件的功能可行性角度考虑的。
软件工程练习题库+答案
软件工程练习题库+答案一、单选题(共56题,每题1分,共56分)1.实现虚存最主要的技术是()。
A、整体对换B、整体覆盖C、多道程序设计D、部分对换正确答案:D2.逻辑回归算法通常使用下列哪种方法求解A、统计分析B、梯度下降迭代优化C、直接求解D、相识度计算正确答案:B3.从二叉搜索树中查找一个元素时,其时间复杂度大致为A、O(n)B、O(n2)C、O(1)D、O(log2n)正确答案:D4.下面哪些概念在页式虚拟存储管理系统中一定用到?()A、抖动B、段表C、缺页中断D、联想存储器正确答案:C5.msconfig命令可以用来配置()。
A、系统配置B、协议配置C、服务配置D、应用配置正确答案:A6.执行完当前指令后, PC 中存放的是后继指令的地址,因此 PC 的位数和()的位数相同。
A、指令寄存器B、程序状态字寄存器C、主存地址寄存器D、指令译码器正确答案:C7.下列不属于防火墙核心技术的是()。
A、(静态/动态)包过滤技术B、NAT技术C、应用代理技术D、日志审计正确答案:D8.求 2n 个数中的最大值和最小值,最少的比较次数是A、4n/3B、2n-2C、3n-2D、3n/2正确答案:C9.LSTM网络主要解决了RNN中遇到的哪些问题A、不可并行计算,速度提升B、无法处理语言数据C、可以有选择的记忆D、特征编码稀疏问题正确答案:C10.当你感觉到你的Win2003运行速度明显减慢,当打开任务管理器后发现CPU使用率达到了100%,你认为你最有可能受到了()攻击。
A、缓冲区溢出攻击B、木马攻击C、暗门攻击D、DOS攻击正确答案:D11.A方有一对密钥(KA公开,KA秘密),B方有一对密钥(KB公开,KB秘密),A方向B方发送数字签名M,对信息M加密为:M’= KB 公开(KA秘密(M))。
B方收到密文的解密方案是()。
A、KB公开(KA秘密(M’))B、KA公开(KA公开(M’))C、KA公开(KB秘密(M’))D、KB秘密(KA秘密(M’))正确答案:C12.df.head(6)的含义是A、展示数据中前6条数据B、展示数据中第6条数据C、展示数据中后6条数据D、删除数据中的前6条正确答案:A13.关于机器学习与深度学习的描述正确的是A、深度学习算法不需要对数据进行预处理B、深度学习算法只能应用在计算机视觉与自然语言处理中C、深度学习算法优于机器学习算法D、深度学习算法通常迭代速度较慢正确答案:D14.信息安全中PDR模型的关键因素是()。
软件工程复习试题及答案
一、填空题在下划线上填写正确的答案,每题2分,共20分1.等价划分是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数;2.数据流图和数据字典共同构成了系统的逻辑模型;3.盒图也称为 N-S图 ;这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题;4.软件有效性,指软件系统的时间和空间效率;6.数据流图有四种基本成分:源、终点,处理,存储,数据流 ;7其中数据项是组成数据流和数据存储的最小元素;8.软件工程中的结构化分析SA是一种面向数据流的分析方法;9.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个由下而上的过程; 10.耦合性与内聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到高内聚、低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础;1.常用的软件开发模型有瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型 ;2.软件生存周期一般可分为问题定义、可行性研究、需求分析、设计、编码、单元测试、运行与维护阶段;3.软件测试的步骤:单元、集成、系统、验收 ;4.数据流图的基本符号包括加工、数据流、数据存储文件、汇点 ;5.IPO图由输入、处理和输出三个框组成;这个图的特点是能够直观的显示三者之间的关系;6.面向对象方法是一种运用类、实例、属性、重载、消息传送、多态性等概念来构造系统的软件开发方法;7.分析已有的程序,寻求比源代码更高级的抽象表现形式,这就是软件的逆向工程 ;8.程序测试是对编码阶段的语法错、语义错和运行错进行查找的编码执行活动;9.为了获得较高的模块独立性,尽量设计出具有高内聚和低藕合性能的模块;10.常用的测试方法有黑盒测试和白盒测试 ;1.可行性研究,应从技术可行性、经济可行性、运行可行性和法律和社会效益可行性等方面研究;2.构化程序设计中程序主要的3种基本控制结构是顺序结构、选择结构、循环结构;3.软件生存周期中时间最长、花费精力和费用最多的一个阶段是维护阶段;4.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是功能需求 ;7.分析已有的程序,寻求比源代码更高级的抽象表现形式,这就是软件的逆向工程 ;8.程序测试是对编码阶段的语法错、语义错和运行错进行查找的编码执行活动进行查找的编码执行活动;9.为了获得较高的模块独立性,尽量设计出具有低耦合和高内聚性能的模块;1.若年利率为i,n年后可得钱数为F则现在的价值 F/1+Ni ;2.在结构化分析中用来描述加工逻辑的主要工具是结构化语言、判定表、判定树 ;3.软件测试的步骤:制定、设计、实施测试、测试后调试、做4.自顶向下结合的渐增测试法,在组合模块时有两种组合策略:7;1;2;3.HIPO图是由一组IPO图和一张H 图组成;4.在前期需求明确、资料完整的情况下尽量采用瀑布模型;5.用例图中,如果在完成某个功能时,偶而会执行另一个功能,则用扩展关系来表示;6.UML;7.类是类图的主要的主要部件,由类名、属性、操作3部分组成;8.UML中的泛化关系就是通常所说的继承关系;9;10Rose中对应图形的分类;1.软件危机具有下列表现 D ;1、对软件开发成本估计不准确2、软件产品的质量往往靠不住3、软件常常不可维护4、软件成本逐年上升A、 1、2和3B、 1、3 和4C、 2、3和4D、以上都正确2.软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是 A ;A 运行和维护阶段 B、设计阶段 C、代码实现阶段 D、测试阶段3.下列属于软件的特点的是 D ;A、软件是一种逻辑实体,具有抽象性B、软件在使用过程中没有磨损、老化C、软件不同于一般程序,它的一个显着特点是规模庞大,复杂程度高D、以上都正确4.软件开发技术不包含 D ;A、软件开发方法学B、软件工程环境C、软件工具D、软件质量度度量5.需求分析阶段最重要的技术文档是 B ;A、设计说明书B、需求规格说明书C、可行性分析报告D、用户手册6.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是 CA、数据库设计B、数据通信C、数据定义D、数据维护7.需求分析阶段的研究对象是 C ;A、系统分析员要求B、用户要求C、软硬件要求D、系统要求8.结构化方法的基本原则是B ;A 、模块化B、抽象与分解 C、信息隐藏 D、逐步求精9.耦合度最高的是B 耦合;A、环境耦合B、内容耦合C、控制耦合D、数据耦合10.画软件结构图时应注意调用关系只能是 BA、从下到上B、从上到下C、从左到右D、从右到左11.软件设计中划分模块的一个准则是CA、低内聚低耦合B、低内聚高耦合C、高内聚低耦合 D高内聚高耦合12.Jackson设计方法是由英国的提出的,它是一种面向C的软件设计方法;A、对象B、数据流C、数据结构D、控制结构13.使用白盒测试方法时,确定测试数据应根据A和指定的覆盖标准;A、程序内部逻辑B、程序的复杂程度C、该软件的编辑人员D、程序的功能14.软件维护工作的最主要的部分是A;A、校正性维护B、适应性维护C、完善性维护D、预防性维护15.PDL是B语言;A、高级程序设计语言B、伪码式C、中级程序设计语言D、低级程序设计语言16.下列哪个阶段不属于软件生存期的三大阶段 C ;A、定义阶段B、开发阶段C、编码阶段D、维护阶段17.可维护性的特性中相互促进的是 AA、可理解性和可测试性B、效率和可移植性C、效率和可修改性D、效率和结构好18.软件测试的目标是BA、证明软件是正确的B、发现错误、降低错误带来的风险C、排除软件中所有的错误D、与软件调试相同19.软件生命周期中所花费用最多的阶段是 DA、详细设计B、软件编码C、软件测试D、软件维护20.详细设计的基本任务是确定每个模块的D设计;A、功能B、调用关系C、输入输出数据D、算法22.下列哪个图不是N-S图的构件 C ;23.对于下列各图,有关描述中正确的是 A ;A、数据A和B同时输入变成CB、数据A变换成B和CC、数据A或数据B不能同时输入,变换成CD、数据A变换成B和C24.下列哪种方法不是度量效益的方法 B ;A、货币的时间价值B、算法模型估计C、投资回收期D、纯收入25.下列描述错误的是 D ;A、数据流图将各种信息流抽象成数据流的形式B、数据流图不反映控制关系、调用关系C、数据流图不反映处理逻辑的先后顺序D、数据流图不反映数据的流向26.软件是CA、处理对象和处理规则的描述B、程序C、程序及文档D、计算机系统27.软件需求规格说明的不应包括B;A、主要功能B算法的详细描述C、用户界面及运行环境D、软件性能28.程序的三种基本控制结构是B;A、过程、子程序和分程序B、顺序、选择和循环C、递归、迭代和回溯D、调用、返回和转移29.面向对象的分析方法主要是建立三类模型, 即D;A、系统模型、ER模型、应用模型B、对象模型、动态模型、应用模型B、ER模型、对象模型、功能模型D、动态模型、功能模型、对象模型30.ER模型中,包含以下基本成分C;A、数据、对象、实体B、控制、联系、对象C、实体、联系、属性D、实体、属性、操作1.快速原型模型的主要特点之一是 B A.开发完毕才见到产品B.及早提供工作软件C.及早提供全部完整软件 D.开发完毕才见到工作软件2.软件工程学的一个重要目标是 D A.提高程序的执行效率 B.降低程序对存储空间的要求C.定义各种软件开发过程模型D.提高软件的可维护性3.需求分析最终结果是产生 B A.项目开发计划B.需求规格说明书C.设计说明书 D.可行性分析报告4.数据存储和数据流都是处于不同状态的 D A.分析结果 B.事件 C.动作D.数据5.数据字典是对数据定义信息的集合,它所定义的对象都包含于 A A.数据流图 B.程序框图 C.软件结构 D.方框图6、结构化设计是一种面向 A 的设计方法;A.数据流B.数据库C.数据结构 D.程序7.下列可哪个组件不是用例图的基本组件 D A.参与者 B.用例C.系统D.文档8.用例图中用例之间存在各种关系,但不包括 BA.包含B.关联 C.泛化 D.扩展9.常用动词或动词词组来表示 C A.对象B.类 C.关联D.属性10.组件图中通常不包括下列哪个元素 A A.对象 B.组件C.接口 D.依赖11.好的软件结构应该是 B A.高耦合、高内聚B.低耦合、高内聚C.高耦合、低内聚 D.低耦合、低内聚12.静态模型不包括 C A.类图 B.组件图C.状态图 D.部署图13.动态模型不包括 D A.交组图B.活动图C.状态图D.部署图14.Rose模型文件的扩展名为 AA.mdl B.vsd C.pdf D.swf15.逆向工程是什么过程 CA.模型到代码B.设计到实现C.代码到模型 D.类图到包图三、判断题正确的在括号内打上“√”,错误的打上“×”;每小题2分,共20分1软件开发的主要任务是写程序; F2测试只能证明程序有错误,不能证明程序没有错误; T3模块化程序设计中,模块越小,模块化的优点越明显;一般来说,模块的大小都在10行以下; F4在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排等等; F5程序设计风格指导原则提出,尽量多使用临时变量; F6用黑盒法测试时,测试用例是根据程序内部逻辑设计的; F7发现错误多的程序模块,残留在模块中的错误也多; T8为了加快软件维护作业的进度,应尽可能增加维护人员的数目; F9软件维护就是改正软件中的错误; F10质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动; T11螺旋模型是利用笛卡尔坐标的四个象限分别代表四个方面的活动来表示; F12模块越多,开发成本越小; F13内聚是指一个软件结构内各个模块之间互连程序的度量; F14结构化设计属于面向数据流的设计方法; T15详细设计是在概要设计之后进行的;它利用概要设计的结果,对系统中的每个模块给出足够的过程性描述; T16程序运行过程中出现错误叫做容错; F17软件测试的目的是证明程序没有错误; F18白盒测试法是将程序看成一个透明的盒子,不需要了解程序的内部结构和处理过程;F19 PAD图在设置了五种基本的控制结构后,还允许递归调用; T20独立编译是指一个大程序的不同程序单元分别编译,然后重新连接整个程序段;T31开发软件就是编写程序F32 系统测试的主要方法是白盒测试法,主要进行功能、性能测试、安全性测试及可靠性测试等F33编程时应尽可能利用硬件特点以提高程序效率F;34软件需求分析的任务是建立软件模块结构图F;35尽可能使用高级语言编写程序T;36以结构化方法建立的系统模型就是数据流图F;37进行总体设计时加强模块间的联系F;38编码时尽量多用全局变量F;39用CASE环境或程序自动化生成工具来自动生成一部分程序T40软件测试是要发现软件中所有错误FT 41、软件开发、设计几乎都是从头开始,成本和进度很难估计;F 42、VG值越高的程序往往是越不复杂、越不容易出问题的程序;F 43、适应性维护是改进软件未来的可维护性和可靠性;F 44、软件是逻辑产品,软件质量较容易直接度量;T 45、随着软件复杂性的不断提高,软件的维护难度越来越大;F 46、软件也会磨损和老化;F 47、用穷举法测试是较现实的测试方法;T 48、面向数据设计方法一般都包括下列任务:确定数据结构特征;用顺序、选择和循环三种基本形式表示数据等步骤;F 49、测试计划、测试用例,出错统计和有关的分析报告一般不用长期保存;F 50、McCabe建议模块规模应满足:VG≤20;T 61.总体设计阶段要设计软件体系结构;F 62、软件即程序;T 63.采用对象设计系统时,首先建立系统的物理模型;T 64.用例图中,扩展关系表示为虚线箭头加“extend”;T 65.实现关系指定两个实体之间的一个合同;T 66.状态图通常作为对类图的补充;F 67.聚集关系是关联的一种形式,表示两个类之间的一般与特殊关系;T 68.一个完整的模型必然描述系统的静态和动态两个方面;F 69.状态图是对多个对象建模;T 70.在UML中,组件是指系统中可替换的物理部分;四简述题每小题5分,共10分1.测试用例测试用例Test Case是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个路径或核实是否满足某个特定需求;2.模块化模块化是指解决一个复杂问题时自顶向下逐层把系统划分成若干模块的过程,有多种属性,分别反映其内部特性;3.对象指行动或思考时作为目标的事物4.软件生命周期各阶段的任务是什么答:软件生命期分为7个阶段:1、问题定义:要解决的问题是什么2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性3、需求分析:系统必须做什么4、总体设计:系统如何实现,包括系统设计和结构设计5、详细设计:具体实现设计的系统6、实现:编码和测试7、运行维护:保证软件正常运行;5.软件重用的效益是什么答:1、软件重用可以显着地改善软件的质量和可靠性;2、软件重用可以极大地提高软件开发的效率;3、节省软件开发的成本,避免不必要的重复劳动和人力、财力的浪费;6.结构化程序设计方法的基本要点;1.采用自顶向下、逐步求精的程序设计方法:在需求分析、概要设计中,都采用了自定向下、逐层细化的方法;2.使用三种基本控制结构构造程序,分别是顺序、选择和循环,这三种基本结构的共同点是、单入口、单出口,为自顶向下、逐步求精的设计方法提供了具体的实施手段;3.采用主程序员的组织形式:指开发程序的人员组织方式应用由一个主程序员、一个后备程序员和一个程序管理员三人为核心,再加上一些专家、其他技术人员组成小组;7.什么是软件生命周期8.简述什么是回归测试回归测试-----在集成测试过程中每当一个新模块结合进来时,程序就发生了变化:建立了新的数据流路径,可能出现新的I/O操作,激活新的控制逻辑;这样变化有可能使原来正常的功能出现了问题;所谓回归测试是指重新执行已经做过的测试的某个子集,以保证上述变化没有带来非预期的错误;9.简述软件危机有哪几种表现软件开发和维护的过程中常遇到的问题1对于软件开发的成本和进度的估计很不准确;2开发的软件产品不能完全满足用户要求;3开发的软件可靠性差,软件产品质量差;4软件通常没有适当的文档资料;5软件的可维护性差;6软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势,效率低;7软件价格昂贵;10.什么是软件工程Software Engineering,简称为SE是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科;它涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式等方面;11.简述需求分析的任务需求分析的任务就是:确定待开发的软件系统“做什么”;具体任务包括确定软件系统的功能需求、性能需求和运行环境约束,编制软件需求规格说明书、软件系统的验收测试准则和初步的用户手册12.详细设计的主要任务是什么答:详细设计的基本任务包括:1、为每个模块进行详细的算法设计2、为模块内的数据结构进行设计3、对数据库进行物理设计4、其他设计5、编写详细设计说明书6、评审13.自顶而下渐增测试与自底向上渐增测试各有何优缺点答:①自顶而下渐增测试优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块的接口错误;缺点:需要存根程序,底层错误发现较晚;②自底而上渐增测试优点与缺点和自顶而下渐增测试相反;14.软件生存期各阶段的主要任务;15.简述需求分析工作可以分成哪四个方面软件需求分析有三个基本原则需求分析阶段的基本过程包括四个方面:对问题的识别,分析与综合,制定规格说明以及评审;1问题识别,系统分析人员要研究计划阶段产生的可行性分析报告和软件项目实施计划;然后进行功能需求、性能需求、环境需求、可靠性需求安全保密需求、用户界面需求、资源使用需求等方面的工作;2分析与综合,分析员需从数据流和数据结构出发,逐步细化所有的软件功能,找出系统各元素之间的联系、接口特性和设计上的限制,分析他们是否满足功能需求,是否合理;3制定规格说明,编写需求分析的文档;4需求分析评审;为保证软件需求定义的质量,评审应以专门指定的人员负责,并按规程严格执行;需求分析的原则1.必须能够传达和理解问题的数据域和功能域2.必须按自顶向下、逐层分解的方式对问顺进行分解和不断细化3.给出系统的逻辑模型和物理模型161、为了发现错误而执行程序的过程2、一个好的用例能够发现至今尚未发现的错误的测试3、一个成功的测试是发现至今尚未发现的错误的测试17.在面向对象的系统开发过程中,每个阶段需要建造的模型各有什么作用1、在面向对象的系统开发过程中,每个阶段要建造不同的模型2、需求分析阶段建造的模型用来捕获系统需求分析3、设计阶段的模型是分析模型的扩充,为实现阶段作指导性和技术性的解决方案4、实现阶段的模型是真正的源代码及编译后的组件5、发布阶段是描述系统物理上的架构18 .软件工程的原则是什么软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则;五、应用题20分1.某厂对部分职工重新分配工作的政策是:年龄有20岁以下者,初中文化程度脱产学习,高中文化程度当电工;年龄有20岁至40岁之间者,中学文化程度男性当钳工,女性当车工,大学文化程度者当技术员;年龄有40岁以上者,中学文化程度当材料员,大学文化程度当技术员;请用结构化语言,判定树或判定表描述上述问题的加工逻辑;职工重新分配工作的政策可描述为:若年龄在20岁以下则初中文化程度脱产学习高中文化程度当电工若年龄在20-40岁之间则中学文化程度男性当钳工女性当车工大学文化程度都当技术员若年龄在40岁以上者则中学文化当材料员大学文化当技术员初中脱产学习年龄<20 高中电工男钳工中学女车工工作分配规则年龄20-40高中技术员年龄>40 中学村料员高中技术员2.假设某航空公司规定,乘客可以免费托运重量不超过30kg的行李;当行李重量超过30kg时,对头等舱的国内乘客超重部分每公斤收费4元,对其他舱的乘客超重部分每公斤收费6元,对国外乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半;用判定表表示每种条件组合相对应的计算行李费的算法;用判定树表示计算行李费的算法用判定树表示计算行李费的算法3.以自己开发软件可以是C、C++、VC++、VF、甚至是汇编、等其他语言的一个自选项目为背景,应用软件工程方法进行策划,要求必须给出项目描述,主要的软件工程过程的描述以及各阶段的主要内容。
软件工程考试题及答案
软件工程考试题及答案一、选择题1. 下列哪个不是软件工程的基本原则?A. 持续集成B. 形式化表示C. 高内聚低耦合D. 可重用性答案:B. 形式化表示2. 软件的可靠性是指什么?A. 软件的正确性B. 软件的可维护性C. 软件的效率D. 软件的稳定性答案:D. 软件的稳定性3. 下列哪个不是软件测试的目标?A. 发现软件中的错误和缺陷B. 验证软件是否满足用户需求C. 评估软件的质量D. 在短时间内完成软件开发答案:D. 在短时间内完成软件开发二、判断题1. 软件工程是一门工程学科,其目标是通过系统化的、规范化的方法对软件进行开发、运行和维护。
答案:正确2. “高内聚低耦合”是软件工程中的重要原则,指的是模块之间的独立性和模块之间的依赖程度。
答案:正确3. 软件需求分析是软件开发过程中的最后一步,最终确定软件系统的功能和性能。
答案:错误三、简答题1. 什么是软件工程?答:软件工程是一门工程学科,通过系统化的、规范化的方法对软件进行开发、运行和维护。
它涉及软件开发的各个阶段,包括需求分析、设计、编码、测试和维护等,并注重管理和团队合作,以提高软件质量、降低开发成本和加快开发进度。
2. 软件测试的目的是什么?答:软件测试的目的是发现软件中的错误和缺陷,验证软件是否满足用户需求,并评估软件的质量。
通过测试,可以提高软件的可靠性和稳定性,减少软件在使用过程中的风险。
3. 请简述软件开发生命周期中的各个阶段。
答:软件开发生命周期包括需求分析、设计、编码、测试和维护等阶段。
- 需求分析阶段:确定软件系统的功能、性能和约束条件,明确用户需求。
- 设计阶段:根据需求分析结果设计软件系统的结构和模块,确定软件的整体框架。
- 编码阶段:根据设计阶段的文档编写程序代码,实现软件系统的各个功能。
- 测试阶段:对软件进行各种测试,包括单元测试、集成测试和系统测试,以发现错误和缺陷。
- 维护阶段:根据用户反馈和需求变化,对软件进行修复和更新,确保其持续稳定运行。
《软件工程》11套考试复习练习题、作业题(含答案)
作业1:1. 软件是计算机系统中与硬件相互依存的另一部分,它是包括( A )、( B )及( C )的完整集合。
其中,( A )是按事先设计的功能和性能要求执行的指令序列。
( B )是使程序能够正确操纵信息的数据结构。
( C )是与程序开发、维护和使用有关的图文材料。
供选择的答案:A~C. ①软件②程序③代码④硬件⑤文档⑥外设⑦数据⑧图表2. 开发软件时对提高软件开发人员工作效率至关重要的是( A )。
软件工程中描述生存周期的瀑布模型一般包括计划、( B )、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成( C )和( D )两步。
供选择的答案:A.①程序开发环境②操作系统的资源管理功能③程序人员数量④计算机的并行处理能力B.①需求分析②需求调查③可行性分析④问题定义C、D.①方案设计②代码设计③概要设计④数据设计⑤运行设计⑥详细设计⑦故障处理设计⑧软件体系结构设计3. 从供选择的答案中选出适当字句填入下列关于软件发展过程的叙述中的( )内。
有人将软件的发展过程划分为4个阶段:第一阶段(1950~1950年代末)称为“程序设计的原始时期”,这时既没有( A ),也没有( B ),程序员只能用机器指令编写程序。
第二阶段(1950年代末~1960年代末)称为“基本软件期”。
出现了( A ),并逐渐普及。
随着( B )的发展,编译技术也有较大的发展。
第三阶段(1960年代末~1970年代中期)称为“程序设计方法时代”。
这一时期,与硬件费用下降相反,软件开发费急剧上升。
人们提出了( C )和( D )等程序设计方法,设法降低软件的开发费用。
第四阶段(1970年代中期~现在)称为“软件工程时期”。
软件开发技术不再仅仅是程序设计技术,而是包括了与软件开发的各个阶段,如( E )、( F )、编码、单元测试、综合测试、(G )及其整体有关的各种管理技术。
供选择的答案:A ~ D:①汇编语言②操作系统③虚拟存储器概念④高级语言⑤结构式程序设计⑥数据库概念⑦固件⑧模块化程序设计E ~ G:①使用和维护②兼容性的确认③完整性的确认④设计⑤需求定义⑥图象处理4. 软件工程过程有哪几个基本过程活动?试说明之。
软件工程复习题及答案完整
一、选择1、文档是软件产品的一部分,没有文档的软件就不称其为软件。
对2、在需求解析过程中,解析员要从用户那处解决的最重要的问题是给该软件供应哪些信息。
3、需求规格说明书在软件开发中拥有重要的作用,它也能够作为软件可行性解析的依照。
错错4、成立用例模型的步骤包括确定角色、确定用例和绘制用例图。
错5、数据流图成立系统的功能模型,它由数据流、加工和数据存贮组成。
错6、软件配置管理是一组表记、组织和控制改正源程序的活动。
错7、UML 是一种直观化、明确化、成立和文档化软件产物的通用语言。
错8、好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。
对9、界线值解析方法是取输入 / 输出等价类的界线值作为测试用例。
对10、面向对象的解析是面向计算机系统成立软件系统的对象模型。
错11、(D )是将系统化的、规范的、可定量的方法应用于软件的开发、运行和保护的过程,它包括方法、工具和过程三个要素。
A 软件过程B 软件测试C 软件生计周期D 软件工程12、 ISO9000 是由 ISO/TC176 拟定的关于( B )和质量保证的国际标准。
A 质量控制B 质量管理C 质量策划D 质量改进13、 CMM 供应了一个框架,将软件过程改进的进化步骤组织成 5 个成熟度等级。
除第 1 级外,每个等级都包括了实现该成熟度等级目标的若干(B )。
A要点实践 B 要点过程域 C 软件过程能力 D 软件过程14、在软件开发的各种资源中,( D )是最重要的资源。
A 开发工具B 方法C 硬件环境D 人员15、软件的复杂性是( A ),它引起人员通信困难、开发开销超支、开发时间超时等问题。
A 固有的B 人为的C 可除掉的D 不能降低的16、在各种不同样的软件需求中,( D )描述了用户使用产品必定要完成的任务,能够在用例模型或方案脚本中予以说明。
A 业务需求B 功能需求C 非功能需求D 用户需求17、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于( A )系统。
软件工程试卷及答案
软件工程试卷及答案篇一:《软件工程》复习题及答案软件工程复习题第一部分(第1~6章)一、选择题:1. 开发软件所需高本钱和产品的低质量之间有着锐利的矛盾,这种现象称做(C)。
2. 瀑布模型本质上是一种(A )模型。
3. 瀑布模型存在的征询题是(B )。
A.用户容易参与开发B.缺乏灵敏性C.用户与开发者易沟通D.适用可变需求4. 螺旋模型是一种将瀑布模型和(A)结合起来的软件开发模型。
A.增量模型B.专家系统C.喷泉模型D.变换模型5. 原型化方法是用户和设计者之间执行的一种交互构成,适用于(A)系统。
A.需求不确定性高的B.需求确定的C.治理信息D.实时6. 以下有关软件工程的标准,属于国际标准的是(C )7. 构造化方法是一种基于(D)的方法。
8. 软件可行性研究本质上是要进展一次( A)需求分析、设计过程。
A、简化、压缩的B、详细的C、完全的D、深化的9. 可行性研究的目的是(D)A、分析开发系统的必要性B、确定系统建立的方案C、分析系统风险D、确定是否值得开发系统10. 设年利率为i,现存入p元,n年后可得钱数为(C)。
A、P×(1+i*n)B、P× (i+1)*nC、p×(1+i) nD、p×(i+n)11. 可行性研究是在(A)之前A、系统开发B、测试C、试运转D、集成测试12. 可行性研究需要的时间长短取决于系统的规模,一般来说,可行性研究的本钱只是预期总本钱的(C)。
A、1%B、20%C、8%D、50%13. 我国正式公布施行的(B)对计算机病毒的定义具有法律性、权威性。
A.《计算机软件保护条例》B.《中华人民共和国计算机信息系统平安保护条例》C.《中华人民共和国著作权法》D.《计算机病毒防治治理方法》14. 效率是一个功能要求,因此应当在以下哪个阶段规定?BA、可行性分析B、需求分析C、概要设计D、详细设计15. 需求规格说明书的作用不包括(D)A、软件验收的按照B、用户与开发人员对软件要做什么的共同理解C、软件可行性研究的按照D、软件设计的按照16. 数据字典是用来定义(D)中的各个成份的详细含义的。
软件工程期末复习题(含答案)
软件工程必备期末复习题选择题1.软件设计中划分模块的一个准则是( C )。
A 低内聚低耦合B低内聚高耦合C高内聚低耦合D.高内聚高耦合2.( A )是用户和设计交换最频繁的方法。
A、原型化方法B、瀑布模型法C、螺旋模型方法D、构件组装模型3. 试判断下列叙述中,哪个些是正确的( C )。
a、软件系统中所有的信息流都可以认为是事务流b、软件系统中所有的信息流都可以认为是变换流c、事务分析和变换分析的设计步骤是基本相似的A、aB、bC、cD、b和c4.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是( C )A、硬件环境B、软件开发的环境C、软件开发工具和软件开发的环境D、开发人员的素质5.20世纪50年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低级语言( D )A、PASCALB、VISUAL BASICC、C++D、汇编语言6. 软件测试的目的是?( D )A.软件的正确性B.找出软件系统中存在的所有错误C.证明软件系统中存在错误D.尽可能多的发现软件系统中的错误7.使用白盒测试方法时,确定测试数据应根据( A )和指定的覆盖标准。
A、程序的内部逻辑B、程序的复杂程度C、该软件的编辑人员D、程序的功能8.软件维护工作的最主要部分是( C )。
A、纠正性维护B、适应性维护C、完善性维护D、预防性维护9.PDL是( B )语言。
A.高级程序设计语言B、伪码式C、中级程序设计语言D、低级程序设计语言10.软件的结构化设计(SD)方法中,一般分为概要设计和详细设计两阶段,其中详细设计主要是要建立( C )。
A、软件结构B、软件过程C、软件模型D、软件模块11.在数据流图中,○(椭圆)代表( B )A、数据流B、转换C、数据源D、外部实体12.总体设计目的是确定整个系统的( D )。
A、规模B、测试方案C、费用D、功能及模块结构13. 检查软件产品是否符合需求定义的过程称为( A )。
(完整版)软件工程试卷及答案(多套精品试卷)
软件工程试题及答案第一部分选择题一、单项选择题每小题1分,共20分。
(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。
A.基于信息工程CASE B.人工智能CASEC.结构的基于图形CASE D.集成的CASE环境2.Putnam成本估算模型是一个()模型。
A.静态单变量 B.动态单变量 C.静态多变量 D.动态多变量3.在McCall软件质量度量模型中,()属于面向软件产品修改。
A.可靠性 B.可重用性C.适应性 D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括()A.效率 B.规模 C.完整性 D.容错性6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。
A.结合 B.隐藏C.封装 D.抽象7.软件调试技术包括()A.边界值分析 B.演绎法 C.循环覆盖 D.集成测试8.瀑布模型的存在问题是()A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通 D.适用可变需求9.软件测试方法中的静态测试方法之一为()A.计算机辅助静态分析 B.黑盒法 C.路径覆盖 D.边界值分析10.软件生命周期中所花费用最多的阶段是()A.详细设计 B.软件编码 C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是()A.FORTRAN语言B.Pascal语言 C.C语言D.PL/1语言12.程序的三种基本控制结构是()A.过程、子程序和分程序B.顺序、选择和重复 C.递归、堆栈和队列 D.调用、返回和转移13.在详细设计阶段,经常采用的工具有()A.PAD B.SA C.SC D.DFD14.详细设计的结果基本决定了最终程序的()A.代码的规模 B.运行速度 C.质量 D.可维护性15.需求分析中开发人员要从用户那里了解()A.软件做什么 B.用户使用界面 C.输入的信息 D.软件的规模16.结构化程序设计主要强调的是()A.程序的规模 B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。
软件工程总复习题及答案
复习题填空题1.在信息处理和计算机领域内,一般认为软件是_程序____、_文档____ 和_数据____ 。
2.数据流图的基本组成部分有_数据的源点与终点____、数据流_____、加工_____、数据文件_____。
3.数据流图和数据字典共同构成了系统的_逻辑____模型,是需求规格说明书的主要组成部分。
4.划分模块时尽量做到__高内聚、低耦合______,保持模块的独立性,尽量使用公共模块。
5.类的实例化是_对象_______。
6.人们常用硬件可靠性的定量度量方法来度量软件的可靠性和可用性,常用的度量软件可7.靠性的两个指标是_成功地运行的概率_______和_平均故障时间_______。
8.将待开发的软件细化,分别估算每一个子任务所需要的开发工作量,然后将它们加起来,9.将得到软件的总开发量。
这种成本估算方法称为_自底向上_______。
10.如果一个模块被n 个模块调用,其中直接的上级模块的个数是m 个(m<=n )那么该模块的扇入数是____N_______ 个。
11.结构化设计以__数据流图_________ 为基础,按一定的步骤映射成软件结构。
12.软件的风险分析可包括风险识别、风险预测和风险驾驭(或风险管理)等3项活动。
13.软件著作权登记的3种主要类型:(1)著作权登记;(2)著作权延续登记;(3)权利转移备案登记。
14.软件工程管理的主要内容有:项目经费管理,软件质量管理,项目进度管理和人员管理。
15.面向对象分析的目的是对客观世界的系统进行___建模_______________ 。
16.软件维护工作的生产性活动包括分析评价、修改设计和____编写程序代码_______ 等。
17.为了使应用软件适应计算机环境的变化而___修改软件_______________ 的过程称为适应性维护。
18.一个进行学生成绩统计的模块其功能是先对学生的成绩进行累加,然后求平均值,则该模块的内聚性是__________顺序内聚________ 。
软件工程题库(含答案)
软件工程题库(含答案)一、单选题(共60题,每题1分,共60分)1、软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为( )A、可用性B、正确性C、完整性D、可靠性正确答案:D2、软件特性中,软件从一个计算机系统或环境移植到另一个上去的难易程度指的是( ).A、可移植性B、可理解性C、可重用性D、可修改性正确答案:A3、在软件质量要素的评价准则中,操作该软件的难易程度指的是( )。
A、容错性B、检测性C、可操作性D、安全性正确答案:C4、下列属于维护阶段的文档是( )A、软件问题报告B、用户操作手册C、软件测试分析报告D、软件规格说明正确答案:B5、快速原型模型的主要特点之一是( )A、及早提供工作软件B、开发完毕才见到产品C、及早提供全部完整的软件产品D、开发完毕后才见到工作软件正确答案:C6、可维护性通常包括( )。
A、可用性和可理解性B、可修改性、数据独立性和数据一致性C、可理解性、可修改性和可测试性D、可测试性和稳定性正确答案:C7、软件的可修改性支持软件的( )。
A、可互操作性B、可维护性C、可追踪性D、有效性正确答案:B8、数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( )A、数据通信B、数据定义C、数据维护D、数据库设计正确答案:B9、软件特性中,多个软件元素相互通讯并协同完成任务的能力指的是( )。
A、可追踪性B、可理解性C、可互操作性D、可维护性正确答案:C10、可维护性的特性中相互促进的是( )A、效率和可移植性B、可理解性和可测试性C、效率和结构好D、效率和可修改性正确答案:B11、在软件质量特性中,( )是指在规定的一段时间和条件下,与软件维持其性能水平的能力有关的一组属性。
A、可靠性B、易使用性C、正确性D、准确性正确答案:A12、设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X 需要的工作量(时间)。
对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:( )A、信息隐藏和局部化的根据B、逐步求精的根据C、抽象的根据D、模块化的根据正确答案:D13、下列说法中,不正确的是( )。
软件工程试卷(附答案)
软件工程试卷(附答案)一、单项选择题(每题2分,共40分)1.软件生存周期模型有多钟,下列选项中,(C)不是软件生存周期模型。
A.螺旋模型B.增量模型C.功能模型D.瀑布模型2.以下说法错误的是(C)。
A.增量模型是在瀑布模型的基础上加以修改而形成的B.增量模型推迟某些阶段或所有阶段中的细节,从而较早地产生工作软件C.瀑布模型和增量模型都属于整体开发模型D.瀑布模型规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节 3.可行性分析中,系统流程图用于描述(A)。
A.当前运行系统C.目标系统B.当前逻辑模型D.新系统4.研究软硬件资源的有效性是进行(A)研究的一方面。
A.技术可行性B.经济可行性C.社会可行性D.操作可行性5、数据字典中,一般不包括下列选项中的(D)条目。
A.数据流B.数据储备C.加工D.源点与终点6、SA方法的分析步骤是首先调查了解当前系统的工作流程,然后(A)。
A.获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型B.获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型C.获得当前系统的逻辑模型,抽象出目标系统的物理模型,建立目标系统的逻辑模型D.获得当前系统的逻辑模型,抽象出目标系统的物理模型,建立目标系统的物理模型7、经由过程(B)可以完成数据流图的细化。
A.结构分析B.功能分解C.数据分析D.系统分解8、对软件进行分解,是为了(C)。
A.降低模块的复杂程度B.降低模块间接口的复杂程度C.降低模块的复杂程度,并降低模块间接口的复杂程度D.降低模块的复杂程度,并提高模块间接口的复杂程度9、为了提高模块的独立性,模块内部最好是(C)。
A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚10、在软件结构设计完成后,对于下列说法,正确的是(C)。
A.非单一功能模块的扇入数大比较好,申明本模块重用率高B.单一功能的模块扇入高时应重新分解,以消除掌握耦合的情况C.一个模块的扇出太多,说明该模块过分复杂,缺少中间层D.一个模块的扇入太多,申明该模块过分复杂,缺少中央层11、在软件开发过程中,以下说法正确的是(B)。
软件工程考试题及答案
软件工程考试题及答案一、选择题(每题2分,共20分)1. 软件工程中的需求分析阶段的主要任务是什么?A. 确定软件的功能需求B. 设计软件的架构C. 编写软件的详细设计文档D. 进行软件的编码实现答案:A2. 在软件开发过程中,哪个阶段是进行风险评估的?A. 需求分析B. 设计C. 编码D. 测试答案:B3. 软件测试中的黑盒测试通常是基于什么进行的?A. 程序源代码B. 程序的内部逻辑C. 程序的功能需求D. 程序的运行环境答案:C4. 敏捷开发方法论中,哪个活动是迭代的核心?A. 需求收集B. 编码实现C. 测试D. 回顾会议答案:B5. 在软件维护中,哪种类型的维护是最常见的?A. 纠错性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:A二、填空题(每空1分,共10分)6. 软件工程的生命周期包括需求分析、________、编码、测试和维护等阶段。
答案:设计7. 软件工程中的_______原则指的是高内聚低耦合。
答案:模块化8. 在软件开发中,_______ 是指软件在特定条件下使用时,能够达到预期功能、性能要求的能力。
答案:可靠性9. 软件项目管理中的_______ 是指在项目开发过程中,对项目进行监控和控制,确保项目按计划进行。
答案:监控10. 在软件测试中,_______ 是指测试用例设计得尽可能覆盖所有可能的执行路径。
答案:穷尽测试三、简答题(每题10分,共30分)11. 简述软件工程中的模块化设计原则及其优点。
答案:模块化设计原则是指将软件系统划分为多个模块,每个模块具有特定的功能,并且模块之间通过定义良好的接口进行交互。
其优点包括:- 易于管理:模块化使得软件更容易理解和维护。
- 可重用性:模块可以在不同的项目中重复使用。
- 并行开发:模块化允许多个团队并行开发不同的模块。
- 灵活性:模块化提高了软件的灵活性,便于扩展和修改。
12. 解释什么是软件的可维护性,并说明其重要性。
软件工程试卷及参考答案
软件工程试卷及参考答案试卷(一)一、单项选择题1、在结构化设计(SD)方法中全面指导模块划分的最重要的原则是( )A、程序模块化B、模块高内聚C、模块低耦合D、模块独立性2、软件维护产生的副作用,是指()A、开发时的错误B、隐含的错误C、因修改软件而造成的错误D、运行时误操作3、软件详细设计的主要任务是确定每个模块的()A、算法和使用的数据结构B、外部接口C、功能D、编程4、为了提高模块的独立性,模块内部最好是()A、逻辑内聚B、时间内聚C、功能内聚D、通信内聚5、软件是一种()A、程序B、数据C、逻辑产品D、物理产品6、因计算机硬件和软件环境的变化而作出的修改软件的过程称为( )A、纠正性维护B、适应性维护C、完善性维护D、预防性维护7、只有单重继承的类层次结构是( )层次结构。
A、网状型B、星型C、树型D、环型8、下列属于维护阶段的文档是( )A、软件规格说明B、用户操作手册C、软件问题报告D、软件测试分析报告9、不适合作为科学工程计算的语言是( )A、PascalB、 CC、FortranD、 Prolog10、研究开发所需要的成本和资源是属于可行性研究中的( )研究的一方面。
A. 技术可行性B. 经济可行性C. 社会可行性D. 法律可行性11、中级结构性成本模型COCOMO是一个( )A、静态单变量模型B、动态单变量模型C、静态多变量模型D、动态多变量模型12、PAD图为()提供了有力的工具。
A、系统分析B、软件的自动化生成C、自动分析数据D、测试软件13、下列关于JSP方法不正确的说法是( )A、JSP方法主要用于规模不大的数据处理系统B、JSP方法不明确的划分软件概要设计和详细设计的两个阶段C、JSP方法适用于输入数据和输出数据之间有对应关系的问题求解D、JSP方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。
因此它只适用于详细设计阶段14、在详细设计阶段,经常采用的工具有()A、PADB、SAC、SCD、DFD15、确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于()A、集成测试B、恢复测试C、验收测试D、单元测试16、盒图(N-S图)为()提供了有力的工具。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、填空题(在下划线上填写正确的答案,每题2分,共20分)1.等价划分是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数。
2.数据流图和数据字典共同构成了系统的逻辑模型。
3.盒图也称为 N-S图。
这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。
4.软件有效性,指软件系统的时间和空间效率。
6.数据流图有四种基本成分:源、终点,处理,存储,数据流。
7中数据项是组成数据流和数据存储的最小元素。
8.软件工程中的结构化分析SA是一种面向数据流的分析方法。
9.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个由下而上的过程。
10.耦合性与聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到高聚、低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。
1.常用的软件开发模型有瀑布模型、原型模型、增量模型、螺旋模型、喷泉模型。
2.软件生存周期一般可分为问题定义、可行性研究、需求分析、设计、编码、单元测试、运行与维护阶段。
3.软件测试的步骤:单元、集成、系统、验收。
4.数据流图的基本符号包括加工、数据流、数据存储文件、汇点。
5.IPO图由输入、处理和输出三个框组成。
这个图的特点是能够直观的显示三者之间的关系。
6.面向对象方法是一种运用类、实例、属性、重载、消息传送、多态性等概念来构造系统的软件开发方法。
7.分析已有的程序,寻求比源代码更高级的抽象表现形式,这就是软件的逆向工程。
8.程序测试是对编码阶段的语法错、语义错和运行错进行查找的编码执行活动。
9.为了获得较高的模块独立性,尽量设计出具有高聚和低藕合性能的模块。
10.常用的测试方法有黑盒测试和白盒测试。
1.可行性研究,应从技术可行性、经济可行性、运行可行性和法律和社会效益可行性等方面研究。
2.构化程序设计中程序主要的3种基本控制结构是顺序结构、选择结构、循环结构。
3.软件生存周期中时间最长、花费精力和费用最多的一个阶段是维护阶段。
4.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是功能需求。
7.分析已有的程序,寻求比源代码更高级的抽象表现形式,这就是软件的逆向工程。
8.程序测试是对编码阶段的语法错、语义错和运行错进行查找的编码执行活动进行查找的编码执行活动。
9.为了获得较高的模块独立性,尽量设计出具有低耦合和高聚性能的模块。
1.若年利率为i,n年后可得钱数为F则现在的价值 F/(1+N*i) 。
2.在结构化分析中用来描述加工逻辑的主要工具是结构化语言、判定表、判定树。
3.软件测试的步骤:制定测试计划、设计测试用例、实施测试、测试后调试、做测试报告4.自顶向下结合的渐增测试法,在组合模块时有两种组合策略:7123.HIPO图是由一组IPO图和一H 图组成。
4.在前期需求明确、资料完整的情况下尽量采用瀑布模型。
5.用例图中,如果在完成某个功能时,偶而会执行另一个功能,则用扩展关系来表示。
6.UML7.类是类图的主要的主要部件,由类名、属性、操作3部分组成。
8.UML中的泛化关系就是通常所说的继承关系。
910Rose中对应图形的分类。
1.软件危机具有下列表现( D )。
1、对软件开发成本估计不准确2、软件产品的质量往往靠不住3、软件常常不可维护4、软件成本逐年上升A、 1、2和3B、 1、3 和4C、 2、3和4D、以上都正确2.软件生命周期一般都被划分为若干个独立的阶段,其中占用精力和费用最多的阶段往往是( A )。
A 运行和维护阶段 B、设计阶段 C、代码实现阶段 D、测试阶段3.下列属于软件的特点的是( D )。
A、软件是一种逻辑实体,具有抽象性B、软件在使用过程中没有磨损、老化C、软件不同于一般程序,它的一个显著特点是规模庞大,复杂程度高D、以上都正确4.软件开发技术不包含( D )。
A、软件开发方法学B、软件工程环境C、软件工具D、软件质量度度量5.需求分析阶段最重要的技术文档是( B )。
A、设计说明书B、需求规格说明书C、可行性分析报告D、用户手册6.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( C )A、数据库设计B、数据通信C、数据定义D、数据维护7.需求分析阶段的研究对象是( C )。
A、系统分析员要求B、用户要求C、软硬件要求D、系统要求8.结构化方法的基本原则是( B )。
A 、模块化B、抽象与分解 C、信息隐藏 D、逐步求精9.耦合度最高的是(B )耦合。
A、环境耦合B、容耦合C、控制耦合D、数据耦合10.画软件结构图时应注意调用关系只能是( B )A、从下到上B、从上到下C、从左到右D、从右到左11.软件设计中划分模块的一个准则是(C)A、低聚低耦合B、低聚高耦合C、高聚低耦合 D高聚高耦合12.Jackson设计方法是由英国的M.Jackson提出的,它是一种面向(C)的软件设计方法。
A、对象B、数据流C、数据结构D、控制结构13.使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准。
A、程序部逻辑B、程序的复杂程度C、该软件的编辑人员D、程序的功能14.软件维护工作的最主要的部分是(A)。
A、校正性维护B、适应性维护C、完善性维护D、预防性维护15.PDL是(B)语言。
A、高级程序设计语言B、伪码式C、中级程序设计语言D、低级程序设计语言16.下列哪个阶段不属于软件生存期的三大阶段( C )。
A、定义阶段B、开发阶段C、编码阶段D、维护阶段17.可维护性的特性中相互促进的是( A )A、可理解性和可测试性B、效率和可移植性C、效率和可修改性D、效率和结构好18.软件测试的目标是(B)A、证明软件是正确的B、发现错误、降低错误带来的风险C 、排除软件中所有的错误D 、与软件调试相同19.软件生命周期中所花费用最多的阶段是( D )A 、详细设计B 、软件编码C 、软件测试D 、软件维护20.详细设计的基本任务是确定每个模块的(D )设计。
A 、功能B 、调用关系C 、输入输出数据D 、算法22.下列哪个图不是N-S 图的构件( C )。
23.对于下列各图,有关描述中正确的是( A )。
A 、数据A 和B 同时输入变成CB 、数据A 变换成B 和CC 、数据A 或数据B (不能同时)输入,变换成CD 、数据A 变换成B 和C24.下列哪种方法不是度量效益的方法( B )。
A 、货币的时间价值B 、算法模型估计C 、投资回收期D 、纯收入25.下列描述错误的是( D )。
A 、数据流图将各种信息流抽象成数据流的形式B 、数据流图不反映控制关系、调用关系C 、数据流图不反映处理逻辑的先后顺序D 、数据流图不反映数据的流向26.软件是(C )A 、 处理对象和处理规则的描述B 、程序 X Y A 、WHILE M BB、X Y C 、UNTIL N C D 、B CB CC CC、程序及文档D、计算机系统27.软件需求规格说明的不应包括(B)。
A、主要功能B算法的详细描述C、用户界面及运行环境D、软件性能28.程序的三种基本控制结构是(B)。
A、过程、子程序和分程序B、顺序、选择和循环C、递归、迭代和回溯D、调用、返回和转移29.面向对象的分析方法主要是建立三类模型,即(D)。
A、系统模型、ER模型、应用模型B、对象模型、动态模型、应用模型B、ER模型、对象模型、功能模型D、动态模型、功能模型、对象模型30.ER模型中,包含以下基本成分(C)。
A、数据、对象、实体B、控制、联系、对象C、实体、联系、属性D、实体、属性、操作1.快速原型模型的主要特点之一是( B )A.开发完毕才见到产品B.及早提供工作软件C.及早提供全部完整软件 D.开发完毕才见到工作软件2.软件工程学的一个重要目标是( D )A.提高程序的执行效率 B.降低程序对存储空间的要求C.定义各种软件开发过程模型D.提高软件的可维护性3.需求分析最终结果是产生( B )A.项目开发计划B.需求规格说明书C.设计说明书 D.可行性分析报告4.数据存储和数据流都是处于不同状态的( D )A.分析结果 B.事件 C.动作D.数据5.数据字典是对数据定义信息的集合,它所定义的对象都包含于( A )A.数据流图 B.程序框图 C.软件结构 D.方框图6、结构化设计是一种面向( A )的设计方法。
A.数据流B.数据库C.数据结构 D.程序7.下列可哪个组件不是用例图的基本组件( D )A.参与者 B.用例C.系统D.文档8.用例图中用例之间存在各种关系,但不包括( B )A.包含B.关联 C.泛化 D.扩展9.常用动词或动词词组来表示( C )A.对象B.类 C.关联D.属性10.组件图常不包括下列哪个元素( A )A.对象 B.组件C.接口 D.依赖11.好的软件结构应该是( B )A.高耦合、高聚B.低耦合、高聚C.高耦合、低聚 D.低耦合、低聚12.静态模型不包括( C )A.类图 B.组件图C.状态图 D.部署图13.动态模型不包括( D )A.交组图B.活动图C.状态图D.部署图14.Rose模型文件的扩展名为( A )A.mdl B.vsd C.pdf D.swf15.逆向工程是什么过程( C )A.模型到代码B.设计到实现C.代码到模型 D.类图到包图三、判断题(正确的在括号打上“√”,错误的打上“×”。
每小题2分,共20分)1软件开发的主要任务是写程序。
( F )2测试只能证明程序有错误,不能证明程序没有错误。
( T )3模块化程序设计中,模块越小,模块化的优点越明显。
一般来说,模块的大小都在10 行以下。
( F )4在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排等等。
( F )5程序设计风格指导原则提出,尽量多使用临时变量。
( F )6用黑盒法测试时,测试用例是根据程序部逻辑设计的。
( F )7发现错误多的程序模块,残留在模块中的错误也多。
( T )8为了加快软件维护作业的进度,应尽可能增加维护人员的数目。
( F )9软件维护就是改正软件中的错误。
( F )10质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动。
( T )11螺旋模型是利用笛卡尔坐标的四个象限分别代表四个方面的活动来表示。
( F )12模块越多,开发成本越小。
( F )13聚是指一个软件结构各个模块之间互连程序的度量。
( F )14结构化设计属于面向数据流的设计方法。
( T )15详细设计是在概要设计之后进行的。
它利用概要设计的结果,对系统中的每个模块给出足够的过程性描述。
( T )16程序运行过程中出现错误叫做容错。
( F )17软件测试的目的是证明程序没有错误。