数据结构图1.ppt

上传人:sccc 文档编号:5083652 上传时间:2023-06-02 格式:PPT 页数:31 大小:319.01KB
返回 下载 相关 举报
数据结构图1.ppt_第1页
第1页 / 共31页
数据结构图1.ppt_第2页
第2页 / 共31页
数据结构图1.ppt_第3页
第3页 / 共31页
数据结构图1.ppt_第4页
第4页 / 共31页
数据结构图1.ppt_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《数据结构图1.ppt》由会员分享,可在线阅读,更多相关《数据结构图1.ppt(31页珍藏版)》请在三一办公上搜索。

1、1,数据结构图(1),对于含有数据库的软件系统,除了用DFD和数据字典进行数据描述 外,还可以用数据结构图(DSD,data structure diagram)来说明文 件之间的联系。单个文件的组成与组织,很容易用字典来定义。但用条目的形式 来描述文件之间的相互联系,就不及图形直观方便。使用数据结构 图,可以弥补字典在这方面的不足。以前面介绍的“教材销售系统”为例,其中提到了“学生用书表”这 个文件。在审查购书单的有效性时,需要查询该文件。查询内容应 该包括每个系、每个专业、每个年级和每个班所选用的教材情况。因此它的组成是:学生用书表=系编号+专业和班的编号+年级+书号 它定义了一个包含各班

2、各年级全部教材的单一文件。对于某些查 询或检索不都是很方便的。,2,数据结构图(2),如果改用数据库,可以把这些信息分存到以下多个文件中:系文件=系编号+(系名)+专业表,全校只需一个系文件;班文件=专业编号+(专业名)+班编号+教材表,每系只需一个班文件;教材文件=年级+书号,每班只需一个教材文件。,数据库的数据结构图,以图形方式表达了各个文件之间的逻辑关系。图中每个方框代表一类文件。框内第一行是文件的关键字,箭头表示联结文件的指针。,3,数据结构图(3),显然,改用数据库比采用单一的文件进行查询和检索方便多了。例如,当检索某班某年级需用的教材时,(1)首先找到系文件,由关键字“系编号”找到

3、所需的系,循指针找 到该系的班文件。(2)再由“专业编号”和“班编号”找到所需的班,又循指针找到该班 的教材文件。(3)每一个教材文件记有一个斑从一年级到四年级所需全部教材,只要给出所查的“年级”,就可以找到该学年需用的书单了。按照这种逻辑结构,可以由系编号检索出该系所有专业和班,也 可以由班检索出每一年级所需用的教材。如果要查询某系某年级共用多少种教材,或查询某种教材有哪些 系和班使用,就需要修改原来的数据结构图来满足新的要求。譬如 修改相关文件的数据结构,增加从系文件直接指向教材文件的指针 等。,4,3.2 需求分析的描述工具,3.2.1 系统流程图 3.2.2 数据流图 3.2.3 数据

4、字典 3.2.4 处理逻辑表达方式(判定表与判定树、结构化语言)3.2.5 图形工具 3.2.6 需求分析的软件工具,5,3.2.4 处理逻辑表达方式(1),一.结构化语言 1.结构化语言的特征(1)它是介于自然语言(如汉语或英语)与形式语言(如程序设计 语言)之间的一种语言;(2)它有固定的模式,但对细节的描述可采用自然语言;(3)它适合于表达数据加工的处理功能和处理过程;(4)它与形式语言的差别在于结构化语言没有严格的语法规定;(5)它与自然语言的不同在于它只有极其有限的词汇和语句;(6)用它表达加工逻辑优点:易读、易学、易写、准确。,6,3.2.4 处理逻辑表达方式(2),2.结构化语言

5、的基本语句,指出要做什么事,包括一个动词和一个宾语。要求语句精炼、不使用形容词和副词,名词在数据字典中有定义。,如果 条件 则 动作A 否则(条件不成立)动作B,IF 条件描述(成立)THEN 动作A ELSE(条件不成立)动作B,表达在某种条件下重复执行相同的动作,直到这个条件不成立为止。,FOR 条件描述 DO 重复处理部分,REPEAT 重复处理部分 UNTIL,7,3.2.4 处理逻辑表达方式(3),基本语句举例 1.祈使语句 计算工资 发补考通知 2.判断语句 IF 库存极限量 THEN IF 已订货 THEN 取消订货 ELSE 什么也不做 ELSE 订货延期 3.循环语句“生成学

