1《软件工程》试卷及答案A卷专业年级姓名得分一、名词解释(每个2分,共10分)1.软件危机2.纯收入3.模块4.原型5.BROOKS定律二、填空题(每题2分,共20分)1.____是计算机程序及其说明程序的各种文档。_____是有关计算机程序功能、设计、编制、使用的文字或图形资料。2.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。通常,软件生存周期包括问题定义、____、____、总体设计、详细设计、____、____、软件维护活动,可以将这些活动以适当方式分配到不同阶段去完成。3.软件详细设计阶段采用的工具有______。4.____的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。5.模块的耦合性分为四种类型:____、____、____、____。6.内聚性有七种类型,最强的是____,最弱的是____。7.结构图的深度指结构图______,结构图宽度指________。8.集成测试采用的具体方法有--____、______9.对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的____、逻辑输入、逻辑输出。10.软件编码阶段要善于积累编程的经验,使得编出的程序____,易于____,从而提高软件质量。三、选择题(每题2分,共20分)1.系统定义明确之后,应对系统的可行性进行研究。可行性研究应包括()。A.软件环境可行性、技术可行性、经济可行性、社会可行性B.经济可行性、技术可行性、操作可行性C.经济可行性、社会可行性、系统可行性D.经济可行性、实用性、社会可行性2.通过()可以完成数据流图的细化。A.结构分解B、功能分解C、数据分解D、系统分解3.模块(),则说明模块的独立性越强。A.耦合越强B、扇入数越高C、耦合越弱D、扇入数越低4.模块()定义为受该模块内一个判断影响的所有模块集合。A.控制域B、作用域C、宽度D、接口25.面向数据结构的设计方法(Jackson方法)是进行()的形式化的方法。A.系统设计B、详细设计C、软件设计D、编码6.指出PDL是下列哪种语言()。A.伪码B、高级程序设计语言C.中级程序设计语言D、低级程序设计语言7.在进行软件测试时,首先应当进行(),然后再进行组装测试,最后再进行有效性测试。A.单元测试B、集成测试C、确认测试D、组合测试8.制定进度计划的两个重要工具和方法是()。A.Gantt图B、CoCoMoC、工程网络图D、HIPO图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.产品运行B.产品可再用性C.产品修改D.产品转移16.在设计测试用例时,()是用得最多的一种黑盒测试方法。A.等价类划分B.边界值分析C.因果图D.判定表17.DFD中每个加工至少有()。A,一个输入流B,一个输出流C,多个输入输出流D,一个输入输出流18.数据字典包括()个条目。A,2B,3C,4D,519.在对数据流的分析中,主要是找到中心变换,这是从()导出结构图的关键。A.数据结构B.实体关系C.数据流图D.E_R图320.结构分析方法就是面向()自顶向下逐步求精进行需求分析的方法。A.目标B.数据流C.功能D.对象四、简答题(每题4分,共20分)1.什么是软件工程?基本原理有哪些?2.成本_效益分析可用哪些指标进行度量?(写出公式)3.什么是数据流图?其中的基本符号各表示什么含义?画出定货系统基本数据流图。4.非渐增式测试与渐增式测试有什么区别?5.试从基本符号和设计方法分析HC图与JACKSON图异同点五、应用题(共30分)1.(15分)某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当电工;年龄在20岁至40岁之间者,中学文化程度男性当钳工,女性当车工,大学文化程度都当技术员;年龄在40岁以上者,中学文化程度当材料员,大学文化程度当技术员。请用结构化语言、判定表或判定树描述上述问题。4《软件工程》试卷答案A卷一、名词解释1.指在计算机软件的开发和维护过程中所遇到的一系列严重问题。2.在整个生命周期内系统的累计经济效益(折合成现在值)与投资之差。3.是数据说明、可执行语句等程序对象的集合。4.是使用样机,使用户通过实践获得对未来系统的的概念,可以更准确提出要求。5.向一个已经延晚的项目追加开发人员,可能使它完成的更晚二、填空题1.软件文档2.可行性研究需求分析编码测试3.图、表、过程设计语言4.行性研究5.据耦合控制公共内容6.功能偶然7.控制的层数同一层个数8.渐增式方法、非渐增式方法。9.变换中心10.清晰易懂、测试与维护三、选择题1.B2.B3.C4.B5.B6.A7.A8.AC9.B10.C11.C12.A13.D14.A15.B16.A17.D18.C19C20.B四、问答题:1.软件工程是指导计算机软件开发和维护的工程学科。用分阶段的生命周期计划管理、坚持阶段评审、实行严格产品控制、采用现代设计技术、结果审查、开发小组人员少而精、并不断改进方法。2.可用投资回收期、纯收入、投资回收率指标,通过P=F/(1+i)n计算求得。3.用符号描绘信息在系统中流动的情况,源点、终点、处理、数据存储、数据流。4.两种都用于集成测试。渐增式是把下一个要测试的摸块同已经测试好的模块结合起来进行测试,每次增加一个模块。非渐增式先分别测每个模块,再把所有模块按设计要求放在一起结合成所要的程序。5..答:HC图是面向DFD,而JACKSON图是面向数据结构的。符号省略。仓库管理员采购员定货系统事务定货报表5五、应用题1.(1)结构化语言IF年龄<20THENIF文化程度=初中THEN脱产学习ELSE工作为电工ENDIFELSEIF年龄≤40THENIF(文化程度=大学)THEN工作为技术员ELSEIF性别=男性THEN工作为钳工ELSE工作为钳工ENDIFENDIFELSEIF(文化程度=大学)THEN工作为技术员ELSE工作为材料员ENDIFENDIFENDIF判定树如下:年龄≤20岁初中脱产学习高中电工高中或初中男性钳工确定职工工作__20岁<年龄≤40岁女性车工大学技术员年龄>40岁高中或初中材料员大学技术员6《软件工程》试卷及答案B卷专业年级姓名得分一.名词解释(每个2分)1.软件危机2.纯收入3.数据字典4.模块5.PDL二.填空题(每题2分)1.____是计算机程序及其说明程序的各种文档。____是有关计算机程序功能、设计、编制、使用的文字或图形资料。2.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。通常,软件生存周期包括问题定义、__,__,总体设计,详细设计,__,__,维护活动,可以将这些活动以适当方式分配到不同阶段去完成。3.Jackson方法是一种____的开发方法。4.M=P+K(C_D)是____。5.____的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。6.效益分有形效益和无形效益两种。有形效益可用纯收入、____、____等指标进行度量;无形效益主要从性质上、心理上进行衡量,很难直接进行量的比较。7.需求分析的基本任务是要准确回答系统必须“”的问题。8.数据流图有四种基本成分:____、____、____、____。9.通过____可以完成数据流图的细化。10.模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。每个模块完成一个特定的____,所有的模块按某种方法__起来。成为一个整体,完成整个系统所要求的功能。三.单选题(每题2分)1.软件生存周期包括可行性分析的项目开发计划、需求分析、概要设计、详细设计、编码、()、维护等活动。A.应用B.检测C.测试D.以上答案都不正确2.系统定义明确之后,应对系统的可行性进行研究。可行性研究应包括()。E.软件环境可行性、技术可行性、经济可行性、社会可行性F.经济可行性、技术可行性、操作可行性G.经济可行性、社会可行性、系统可行性H.经济可行性、实用性、社会可行性3.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是()。7A.状态图B.数据流图C.系统结构图D.时序图4.结构分析方法就是面向()自顶向下逐步求精进行需求分析的方法。A.目标B.数据流C.功能D.对象5.模块(),则说明模块的独立性越强。A.耦合越强B.扇入数越高C.耦合越弱D.扇入数越低6.()数据处理问题的工作过程大致分为三步,即取得数据、变换数据和给出数据。A.变换型B.事务型C.结构化验室D.非结构化7.在对数据流的分析中,主要是找到中心变换,这是从()导出结构图的关键。A.数据结构B.实体关系C.数据流图D.E_R图8.程序内部的各个部分之间存在的联系,用结构图表达时,最关心的是模块的()和耦合性。A.一致性B.作用域C.嵌套限制D.内聚性9.在多层次的结构图中,其模块的层次数称为结构图的()。A.深度B.跨度C.控制域D.粒度10.模块()定义为受该模块内一个判断影响的所有模块集合。A.控制域B.作用域C.宽度D.接口四.简答题(每题5分)2.什么是数据流图?其中的基本符号各表示什么含义?3.软件测试的目的是什么?4.非渐增式测试与渐增式测试有什么区别?4.结构化程序设计的思想是什么?五.应用题(每题10分)1.某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当电工;年龄在20岁至40岁之间者,中学文化程度男性当钳工,女性当车工,大学文化程度都当技术员;年龄在40岁以上者,中学文化程度当材料员,大学文化程度当技术员。请用判定树描述上述问题。2.对以下程序进行测试:PROCEDUREEX(A,B:REAL;VARX:REAL);BEGINIF(A=3)OR(B1)THENX:=A×BIF(A2)AND(B=0)THENX:=A-3END先画出程序流程图。再按语句覆盖法设计测试数据。8《软件工程》试卷答案B卷一.名词解释1.指在计算机软件的开发和维护过程中所遇到的一系列严重问题。2.在整个生命周期内系统的累计经济效益(折合成现在值)与投资之差。3.是关于数据信息的集合。4.是数据说明、可执行语句等程序对象的集合。5.是使用样机,使用户通过实践获得对未来系统的的概念,可以更准确提出要求。二.填空题1.软件文档2.可行性研究需求分析编码测试3.面向数据结构4.维护工作量模型P_生产性工作量C_复杂度D_熟悉度K_常数5.可行性研究6.投资回收期回收率7.做什么8.源、终点,处理,存储,数据流9.功能分解10.子功能组装三.单选题1.C2.B3.A4.B5.C6.A7.C8.D9.A10.B四.简答题1.用符号描绘信息在系统中流动的情况,源点、终点、处理、数据存储、数据流。2.测试的目的是为了发现错误.3.两种都用于集成测试。渐增式是把下一个要测试的摸块同已经测试好的模块结合起来进行测试,每次增加一个模块。非渐增式先分别测每个模块,再把所有模块按设计要求放在一起结合成所要的程序。4.答:自上而下,逐步求精仓库管理员采购员定货系统事务定货报表9五.应用题1.判定树如下:年龄≤20岁初中脱产学习高中电工高中或