过程设计与Jackson方法.ppt_第1页
过程设计与Jackson方法.ppt_第2页
过程设计与Jackson方法.ppt_第3页
过程设计与Jackson方法.ppt_第4页
过程设计与Jackson方法.ppt_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、5.3过程设计,1 详细设计阶段的目的与任务,详细设计的目的: 为软件结构图 (SC) 中的每一个模块确定采用的算法和模块内 数据结构,用某种选定的表达工具给出清 晰的描述。,详细设计阶段的主要任务: 编写软件 的 “详细设计说明书”,详细设计阶段的主要任务,过程设计的原则与方法,清晰第一,效率第二 结构化的控制结构 逐步细化的实现方法,描述工具,2 详细设计阶段的描述工具,A,1、顺序型,一、程序流程图,B,几个连续的加工依次序排列,exp,A,B,2、选择型,由某个判断式的取值 决定选择两个加工中的一 个。,3、当型循环型,当循环控制条件成立时,重复执行特定的加工。,4、直到型循环型,重复

2、执行特定的加工,直到循环控制条件成立时。,5、多情况选择型,列出多种加工 情况,根据控制变 量的取值,选择执 行其一。,顺序型,二、N-S 图,选择型,- Nassi and Shneideman,当型循环型,直到型循环型,多分支选择型,四、PDL,- Program Ddesign Language,PDL 是一种用于描述功能模块的算法设计和加工细节的语言。称为设计程序用语言。它是一种伪代码(Pseudo code),PDL,-关键词+自然语言,三、伪代码 -Pseudo Code 形式上与代码相似,但不是真正的代码。,(1)、数据说明:,格式: TYPE AS ,其功能是定义数据的类型和作

3、用域,说明: 1. 变量名:是一个模块内部使用的变量或模块间共用 的全局变量名。,2. 限定词1 :标明数据类型,3. 限定词2 :标明该变量的作用域,TYPE number AS STRING LENGTH (12),(2)、程序块:,PDL的过程成分是由块结构构成的,而块将作为 一个单个的实体来执行。,BEGIN END,(3)、子程序结构:,把 PDL 中的过程称为子程序。,PROCEDURE INTERFACE END,(4)、基本控制结构:,IF THEN ; ELSE ; ENDIF,- 选择型结构,DO WHILE ; ENDDO,REPEAT UNTIL ; ENDREP,-

4、重复型结构,DO LOOP ; EXIT WHEN ENDLOOP,DO FOR ; ENDFOR,- 重复型结构,- 多路选择结构,CASE OF ; WHEN SELECT ; WHEN SELECT ; DEFAULT: ; ENDCASE,READ/WRITE TO ,- 输入/输出结构,Enter a vector Set Maximum to the value of the first element in the vector DO for each second one to the last IF value of THEN element is greater than

5、the Maximum value Set Maximum to value of the element ENDDO Print the Maximum value,设某模块的功能是:读入任意长的 一段英文课文,将其分解为单字。然后 输出一个单词表,并指出每个单词在课 文中所出现的次数。,练习,请按下列给出的文字要求,用 PDL 描述其该模块的算法, execute process a REPEAT UNTIL condition X8 execute process b IF condition X1 THEN BEGIN execute process f IF condition X6

6、 THEN REPEAT UNTIL condition X7 execute process i ENDREP ELSE BEGIN execute process g execute process h END ENDIF END,练习,请将下列的 PDL 表示的某模块的过程性描述, 改为用:1、N-S 图 2、PAD 图表示,ELSE CASE OF Xi WHEN condition X2 SELECT DO WHILE condition X5 execute process C ENDDO WHEN condition X3 SELECT process d WHEN condit

7、ion X4 SELECT process e ENDCASE ENDIF ENDREP execute process j END,5.4 Jackson方法 -面向数据结构的设计方法,5.3.1 Jackson表示法,5.3.2 Jackson程序设计方法,6.3.1 Jackson图,Jackson图表示方法,Jackson图的优点:,(1)Jackson图不仅便于表示层次结构,而且也有利于对结构自顶向下分解;,(2)Jackson图形象直观,可读性好;,(3)Jackson图不仅能表示数据结构,也能表示程序结构(因为程序结构也可以由上述3种基本结构组成)。,Jackson图的缺点:,在

8、选择结构和重复结构中,选择条件或循环结束条件不能直接在Jackson图中表示出来。这样就影响了图形的表达能力,也不利于直接把图翻译成程序。,改进的Jackson图,数据结构 程序结构 程序的过程性表示 Jackson图 Jackson图 Jackson伪代码 程序分析 | 程序设计 ,映射,Jackson方法,问题结构 软件结构 各模块的过程性表示 DFD图 SC图 PDL等工具 程序分析 | 程序设计 ,SD方法,5.55 Jackson方法与SD方法的比较,映射,Jackson程序设计方法由五个步骤组成: 第一步 数据结构表示 第二步 找出输入数据结构和输出数据结构的对应关系 第三步 确定

9、程序结构图 第四步 列出并分配所有操作和条件 第五步把操作和条件分配到程序结构图的适当位置,6.3.2 Jackson程序设计方法,例:高考后将考生的基本情况文件(简称考生基本情况文件)和考生高考成绩文件(简称考分文件)合并成一个新文件(简称考生新文件)。考生基本情况文件和考分文件都是由考生记录组成的。为简便起见,考生基本情况文件中的考生记录的内容包括:准考证号、姓名、通讯地址。考分文件中的考生记录的内容包括:准考证号和各门考分。合并后的考生新文件自然也是由考生记录组成,内容包括:准考证号、姓名、通讯地址和各门考分。,第一步 数据结构表示,对要求解的问题进行分析,确定输入数据和输出数据的逻辑结

10、构,并用Jackson图描述这些数据结构。,第二步 找出输入数据结构和输出数据结构的对应关系,找出输入数据结构和输出数据结构中有对应关系的数据单元,即有直接因果关系、在程序中可以同时处理的数据单元。需要注意的是,对于重复的数据单元,必须是重复的次序、次数都相同才有可能有对应关系。,第三步 确定程序结构图,根据下述三规则,由Jackson图导出相应的程序结构图:,(1)为每对有对应关系的数据单元,按照它们在数据结构图中所处的层次,在程序结构图中的相应层次画一个处理框。如果这对数据单元在输入数据结构图和输出数据结构图中所处的层次不同,那么应以它们在输入数据结构图和输出数据结构图中层次较低的那个层次作为它们在程序结构图中的处理框所处的层次;,(2)对于输入数据结构中剩余的数据单元,根据它们所处的层次,在程序结构图的相应层次为每个数据单元画上相应的处理框;,(3)对于输出数据结构中剩余的数据单元,根据它们所处的层次,在程序结构图的相应层次为每个数据单元画上相应的处理框。,实际上,这一步是一个综合的过程:每对有对应关系的数据单元合画一个处理框,没有对应关系的数据单元则各画一个处理框。,第四步 列出并分配所有操作和条件,列出所有操作和条件(包括分支条件和循环结束条件

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论