当前位置:首页 > 陇东学院《软件工程》习题参考答案
字符串长度:2位取值范围及含义:00:定期; 01:零存整取;10:活期;11:定/活两便加工名:核查编号:激发条件:接受存款单或取款单输入:存款单或取款单输出:认定的合格的村/取款加工逻辑:根据账卡及用户存/取款单据if 单据=存款单 then
存款单据是否填写规范,是否与现金一致else审核是否为有效取款单,取款金额不得超出存款金额,密码是否正确⒒某图书管理系统有以下功能:⑴借书:输入读者借书证。系统首先检查借书证是否有效,若有效,对于第一次借书的读者,在借书证上建立档案。否则,查阅借书文件,检查该读者所借图书是否超过10本,若已达10,拒借,末达10本,办理借书⑵还书:从借书文件中读出与读者有关的记录,查阅所借日期,如超期作罚款处理。否则,修改库存目录与借书文件。⑶查询:通过借书文件,库存目录文件查询读者情况﹑图书借阅及库存情况,打印统计表。解:
数据字典数据流名称:借书别名:借书单简述:读者借书时填写的单据
去向:审核借书数据流量:250份/天组成:借书证编号+借阅日期+书名+借阅方式+密码+借阅人数据流名称:还书别名:无简述:读者还书时附带的数据
去向:审核还书数据流量:250份/天组成:借书证编号+借阅日期+书名+借阅方式数据名称:借书文件别名:无简述:借书证编号+借阅日期+书名+借阅方式+密码+借阅人+操作员查询要求:要求能立即查询并修改数据存储名称:库存文件别名:无简述:存放图书出/入库组成:书名+出版社++出版日期+入库数据+总数量++当前库存量组织方式:数据文件,以书名为进行索引查询要求:要求能立即查询并修改加工名:审核借书证编号:1.1激发条件:接受到借书证输入:借书证输出:认定合格的借书证加工逻辑:根据借书文件及读者借书证if 借书证编号在借书文件存在 and 未过期 and 密码正确 then借书证有效else 借书证无效⒓某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当电工。20岁至40岁之间,中学文化程度,男性当钳工,女性当车工,大学文化程度都当技术员。年龄在40岁以上者,中学文化程度当材料员,大学文化程度当技术员。请用结构化语言﹑判定表或判定树描述上述问题的加工逻辑。结构化语言: 年龄20CASE 文化程度 初中分配工种 脱产学习CASE 文化程度 高中分配工种 电工ENDCASECASE 年龄=40.AND.=20CASE 文化程度 初中.OR.高中CASE 性别 男分配工种 钳工CASE 性别 女
分配工种 车工ENDENDCASECASE 文化程度 大学分配工种 技术员ENDCASEENDCASECASE 年龄40CASE 文化程度 初中.OR.高中分配工种 材料员CASE 文化程度 大学分配工种 技术员ENDCASEENDCASE 第4章
1. 什么是软件概要设计?该阶段的基本任务是什么?
把一个软件需求转换为软件表示时,首先设计出软件总的体系结构。称为概要设计或结构设计。 基本任务:
⑴设计软件系统结构,具体为:
采用某种设计方法,将一个复杂的系统按功能划分为模块。 确定每个模块的功能。 确定模块之间的调用关系。
确定模块之间的接口(模块之间传递的信息) 评价模块的结构质量
⑵进行数据结构及数据库的设计 ⑶编写概要设计的文档
主要内容有:概要设计说明书,数据库说明书(DBMS的简介,概念模型,逻辑设计,结果)用户手册,修订测试计划(测试的策略﹑方法﹑步骤)
第5页 共22页
⑷评审:是否完整地实现了规定的功能﹑性能要求。设计方案是否可行。关键的处理及内部接口定义的正确性,有效性,各部分的一致性。 2.软件设计的基本原理包括哪些内容?
⑴模块化:模块是软件的组成部分,是具有独立功能且可命名的一段程序,所有模块组成
整体,可以满足问题的要求。模块化即按照一定的原则,将软件划分成若干个模块,每个模块完成一个特定的功能,然后把这些模块按照某种方法组装成一个软件系统。(可降低复杂度、减少工作量) 模块具有以下几种特性: 接口:模块的输入输出。 功能:指模块实现什么功能。
逻辑:描述模块内部如何实现要求及所需的数据。 状态:该模块的运行环境,模块间调用与被调用关系。
⑵抽象:认识复杂现象过程所使用权的工具,只考虑事物本质的共同特性,忽略细节和其它因素。通过抽象确定组成软件的过程实体。
⑶信息隐蔽:将模块实现自身功能的细节与数据\隐蔽\起来。模块间仅交换为完成系统功能所必须的信息。
⑷模块独立性:每个模块只完成系统要求的独立的子功能。 3.衡量模块独立性的两个标准是什么?各表示什么含义? 内聚和耦合
内聚:又称为块内联系,指模块内部各成分之间相互关联的程度,以高内聚为设计目标。
耦合:也称块间联系,模块之间相互联系程度的度量,联系越紧密,耦合性越强,独立性越差,以低耦合为设计目标。
4.模块的耦合性有哪几种?各表示什么含义?
⑴内容耦合:一个模块直接操作或修改另一模块的数据,或者不通过正常入口直接转入 另一模块 ⑵公共耦合:两个或多个模块通过共同引用一个全局数据环境相互作用 ⑶控制耦合:模块之间通过传递控制信息相互作用
⑷标记耦合:两个模块之间通过传递公共指针或地址相互作用的耦合 ⑸数据耦合:模块之间通过传递数据交换信息 ⑹无耦合:模块间无任何关系,独立工作 5.模块的内聚性有哪几种?各表示什么含义? ⑴偶然内聚:一个模块各个成分之间毫无关系
⑵逻辑内聚:将几个逻辑上相关的功能放在同一个模块中 ⑶时间内聚:一个模块完成的功能在同一时间执行
⑷过程内聚:一个模块内部的处理成分是相关的,而且必须以特定的次序执行 ⑸通信内聚:一个模块的所有成分都集中在同一个数据结构上
⑹顺序内聚:一个模块的各个成分同一个功能密切相关,而且一个成分的输出,作为另外一个成分的输入
⑺功能内聚:模块内的所有成分属于一个整体,完成单一的功能。(内聚最高) 6.什么是软件结构?简述软件结构设计的优化准则。
⑴改进软件结构,提高模块独立性 首先设计出软件初始结构,评价该结构,通过模块分解或合并,力求降低耦合提高内聚。 ⑵模块的规模应该适中
⑶模块结构的深度、宽度、扇出和扇入应适中 深度:软件结构中控制的层数
宽度:软件结构中同一层次上最大模块总数
第6页 共22页
扇入:某一模块有多少直接调用它的上级模块数目(越大越好)
扇出:一个模块直接控制(调用)下级模块的数目。(越少越好,3,4个为宜,不超过9个, \顶层扇出较高,中间扇出较少,底层模块高扇入多\
⑷一个模块的作用域(范围),应处在这个模块的控制域(范围)之内 模块的作用域:受该模块内一个判定影响的所有模块的集合
模块的控制域:这个模块本身以及所有直接或间接从属于它的模块的集合 7.什么是模块的影响范围?什么是软件的控制范围?它们之间应建立什么关系? 模块的影响范围(作用域):受该模块内一个判定影响的所有模块的集合
模块的控制范围(控制域):这个模块本身以及所有直接或间接从属于它的模块的集合 一个模块的影响范围(作用域),应处在这个模块的模块的控制范围(控制域)内。 8.什么样是\事物流\什么是\变换流\试将相应形式的数据流图转换为软件结构图 数据流图(DFD)一般可分为\变换流\,\事物流\两种。 第5章
1、详细设计的基本任务是什么,有哪几种描述方法? 答:详细设计的基本任务包括: 1、为每个模块进行详细的算法设计 2、为模块内的数据结构进行设计 3、对数据库进行物理设计 4、其他设计
5、编写详细设计说明书 6、评审
详细设计的描述方法有图形、表格和语言,其中图形常用结构化程序流程图、盒图和PAD(问题分析图)为描述工具,语言常用过程设计语言(PDL)来作为工具。 2、结构化程序设计的基本要点是什么? 答:主要有三个:
1、采用自顶向下、逐步求精的程序设计方法
2、使用三种基本控制结构构造程序。任何程序都可以由顺序、选择、重复(循环)三种基本控制结构构造,这三种基本结构的共同点是单入口、单出口。 3、主程序员组的组织形式。 3、简述Jackson方法的设计步骤。 答:Jackson方法的设计步骤如下:
(1)分析并确定输入数据和输出数据的逻辑结构,并用Jackson结构图表示这些数据结构。 (2)找出输入数据结构和输出数据结构中有对应关系的数据单元。 (3)按一定的规则由输入、输出的数据结构导出程序结构。 (4)列出基本操作与条件,并把它们分配到程序结构图的适当位置。 (5)用伪码写出程序。
4、请使用流程图、PAD图和PDL语言描述下列程序的算法。 (1)在数据A(1)~A(10)中求最大数和次大数。 解:如图所示:
第7页 共22页
PDL语言描述: GET(a[1],a[2],...a[10]) max=a[1]; max2=a[2]; FOR i=2 TO 10 IF a[i]>max max2=max; max=a[i]; ELSE IF a[i]>max2 max2=a[i]; ENDIF ENDIF ENDFOR
第8页 共22页
共分享92篇相关文档