6、生成绩单”(要计算每一个学生的平均成绩)。FOR 每一个学生 DO 计算平均成绩,8,3.2.4 处理逻辑表达方式(4),例教材销售系统流程图中有一个加工“审查并开发票”用结构化语言表示如下:,对每张购书单,把学生学号和姓名写到发票上;按购书单上学生的年级、系、专业与班号检索“各班学生用书表”文件,获得该生当年的书单;对购书单上每一个书号,如果 书单上无此书号 则 否则,把书号写到出错通知单上,按书号检索“教材存量表”文件,获得该书的单价与库存量;如果 库存量购书单上的数量 则 否则,把书号写到出暂缺书单上,将书号、单价、数量、总价等项写入发票;更新存书量,并写回教材存量表文件;累计书费合计,

7、把书费合计写到发票上。,9,3.2.4 处理逻辑表达方式(5),二.判定表(又称决策表)它是以图表方式描述多条件下决策问题的有效工具。在描述的问题比较复杂的情况下,采用结构化语言不易表达 清楚,且需要较大的文字篇幅时,采用决策表比较合适。它可以 直观地表达出具体条件、决策规则和应当采取的行动之间的逻 辑关系。判定表由条件段、判定项、动作段和动作项组成。判定表的一般形式,10,3.2.4 处理逻辑表达方式(6),库存控制过程的判定表,是,是,是,是,是,是,是,是,是,是,是,是,是,否,否,否,否,否,否,否,否,否,否,否,否,11,3.2.4 处理逻辑表达方式(7),例.某单位工资制度规定

8、,技术干部的职务工资标准为:技术员为 500元,助理工程师为700元,工程师为900元,高级工程师为 1200元,工龄补助为:10年以下加100元,10至20年加200元,20年以上加300元,但工龄不足10年而受聘为高级工程师者,其职务工资增加为1300元。用判定表表示实际工资如下:,600,800,1000,1400,700,900,1100,1400,800,1000,1500,1200,12,3.2.4 处理逻辑表达方式(8),条件越复杂,组成的规则越多的加工逻辑,越适于用判定表的方式来描述。如果需要,在不引起误解的情况下,可在判定表中加上结构化语言,或在结构化语言的说明中插进判定表。

9、如上例用兼有结构化语言的判定表表示如下:,注:技术员简称“技”;助理工程师简称“助”;工程师简称“工”;高级工程师简称“高”。三.判定树(又称决策树)以图形方式描述基本加工逻辑功能的有效工具。比较直观,结构清晰,容易 理解,但当条件太多时,不易清楚表达整个判断的过程。它比判定表更加直观,但不如判定表简洁。,13,3.2.4 处理逻辑表达方式(9),前例,用判定树表示实际工资计算结果如下:,14,3.2.5 图形工具(1),一.层次方框图 1.层次方框图描绘数据的层次结构;2.层次方框图采用多层次矩形框树形结构;3.顶层一个单独的矩形框代表完整的数据结构,下面各层矩形框代 表这个数据的子集,最底

10、层的各个矩形框代表组成这个数据的实 际数据元素(不能再分解的元素)。二.Warnier图 1.Warnier图表示数据层次结构的另一种图形工具;2.它也采用树形结构描绘信息;3.它还能表示数据的逻辑组织:(1)它可以表示一类数据或一个数据是重复出现的;(2)它也可以表示特定数据在某一类数据中是有条件出现的。,15,3.2.5 图形工具(2),例.教材结构的层次方框图,16,3.2.5 图形工具(3),教材,教材结构的Warnier图,17,3.2.5 图形工具(4),其中处理框中的处理次序表示执行次序.,三.IPO图 1.IPO图(输入/处理/输出图),是描述加工说明的图形工具。2.它由左中右

11、三个框组成,左框列出所有输入数据,中框列出所 有处理,右框列出输出数据,三个框中间用粗箭头指出数据通 信情况。例如主文件更新的IPO图如下:,18,3.2.5 图形工具(5),局部元素,输出,调用,输入,被调用,处理,注解,IPO图的改进形式,(1)根据“有效购书单”和“补售书单”,查询“教材存量表”;(2)若库存量购书数量,则开出“发票”,送下一步“登记并开 领书单”处理;否则,开出“暂缺书单”,送下一步“登记缺书”处理。,开发票,教材销售,1.2,030520,教材销售系统,有效购书单和补售书单,发票和暂缺书单,(无局部文件与外部项),无,19,3.2.6 需求分析的软件工具(1),一.用

