全国高等教育自学考试2008年1月软件工程试题及答案.docx
全国2021年1月自学考试软件工程试题软件工程试题课程代码:02333一, 单项选择题本大题共20小题,每题1分,共20分在每题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选, 多项选择或未选均无分。1在软件生存周期中,时间最长的阶段是 D A需求分析B具体设计C编码2以下最适合于面对对象的软件开发的软件生存周期模型是 D A瀑布模型C螺旋模型3以下不适用于需求分析的工具是 C A数据流图CPAD图4以下几种模块内聚类型中,内聚性最低的是 B 内聚由低到高的为:偶然内聚, 逻辑内聚, 时间内聚, 通信内聚, 依次内聚, 功能内聚耦合性由低到高的:无干脆耦合, 数据耦合, 标记耦合, 限制耦合, 公开耦合, 内容耦合A时间内聚C依次内聚D功能内聚5系统流程图中 符号的名称是 A A联机存储C磁盘6数据流图中的每个加工至少有 D A一个输入流或一个输出流C一个输入流入流和一个输出流7HIPO图是软件工程中的一种描述工具,采纳HIPO图进展描述的阶段是 C A可行性分析C概要设计8Jackson方法是软件开发过程中常用的方法,运用Jackson方法可以实现 A A从数据构造导出程序构造C从模块构造导出数据构造9过程设计语言(PDL),又称为 A A伪码C中级程序语言10单元测试阶段主要涉及的文档为 B A需求设计C具体设计D概要设计11软件维护会产生副作用,下面选项中不属于维护副作用的是 B A编码副作用C文档副作用l2以下不适合作为科学工程计算的语言是 D APascalCFortranl3PAD图为以下哪个方面供应了有力的工具 C A系统分析B软件的自动化生成C自动分析数据14构造化软件设计是 A A面对数据构造的C面对数据流的15在McCall软件质量度量模型中,面对软件产品修改的质量因素为 C A可用性C适应性16汽车是一种交通工具,汽车类和交通工具类之间的关系是 A A一般具体 aC整体局部l7Westinghouse公司于1992年公布了l3类软件工具分类标准和该类的范例工具以及例子,下面说法错误的选项是 A A代码生成程序属于编码和单元测试工具C数据库管理系统属于需求追踪工具于工程管理工具18对McCabe度量法,表达错误的选项是 C B.McCabe度量法以图论为工具,用图的环路作为程序困难性的度量值简洁IF语句, 循环语句19瀑布模型本质是一种 B A依次迭代模型C线性迭代模型20对于运用原型的建议,下面说法错误的选项是 C A开发周期很长的工程,可通过原型开发来缩短开发周期B.系统的运用可能改变较大,不能相对稳定,而原型模型具有适应改变的机制C缺乏开发工具,或对原型的可用工具不了解的时候宜运用原型D.用户对系统的需求较为模糊,对某种要求缺乏信念时宜运用原型二, 填空题本大题共10小题,每空2分,共20分请在每题的空格中填上正确答案。错填, 不填均无分。21为了支持软件人员开发和维护活动而运用的软件一般是指_软件工具_。22在IDEF0方法中,一个活动可以无输入,但必需至少有一个_限制_。23在软件构造的设计中,各个模块之间要力求降低耦合性,提高_内聚性_。24在类的层次构造中,通常上层类称为父类或超类,下层类称为_子类_。25数据流图(DFD)一般可分为变换型和_事务型_两类。26软件维护的内容包括校正性维护, 适应性维护, _完善性维护_和预防性维护。27软件的生产经验了三个阶段,分别是程序设计时代, 程序系统时代和_软件工程时代_。28渐增模型是瀑布模型的变种,分为两类:增量构造模型和_演化提交模型_。29状态图反映了_事务与状态_的关系。30软件工程管理过程一个关键的活动是_制定工程方案_,它是软件开发工作的第一步。三, 名词说明题本大题共5小题,每题3分,共15分31软件开发方法 软件开发方法是一种运用早已定义好的技术集及符号表示习惯来组织软件生产的过程。32耦合性 软件系统构造中各模块间相互联系的严密程度的一种度量。33多态性 指一样的操作或函数, 过程可作用于多种类型的对象上并获得不同结果。不同的对象,收到同一消息可以产生不同的结果。34软件质量保证 是指在软件开发过程中,为了保证产品满足指定标准而进展的各种活动。向用户及社会供应 满足的高质量的产品,确保软件产品从诞生到消亡为止的全部阶段的软件质量活动35确认测试 确认组装完毕的程序是否满足软件需求规格说明书SRS的要求。检查软件功能与性能是否与需求规格说明书中确定的指标相符合 四, 简答题本大题共4小题,每题5分,共20分36简述可行性探讨的目的和任务。 答:1软件可行性探讨的目的:就是用最小的代价在尽可能短的时间内确定该软件工程是否能够开发,是否值得去开发。留意,可行性探讨的目的不是去开发一个软件工程,而是探讨这个软件工程是否值得去开发,其中的问提能否解决。可行性探讨实质上是要进展一次简化, 压缩了的需求分析, 设计过程,要在较高层次上以较抽象的方式进展需求分析和设计过程。 2可行性探讨的任务 :技术可行性:对要开发工程的功能, 性能, 限制条件进展分析,确定在现有的资源条件下,技术风险有多大,工程是否能实现。包括:开发的风险;资源的有效性;技术;开发人员在评估技术可行性时,一旦估计错误,将会出现灾难性后果。 经济可行性:包括本钱效果分析, 公司经营长期策略, 开发所需的本钱和资源, 潜在的市场前景。 社会可行性包括:合同, 责任, 侵权, 用户组织的管理模式及标准,其他一些技术人员经常不了解的陷阱等。37什么是模块化?软件构造设计的优化准那么是什么? 答:模块化是按规定的原那么将一个大型软件划分为一个个较小的, 相对独立但又相关的模块。模块设计的准那么:(1) 改良软件构造, 提高模块独立性。在对初步模块进展合并, 分解和移动的分析, 精化过程中力求提高模块的内聚,降低藕合。(2) 模块大小要适中。大约50行语句的代码,过大的模块应分解以提高理解性和可维护性;过小的模块,合并到上级模块中。(3) 软件构造图的深度, 宽度, 扇入和扇出要适当。一般模块的调用个数不要超过5个。(4) 尽量降低模块接口的困难程度。(5) 设计单入口, 单出口的模块。(6) 模块的作用域应在限制域之内。38简述具体设计的根本任务。答:(1)为每个模块确定采纳的算法;(2)确定每一模块运用的数据构造;(3)确定模块接口的细微环节;(4)编写过程设计说明书;(5)设计每一模块的测试用例。39简述软件测试的任务, 目的与类型。 答:1软件测试是一个为了找寻软件错误而运行程序的过程。2目的就是为了发觉软件中的错误。一个好的测试用例是指很可能找到迄今为止尚未发觉的错误的用例。一个胜利的测试是指提示了迄今为止尚未发觉的错误的测试。3软件测试主要分为白盒测试和黑盒测试两大类。五, 应用题(本大题共2小题,其中40小题l0分,4l小题15分,共25分)40某个程序的伪码如下(前面的标号只用于标明语句依次,不参加程序运行):1:START2:IF L1 THEN3:S14:DO WHILE L25:S26:IF L3 THEN7:S3ELSE8:S49:END IF10:END DOEISE11:S512:END IF13:STOP(1) 试将其转换成PAD图(5分)答:1 (2) 计算程序的环路困难性(5分) 2该程序的环路困难度为441某服装贸易公司的销售子系统功能如下:(1)公司供应多种类别服装,全部类别的服装通过各个地区的分公司进展销售;(2)公司接收分公司的订单,检验订单,假设有库存就供货,那么修改库存,给仓库开备货单,并且将订单留底;假设库存缺乏,那么进展缺货登记。(3)依据缺货记录将缺货通知单发给选购部,以便选购。(4)依据选购部门的进货通知单处理进货,即修改库存,并从缺货记录中取出缺货订单进展供货处理。试采纳SA方法画出该公司销售管理系统的分层DFD(画出顶层, 0层, 1层图)。答:顶层构造图:0层:1层: