第五章总体设计_第1页
第五章总体设计_第2页
第五章总体设计_第3页
第五章总体设计_第4页
第五章总体设计_第5页
已阅读5页,还剩120页未读 继续免费阅读

下载本文档

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

文档简介

1、软件工程第五章总体设计河南警察学院河南警察学院信息安全系信息安全系刘磊刘磊第五章总体设计5 . 1 设计过程设计过程 5 . 2 设计原理设计原理 5 . 3 启发规则启发规则 5 . 4 描绘软件结构的图形工具描绘软件结构的图形工具5 . 5 面向数据流的设计方法面向数据流的设计方法 5 . 6 小结小结习题习题2 学习要求掌握:掌握: 1 、软件设计过程中应遵循的基本原理和相、软件设计过程中应遵循的基本原理和相关概念;关概念; 2 、描绘软件结构的图形工具的运用;、描绘软件结构的图形工具的运用; 3 、面向数据流设计方法概念;变换分析、面向数据流设计方法概念;变换分析、事务分析法过程和应用

2、。事务分析法过程和应用。理解:理解: 1 、典型的总体设计过程包括的步骤;、典型的总体设计过程包括的步骤; 2 、设计中的启发式规则;、设计中的启发式规则;3 重点和难点重点重点:软件设计过程中应遵循的基本原理;软件设计过程中应遵循的基本原理;面向数据流的设计方法面向数据流的设计方法难点难点:变换分析、事务分析法的过程和应用变换分析、事务分析法的过程和应用4 软件设计的目标和任务软件需求:解决软件需求:解决“做什么做什么”软件设计:解决软件设计:解决“怎么做怎么做”软件设计的任务:软件设计的任务:以软件需求规格说明书为以软件需求规格说明书为依据,着手实现软件的需求,并将设计的依据,着手实现软件

3、的需求,并将设计的结果反映在结果反映在“设计规格说明书设计规格说明书”文档中。文档中。软件设计的重要性:软件设计的重要性:是软件开发阶段的第一是软件开发阶段的第一步,最终影响软件实现的成败和软件维护步,最终影响软件实现的成败和软件维护的难易程度。的难易程度。5 软件设计的两个阶段第一阶段:概要设计(总体设计)第一阶段:概要设计(总体设计)根据软件需求,设计软件系统结构和数据结根据软件需求,设计软件系统结构和数据结构,确定程序的组成模块及模块之间的相构,确定程序的组成模块及模块之间的相互关系。互关系。回答回答“概括地说,系统应该如何实现?概括地说,系统应该如何实现?”。其重要性是:站在全局高度,

4、从较抽象的层其重要性是:站在全局高度,从较抽象的层次上分析对比多种可能的系统实现方案和次上分析对比多种可能的系统实现方案和软件结构,从中选出最佳方案和最合理的软件结构,从中选出最佳方案和最合理的软件结构,从而用较低成本开发出较高质软件结构,从而用较低成本开发出较高质量的软件系统。量的软件系统。6 软件设计的两个阶段第二阶段:详细设计(过程设计)第二阶段:详细设计(过程设计)确定模块内部的算法和数据结构;选定某种确定模块内部的算法和数据结构;选定某种过程的表达形式来描述各种算法;产生精过程的表达形式来描述各种算法;产生精确描述各模块程序过程的详细文档,并进确描述各模块程序过程的详细文档,并进行评

5、审。行评审。7 将需求分析摸型转换为软件设计软件结构设计以需求分析中得到的数据流图软件结构设计以需求分析中得到的数据流图为基础而进行。为基础而进行。8 SA与SD的关系9 第一个阶段总体设计的任务 制定规范制定规范 设计软件系统结构(简称软件结构)设计软件系统结构(简称软件结构) 处理方式设计处理方式设计数据结构及数据库设计数据结构及数据库设计 可靠性设计可靠性设计 编写概要设计文档编写概要设计文档 概要设计评审概要设计评审10 制定规范为软件开发小组制定在进行软件设计,应该为软件开发小组制定在进行软件设计,应该共同遵守的标准,以便协调组内各员的工共同遵守的标准,以便协调组内各员的工作。作。1

