- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程课程课件6
第五章 详细设计 详细设计(过程设计、模块设计) 目标:确定如何实现所要求的系统 对目标系统的精确描述 逻辑上正确实现每个模块的功能 处理过程简单易懂 5.1 结构程序设计 程序的三种基本 控制结构 5.1 结构程序设计 结构程序设计 如果一个程序的代码块仅仅通过顺序、选择和循环这三种控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的 结构程序设计本质上并不是无GO TO语句的编程方法,而是一种使程序代码容易阅读、容易理解的编程方法。 根据实际情况灵活掌握goto的使用 结构程序设计是尽可能少用GO TO语句的程序设计方法。最好仅在检测出错误时才使用GO TO语句,而且应该总是使用前向GO TO语句。 如果只允许使用顺序、IF-THEN-ELSE型分支和DO-WHILE型循环这三种基本控制结构,则称为经典的结构程序设计; 5.1 结构程序设计 如果除了上述三种基本控制结构之外,还允许使用DO-CASE型多分支结构和DO-UNTIL型循环结构,则称为扩展的结构程序设计;如果再加上允许使用LEAVE(或BREAK)结构,则称为修正的结构程序设计。 5.2 详细设计过程 为每个模块确定采用的算法,写出模块的详细描述 确定模块使用的数据结构 确定模块接口的详细描述 对系统外部的接口和用户界面 对系统内部其他模块的接口 关于模块输入数据、输出数据和局部数据的全部细节 5.2 详细设计过程 设计原则 清晰第一、效率第二 结构化的控制结构 控制结构应一个入口、一个出口 允许使用 DO-UNTIL和DO-CASE 允许循环跳出 逐步细化的实现方法 在一组数中找出其中的最大数 5.3 过程设计工具 程序流程图 程序流程图又称为程序框图, 历史最悠久使用最广泛的描述过程设计的方法 然而它也是用得最混乱的一种方法 任意跳转 5.3 过程设计工具 5.3 过程设计工具 5.3 过程设计工具 PAD图的基本符号 顺序(先执行P1后执行P2); (b) 选择(IF C THEN P1 ELSE P2); (c) CASE型多分支; (d) WHILE型循环(WHILE C DO P) (e) UNTIL型循环(REPEAT P UNTIL C); (f) 语句标号; (g) 定义 5.3 过程设计工具 5.3 过程设计工具 5.3 过程设计工具 Jackson方法 (1)分析并确定输入数据和输出数据的逻辑结构,并用Jackson结构图来表示这些数据结构。 (2)找出输入数据结构和输出数据结构中有对应关系的数据单元。 (3)按以下的规则由输入、输出的数据结构导出程序结构。 1)为每一对在输入数据结构和输出数据结构中有对应关系的单元画一个处理框。 2)为输入和输出数据结构中剩余的数据单元画一个处理框。 3)所有处理框在程序结构图上的位置,应与由它处理的数据单元在数据结构Jackson图上的位置一致。 4)必要时,可以对映射导出的程序结构图进行进一步的细化。 (4)列出基本操作与条件,并把它们分配到程序结构图的适当位置。 (5)用伪码写出程序。 操作对象是一种文件,该文件由三部分组成:文件头、文件体和文件尾。文件体由特定分隔符分成许多记录组,记录根据其特征码分A类记录和B类记录。文件统计系统读取以上结构的文件,显示文件头,计算记录组数以及A类记录和B类记录记录个数,并打印输出。 Seq open file; read file; seq display file header; read file; end; seg zeroise group count(GC); zeroise group count(AC); zeroise group count(BC); iter while not EOF increment GC; iter while not EOF select record A increment AC; or record B increment BC; read file;
文档评论(0)