6-第六章 面向数据结构的设计方法

上传人:z**** 文档编号:110330028 上传时间:2022-06-18 格式:DOC 页数:11 大小:778.50KB
收藏 版权申诉 举报 下载
6-第六章 面向数据结构的设计方法_第1页
第1页 / 共11页
6-第六章 面向数据结构的设计方法_第2页
第2页 / 共11页
6-第六章 面向数据结构的设计方法_第3页
第3页 / 共11页
资源描述:

《6-第六章 面向数据结构的设计方法》由会员分享,可在线阅读,更多相关《6-第六章 面向数据结构的设计方法(11页珍藏版)》请在装配图网上搜索。

1、第六章 面向数据结构的设计方法前面介绍的结构化系统设计,是一种面向数据流的设计方法.本章介绍两种其它的设计方法 -Jackson 方法与 LCP 方法.它们都是面向数据结构的独立的系统设计方法.常将它们作为辅助 的设计方法,配合 SD 方法使用.1面向数据结构的设计一. 面向数据流的设计 考虑问题的出发点是:数据流. 最终目标:软件的最终 SC 图. 解决问题的焦点:模块的合理划分. 最佳适用范围:概要设计中,确定软件的结构. 以 SD 为例,在分析阶段:以数据流图表示软件的逻辑模型 ;在设计阶段:按照数据流的类型, 分别用变换分析或事务分析将它们转换为相应的软件结构.二. 面向数据结构的设计

2、 基本思想:从问题的数据结构导出它的程序结构.作为独立的系统设计方法主要用于小规模 数据处理的开发.考虑问题的出发点是:数据结构. 最终目标:得出程序的过程性描述. 最佳适用范围:详细设计中,确定部分或全部模块的逻辑过程.三. 两种设计方法的共同点1. 遵守结构程序设计“由顶向下”逐步细化的原则,并以其为共同的基础;2. 均服从“程序结构必须适应问题结构”的基本原则,各自拥有从问题结构(包括数据结构) 导出程序结构的一组映射规则.2 Jackson 设计方法一. Jackson 图Jackson图是Jackson方法的表达工具.1. Jackson 图表达的结构(a)顺序选择(c)重复(a)

3、表示A由B、C两部分顺序组成;(b) 表示A可以包含B或C(S代表选择);(c) 表示A由B重复任意次(含零次)构成(I代表重复).2. Jackson 图的应用(1) 表示数据结构(2) 表示程序结构例:一教职工名册如下:表头表体教职工名册用 Jackson 图表示的数据结构如下用 Jackson 图表示的程序结构如下为了实现从程序结构到逻辑结构描述的转换,需设计一组相应的伪代码: Jackson 伪代 码(图解逻辑).下图给出与三种程序结构相对应的 Jackson 伪代码.其中,带下滑线的字为保留字,cond表示条件.(a)顺序(b)选择(c)重复A seqA select condlr

4、untiKBBA iterL condCor cond21 while fend ACBend Aend A二.Jackson设计方法1.Jackson 方法设计步骤与 SD 方法设计步骤图解比较Jackson 方法映射 _数据结构程序结构二亠 程序的过程表示(Jackson 图)(Jackson 图)(Jackson 伪代码)IiV程序分析程序设计*SD方法映射 _问题结构宀软件结构二=各模块的过程描述(DFD图)(SC图)(PDL等工具)1概要分析详细设计2Jackson 方法设计步骤(1) 分析并确定输入数据和输出数据的逻辑结构 ,用 Jackson 图描绘这些数据结构 .实质是 对求解

5、的问题进行需求分析.用 Jackson 图表示数据结构时,省略与解题无关的多余信息,仅 保留需要用到的数据单元.(2) 找出输入数据结构和输出数据结构中有对应关系的数据单元 (即有因果关系,在程序中 可以同时处理的数据单元) 按照下列映射规则, 导出描绘程序结构的 Jackson 图.为每一对在输入结构和输出结构中有对应关系的单位元画一个处理框; 为输入数据结构中每一剩余的数据单元画一个处理框;为输出数据结构中每一剩余的数据单元画一个处理框;所有处理框在程序结构上的位置, 应与由它处理的数据单元在数据结构 Jackson 图上的位置相对应(程序中具有因果关系).(3) 写出程序的过程性表示:列

6、出所有操作和条件,并把它们分配到程序结构图的适当位置(4) 用Jackson伪代码写出与程序结构图对应的过程性表示.3. 应用举例 1输入卡片分析程序一叠卡片按内容分为KI、K2、K3三类,卡片叠的排列规则是:以K1卡 始,以K2卡终.起始卡之前属前置部分,不含K1卡;起始卡与终了卡之间属分批部分,不含K2卡.如图 :试用Jackson方法编一程序,要求依次完成下列分析工作:统计起始卡前卡片的张数,存入A;打印起始卡的内容;统计起始卡后出现的K1卡和K3卡总批数,存入B;统计起始卡后出现的K1卡的张数,存入C;统计起始卡后出现的K3卡的张数,存入D;打印终了卡的内容;打印 A、 B、 C、 D