6、1 软件结构设计包括:包括:l将系统按功能划分成模块将系统按功能划分成模块l确定每个模块的功能确定每个模块的功能l确定模块之间的调用关系确定模块之间的调用关系l确定模块之间的接口,即模块之间传递的确定模块之间的接口,即模块之间传递的信息信息l评价模块结构的质量评价模块结构的质量12 处理方式设计包括:包括:功能设计:功能设计:确定实现功能法,评估算法的性确定实现功能法,评估算法的性能能性能设计:性能设计:确定实现性能需求必须的算法和确定实现性能需求必须的算法和模块间的控制方式模块间的控制方式13 5.1 设计的过程14 5. 2 设计原理5.2.1模块化模块化5.2.2抽象抽象5.2.3逐步求

7、精逐步求精5.2.4信息隐蔽和局部化信息隐蔽和局部化5.2.4模块独立模块独立15 5 . 2 . 1 模块化(Modularity ) 什么是模块和模块化思想?什么是模块和模块化思想?采取自顶向下的方式,逐层把软件系统划分采取自顶向下的方式,逐层把软件系统划分成若干可单独命名和可编址的部分成若干可单独命名和可编址的部分 “ 模模块块” ,每个模块完成一个特定的子功能每个模块完成一个特定的子功能;所有模块按某种方法组成一个整体,完成所有模块按某种方法组成一个整体,完成整个系统所要求的功能。整个系统所要求的功能。软件系统就是通过这些模块的组合来实现。软件系统就是通过这些模块的组合来实现。16 模

8、块化的优点模块化是软件解决复杂问题所具备的手段,模块化是软件解决复杂问题所具备的手段,可降低软件复杂性,减少开发工作量,从可降低软件复杂性,减少开发工作量,从而降低开发成本,提高软件生产率,是模而降低开发成本,提高软件生产率,是模块化的依据。块化的依据。17 模块化与软件成本的关系18 接口接口 模块的基本属性接口:接口:指模块的输入与输出。指模块的输入与输出。功能:功能:指模块实现什么功能。指模块实现什么功能。模块化好处模块化好处:l模块化使软件容易测试和调试,因而有助模块化使软件容易测试和调试,因而有助提高软件的可靠性。提高软件的可靠性。l模块化能提高软件的可修改性。模块化能提高软件的可修

9、改性。l模块化有助于软件开发工程的组织管理。模块化有助于软件开发工程的组织管理。19 5.2.2 抽象( Abstraction ) 什么是抽象?什么是抽象?认识复杂事物和现象时,抽出事物本质的共认识复杂事物和现象时,抽出事物本质的共同特性而暂不考虑它们的细节。同特性而暂不考虑它们的细节。20 5.2.2 抽象( Abstraction ) 什么是抽象?什么是抽象?认识复杂事物和现象认识复杂事物和现象时,抽出事物本质时,抽出事物本质的共同特的共同特 性而暂不性而暂不考虑它们的细节。考虑它们的细节。 软件开发中的抽象软件开发中的抽象过程的抽象过程的抽象数据的抽象数据的抽象23 抽象什么是抽象思想

10、什么是抽象思想?在认识事物、分析和解决问题的过程中,在认识事物、分析和解决问题的过程中,忽略忽略那些与当前研究目标那些与当前研究目标不相关不相关的部分的部分, 以便将注以便将注意力意力集中于集中于与当前目标与当前目标相关相关的方面的方面软件开发实际上就是一个从软件开发实际上就是一个从高层次抽象高层次抽象到到低低层次抽象层次抽象逐步过渡的过程。逐步过渡的过程。一个复杂的系统先用一些高级的抽象概念构一个复杂的系统先用一些高级的抽象概念构造和理解,这些高级概念又用较低级的概造和理解,这些高级概念又用较低级的概念构造和理解,如此进行下去,直到具体念构造和理解,如此进行下去,直到具体元素。元素。24 抽

11、象例子25 形体形体衣着衣着性格性格抽象抽象外表外表5 . 2. 3 逐步求精逐步求精:逐步求精:为了能集中精力解决主要问题而为了能集中精力解决主要问题而尽量推迟对问题细节的考虑。尽量推迟对问题细节的考虑。可把逐步求精看作是一项把一个时期内必须可把逐步求精看作是一项把一个时期内必须解决的种种问题解决的种种问题按优先级排序按优先级排序的技术。的技术。逐步求精是一种逐步求精是一种自顶向下自顶向下的设计策略,按这的设计策略,按这种设计策略,程序的体系结构是通过逐步种设计策略,程序的体系结构是通过逐步精化处理过程的层次而设计出来的。精化处理过程的层次而设计出来的。26 逐步求精的例子27 逐步求精逐步

