文档详情

第五章详细设计(ProgramDesignCoding)1.ppt

发布:2018-07-08约7.47千字共37页下载文档
文本预览下载声明
第五章 详细设计 (Program Design ? Coding) 结构程序设计的特点: ① 自顶向下逐步求精; ② 具有单入、单出的控制结构(取消GOTO语句) §1. 工具 ? 任何复杂的程序流程图都应由以上五种基本结构组合而成。 优点:易于实现由PDL到源代码的自动转换。 缺点:不够直观。 §2. JSD 例:(P.91)一个正文文件由若干个记录组成, 每个记录是一个字符串。 要求统计每个记录中空格字符的个数, 以及文件中空格字符的总个数。 要求的输出数据格式是: 每复制一行输入字符串之后, 另起一行印出这个字符串中的空格数, 最后印出文件中空格的总个数。 第2步:Data Structure ? Program Structure 。 见P.97 图 5.17 第3步:将上图对应转换为程序流程图,并将每个处理框编号。见P.98 图 5.18 第4步:Pseudocode 分类。 例:(部分列举,详见P.98 - 99) 输 入 类 010 — 读 040 — 读 100 — 读 分支准备类:040 — 顾客号送到访问顾客号 分支指令类:010 — 若EOF 030 040 — 若读出的顾客号 =访问的顾客号 060 100 — 若读出的顾客号 =访问的顾客号 070 ………… 计 算 类:040 — 旧余额送到工作区 ………… 输 出 类:040 — 旧余额送到参考区 040 — 编辑顾客标题 040 — 输出并复原打印区 ………… 第5步:将前一步分类结果标号排序 Pseudocode. 见 P.99 — 100 §4.程序复杂程度的定量度量 (Measuring Program Complexity) 1、mcCabe’s Theory (Thomas mcCabe , 1976) —— based on CFG 第1步:将程序流程图转化为程序图(CFG, Control Flow Graph) §4.程序复杂程度的定量度量 第2步:计算CFG的环形复杂度 (CC, Cyclomatic Complexity) ① 分支或循环增多时,CC也随之增大, CC值实际上是为软件测试的难易度提供了一个定量度量的方法, 间接表示了软件的可靠性。 ② CC是可加的:2模块的总复杂度 = 各自CC之和。 ③ 实践经验表明,对于CC10的程序,应分成几个小程序处理,以降低出错率。 ④ 缺点: ? 有些控制结构不能区分,例如 IF 与 LOOP,嵌套 IF 与 CASE 等; ? 不能区分一个多行顺序结构与一个单行程序的复杂性。 Project Part Ⅱ “软件设计报告”分组演讲 ? 演讲内容: ⑴ 分组任务简介; ⑵ 精化的DFD讲解; ⑶ System Hierarchy 讲解; ⑷ 选择有代表性的3个模块,给出HIPO图并讲解。 ? 演讲时间:待定,每组10分钟演讲 + 5分钟听众提问。 演讲顺序:抽签决定。 上交“软件设计”书面报告, 两星期内完成。 评 分 标 准 §4.程序复杂程度的定量度量 McCabe 环形复杂度的特点: 2. Halstead’s Theory (M. Halstead, 1977) —— based on source code measurements ? The primitive measures are n1 —不同的运算符个数(the number of distinct operators that appear in a program) n2 — 不同的操作数个数( the nu
显示全部
相似文档