网站大量收购独家精品文档,联系QQ:2885784924

软件工程导论课件Ch05.pptVIP

  1. 1、本文档共21页,可阅读全部内容。
  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文档。上传文档
查看更多
wanghuiqing@tyut.edu.cn 软件工程 ——原理、方法和工具 Ch.5 软件详细设计 王会青 wanghuiqing@tyut.edu.cn 第 5章 软件详细设计 5.1 详细设计的目的与任务 5.2 结构化程序设计 5.3 详细设计工具 5.1 详细设计的目的与任务 详细设计的根本目的:确定应该怎样具体实现所要求的系统。经过这个阶段的设计工作,应该得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序 结构化程序设计是实现上述目标的关键技术,因此是详细设计的逻辑基础。 5.2 结构化程序设计 结构化程序设计所使用的结构有顺序、条件和重复三种 。 结构化程序设计采用自顶向下,逐步求精的设计方法和单入口单出口的控制结构 。 5.3 详细设计工具 描述程序处理过程的工具称为详细设计工具, 可以分为图形、表格和语言三类。 1.程序流程图 2.N-S图 3.PAD图 4.过程设计语言 5.3.1 程序流程图 程序流程图又称为程序框图,它是历史最悠久、使用最广泛的描述过程设计的方法。 主要优点是对控制流程的描绘很直观,便于初学者掌握。 缺点: 程序流程图本质上不是逐步求精的好工具,它诱使程序员过早地考虑程序的控制流程,而不去考虑程序的全局结构。 程序流程图用箭头代表控制流,因此程序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制。 程序流程图不易表示数据结构。 5.3.1 程序流程图 程序流程图的三种基本控制结构 N-S图又称为盒图,具有以下优点: 功能域明确。 不可能任意转移控制。 很容易确定局部和全局数据的作用域。 很容易表达模块的层次结构,并列和嵌套关系。 使得程序设计人员遵守结构化程序设计的规定,自然地养成良好的程序设计风格。 5.3.2 N-S图 5.3.2 N-S图 PAD图是问题分析图(problem analysis diagram)的英文缩写,自1973年由日本日立公司发明以后,已得到一定程度的推广。 它用二维树形结构的图来表示程序的控制流,将这种图翻译成程序代码比较容易。 5.3.3 PAD图 5.3.3 PAD图 PAD图描述的三种基本控制结构 PAD图具有以下优点: 用PAD图设计出来的程序必然是结构化程序。 PAD图所描绘的程序结构十分清晰。 PAD图的符号支持自顶向下,逐步求精的方法。 用PAD图表示的程序逻辑易读、易懂、易记,使用方便。 既可表示程序逻辑,也可用于描绘数据结构。 可自动生成程序。 5.3.3 PAD图 5.3.3 PAD图示例 5.3.3 PAD图示例 过程设计语言(Process Design Language,PDL),也称为伪码,是一种用于描述模块算法设计和处理细节的语言。 PDL具有严格的关键字外部语法,用于定义控制结构和数据结构;另一方面,PDL表示实际操作和条件的内层语法通常又是灵活自由的,可以适应各种项目的需要。 PDL是一种“混杂”语言,它使用一种语言的词汇,同时却使用另一种语言的语法。 5.3.4 过程设计语言 过程设计语言的基本控制结构: 简单陈数据结构:避免复合语句。 判定结构:IF_THEN_ELSE或CASE_OF结构。 循环结构:WHILE_DO或REPEAT_UNTIL结构。 5.3.4 过程设计语言 过程设计语言的特点: 关键字的固定语法,它提供了结构化控制结构、数据说明和模块化的特点。 描述处理过程的说明性语言,没有严格的语法限制。 具有数据说明机制,应该既包括简单的数据结构,又包括复杂的数据结构。 具有模块定义和调用机制。 5.3.4 过程设计语言 5.3.4 过程设计语言示例 现以某系统主控模块的详细设计为例,说明如何用PDL描述处理过程: PROCEDURE 模块名(形式参数); 清屏; 显示某系统用户界面; PUT(“请输入用户口令:”); GET(Password); IF Password<>系统口令 提示警告信息; 退出运行 ENDIF; 显示本系统主菜单; WHILE (true) 接受用户选择BD; IF BD=“退出” Break; ENDIF; 使用相应下层模块完成用户选择功能; ENDWHILE; 清屏; RETURN END 过程设计语言的优点: 可以作为注释直接插在源程序中间,有助于保持文档和程序的一致性,提高了文档的质量。 提供的机制比图形全面,有利于保证软件详细设计与编码的质量。 可自动生成程序代码,提高软件生产率。 5.3.4 过程设计语言 习题 软件详细设计的基本任务是什么?有哪几种描述方法? 结构化程序设计的基本要点是什么? 使用流程图、PAD图、N

文档评论(0)

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

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

1亿VIP精品文档

相关文档