12、求精外表外表形体形体衣着衣着性格性格头发头发脸形脸形领带领带抽象抽象自顶向下,逐步求精的基本思想l将功能、信息的说明分为多个层次,将功能、信息的说明分为多个层次,最高最高层层也最抽象也最抽象 仅仅只是仅仅只是概念性概念性地描述功能地描述功能或信息,或信息,不不提供功能的内部工作情况或信提供功能的内部工作情况或信息的内部结构;息的内部结构;l设计者从最高层开始,仔细推敲,进行功设计者从最高层开始,仔细推敲,进行功能和信息的细化,给出能和信息的细化,给出下层实现的细节下层实现的细节;l随着每个后续细化逐步的完成,提供越来随着每个后续细化逐步的完成,提供越来越多的细节,最终得出用程序设计语言表越多的

13、细节,最终得出用程序设计语言表达的程序。达的程序。28 结合了模块化和逐步细化思想建立的软件结构图29 5 . 2.4信息隐蔽和局部化信息隐蔽:信息隐蔽:在设计和确定模块时,使得一个在设计和确定模块时,使得一个模块模块内内包含的信息(过程或数据),不允包含的信息(过程或数据),不允许其它许其它不需要不需要这些信息的这些信息的模块访问模块访问,独立,独立的模块间仅仅交换为完成系统功能而必须的模块间仅仅交换为完成系统功能而必须交换的信息。交换的信息。局部化:局部化:将一些关系密切的软件元素物理地将一些关系密切的软件元素物理地放得彼此靠近。放得彼此靠近。30 5. 2 . 5 模块独立1 、什么是模

14、块独立性(、什么是模块独立性( module independence)模块只完成系统要求的相对独立的功能模块只完成系统要求的相对独立的功能l符合信息隐蔽原则符合信息隐蔽原则l模块间关联和依赖程度尽量小模块间关联和依赖程度尽量小 2 、模块独立的优点、模块独立的优点容易开发、测试和维护容易开发、测试和维护31 3 、衡量模块独立性的两个准则 耦合性(耦合性( coupling ) 内聚性(内聚性( cohesion )32 耦合性( coupling )也称块间的联系。是对软件系统结构中,各也称块间的联系。是对软件系统结构中,各模块间相互联系紧密程度的一种度量。模块间相互联系紧密程度的一种度量

15、。设计目标:低耦合设计目标:低耦合33 无直接藕合两个模块没有直接关系,模块独立性最强。两个模块没有直接关系,模块独立性最强。34 数据耦合属松散耦合。一模块访问另一模块时,通过属松散耦合。一模块访问另一模块时,通过数据参数交换输入、输出信息。数据参数交换输入、输出信息。35 控制耦合模块之间传递的是控制信息(如开关、模块之间传递的是控制信息(如开关、标志、名字等),标志、名字等),控制被调用模块的控制被调用模块的内部逻辑内部逻辑。36 控制耦合举例37 去除模块间控制耦合的方法控制藕合增加了理解和编程的复杂性,调用控制藕合增加了理解和编程的复杂性,调用模块必须知道被调模块的内部逻辑,增加模块

16、必须知道被调模块的内部逻辑,增加了相互依赖。解决方法:了相互依赖。解决方法: ( 1 )将被调用模块内的判定上移到调用模)将被调用模块内的判定上移到调用模块中进行块中进行 ( 2 )被调用模块分解成若干单一功能模块)被调用模块分解成若干单一功能模块38 改控制藕合为数据藕合举例39 特征耦合两个模块通过传递两个模块通过传递数据结构数据结构加以联系,或都加以联系,或都与一个与一个数据结构数据结构有关系,则称这两个模块有关系,则称这两个模块间存在特征耦合。间存在特征耦合。可能出现的情况:当把可能出现的情况:当把整个数据结构作为参整个数据结构作为参数数传递时,被调用的模块虽然只需要使用传递时,被调用

17、的模块虽然只需要使用其中的一部分数据元素,但实际可以使用其中的一部分数据元素,但实际可以使用的数据多于它真正需要的数据,这将导致的数据多于它真正需要的数据,这将导致对数据访问失去控制,对数据访问失去控制,40 特征耦合举例说明:说明: l “住户情况住户情况”是一个是一个数据结构数据结构,图中模块都与此,图中模块都与此数据结构有关。数据结构有关。 l “计算水费计算水费”和和“计算电费计算电费”本无关,由于引用本无关,由于引用了此数据结构产生依赖关系,它们之间也是了此数据结构产生依赖关系,它们之间也是标记标记偶合偶合。41 将特征耦合修改为数据耦合举例42 公共环境耦合一组模块引用同一个公用数

18、据区(也称全局一组模块引用同一个公用数据区(也称全局数据区、公共数据环境)。数据区、公共数据环境)。公共数据区公共数据区指:指:l全局数据结构。全局数据结构。l共享通讯区。共享通讯区。l内存公共覆盖区等内存公共覆盖区等43 公共环境耦合举例模块模块 A 、 B 、 C 间存在错综复杂的联系间存在错综复杂的联系44 公共耦合存在的问题( 1 )软件可理解性降低)软件可理解性降低 ( 2 )诊断错误困难)诊断错误困难 ( 3 )软件可维护性差)软件可维护性差 ( 4 )软件可靠性差)软件可靠性差45 内容耦合有下列情况之一的。是最不好的耦合形式!有下列情况之一的。是最不好的耦合形式!46 模块间耦