7、 四个统计值.求解步骤:第一步:画数据结构图. 输入卡片文件数据结构图第三步:写出程序的过程性表示:列出所有操作和条件,并把它们分配到程序结构图的适 当位置程序结构图中所需的有关操作:有关条件: 打开卡片文件 A : =A+1I1 : until 出现 K1 卡 读卡片 B : =B+1I2 : until 出现 K2 卡 A : =0 C : =C+1S3 : select 是 K1 卡 or 是 K3 卡 B : =0 D : =D+1I4 : while 是 K1 卡 C : =011关闭卡片文件I5 : while 是 K3 卡 D : =012停止将上述判断条件和操作安排到程序结构图

8、的适当位置,如图:111421253I1I262S3I4I5打 印 终处理K3批0卡片分析程序处 理 前置部分处理批部分处理非K1卡*处理K3卡*统计张数处理批类处理K1批0打印ABCD统计总批数处理K1卡*处理批*统计张数统计批数处理批体第四步:用Jackson伪代码写出与程序结构图对应的过程性表示(略).应用举例 2.有两个基本文件:考生基本情况文件(简称考生情况文件)和考生高考成绩文件 (简称考分文件)如下:考生情况文件 考分文件准考证号姓名通讯地址将上述两个文件合并成考生新文件如下:考生新文件试用 Jackson 方法编一程序,完成上述工作 第一步:画数据结构图1 .通过分析并确定输入

9、数据和输出数据的逻辑结构,用Jackson图描绘出它们的数据 结构如下 :(1) 输入(2)输出2 .找出输入数据结构和输出数据结构中对应的数据单元.第二步:画程序结构图 从描绘数据结构的 Jackson 图确定程序结构的 Jackson 图遵循如下规则:(1) 按照在数据结构图中的层次,在程序结构图的相应层次,为每对有对应关系的数据单元,画 一个处理框;(2) 根据输入数据结构中剩余的每一个数据单元所处的层次 ,在程序结构图的相应层次,分别 为它们画上对应的处理框;(3) 根据输出数据结构中剩余的每一个数据单元所处的层次 ,在程序结构图的相应层次,分别 为它们画上对应的处理框.按上述规则得到

10、程序结构图如下:第三步:写出程序的过程性表示,列出所有操作和条件 停止 打开两个输入文件 建立输出文件 从输入文件中各读一条记录 生成一条新记录 将新记录写入输出文件 关闭全部文件1(1)文件结束把它们分配到程序结构图的适当位置,如图:第四步:用Jackson伪代码写出与程序结构图对应的过程性表示产生新文件 seq 打开两个输入文件 建立输出文件 从输入文件中各读一条记录 分析考生记录 iter until 文件结束 处理考生记录 seq产生准靠证号产生姓名产生通讯地址产生考分生成一条新记录将新记录写入输出文件从输入文件中各读一条记录处理考生记录 end关闭全部文件 停止 产生新文件 end3

11、 Warnier 图一.Warnier 图1. Warnier图是LCP设计方法中使用的一种专用表达工具.它是由嵌套的花括号、伪代码以 及少量说明和符号组成的层次树。2. Warnier 图使用的说明与符号符号“或”,表示or、丿 说 明(1次)顺序结构(n次)重复结构-1“非”,例如A表示notA(0或1次)选择结构3. Warnier 图的功能:(1)表达数据结构(2)表达程序结构在Warnier图中,花括号代表结构的层次;圆括号内说明“发生次数”区分结构的类型; “或”与“非”是逻辑符号。4. 最终目的 :得出程序处理过程的详细描述 .二. Warnier程序设计方法的基本步骤(1)分析

12、并确定输入数据和输出数据的逻辑结构,用 Warnier 图描绘这些数据结构;(2)主要依据输入数据结构导出程序结构,用Warnier图描绘程序的处理层次;(3)画出程序流程图, 并自上而下依此给出每一个处理框的编序号;(4)分类写出伪码指令. 包括: 输入和输入准备、分支和分支准备、计算、输出和输出准备 及子程序调用等指令;(5)把前一步中分类写出的伪码指令按序号排序,从而得出描述处理过程的伪码。三. 应用举例1(教材P83-86)设计一个系统,定期产生有关顾客帐目的报表。已知的输入文件中每个顾客有一个首记录, 后接若干个(0 个、 1 个或多个)活动记录。输入记录和输出报表格式如图:应用举例 2下表是某部门的职工工资册.其中前 5 项人人都要填写,最后一项仅有部分职工填写,其余的 不填.公 司 名处名科名职工数据工号工资其它信息用 Warnier 图表示如下:从部门到职工共分5级,级间用话括号隔开,层次分明.文件级公司级处级科级 职工级工号(1次)工资(1次)其它信息(0或1次) i,j,k,n为正整数.

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!