《软件工程》-电子教案-景秀丽 第5章 软件详细设计

上传人:E**** 文档编号:89412253 上传时间:2019-05-24 格式:PPT 页数:57 大小:446KB
返回 下载 相关 举报
《软件工程》-电子教案-景秀丽 第5章 软件详细设计_第1页
第1页 / 共57页
《软件工程》-电子教案-景秀丽 第5章 软件详细设计_第2页
第2页 / 共57页
《软件工程》-电子教案-景秀丽 第5章 软件详细设计_第3页
第3页 / 共57页
《软件工程》-电子教案-景秀丽 第5章 软件详细设计_第4页
第4页 / 共57页
《软件工程》-电子教案-景秀丽 第5章 软件详细设计_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《《软件工程》-电子教案-景秀丽 第5章 软件详细设计》由会员分享,可在线阅读,更多相关《《软件工程》-电子教案-景秀丽 第5章 软件详细设计(57页珍藏版)》请在金锄头文库上搜索。

1、第五章 软件详细设计,软件设计是软件工程过程的核心技术。软件详细设计也称为模块设计,物理设计,是指体系结构选择阶段之后所进行的技术性的活动。详细设计主要集中在体系结构表达式的细化,选择详细的数据结构和算法。,【本章引言】,软件详细设计的任务及步骤 软件详细设计的图形工具 软件详细设计的方法,【本章重点】,了解软件详细设计的任务及步骤; 了解PDL语言的使用; 掌握程序流程图、N-S图、PAD图、判定树及判定表; 掌握Jackson设计方法和Warnier 设计方法及其设计过程。,【学习目标】,5.1.1 详细设计的任务 软件设计是一个把软件需求转换为软件表示的过程。从技术的角度划分,详细设计可

2、以分为数据设计、系统结构设计以及过程代码设计。,5.1 详细设计概述,5.1.2 详细设计的步骤 详细设计从体系结构设计阶段开始,直到得到一张编码阶段之前的详细完整的设计图。,5.2 详细设计的图形描述工具 目前流行的工具可以分为三类: 图形工具;如程序流程图、盒图、PAD图、序列图、数据流图。 表格工具;如判定表。 语言工具;如程序设计语言PDL,5.2.1程序流程图 程序流程图又称为程序框图,是详细设计中最古老、使用最广泛的图形描述工具。是流经一个系统的信息流、观点流或部件流的图形代表。,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提出了一种符合结构化程序设计原则的

4、图形描述工具,称为N-S图,又叫盒图。,5.2.3 PAD图,PAD图是问题分析图(Problem Analysis Diagram)的英文缩写,它使用二维树形结构的图形来描述程序的逻辑,比流程图更容易读懂,结构清晰。PAD图中从左竖线上端的结点开始执行,自上而下,从左及右顺序执行,遍历所有结点来表示程序的控制流。,5.2.4 过程设计语言PDL,PDL是过程设计语言 (Program Design Langruage)的英文缩写,又称为伪码(Pseudocode) 它把说明性的文字直接嵌入到PDL语句里。,PROCEDURE spell check is BEGIN split docume

5、nt into single words look up words in dictionary display words which are not in dictionary treat a new dictionary END spell chck,PDL的实例:查找拼错单词的程序,PROCEDURE 查找拼错单词,PROCEDURE 查找拼错单词 BEGIN 把整个文件分离成单词 查字典找到这些单词 显示字典中查不到的单词 创建一个新字典 END,1数据说明,在PDL程序中它的功能是指明数据的类型及作用域。 其格式为:TYPE变量名IS限定词1限定词2 说明:变量名是一个模块内部使用

6、的变量或模块间共用的全局变量; 限定词1标明数据类型;具体如下。 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表表

7、示被传送的变量 例如,ASK ”select the target direction” ANSWER ”left”,”right” I/O输入输出描述通常可以扩充,如音频输出、面向窗口、下拉菜单界面等。,4子程序结构,把PDL中的过程称为子程序。 其格式为: PROCEDURE子程序名属性 INTERFACE参数表 END,Input arrayA Max=A(1) DO FOR i=2 to n IF MaxA(i) Set Max=A(i) ENDIF ENDFOR Print Max,BEGIN Enter a vector Set Maximum to the value of th

8、e first element in the vector DO FOR each second one to the last IF value of element is greater than the Maximum value THEN Set Maximum to the value of the element ENDIF ENDFOR Print the Maximum value END,5.2.5 判定表和判定树 1判定表 判定表(Decision table)也是描述加工的一种图形工具,呈表格形。 判定表共分四大部分,以下面学生的奖学金评定为例,说明判定表的组织方法和应用

9、。奖励的目的在于鼓励学生的品学兼优,此处理功能是要合理确定奖学金评定等级。决定受奖的条件为:成绩优秀占70或50以上,成绩为中或中以下占15或20以下,团结纪律为优良或一般者。奖励方案为一等奖、二等奖、三等奖、鼓励奖四种。因为受奖条件有些是相容的,相互组合的项较多。描述此学生奖励政策的判定表,表5-1学生奖励政策的判定表,2判定树,判定树又称决策树,是一种描述加工的图形工具,适合描述问题处理中具有多个判断,而且每个决策与若干条件有关。,表5-2货单操作判定表,其对应的判定树如下:,这一判定树比起文字叙述,使人一目了然,清晰地表达了在什么情况下采取什么策略,不易产生逻辑上的混乱。因而判定树是描述

