《数据流图与需求分析建模案例.pptx》由会员分享,可在线阅读,更多相关《数据流图与需求分析建模案例.pptx(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 “先全局后局部,先整体后细节,先抽象后具体”通常可将这种分层的DFD图,分为顶层、中间层、底层。具体步骤:1。先确定系统范围,画出顶层的DFD图。2。逐层分解顶层DFD图,获得若干中间层DFD图。3。画出底层的DFD图。画分层DFDDFD图的方法 顶层图说明了系统的边界,即系统的输入和输出数据流,顶层图只有一张。底层图由一些不能再分解的加工组成,这些加工都已足够简单,称为基本加工。在顶层和底层之间的是中间层。中间层的数据流图描述了某个加工的分解,而它的组成部分又要进一步分解。画各层DFD图时,“由外向内”。第1页/共20页X1321.11.21.41.32.12.21.1.11.1.22.1
2、.32.1.22.1.12.2.22.2.32.2.1顶层中 间 层底 层先全局后局部,先整体后细节,先抽象后具体.0图1图2图1.1图2.1图2.2图分层DFD 图第2页/共20页经过初步的需求分析,得到系统功能要求:1、监视病员的病症(血压、体温、脉搏等)。2、定时更新病历。3、病员出现异常情况时报警。4、随机地产生某一病员的病情报告。实例:医院病房监护系统实例:医院病房监护系统产生病情报告监视病情更新病历实例:医院病房监护系统第3页/共20页系统功能要求:1、监视病员的病症(血压、体温、脉搏等)2、定时更新病历 3、病员出现异常情况时报警。4、随机地产生某一病员的病情报告。顶层:病员护士
3、护士病员监护系统病员日志病症信号要求报告病症报告报警例例2 2 医院病房监护系统医院病房监护系统第4页/共20页第一层:病员护士护士中央监视病员日志病症信号要求报告病症报告报警局部监视生成报告病员极限更新日志病员数据格式化病员数据生理信号极限值1324日志数据日志数据医院病房监护系统顶层医院病房监护系统顶层DFDDFD图图第5页/共20页第二层:加工“中央监视”分解计算超过极限值否病员数据超过极限值报警开解信号产生报警信息病员极限格式化病员数据体温血压、体温脉搏生理信号极限值时间脉搏血压日期时钟格式化病员数据3.13.23.33.4医院病房监护系统二层医院病房监护系统二层DFDDFD图图第6页
4、/共20页计算超过极限值否病员数据超过极限值报警开解信号产生报警信息病员极限格式化病员数据体温血压、体温、脉搏生理信号极限值时间脉搏血压日期时钟格式化病员数据3.13.23.33.4第二层:加工“中央监视”分解医院病房监护系统分层医院病房监护系统分层DFDDFD图图图 2.15第一层格式化病员数据生理信号极限值病员护士护士中央监视病员日志病症信号要求报告病症报告报警局部监视生成报告病员极限更新日志病员数据1324日志数据图 2.16第7页/共20页加工分解的原则自然性:概念上合理、清晰;均匀性:理想的分解是将一个问题分解成大小均匀的几个部分;分解度:一般每一个加工每次分解最多不要超过个子加工,
5、分解应分解到基本加工为止。画分层画分层画分层画分层DFDDFDDFDDFD图的基本原则图的基本原则图的基本原则图的基本原则数据守恒与数据封闭原则 所谓数据守恒是指加工的输入输出数据流是否匹配,即每一个加工既有输入数据流又有输出数据流。或者说一个加工至少有一个输入数据流,一个输出数据流。数据封闭是对整个系统而言。第8页/共20页合理使用文件 当文件作为某些加工之间的交界面时,文件必须画出来,一旦文件作为数据流图中的一个独立成份画出来了,那么他同其他成份之间的联系也应同时表达出来。DFDDFD图不是流程图图不是流程图,不表示软件的控制流程。不表示软件的控制流程。画分层画分层画分层画分层DFDDFD
6、DFDDFD图的基本原则图的基本原则图的基本原则图的基本原则子图与父图的“平衡”父图中某个加工的输入输出数据流应该同相应的子图的输入输出相同(相对应),分层数据流图的这种特点称为子图与父图“平衡”。第9页/共20页分层分层DFDDFD图的改进图的改进 DFD图必须经过图必须经过反复修改反复修改,才能获得最终的目标,才能获得最终的目标系统的逻辑模型(目标系统的系统的逻辑模型(目标系统的DFD图)。可从以下方面图)。可从以下方面考虑考虑DFD图的改进:图的改进:1 1、检查数据流的正确性 数据数据守恒守恒 子图、父图的平衡子图、父图的平衡 文件使用是否合理。特别注意输入文件使用是否合理。特别注意输
7、入/出文件的数据出文件的数据流。流。2 2、改进DFDDFD图的易理解性 简化加工之间的联系(加工间的数据流越少,独立简化加工之间的联系(加工间的数据流越少,独立性越强,易理解性越好)。性越强,易理解性越好)。改进分解的均匀性。改进分解的均匀性。适当命名(各成分名称无二义性,准确、具体)。适当命名(各成分名称无二义性,准确、具体)。第10页/共20页 分层数据流图只是表达了系统的“分解”,为了完整地描述这个系统,还需借助“数据词典”和“小说明”对图中的每个数据和加工给出解释。对数据流图中包含的所有元素的定义的集合构成了数据词典。词典中可有以下四种类型的条目:数据词典数据词典(DD)(DD)(D
8、D)(DD)数据流 文件 数据项 加工第11页/共20页 A、数据流条目给出某个数据流的定义,通常是列出该 数据流的各组成数据项。例如:报名单姓名单位名年龄性别课程名 常用符号:、()、C、数据项条目 数据项条目给出某个数据单项的定义,通常是数据项的值类型,允许的取值范围。B、文件条目给出某个文件的定义,同数据流一样,文件的定义通常是列出文件记录的组成数据流例如某销售系统的订单文件:订单文件订单编号顾客名称产品名称订货数量交货日期D.加工条目加工类条目就是“加工小说明”。一般应该单独列出。第12页/共20页加工说明加工说明结构化语言判定表判定树 对数据流图中每一个不能再分解的基本加工都必须有一
9、个小说明给出这个加工的精确描述。小说明中应精确地描述加工的激发条件、加工逻辑、优先级、执行频率和出错处理等。加工逻辑是其中最基本的部分,是指用户对这个加工的逻辑要求。对基本加工说明有三种描述方式:第13页/共20页 结构化语言是介于自然语言和形式语言之间的一种半形式语言,它是自然语言的一个受限制的子集。一般分为两层结构:外层语法较具体,为控制结构(顺序、选择、循环),内层较灵活,表达“做什么”。一、一、一、一、结构化语言结构化语言结构化语言结构化语言例如:外层可为以下结构:1、顺序结构2、选择结构 IFTHEN-ELSE;CASE-OF-ENDCASE;3、循环结构 WHILE-DO;REPE
10、AT-UNTIL 第14页/共20页例:一图书销售系统,其中一加工为“优惠处理”,条件是:顾客的营业额大于1000元,同时必须信誉好,或者虽然信誉不好,但是20年以上的老主顾。应用举例用结构化语言来描述:如果 营业额大于1000元 同时 如果信誉好 则 优惠处理。否则 正常处理。否则 信誉不好 但是20年以上的老主顾,则优惠处理。否则 营业额小于、等于1000元 则 正常处理。显然,用结构化语言来描述组合条件不清晰。第16页/共20页 判定表是一种二维的表格,常用于较复杂的组合条件(与结构化语言比较)。条件框 条件条目 操作框 操作条目二、二、二、二、判定表判定表判定表判定表特点:可处理较复杂
11、的组合条件,但不易理解.不易输入计算机。通常由四部分组成。条件框 条件定义。操作框 操作的定义。条件条目 各条件的取值及组合。操作条目 在各条件取值组合下所执行的操作。例如:对商店每天的营业额所收税率营业额营业额X()1000X50005000 X1000元 Y Y Y N 信誉好 Y N N -20 年 -Y N -优 惠 X X 正 常 X X 化简后 1 2 3 4 5 6 7 8 1000元 Y Y Y Y N N N N 信誉好 Y Y N N Y Y N N20 年 Y N Y N Y N Y N优 惠 X X X正 常 X X X X XY-满足条件 N-不满足条件 X-选中判定的结论判定表判定表应用举例应用举例第18页/共20页特点:描述一般组合条件较清晰,易理解。不易输入计算机。营业额 1000元 1000元 正常处理好的支付信誉 优惠处理坏的支付信誉 20年 优惠处理 20年 正常处理如上例三、三、三、三、判定树判定树判定树判定树第19页/共20页感谢您的观看!第20页/共20页