《软件工程》第5章软件详细设计.ppt
《《软件工程》第5章软件详细设计.ppt》由会员分享,可在线阅读,更多相关《《软件工程》第5章软件详细设计.ppt(57页珍藏版)》请在三一办公上搜索。
1、第五章软件详细设计,软件设计是软件工程过程的核心技术。软件详细设计也称为模块设计,物理设计,是指体系结构选择阶段之后所进行的技术性的活动。详细设计主要集中在体系结构表达式的细化,选择详细的数据结构和算法。,【本章引言】,软件详细设计的任务及步骤软件详细设计的图形工具软件详细设计的方法,【本章重点】,了解软件详细设计的任务及步骤;了解PDL语言的使用;掌握程序流程图、N-S图、PAD图、判定树及判定表;掌握Jackson设计方法和Warnier 设计方法及其设计过程。,【学习目标】,5.1.1 详细设计的任务 软件设计是一个把软件需求转换为软件表示的过程。从技术的角度划分,详细设计可以分为数据设
2、计、系统结构设计以及过程代码设计。,5.1 详细设计概述,5.1.2 详细设计的步骤 详细设计从体系结构设计阶段开始,直到得到一张编码阶段之前的详细完整的设计图。,5.2 详细设计的图形描述工具 目前流行的工具可以分为三类:图形工具;如程序流程图、盒图、PAD图、序列图、数据流图。表格工具;如判定表。语言工具;如程序设计语言PDL,程序流程图 程序流程图又称为程序框图,是详细设计中最古老、使用最广泛的图形描述工具。是流经一个系统的信息流、观点流或部件流的图形代表。,1顺序型结构 顺序结构由带箭头的控制线依次连接几个处理方框构成。,2.选择型结构 选择型结构是流程图中最为常用的结构,其结构构造有
3、两种,一种是条件选择结构又称为IF-THEN-ELSE结构,使用菱形表现逻辑判定条件,条件结果决定选择两个处理方框中的一个。,No,处理1,决策条件1,Yes,处理2,决策条件2,Yes,处理n,决策条件n,Yes,No,No,重复执行某种功能的程序时就用到循环结构,流程图中循环型结构分为两种,一种是先判定型循环,又称为DO-WHILE型循环结构,测试一个循环控制条件为真时,就重复执行特定的处理。,3循环型结构,循环条件,处理,No,Yes,循环条件,处理,No,Yes,5.2.2 N-S图 Nasssi和Shneiderman提出了一种符合结构化程序设计原则的图形描述工具,称为N-S图,又叫
4、盒图。,5.2.3 PAD图,PAD图是问题分析图(Problem Analysis Diagram)的英文缩写,它使用二维树形结构的图形来描述程序的逻辑,比流程图更容易读懂,结构清晰。PAD图中从左竖线上端的结点开始执行,自上而下,从左及右顺序执行,遍历所有结点来表示程序的控制流。,5.2.4 过程设计语言PDL,PDL是过程设计语言(Program Design Langruage)的英文缩写,又称为伪码(Pseudocode)它把说明性的文字直接嵌入到PDL语句里。,PROCEDURE spell check isBEGINsplit document into single words
5、look up words in dictionarydisplay words which are not in dictionarytreat a new dictionaryEND spell chck,PDL的实例:查找拼错单词的程序,PROCEDURE 查找拼错单词,PROCEDURE 查找拼错单词 BEGIN把整个文件分离成单词查字典找到这些单词显示字典中查不到的单词创建一个新字典 END,1数据说明,在PDL程序中它的功能是指明数据的类型及作用域。其格式为:TYPE变量名IS限定词1限定词2说明:变量名是一个模块内部使用的变量或模块间共用的全局变量;限定词1标明数据类型;具体如下
6、。SCALAR纯量、ARRAY数组、LIST列表、STRING字符、STRUCTURE结构限定词2标明该变量的作用域例如:TYPE number IS STRING LENGTH(12),2块程序结构,PDL的过程元素是由块结构构成的,而块将作为一个单个的实体来执行。其格式为:BEGIN程序块名END,3输入/输出描述,PDL中输入/输出说明语句十分灵活,变化也很多。其格式为:READ/WRITE TO 设备 I/O表 或者ASK 询问ANSWER 响应选项,说明:设备表示物理的I/O设备,如磁盘、打印机;I/O表表示被传送的变量例如,ASK”select the target directi
7、on”ANSWER”left”,”right”I/O输入输出描述通常可以扩充,如音频输出、面向窗口、下拉菜单界面等。,4子程序结构,把PDL中的过程称为子程序。其格式为:PROCEDURE子程序名属性INTERFACE参数表 END,Input arrayAMax=A(1)DO FOR i=2 to nIF MaxA(i)Set Max=A(i)ENDIFENDFORPrint Max,BEGINEnter a vectorSet Maximum to the value of the first element in the vectorDO FOR each second one to t
8、he lastIF value of element is greater than the Maximum value THEN Set Maximum to the value of the elementENDIF ENDFOR Print the Maximum valueEND,5.2.5 判定表和判定树1判定表判定表(Decision table)也是描述加工的一种图形工具,呈表格形。判定表共分四大部分,以下面学生的奖学金评定为例,说明判定表的组织方法和应用。奖励的目的在于鼓励学生的品学兼优,此处理功能是要合理确定奖学金评定等级。决定受奖的条件为:成绩优秀占70或50以上,成绩为中
9、或中以下占15或20以下,团结纪律为优良或一般者。奖励方案为一等奖、二等奖、三等奖、鼓励奖四种。因为受奖条件有些是相容的,相互组合的项较多。描述此学生奖励政策的判定表,表5-1学生奖励政策的判定表,2判定树,判定树又称决策树,是一种描述加工的图形工具,适合描述问题处理中具有多个判断,而且每个决策与若干条件有关。,表5-2货单操作判定表,其对应的判定树如下:,这一判定树比起文字叙述,使人一目了然,清晰地表达了在什么情况下采取什么策略,不易产生逻辑上的混乱。因而判定树是描述基本处理逻辑功能的有效工具。,判定表或判定树都是以图形形式描述数据流的加工逻辑,它结构简单,易懂易读。尤其遇到组合条件的判定,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 软件 详细 设计
链接地址:https://www.31ppt.com/p-5904453.html