12、于需求分析的软件工具 当需求分析的结果用自然语言书写时,是难于验证的,对需求描 述的冗余、遗漏和不一致性是难于发现的。为了克服这一困难,提 出了形式化的描述软件需求的方法,并且开发出了相应的软件工具。这些软件工具应符合下列标准:1.必须有形式化的语法(或表),这样才能使用计算机自动处理用这 种语法说明的内容;2.使用该软件工具能够导出详细的文档;3.必须提供分析(测试)规格说明书的不一致性和冗余性的手段,并 且能够产生一组报告说明对完整性分析的结果;4.使用该软件后,能够改进通信状况。,20,3.2.6 需求分析的软件工具(2),例如1977年设计完成的RSL(需求陈述语言)中的语句,就是计算

13、 机可以处理的。经过计算机的处理,可以把从这些语句中得到的信 息集中存放在抽象系统语义模型的数据库中。有一组软件工具来处 理该数据库中的信息以产生用PASCAL语言书写的模拟程序,从而可 以检验需求的一致性、完整性和现实性。二.需求描述语言PSL/PSA系统 1.PSL/PSA(Problem Statement Language/Problem Statement Analyzer)(问题描述语言/问题描述分析器)系统是一种辅助分析 的软件工具。它的基本结构类似于RSL。其中PSL是描述系统的形 式语言,PSA是处理PSL描述的分析程序。2.用PSL描述的系统属性放在一个数据库中。一旦建立起

14、数据库之 后即可增加信息、删除信息或修改信息,并且保持信息的一致性。数据库经过PSA处理,可以产生各种报告,测试不一致性或遗漏,并且生成文档资料。,21,3.2.6 需求分析的软件工具(3),3.PSL/PSA系统的功能主要有下述四种(1)描述任何应用领域的信息系统;(2)创建一个数据库保存对该信息系统的描述符;(3)对描述符施加增加、删除和更改等操作;(4)产生格式化的文档和关于规格说明书的各种分析报告。4.PSL/PSA系统可以用描述符从系统信息流、系统结构、数据导出、系统 规模、系统动态、系统性质和项目管理等方面描述系统。通过PSL对系 统的完整描述,调用PSA产生一组分析报告,包括:所

15、有修改规格说明 数据库的记录,用各种形式描述(含图形形式)数据库信息的参照报告,关于项目管理信息的总结报告,以及评价数据库特性的分析报告等。5.借助PSL/PSA系统可以对目标系统进行自顶向下的逐层分解,将需求分 析过程中遇到的数据流、文件、处理等对象用PSL描述出来,输入到 PSL/PSA系统中。PSA对输入信息作一致性和完整性检查并保存这些描 述信息。,22,3.2.6 需求分析的软件工具(4),6.PSL/PSA系统的主要优点(1)使系统的开发实现工程化和标准化;(2)所有系统分析员能共享数据库的内容,便于相互之间的配合;(3)提高文件资料的质量和管理水平;(4)避免系统描述的不完整性和

16、不一致性;(5)降低规格说明书的维护成本;(6)避免信息修改过程中带来的不一致性;(7)非常方便地提供了当前目标信息系统的分析报告;(8)提高了系统开发的效率和系统质量。,23,3.2.6 需求分析的软件工具(5),例.右下图是一个工资处理系统的模型,部门与职工,部门与职工,工资处理,接口 输入 加工 输出 接口,用PSL来定义,该系统可以描述如下。其中DEFINE为PSL的保留字,用作每一个定义语句的句首。,INPUT,OUTPUT,SET,INTERFACE,PROCESS表示被定义目标类型,说明该目标在系统中的位置,保留字GENERATES,RECEIVES,UPDATES等说明目标之间

17、的关系。,DEFINE INPUT employeeinformation;DEFINE OUTPUT paysystemoutput;DEFINE SET payrollmasterinformation;DEFINE INTERFACE departmentsemployees;GENERATES employeeinformation;RECEIVES paysystemoutput;DEFINE PROCESS payrollprocessing;UPDATES payrollmasterinformation;RECEIVES employeeinformation;GENERATE

18、S paysystemoutput;,24,3.2.6 需求分析的软件工具(6),经PSA分析程序得出格式化问题描述报告如下:,INTERFACE departmentsemployees;GENERATES employeeinformation;RECEIVES paysystemoutput;,INPUT employeeinformation;GENERATED BY departmentsemployees;RECEIVES BY payrollprocessing;,SET payrollmasterinformation;UPDATES BY payrollprocessing;