10、基本处理逻辑功能的有效工具。,判定表或判定树都是以图形形式描述数据流的加工逻辑,它结构简单,易懂易读。尤其遇到组合条件的判定,利用判定表或判定树可以使问题的描述清晰,而且便于直接映射到程序代码。在表达一个加工逻辑时,判定树、判定表都是好的描述工具,根据需要可以交叉使用。,5.3 Jackson设计方法,5.3.1 Jackson方法概述及其图例,Jackson方法有时也称为面向数据结构的软件设计方法,简称JSP方法。Jackson方法定义了一组以数据结构为指导的映射过程,它根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构。 Jackson方法把问题分解为可由三种基本结构形

11、式表示的各部分的层次结构。三种基本的结构形式就是顺序、选择和重复。,顺序结构 选择结构 重复结构,例如要用Jackson图表示产生上面的学生名册文件的程序的程序结构:把学生名册生成为一个计算机文件,则该程序结构可以用下图的Jackson图来表示:,这个Jackson图首先声明了该学生名册表格由表头和表体两部分组成。其中表头又顺序包括表名和字段名。而表体可由任意行(0行或多行)组成,每行包括学生的姓名、性别、班级和学号。班级是本科的,学号项是本科生学号;班级是研究生的,学号项是研究生学号。,5.3.2 Jackson程序设计过程,1分析并确定输入数据和输出数据的逻辑结构,并用Jackson结构图

12、来表示这些数据结构。 2找出输入数据结构和输出数据结构中有对应关系的数据单元。 3按以下的规则由输入、输出的数据结构导出程序结构。 4.列出基本操作与条件,并把它们分配到程序结构图的适当位置。 5.用伪码写出程序。,Jackson方法通过五个步骤来完成设计:,5.4 Warnier 设计方法,Warnier方法又称为逻辑构造程序的方法,简称LCP法(Logically Constructing Program)。Warnier方法也是一种软件开发方法。,5.4.1 Warnier方法概述及其图例,Warnier图是由嵌套的花括号、伪代码以及少量说明和符号组成的层次树。花括号:区分数据结构的层次

13、,在一个花括号内的所有名字都属于同一类信息。异或符号:表明一类信息或一个数据元素在一定条件下才出现,而且在这个符号上、下方的两个名字所代表的数据只能出现一个。圆括号:中间的数字指明了这个名字代表的信息类(或元素)在这个数据结构中重复出现的次数。,Warnier图也具有表达数据结构和表达程序结构的双重功能。Warnier图是表示数据层次结构的一种图形工具,它用树形结构来描绘数据结构。它还能指出某一类数据或某一数据元素重复出现的次数,并能指明某一特定数据在某一类数据中是否是有条件的出现。在进行软件设计时,从Warnier图入手,能够很容易转换成软件的设计描述。,以报纸的自动编辑系统为例。通常报纸的

14、版面采用以下格式。,头版部分 社论部分 副刊部分 头条新闻 社论 体育新闻 国内新闻 专栏 商业新闻 当地新闻 读者来信 广告 讽刺漫画,上面给出的报纸概观就是一个数据的层次结构。下面给出了用Warnier图表示的报纸的数据层次结构。,在这个Warnier图中,用花括号“”表示层次关系,在同一括号下,自上到下是顺序排列的数据项。在有些数据项名字后面附加了圆括号,给出该数据项重复的次数。 例如,社论(1,1)表示社论占一栏;专栏(1,3)表示专栏占1到3栏;讽刺漫画(0,1)表示讽刺漫画可有可无,若有就占一栏。另外,Warnier图可以通过细化组合数据项进一步分解信息域。,Warnier程序设计

15、过程,1通过分析和确定输入数据和输出数据的逻辑结构,确认数据流程并画出Warnier图的数据结构。 2根据输入的数据结构得出程序的逻辑结构,再用Warnier图画出程序的处理过程。 3根据以上两步的结构,画出程序的流程图。 4画出程序流程图并自上而下给每个处理框编序号,分类写出伪码指令。 5对4的伪指令进行分类排序,并描述出程序处理过程的伪代码。,详细设计常用的描述方式包括流程图、盒图、问题分析图和程序设计语言(PDL),5.5 小结,图形工具 利用图形工具可以把过程的细节用图形描述出来。 表格工具 可以用一张表来描述过程的细节,在这张表中列出了各种可能的操作和相应的条件。 语言工具 用某种高

16、级语言(称之为伪码)来描述过程的细节。 程序流程图又称之为程序框图,它是软件开发者最熟悉的一种算法表达工具。,N-S图盒图是一种符合结构化程序设计原则的图形描述工具,又称之为N-S图。 PAD图是用结构化程序设计思想表现程序逻辑结构的图形工具。 PDL(过程设计语言)是所有非正文形式的过程设计工具的统称,到目前为止已出现多种PDL语言。 判定表(Decision table)也是描述加工的一种图形工具,呈表格形。,Jackson系统开发方法(JSD,Jackson System Development)是一种典型的面向数据结构的分析设计方法。 Warnier程序设计方法另一种面向数据结构的设计方法,又称为逻辑地构造程序的方法,简称LCP(Logical Construction of Programs)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号