第九讲 软件设计二REV2.0.pptVIP

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第九讲 软件设计二REV2.0

过程设计 过程设计也叫做详细设计或程序设计,它不同于编码或编写程序。在过程设计阶段,要决定各模块的实现算法,并精确表达这些算法。前者涉及所开发项目的具体要求和对每个模块规定的功能,以及算法的设计和评价,这不属于本书讨论的范围。后者需要给出适当的算法描述,为此应提供过程设计的表达工具。 过程设计的描述 在理想情况下,算法过程描述应采用自然语言来表达,这样不熟悉软件的人要理解这些规格说明比较容易,无需重新学习。但是,自然语言在语法上和语义上往往具有多义性,常常要依赖上下文才能把问题交待清楚。因此常常选择其它的一些工具来表达过程细节。这些工具一般分为图形工具、表格工具和语言工具。 程序流程图 略 N-S图 Nassi和Shneiderman提出了一种符合结构化程序设计原则的图形描述工具,叫做盒图。在盒图中,为了表示五种基本的控制结构,规定了五种图形构件, PAD ????????PAD是日本日立公司提出来的,由程序流程图演化来,用结构化程序设计思想表现程序逻辑结构的图形工具。现在已为ISO认可。 判定表 当算法中包含多重嵌套的条件选择时,用程序流程图、N-S图或PAD都不易清楚的描述。然而判定表却能清楚地表达复杂的条件组和与应做动作之间的对应关系。 判定表的组成 (1)条件茬:左上部分,列出各种可能的条件。除去某些问题中对各个条件的先后次序有特定要求外,通常判定表中各条件的先后次序不要求。 (2)条件项:右上部分,给出各个条件的条件取值组合。 (3)动作茬:左下部分,列出可能采取的动作,这些动作的顺序没有限制,但为便于阅读也可按适当的顺序排列。 (4)动作项:右下部分,和条件项紧密相关,它指出了在条件项的各种取值的组合情况下应采取什么动作。 判定树 判定树也可用来描述详细设计,有时它比判定表更直观。用它来描述,很容易为用户接受。 PDL PDL也称为结构英语或伪码,是所有正文形式的过程设计工具的总称,目前有多种PDL PDL经常表现为一种“混杂”的形式,允许自然语言(如英语)的词汇与某种结构化程序设计语言(如Pascal、Ada等)的语法结构交织在一起,因此大多数PDL描述不能直接编译(至少目前如此)。 PDL的特点 1、关键字采用固定语法并支持结构化构件、数据说明机制和模块化; 2、处理部分采用自然语言描述; 3、允许说明简单(向量、数组等)和复杂(链表、树等)的数据结构; 4、子程序的定义与调用规则不受具体接口方式的影响。 结构化设计 结构化设计方法能方便的将数据流图转换为软件结构。通过结构化设计方法得到的软件结构常用结构图表示。 SD以数据流图为基础,它定义了把DFD变换成软件结构的不同映射方法 系统结构特征的两种典型形式 变换型结构 事务型结构 数据流图可分为两种类型: 变换型数据流 事务型数据流 基本模型特征 基本模型 变换型数据流举例 事务型数据流图举例 大型系统的DFD变换型和事务型结构往往共存 结构图 结构图通常为树型结构,在树状结构中,位于最上层的根部是顶层模块,它是程序的主模块。与其联系的有若干下属模块,各下属模块还可以进一步引出更下一层的下属模块。 结构图是精确表达程序结构的图形表示方法。它清楚的反映出程序中模块间的层次调用关系和联系;不仅严格的定义了各个模块的名字、功能和接口,而且还反映了设计思想。即它以特定的符号表示模块、模块间的调用关系和模块间信息的传递。 结构图的主要内容 1、模块:在结构图中,模块用矩形框表示,并用模块的名字标记它。模块的名字应当能够表明该模块的功能。对于现成的模块,则以双纵边矩形框表示。 结构图的主要内容 2、模块的调用关系和接口:在结构图中,两个模块之间用单向箭头连接。箭头从调用模块指向所调用模块,表示调用模块调用了所调用模块。但其中隐含了一层意思,就是执行所调用模块完成之后,控制又返回到调用模块。 结构图的形态特征 它是一个软件系统的分层模块结构图。在图中,上级模块调用下级模块。它们之间存在主从关系,即自上而下“主宰”,自下而上“从属”。而同一层的模块之间并没有这种主从关系。 结构图的形态特征 结构图的深度:在多层次的结构图中,其模块结构的层次数称为结构的深度。结构图的深度在一定意义上反映了程序结构的规模和复杂程度。对于中等规模的程序,结构图的深度约为10左右。对于一个大型程序,深度可以有几十层。 结构图的宽度:结构图中同一层

您可能关注的文档

文档评论(0)

18273502 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档