习题课2软件工程.ppt

上传人:xt****7 文档编号:5162031 上传时间:2020-01-22 格式:PPT 页数:28 大小:559.50KB
返回 下载 相关 举报
习题课2软件工程.ppt_第1页
第1页 / 共28页
习题课2软件工程.ppt_第2页
第2页 / 共28页
习题课2软件工程.ppt_第3页
第3页 / 共28页
点击查看更多>>
资源描述
软件工程习题课 4 1从供选择的答案中选出正确的答案填入下列叙述中的 内 模块内聚性用于衡量模块内部各成份之间彼此结合的紧密程度 1 一组语句在程序中多处出现 为了节省内存空间把这些语句放在一个模块中 该模块的内聚性是 A 的 2 将几个逻辑上相似的成分放在同一个模块中 通过模块入口处的一个判断决定执行哪一个功能 该模块的内聚性是 B 的 3 模块中所有成分引用共同的数据 该模块的内聚性是 C 的 4 模块内的某成份的输出是另一些成份的输入 该模块的内聚性是 D 的 5 模块中所有成份结合起来完全一项任务 该模块的内聚性是 E 的 它具有简明的外部界面 由它构成的软件易于理解 测试和维护 供选择的答案 A E 功能内聚 信息内聚 顺序 通信内聚 过程内聚 巧合内聚 时间内聚 逻辑内聚 A5B7C3D4 2E1 4 2从供选择的答案中选出正确的答案填入下面的 中 块间联系和块内联系是评价程序模块结构质量的重要标准 联系的方式 共用信息的作用 共用信息的数量和接口的 A 等因素决定了块间联系的大小 在块内联系中 B 的块内联系最强 SD方法的总的原则是使每个模块执行 C 功能 模块间传送 D 参数 模块通过 E 语句调用其它模块 而且模块间传送的参数应尽量 F 此外 SD方法还提出了判定的作用范围和模块的控制范围等概念 SD方法认为 G 应该是 H 的子集 供选择的答案 A 友好性 健壮性 简单性 安全性B 巧合内聚 功能内聚 通信内聚 信息内聚C 一个 多个D 数据型 控制型 混合型E 直接引用 标准调用 中断 宏调用F 少 多G H 作用范围 控制范围 A B C D E F G H 模块之间的耦合 块间联系 和模块的内聚 块内联系 是评价程序模块结构质量的重要标准 联系的方式 共用信息的作用 共用信息的数量和接口的简单性等因素决定了块间联系的大小 在块内联系中 以功能内聚模块的块内联系最强 SD方法的总的原则是使每个模块只做一件事 就是说 只执行一个功能 模块之间尽可能传送简单的数据型参数 模块要通过标准调用语句调用其它模块 不要直接引用另一个模块内部的数据 同时模块之间传送的参数应尽量少 此外 SD方法还提出了判定的作用范围和模块的控制范围等概念 SD方法认为 模块的作用范围应该是其控制范围的子集 4 3举例说明你对概要设计与详细设计的理解 有不需要概要设计的情况吗 软件设计是一个把软件需求变换成软件表示的过程 最初这种表示只是描绘出软件的总的框架 然后进一步细化 在此框架中填入细节 把它加工成在程序细节上非常接近于源程序的软件表示 正因为如此 所以从工程管理的角度来看 软件设计分两步完成 首先做概要设计 将软件需求转化为数据结构和软件的系统结构 然后是详细设计 即过程设计 通过对结构表示进行细化 得到软件的详细的数据结构和算法 由于概要设计建立起整个系统的体系结构框架 并给出了系统中的全局数据结构和数据库接口 人机接口 与其它硬 软件的接口 此外还从系统全局的角度 考虑处理方式 运行方式 容错方式 以及系统维护等方面的问题 并给出了度量和评价软件质量的方法 所以它奠定了整个系统实现的基础 没有概要设计 直接考虑程序设计 就不能从全局把握软件系统的结构和质量 实现活动处于一种无序状态 程序结构划分不合理 导致系统处于一种不稳定的状态 稍一做改动就会失败 所以 不能没有概要设计 4 4说明并比较概要设计说明书与需求分析说明书的内容 1 两个说明书都包括引言 内容基本相同 2 任务概述部分概要设计说明比需求说明增加了需求概述 3 需求说明主要通过静态 动态数据 数据库描述 数据字典和数据采集等内容进行数据描述 4 需求说明中的主要部分是功能要求 性能要求 运行需求以及其他要求 它的目的是全面地 精确地描述了系统要 做什么 需求说明书中还可能包括数据流图 数据字典 IPO图等描述的系统逻辑模型 5 概要设计说明则对系统的总体结构 各个接口 数据结构 运行 出错 安全 维护进行具体设计 它的目的是描述系统 怎样做 往往包含了各模块的处理说明和接口说明以及系统结构图 6 概要设计说明是建立在需求说明的基础上的 4 5设计SC图根据下图所示的变换型DFD图 用面向数据流的设计方法设计出SC图 1 第一级分解 建立初始SC框架 设计顶层和第一层模块 MC MT MA ME c e c e u w u w 传送信息 第一级分解后的SC 另一种画法 MC MA1 c e u w c p MA2 Q P R ME1 ME2 e p r r w u w 变换分析设计方法步骤 2 第二级分解 分解SC各分支 自顶向下分解 设计出每个分支的中 下层模块 输入分支的分解 1 MA C B A b a c E D d e c e 输入分支的分解 2 MA GetC b a c ReadD d e c e BtoC b c d e a b GetE GetB DtoE AtoB ReadA 输出分支的分解 ME W WriteV u u w u v v v PutU UtoV ME U WriteW w w u w u V 1 2 中心加工分支的分解 MT P Q R e c p r u w p r 5 1下图是使用Basic语言编写的一个打印A B C三数中最小者的程序的流程图 其中出现了6个GOTO语句 一个向前 5个向后 程序可读性很差 if A BandB C thenprintBelseprintC 分析 理清程序流程图中每一条执行路径 适当利用复合的条件测试于判断语句 对每一个最终的打印处理 保留一个分支进入它 这样可以消除众多的GOTO语句 甚至可以消除嵌套的判断语句结构 这种程序结构清晰 可读性好 5 2 试说明下面的两个程序段的功能是什么 可否用另一些等效的程序段来代替它 以提高其可读性 1 A I A I A T 2 for i 1 i n i A T A I A T for j 1 j n j A I A I A T V i j i j j i 1 的功能是对换A I 与A T 的内容 等效的程序段可以是 WORK A T A T A I A I WORK 2 的功能是建立一个单位矩阵V 等效的程序段可以是 for i 1 i n i for j 1 j n j if i j V i j 1 elseV i j 0 分析 阅读这两段程序 读者可能不易看懂 有时还需用实际数据试验一下 对于 1 如果我们给A I 赋值3 给A T 赋值5 在运算后发现A I 中变成了5 A T 中变成了3 这段程序就是交换A I 和A T 中的内容 目的是为了节省一个工作单元 如果改一下 WORK A T A T A I A I WORK 就能让读者一目了然 对于 2 除法运算 在除数和被除数都是整型量时 其结果只取整数部分 而得到整型量 因此 i j为0 当i j时j i为0 当j i时得到的数组V i j i j j i 0 当i j时 i j j i 1 当i j时这样得到的结果V是一个单位矩阵 如果直截了当地说明作者的意图 if i j V i j 1 elseV i j 0 让读者可以很容易地理解 所以 在程序设计时 应当首先考虑清晰性 不要玩技巧 5 3 用Jackson图表示下图所示的二维表格 该学生名册由表头和表体两部分组成 其中表头又顺序包括表名和字段名 表体可由任意行组成 每行包括学生的姓名 性别 年龄和学号 学生名册 5 4 根据伪码画出N S图 STARTIFATHENX1DOUNTILBELSEX2YENDIFZSTOP 5 5 根据伪码画出PAD图 STARTSWITCHPCASE1 A break CASE2 B break CASE3 C break Default STOP 5 6 移动电信公司为促进业务的发展发行各种优惠卡 其中包括钻石卡 金卡 银卡3种 用户可以依据其信用度享受不同额度的透支 其中钻石卡 金卡和银卡允许透支的额度分别为800元 500元和100元 发卡的规则为 从未发生过话费拖欠 且每月通话费在500元 含 以上者可获得钻石卡 每月通话费在200元 含 以上者可获得金卡 每月通话费在100元 含 以上者可获得银卡 发生过话费拖欠 能在规定的时间内缴清欠款 且每月通话费在300元 含 以上者可获得金卡 每月通话费在200元 含 以上者可获得银卡 发生过话费拖欠 并未能在规定时间内补清欠款 无论每月话费多少均不能获得优惠卡 6 2根据下面给出的规格说明 利用等价类划分的方法 给出足够的测试用例 一个程序读入三个整数 把此三个数值看成是一个三角形的三个边 这个程序要打印出信息 说明这个三角形是三边不等的 是等腰的 还是等边的 解 设三角形的三条边分别为A B C 如果它们能够构成三角形的三条边 必需满足 A 0 B 0 C 0 且A B C B C A A C B 如果是等腰的 还要判断是否A B 或B C 或A C 对于等边的 则需判断是否A B 且B C 且A C 列出等价类表 6 3 某一报表处理系统 要求用户输入处理报表的日期 假设日期限制在1990年1月至1999年12月 即系统只能对该段时期内的报表进行处理 如果用户输入的日期不在此范围内 则显示输入错误信息 该系统规定日期由年 月的6位数字字符组成 前4位代表年 后两位代表月 现用等价类划分法设计测试用例 来测试程序的 日期检查功能 解 划分等价类并编号 划分成3个有效等价类 7个无效等价类 如表5 3所示 为合理等价类设计测试用例 对于表中编号为1 5 8对应的3个合理等价类 用一个测试用例覆盖 为每一个不合理等价类至少设计一个测试用例 测试数据期望结果覆盖范围199002输入有效1 5 899MAY输入无效2 19995输入无效3 1999005输入无效4 198912输入无效6 200001输入无效7 199900输入无效9 199913输入无效10 6 4根据给出的程序流程图 画出它的PAD图和程序图 并计算它的McCabe复杂性度量 其中 Pi代表操作语句 Ci代表条件 PAD图 程序图 McCabe复杂性 4 6 5某城市的电话号码由三个部分组成 这三部分的名称与内容分别是 地区码 空白或3位数字 2 前缀 非 0 或 1 开头的3位数字 后缀 4位数字 用等价分类法完成如下要求 划分出有效等价类 无效等价类 为有效等价类设计出测试用例 解 第一步 电话号码等价类划分
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!