19、合强度47 耦合强度依赖的因素:l一模块对另一模块的引用一模块对另一模块的引用l一模块向另一模块传递的数据量一模块向另一模块传递的数据量l一模块施加到另一模块的控制的数量一模块施加到另一模块的控制的数量l模块间接口的复杂程度模块间接口的复杂程度48 降低耦合度的设计原则1、根据问题特点,选择合适的、根据问题特点,选择合适的 耦合类型。耦合类型。 尽量使用数据耦合,少用控制耦合和外部尽量使用数据耦合,少用控制耦合和外部耦合,限制公共耦合的范围,完全不用内耦合,限制公共耦合的范围,完全不用内容耦合容耦合2 、降低模块接口的复杂性。、降低模块接口的复杂性。减少每个模块的参数个数;尽量使用标准过减少每

20、个模块的参数个数;尽量使用标准过程调用方式,少用直接引用的方式;传送程调用方式,少用直接引用的方式;传送的信息以标准、直接的方式提供。的信息以标准、直接的方式提供。 3 、把模块的通信信息放在缓冲区中。、把模块的通信信息放在缓冲区中。49 内聚性( cohesion )又称块内联系。指一个模块内部各个元素彼又称块内联系。指一个模块内部各个元素彼此结合的紧密程度的度量。此结合的紧密程度的度量。若一个模块内各元素(语句之间、程序段之若一个模块内各元素(语句之间、程序段之间)联系的越紧密,则它的内聚性就越间)联系的越紧密,则它的内聚性就越设计目标:高内聚设计目标:高内聚50 巧合内聚(偶然内聚)块内

21、各组成成份在功能上是互不相关的。块内各组成成份在功能上是互不相关的。51 模块模块 M 中的三个语句没有任何联系。中的三个语句没有任何联系。缺点:可理解性差,可修改性差缺点:可理解性差,可修改性差逻辑内聚把几种相关功能(逻辑上相似的功能)组合把几种相关功能(逻辑上相似的功能)组合在一模块内,每次调用由传给模块的参数在一模块内,每次调用由传给模块的参数确定执行哪种功能。确定执行哪种功能。52 逻辑内聚模块53 时间内聚(经典内聚)模块完成的功能必须在模块完成的功能必须在同一时间同一时间内执行,这内执行,这些功能只因时间因素关联在一起。些功能只因时间因素关联在一起。例:例:初始化系统模块初始化系统

22、模块系统结束模块、系统结束模块、 紧急故障处理模块等紧急故障处理模块等54 过程内聚(顺序性组合)模块内各处理成分相关,且必须以特定次序模块内各处理成分相关,且必须以特定次序执行。执行。55 通信内聚模块内各部分使用模块内各部分使用相同的输入数据相同的输入数据,或产生,或产生相同的输出结果相同的输出结果56 顺序内聚模块完成模块完成多个功能多个功能,各功能都在,各功能都在同一数据结同一数据结构构上操作,每一功能有唯一入口。上操作,每一功能有唯一入口。57 功能内聚模块仅包括为完成某个功能所必须的所有成模块仅包括为完成某个功能所必须的所有成分。分。模块所有成分共同模块所有成分共同完成一个功能完成