19、,PROCESS payrollprocessing;RECEIVES employeeinformation;GENERATES paysystemoutput;UPDATES payrollmasterinformation;,OUTPUT paysystemoutput;GENERATED BY payrollprocessing;RECEIVES BY departmentsemployees;EOF,25,3.3 需求分析的步骤(1),分析追踪DFD,用户复查,细化DFD,1,需求分析的基本过程,一.沿DFD从输出端到输入端回溯 1.确定每一个数据元素的来源;2.为得到某个数据元素补

20、充DFD中还没有的DF;3.初步定义有关的算法;4.将通过分析补充的DF、数据存储和处理添加到DFD的适当位置上;5.将分析中得到的有关数据元素的信息记录到数据字典中,把对算 法的简明描述记录到IPO(输入/处理/输出)图中。,26,3.3 需求分析的步骤(2),二.用户复查 1.分析员借助DFD、数据字典和简明算法向用户解释:输入数据 怎么一步一步转化成输出数据的;2.用户根据分析员提供的资料和描述提出纠正和补充意见;3.分析员根据用户的意见修改系统的描述。,三.细化DFD 1.分析员通过功能分解完成DFD的细化;2.其方法是结构化的分析方法(SA方法),即“自顶向下、逐步求精”的方法。3.

21、细化过程中要注意如下两个问题(1)分层细化时必须保持信息的连续性,即细化前后的输入/输出 数据必须相同;(2)当把一个功能进一步分解成子功能后,若能简要写出这些功能 的程序代码时,对该功能就不需再分解了。,27,3.3 需求分析的步骤(3),四.书写文档 文档资料的具体内容:1.系统规格说明:目标系统概貌、功能、性能、运行要求及将来可 能的要求,含必要的DFD、IPO图等;2.数据要求:数据字典及描绘数据结构的层次方框图或Warnier图;3.用户系统描述:系统功能和系统性能的扼要描述,包括使用系 统的步骤、方法及系统用户责任等;4.修正开发计划:成本估计、资源的使用、进度计划等。五.审查和复

22、审。,28,3.4 需求分析的方法(1),一.结构化分析技术 1.结构化分析:使用数据流程图、数据字典、结构化英语、判定表 和判定树等工具,来建立一种新的、称为结构化说明书的目标 文档需求规格说明书。2.结构化分析技术:将软件系统抽象为一系列的逻辑加工单元,各 单元之间以数据流发生关联。3.结构化分析过程(1)项目说明;(2)画分层数据流图;(3)编写数据字典:数据流、文件和加工说明等;(4)复审。,29,3.4 需求分析的方法(2),二.原型开发技术 1.原型开发过程,建立系统初始需求,系统设计与实现,30,3.4 需求分析的方法(3),2.实现原型开发的一般途径:建立原型的目的不同,实现原

23、型的 途径也不同,通常有下述三种类型:(1)用于验证软件需求的原型:原型实现的是系统的部分功能,而非全部功能,因为原型仅是为试验和演示用的,部分需求 可以忽略,或者模拟实现;构造的原型着眼于预期的评估,而非长期使用,一般采用高级语言来实现;在用户的参与下,通过原型运行,对软件需求规格说明进行评价和确认;用完 一般丢弃。(2)用于验证设计方案的原型:为了保证软件的质量,在总体设 计和详细设计过程中,用原型来验证总体结构或关键算法。A.若验证完设计方案后就丢弃,则构造原型所用的工具 不必与目标系统的生产环境集成;,31,3.4 需求分析的方法(4),B.若想把原型作为最终产品的一部分,或由它演变为最终 目标系统,则必须把原型的生产环境与目标系统的生产环境 集成在一起,并且最好把原型转换成目标系统的软件工具;原型和目标系统可以使用同样的程序设计语言编写。(3)用于演进出目标系统的原型:首先经过初步分析,获得一组 基本的需求后,快速加以实现,即建立一个能够反映用户需 求的原型,让用户实际了解未来系统的概貌,确认需要和改 进的功能,然后将原型系统反复改进,最终建立完全符合用 户要求的新系统。同前面分析一样,根据原型是否将其演变 为目标系统,确定是否需要将原型的生产环境与目标系统的 生产环境集成在一起。三.面向对象的分析技术(略),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号