- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
软件工程导论软件工程导论(5)
——详细设计描述工具南京理工大学汪惠芬2004年9月23日第五章详细设计描述工具详细设计也叫过程设计或程序设计,它不同于编码或编程。在详细设计阶段,要决定各个模块的实现算法,并精确地表达这些算法。算法涉及所开发项目的具体要求和对每个模块规定的功能,以及算法的设计和评价,这不属于本课程的研究范围。算法表达需要给出适当的算法描述,为此应提供过程设计的表达工具,本章将介绍几种算法描述的工具。第五章详细设计描述工具描述详细设计的工具可以分为图形、表格、语言三类。无论哪类工具,其基本要求是能够准确、无二义性地描述系统控制、数据组织结构、处理功能等有关细节。使得程序员能够将这种描述直接翻译为程序代码。常用的图形描述工具有程序流程图、盒图(N-S图)、PAD图、伪码(程序设计语言PDL)和前面已经介绍过的判定树和判定表。第五章详细设计描述工具5.1程序流程图5.2盒图(N-S图)5.3PAD图5.4PDL5.5详细设计评审5.6软件蓝图5.7本章小结5.1程序流程图程序流程图也称程序框图,使软件开发者最熟悉的一种算法表达工具。它独立于任何一种程序设计语言,比较直观、清晰,易于学习掌握。但由于它使用的符号不规范,常用一些习惯性用法,尤其是表示程序控制流程的箭头,使用的灵活性极大,程序员可以不受任何限制,随意转移控制,这将使程序质量受到很大的影响。5.1程序流程图为使用流程图描述结构化程序,必须限制流程图只能使用以下五种基本控制流程结构:顺序型:几个连续的加工步骤依次排列构成;选择型:由某个逻辑判断式的取值决定选择两个加工中的一个;先判定(While)循环:在循环控制条件成立时,重复执行特定的加工;后判定(Until)循环:重复执行特定的加工,直至循环控制条件成立;多情况选择(Case):列举多种加工情况,根据控制变量的取值,选择执行其一。5.1程序流程图基本控制结构的图形表示5.1程序流程图实例5.1程序流程图需要对流程图所使用的符号作出确切的规定,除去所规定使用定义了的符号外,流程图中不允许出现任何其他符号。5.1程序流程图标准程序流程图的规定符号5.1程序流程图几点说明:(1)循环的界限设有一对特殊的符号5.1程序流程图几点说明:(2)流线表示控制流的流向。在自上而下或自左而右的自然流向情形,流线可不加箭头。否则必须在流线上加上箭头。5.1程序流程图几点说明:(3)注解符可用来标志注解内容,其虚线连在相关的符号上,或连接一个虚线框(框住一组符号)。5.1程序流程图几点说明:(4)判断有一个入口,但有多个可选出口。在判断条件取值后有且仅有一个出口被激活。取值结果可在流线附近注明。5.1程序流程图几点说明:(5)虚线表示两个或多个符号间的选择关系。例如,虚线连接了两个符号,则表示这两个符号中只选用其中的一个。另外,虚线也可配合注解使用。(6)外接符及内接符表示流线在另外一个地方连接,或者表示转向外部环境或从外部环境转入。5.2盒图(N-S图)Nassi和Shneiderman提出了一种符合结构化程序设计原则的图形描述工具,叫作盒图(box-diagram),又称N-S图。在N-S图中,为了表示五种基本控制结构,规定了五种图形构件。5.2盒图(N-S图)N-S图的五种基本图形构件5.2盒图(N-S图)N-S图的五种基本图形构件5.2盒图(N-S图)实例5.2盒图(N-S图)N-S图的特点(1)图中每个矩形框(除Case构造中表示条件取值的矩形框外)都是明确定义了的功能域(即一个特定控制结构的作用域),以图形表示,清晰可见。(2)它的控制转移不能任意规定,必须遵守结构化程序设计的要求。(3)很容易确定局部数据和(或)全局数据的作用域。(4)很容易表现嵌套关系,也可以表示模块的层次结构。5.2盒图(N-S图)N-S图的扩展表示任何一个N-S图,都是五种基本控制结构的相互组合与嵌套的结果。当问题很复杂时,N-S图可能很大,在一张纸上画不下,这时,可以给这个图中一些部分取个名字,在图中相应位置用名字表示(用椭圆形框住它)而不是用细节去表现这些部分。然后在另外的纸上把这些命名的部分进一步展开。5.2盒图(N-S图)N-S图的扩展表示实例5.3PAD(ProblemAnalysisDiagram)图PAD是日本日立公司提出,由程序流程图演化来的,用结构化程序设计思想表现程序逻辑结构的图形工具。现在已为ISO认可。PAD也设置了五
原创力文档


文档评论(0)