23、一个功能,缺一不可,缺一不可内聚性最强内聚性最强58 模块间内聚的类型59 总结:耦合、内聚与模块独立性关系耦合与内聚都是耦合与内聚都是模块独立性模块独立性的定性标准,都的定性标准,都反映模块独立性的良好程度。反映模块独立性的良好程度。但耦合是直接的主导因素,内聚则辅助耦合但耦合是直接的主导因素,内聚则辅助耦合共同对模块独立性进行衡量。共同对模块独立性进行衡量。设计要求:低耦合,高内聚设计要求:低耦合,高内聚60 5 .3 启发规则改进原则改进原则 :高内聚、低耦合:高内聚、低耦合 改进软件结构,提高模块独立性改进软件结构,提高模块独立性 模块规模适中模块规模适中 深度、宽度、扇出和扇入适中深

24、度、宽度、扇出和扇入适中 将模块的影响限制在控制范围内将模块的影响限制在控制范围内 降低模块接口的复杂性降低模块接口的复杂性 设计单入口单出口的模块设计单入口单出口的模块 模块功能可预测模块功能可预测61 改进软件结构,提高模块独立性通过模块分解或合并,降低耦合提高内聚通过模块分解或合并,降低耦合提高内聚62 模块规模适中模块过大:可理解程度下降模块过大:可理解程度下降模块过小:开销大于有效操作系统接口复杂模块过小:开销大于有效操作系统接口复杂 在考虑模块的独立性同时,为了增加可在考虑模块的独立性同时,为了增加可理解性,模块的大小最好在理解性,模块的大小最好在 50 一一 150 条条语句左右

25、,可以用语句左右,可以用 1 一一 2 页打印纸打印,页打印纸打印,便于人们阅读与研究。便于人们阅读与研究。63 深度、宽度、扇出和扇入适中软件结构度量术语软件结构度量术语64 例:避免平铺结构65 增加中间层降低扇出66 作用域作用域是指受模块内一个判定影响的所有模块的集是指受模块内一个判定影响的所有模块的集合合控制域控制域是指这个模块本身及其所有的下属模块的集是指这个模块本身及其所有的下属模块的集合合67 将模块的影响限制在控制范围内使任一模块的作用域在其控制域内模块模块 C 的控制范围的控制范围: C 、 D 、 E 、 F 、 G 、 H 。如果模块如果模块 C 作出的作出的决策影响了

26、模块决策影响了模块 L ,L超出了超出了 C 的控制范围的控制范围68 降低模块接口的复杂性接口传递信息应简单且和模块功能一致。接口传递信息应简单且和模块功能一致。模块的接口要简单、清晰、含义明确,便于模块的接口要简单、清晰、含义明确,便于理解,易于实现、测试与维护。理解,易于实现、测试与维护。69 设计单入口单出口的模块不要使模块间出现内容耦合。不要使模块间出现内容耦合。70 模块功能可预测,但防止模块功能过分局限如果一个模块可以当作一个黑盒子,相同输如果一个模块可以当作一个黑盒子,相同输入产生相同输出,其功能为可预测的。入产生相同输出,其功能为可预测的。若模块带有内部若模块带有内部“存储器

27、存储器”,其功能可能是,其功能可能是不可预测的,难理解、难测试、难维护。不可预测的,难理解、难测试、难维护。单一的模块具有高内聚。但模块功能过分局单一的模块具有高内聚。但模块功能过分局限,可使用范围将过分狭窄,缺乏灵活性限,可使用范围将过分狭窄,缺乏灵活性和扩充性。和扩充性。71 5 .4 描绘软件结构的图形具 5 . 4 . 1 层次图和层次图和 HIPO 图图描述软件的层次结构。描述软件的层次结构。层次图中,一个方框代表一个模块,方框间层次图中,一个方框代表一个模块,方框间的连线表示调用关系。的连线表示调用关系。 HIPO 图图=层次图层次图 IPO 图图72 正文加工系统73 层次图层次

28、图主控模块酒店管理信息系统功能结构图74 75 5.4.2 结构图(SC Structure Chart)主要成分说明:主要成分说明:l 一个方框表示一个一个方框表示一个模块模块;l 一个模块指向另一个模块的箭头或直线,表示前一模块对后一模块的一个模块指向另一个模块的箭头或直线,表示前一模块对后一模块的调调用用;l 调用直线边的小箭头,表示调用时从一个模块传给另一个模块的调用直线边的小箭头,表示调用时从一个模块传给另一个模块的数据数据,也指出了传送方向。也指出了传送方向。结构化设计描述工具n结构图结构图(Structure Chart, SC)结构图:软件结构概要设计阶段的工具。反映系统的功能

