预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共52页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第4章详细设计第4章详细设计4.1详细设计概述主要任务:编写详细设计说明书 为此,设计人员应: (1)确定每个模块的算法,用工具 表达算法的过程,写出模块的 详细过程性描述。 (2)确定每一模块的数据及数据库结构。 (3)确定模块接口细节。 (4)准备测试用例。 详细设计是编码的先导。4.1.2详细设计工具: (1)图形工具 流程图 N-S图(盒图) 问题分析图(PAD) (2)语言工具 (3)表格工具 1.程序流程图 程序流程图是最早出现且使用较为广泛的算法表达工具之一,能够有效地描述问题求解过程中的程序逻辑结构。 程序流程图中经常使用的基本符号:程序流程图的优点:对程序的控制流程描述直观、清晰,使用灵活,便于阅读和掌握。 程序流程图的缺点: 可以随心所欲地使用流程线,容易造成程序控制结构的混乱,与结构化程序设计的思想相违背。 难以描述逐步求精的过程,容易导致程序员过早考虑程序的控制流程,而忽略程序全局结构的设计。 难以表示系统中的数据结构。2.N-S图 N-S图又称为盒图,是为了保证结构化程序设计而由Nassi和Shneiderman共同提出的一种图形工具。 使用矩形框表示清晰地表达结构中的嵌套及模块的层次关系。 特点:没有流程线,不可能随意转移控制图5.1N-S图中基本控制结构的表示符号 顺序结构;(b)分支结构;(c)多分支CASE结构; (d)while-do结构;(e)do-until结构;(f)调用模块A用方框图代替传统的流程图 描述五种基本控制结构的图形构件 (1)顺序型 (2)选择型(If–then–else) If–then–elseIf–then (3)多分支选择型(CASE型) (4)WHILE重复型(5)DO-UNTIL重复型 (6)并行结构 N-S图的问题3.PAD图 PAD(ProblemAnalysisDiagram,问题分析图)是继程序流程图和N-S图后,由日立公司在20世纪70年代提出。 只能用于结构化程序的描述 采用易于使用的树型结构图形符号 利于清晰地表达程序结构 利于修改基本控制结构: (1)顺序结构(2)选择结构 (3)重复结构(4)多分支选择型(CASE型) 对应于增量型循环结构 fori:=n1ton2stepn3do在PAD中有相应的循环控制结构PAD图主要优点: (1)程序结构层次清晰,逻辑结构关系直观、易读、易记、易修改。 (2)为多种常用高级语言提供了相应的图形符号,每种控制语句都与一个专门的图形符号相对应,易于PAD图向高级语言源程序转换。 (3)支持自顶向下、逐步求精的设计过程。 (4)既能够描述程序的逻辑结构,又能够描述系统中的数据结构。图5.2三种详细设计中使用的图形工具示例 采用程序流程图描述计算应发工资模块; (b)采用N-S图描述计算应发工资模块; (c)采用PAD图描述计算应发工资模块4.PDL语言 PDL(ProcessDesignLanguage)语言即过程设计语言,是一种用于描述程序算法和定义数据结构的伪代码。 是一种兼有自然语言和结构化程序设计语言语法的“混合型”语言。 PDL语言与结构化语言的主要区别在于: PDL语法结构更加严格并且处理过程描述更加具体详细PDL语言主要特点: (1)各种定义语句及控制结构的表达都具有严格的语法形式,使程序结构、数据说明等更加清晰。 (2)提供了数据说明机制,可用于定义简单及复杂的数据结构。 (3)提供了模块的定义和调用机制,方便了程序模块化的表达。PDL语言的主要定义语句及基本控制结构: 定义语句 (1)数据定义: DECLARE属性变量名,… 属性包括:整型、实型、双精度型、字符型、指针、数组及结构等类型。(2)模块定义: PROCEDURE模块名(参数) RETURN END基本控制结构 (1)顺序结构: 顺序结构的语句序列采用自然语言进行描述。 语句序列S1 语句序列S2 语句序列Sn(2)选择结构: ①IF-ELSE结构 IF条件 IF条件 语句序列S1 或 语句序列S ELSE ENDIF 语句序列S2 ENDIF②多分支IF结构 IF条件1 语句序列S1 ELSEIF条件2 语句序列S2 ELSE 语句序列Sn ENDIF③CASE结构 CASE表达式OF CASE取值1 语句序列S1 CASE取值2 语句序列S2 ELSE语句序列Sn ENDCASE(3)循环结构: ①FOR结构 FOR循环变量=初值TO终值 循环体S ENDFOR ②WHILE结构 WHILE条件 循环体S ENDWHILE③UNTIL结构 REPEAT 循环体S UNTIL条件 输入/输出语句 ①输入语句: GET(输入变量表) ②输出语句: PUT(输出