软件工程导论-ch6(精品·公开课件).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
华中科技大学计算机学院 陆枫 99-7 1999年7月 第6章 详细设计 引言 一. 详细设计的目的 1.详细设计的目的:为软件结构图中的每一个模块确定所采用的算法和模块内数据结构。 2.详细设计以总体设计阶段的工作为基础,但又不同于总体设计,主要表现在如下两个方面: (1)在总体设计阶段,数据项与数据结构以比较抽象的方式描述,详细设计就要确定用什么数据结构来实现。例如在总体设计阶段,称一组数值表示矩阵,详细设计就要指明这个矩阵的具体细节如行数、列数等。 (2)详细设计要提供关于算法或每个模块的足够细节,使程序员能直接为每个模块编码。例如在总体设计阶段,称模块A的作用是对一个表进行排序,详细设计就要指明用哪一种排序算法。 第6章 详细设计 二.详细设计的任务 1.为每一个模块确定采用的算法,选择某种适当的工具表达算法 的过程,写出模块的详细过程描述; 2. 确定每一模块使用的数据结构; 3.确定模块结构的细节,包括对系统外部的接口和用户界面,对 系统内部其它模块的接口,以及关于模块输入数据、输出数据 及局部数据的全部细节; 4.为每一个模块设计出一组测试用例,以便在编码阶段对模块代 码(即程序)进行预定的测试; 5.在详细设计结束时,应该把上述结果写入详细设计说明书(即 程序规格说明书),并通过复审形成正式文档,作为下一阶段(编 码)的工作依据。 第6章 详细设计 一.程序设计方法学 1.程序设计方法学是以程序设计方法为研究对象的学科。 2.它是针对某一领域或某一领域的特定一类问题所用的一整套特定程序设计方法所构成的体系。如结构化程序设计方法学、逻辑式程序设计方法学、函数式程序设计方法学和面向对象程序设计方法学等。 二.结构化程序设计是一种特定的程序设计方法学,它是一种结构性的编程方法。结构性反映如下: 1.编程过程采用的是“自顶向下、逐步求精”的方法; 2.按模块组装的方法编程,即将所需程序编制成只含顺序结构、判定结构及重复结构,其中每一个结构只容许一个入口和一个出口。 3.为实现所编程序的单入口和单出口,采用三种基本控制结构。 第6章 详细设计 三.三种基本控制结构 第6章 详细设计 四. 结构化程序设计的优点 1.每一步只优先处理当前最需要细化的部分,其余部分推迟到适 当的时机再考虑.先后有序,主次分明; 2.易于验证程序的正确性; 3.“结构化”保证程序的清晰易读,“逐步细化”实现程序的正确 可靠。 五. 逐步细化的实现步骤 1.由粗到细对程序进行逐步细化; 2.在细化程序的过程中,同时对数据的描述细化; 3.每一步细化均使用相同的结构化语言,最后一步一般直接用伪 代码来描述,以便编码时直接译为源程序。 6.2.3人机界面设计指南 第6章 详细设计 关于描述工具的有关说明: 1.为了给出软件结构图中每一个模块的算法和块内数据结构的清晰描述,需要采用适当的表达工具。 2.详细设计的表达工具有三类:图形、表格和语言。 3.无论哪类描述工具不仅要具有描述设计过程,如控制流程、处理功能、数据组织及其它方面的细节的能力,而且在编码阶段能够直接将它翻译为用程序设计语言书写的源程序。 第6章 详细设计 1.程序流程图又称为程序框图.它是最古老的、使用最广泛的描述 软件设计的方法。 2.程序流程图中的符号,除了前面提到的三种基本控制结构外,为 方便起见,有时还使用其它一些等价符号(见下页图)。 3.它的优点:对控制流程的描绘直观,便于初学者掌握。 4.它的主要缺点: (1) 程序流程图本质上不是逐步求精的好工具,较早考虑程序的 控制结构,而不去考虑程序的全局结构; (2)程序流程图描述程序逻辑的随意性与灵活性,不能满足结构 化程序设计的要求; (3) 程序流程图不易表示数据结构。 由于上述原因,程序流程图的使用受到一定的局限。 第6章 详细设计 1.结构化程序设计反对滥用GOTO语句,主张把程序的逻辑结构限制为顺序、选择和重复等几种有限的基本结构,以提高程序的易读性和易维护性。 2.N-S图(Nassi与Shneiderman提出的)的主要特色,就是只能描述结构化程序设计所允许的标准结构。 3.N-S图用一个大的矩形表示所描述的模块,将其内部分成不同的部分,分别表示不同的子处理过程,这些子处理过程又可进一步分解成更小的部分。 4.N-S图对于三种基本程序结构的表示方法如图: 第6章 详细设计 第6章 详细设计 PAD图(Problem Analysis Diagram)采用二维树型结构表示程序的控制流。 2.PAD图的主要优点 (1)使用表示结构化控制结构的PAD符号所设计程序必然是结构化 程序; (2)PAD图描述的程序结构十分清晰; (3)用PAD图表现程序逻辑,易读、易懂、易记; (4)易将PAD图转换为高

文档评论(0)

花好月圆 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档