29、结构图:软件结构概要设计阶段的工具。反映系统的功能实现以及模块与模块之间的联系与通信,即反映了系统的总实现以及模块与模块之间的联系与通信,即反映了系统的总体结构。体结构。结构图的表示方法:用矩形表示模块,用带箭头的连线表结构图的表示方法:用矩形表示模块,用带箭头的连线表示模块间的调用关系。在调用关系的两旁,标出传入和传出示模块间的调用关系。在调用关系的两旁,标出传入和传出模块的数据流。模块的数据流。模块模块模块间调用模块间调用关系关系数据流数据流(数据信息数据信息)SC图的符号(一种表示方法)图的符号(一种表示方法)数据流数据流(控制信息控制信息)数据流数据流结构图的主要元素模块:表明功能。用

30、矩形表示模块。模块:表明功能。用矩形表示模块。模块的调用关系和接口:用单向箭头表示。模块的调用关系和接口:用单向箭头表示。a) 模块调用关系b) 模块间接口的表示SC图的符号另一种表示方法图的符号另一种表示方法结构图的结构图的6种模块:传入、传出、变换、源、漏和控制。种模块:传入、传出、变换、源、漏和控制。(a)传入传入XY(b)传出传出YXXY(c)变换变换X(d)源源X(e)漏漏(f)控制控制结构图(SC)举例79 SC中的选择调用80 SC中的循环调用81 5 .5 面向数据流的设计方法5.5. 1 概念概念把信息流映射成软件结构把信息流映射成软件结构,信息流的类型决定信息流的类型决定了

31、映射的方法了映射的方法,信息流可分为两种类型信息流可分为两种类型l变换型流变换型流l事务型流事务型流82 变换型数据流基本模型特点:具有明确的传入、变换(或称主加工特点:具有明确的传入、变换(或称主加工)和传出界面的)和传出界面的 DFD83 另一种表示图84 变换型数据流举例85 事务型数据流基本模型86 事务中心的任务:事务中心的任务:接受输入数据(事务)接受输入数据(事务)分析每个事务以确定它的类型。分析每个事务以确定它的类型。根据事务类型选取一条活动通路根据事务类型选取一条活动通路事务型数据流举例87 针对两种数据流的设计方法88 系统结构特征可归纳为两种典型形式89 大型系统的 DF

32、D 中,变换型和事务型往往共存90 5 .5 .2 变换分析例例1:有如下数据流图:有如下数据流图91 步骤步骤1:区分输入、变换中心、输出部分,在:区分输入、变换中心、输出部分,在 DFD 上标明分界线上标明分界线92 注意;所谓注意;所谓 “输入输入”、“ 输出输出”是站在整个是站在整个系统的角度来看的,是整个系统的输入、输出系统的角度来看的,是整个系统的输入、输出部分部分步骤2:第一级分解。设计顶层和第一层模块93 第一级分解后 SC 的数据流94 步骤3:第二级分解。自顶向下分解 SC 各分支,设计出每个分支的中、下层模块95 1 、传入分支的分解 ( 1)96 1 、传入分支的分解

33、(2)若有必要,继若有必要,继续分解。续分解。以以“输入金额输入金额”为例,可为例,可将此分支也将此分支也看成一个变看成一个变换型数据流换型数据流 得结构图:得结构图:97 继续分解“金额校验”98 1、传入分支的分解(3)99 12.传出分支的分解100 3、中心加工分支的分解101 5.5.3 事务分析当数据流具有明显的事务特征时,应该采用当数据流具有明显的事务特征时,应该采用事务流的分析方法事务流的分析方法基本步骤基本步骤步骤步骤1. 复审基本系统模型复审基本系统模型步骤步骤2. 复审和精化数据流图复审和精化数据流图步骤步骤3. 确定数据流图的类型:变换流还是事务确定数据流图的类型:变换流还是事务流流102 步骤4.识别事务流各个组成部分把整个事务型把整个事务型DFD划分为以下三个部分划分为以下三个部分 接受路径部分:接受事务的输入接受路径部分:接受事务的输入 事务处理中心事务处理中心 动作路径部分动作路径部分判定在每一条动作路径上数据流的特征:变判定在每一条动作路径上数据流的特征:变换流或者事务流换流或者事务流103 事务型DFD划分例子104 A B C D E Q R

温馨提示

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

评论

0/150

提交评论