《软件工程》电子教案--第六讲.ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 6.1 结构化程序设计 6.2 详细设计工具 6.3 面向数据结构的设计方法 退出 第六章 详细设计 6.1 结构化程序设计 三种基本的控制结构 逐步求精方法是由Wirth提出的一种早期的自顶向下的设计策略。面对现实的复杂问题,我们首先不要一下子就力图触及到问题解法的细节,而应当先从问题的全局出发,用较自然的抽象语句来表示问题,从而得到抽象算法。这时的算法主要是描述“做什么”,或者说是把问题描述为几个子问题或子功能。接下来对子问题,也就是对抽象算法进行细化,在这一阶段设计的算法中,已经开始含有程序设计语言的成分。随着算法的不断细化,越来越多地开始完成“如何做”,算法中程序设计语言的成分也越来越多,当最后把算法全部细化为程序设计语言描述时,程序设计也就随之完成了。 结构化程序设计技术是一种设计程序的技术,它采用自顶向下逐步求精的设计方法和单入口单出口的控制结构,并且只包含顺序、选择和循环三种控制结构。 其他常用的控制结构 6.2 详细设计工具 6.2.1 程序流程图 6.2.2 盒图 退出 6.2.3 PAD图 6.2.4 过程设计语言 6.2.5 判定表 6.2.6 判定树 6.2.1 程序流程图 程序流程图中常用的符号 程序流程图虽然比较直观,灵活,并且比较容易掌握,但是它的随意性和灵活性却使它不可避免地存在着一些缺点: (1)由于程序流程图的特点,它本身并不是逐步求精的好工具。因为它使程序员容易过早地考虑程序的具体控制流程,而忽略了程序的全局结构; (2)程序流程图中用箭头代表控制流,这样使得程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制; (3)程序流程图在表示数据结构方面存在不足。 6.2.2 盒图(N-S图) N-S图的基本符号 N-S图有以下一些特点: (1)功能域(即某一个特定控制结构的作用域)有明确的规定,并且可以很直观地从N-S图上看出来; (2)它的控制转移不能任意规定,必须遵守结构化程序设计的要求; (3)很容易确定局部数据和全局数据的作用域; (4)很容易表现嵌套关系,也可以表示模块的层次结构。 6.2.3 PAD图 PAD图的基本符号 PAD图提供的定义功能 PDL语言具有下述特点: (1)PDL虽然不是程序设计语言,但是它与高级程序设计语言非常类似,只要对PDL描述稍加变换就可变成源程序代码。因此,它是详细设计阶段很受欢迎的表达工具。 (2)用PDL写出的程序,既可以很抽象,又可以很具体。因此,容易实现自顶向下逐步求精的设计原则。 (3)PDL描述同自然语言很接近,易于理解。 (4)PDL描述可以直接作为注释插在源程序中,成为程序的内部文档。这对提高程序的可读性是非常有益的。 (5)PDL描述与程序结构相似,因此自动产生程序比较容易。 PDL的缺点是不如图形描述形象直观,因此人们常常将PDL描述与一种图形描述结合起来使用。 6.2.4 过程设计语言 6.2.5 判定表 一张判定表由四部分组成: (1)左上部列出所有条件; (2)左下部是所有可能做的动作; (3)右上部为各种可能组合条件,其中每一列表示一种可能组合; (4)右下部的每一列是和每一种条件组合所对应的应做的工作。 ? 1 2 3 4 5 教授 ? T F F F 副教授 ? F T F F 讲师 ? F F T F 助教 ? F F F T 讲座 T F F F F 50 × ? ? ? ? 30 ? × ? ? ? 25 ? ? × ? ? 20 ? ? ? × ? 15 ? ? ? ? × 例:某校制定了教师的讲课课时津贴标准。对于各种性质的讲座,无论教师是什么职称,每课时津贴费一律是50元;而对于一般的授课,则根据教师的职称来决定每课时津贴费:教授30元,副教授25元,讲师20元,助教15元。 6.2.6 判定树 教师课时津贴判定树 6.3 面向数据结构的设计方法 6.3.1 Jackson图 6.3.2 Jackson程序设计方法 退出 6.3.1 Jackson图 Jackson图表示方法 Jackson图的优点: (1)Jackson图不仅便于表示层次结构,而且也有利于对结构自顶向下分解; (2)Jackson图形象直观,可读性好; (3)Jackson图不仅能表示数据结构,也能表示程序结构(因为程序结构也可以由上述3种基本结构组成)。 Jackson图的缺点: 在选择结构和重复结构中,选择条件或循环结束条件不能直接在Jackson图中表示出来。这样就影响了图形的表达能力,也不利于直接把图翻译成程序。 改进的Jac

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档