对《软件工程方法与实践》第六章内容的理解

标题结构化分析的特点是什么?

采用自顶向下、逐层分解的方法求解复杂问题

数据流图的建模元素有哪些?如何构建数据流图?有哪些注意事项?

建模元素有哪些?

数据流图的建模元素有数据的源点或终点、加工或处理、数据存储、数据流

如何构建数据流图?

(1)先确定系统的输入输出,构建顶层DFD;(注:顶层数据流图只包含一个处理,即标识被开发的系统) 顶层数据流图体现系统的应用领域及系统与外界的主要接口。
具体内容由以下三部分组成:

  1. 一个加工,标识被开发的系统

  2. 与系统有关的全部外部实体(即数据源点A、终点B\C)

  3. 与外部实体相关的系统主要输入数据流x、输出数据流y\t
    顶层DFD
    (2)对顶层DFD图细化,构建0层DFD;0层数据流图体现系统主体功能及各项功能与外部的接口情况,主体功能体现系统框架。
    具体内容由以下四部分组成:

  4. 加工。每个主体功能用一个加工表示。

  5. 主体功能相关的输入、输出数据流。

  6. 外部实体。这些外部实体分别通过输入数据流引发各主体功能执行,并接收执行后的输出结果。

  7. 数据存储。体现主体功能执行后产生的、需要保留在系统内部的结果数据的去处。
    0层DFD(3)对0层DFD的每个加工进行细化,分别构建1层DFD,依次类推,逐层精化,直至构建出底层图。

  8. 首先细化0层图,将一个主体加工分解为不同的加工,每个操作环节分别由一个加工表示。

  9. 如果主体功能复杂,难于在1层图中全部细化完成,则可以再次细化,产生2层图。

  10. 以此类推,直到内部的执行逻辑十分简明、不能再细化为止。

有哪些注意事项?

注意事项:

  1. 命名:数据流图中每个元素必须有名字,且命名合理。
    加工名字应该反映整个加工的功能,而不是一部分功能。
    加工命名一般为动词+名词短语。
    数据流名字应该代表整个数据流的内容,而不是仅仅反映它的某些成分。
    数据流命名为名词。

  2. 画数据流不是画控制流。数据流图反映的是系统“做什么”,不反映“如何做”。

  3. 每个加工至少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工的结果。

  4. 按层给加工编号。
    如果一张数据流图中的某个加工要分解成另一张数据流图时,则上层图为父图,直接下层图为子图,父、子图上的所有处理都应编号。子图的编号是父图中相应处理的编号的扩充,子图上处理的编号是父图号、小数点及子图的局部号组成。

  5. 保持父图与子图的平衡。
    子图的输入、输出数据流同父图相应加工的输入、输出数据流必须一致。

  • 注意:如果父图的一个输入(或输出)数据流对应于子图中几个输入(或输出)数据流,而子图中组成这些数据流的数据项全体恰好是父图中的这个数据流,那么父图和子图仍然是平衡的。可借助数据字典中的关于该数据流的描述来判定。

数据字典有哪些要素(条目)定义?

数据字典应该由四类元素的定义组成

  • 数据流条目:通常列出该数据流的各组成数据项。
  • 数据项条目(数据流或数据存储分量):数据流的组成成员是数据项,数据项条目是不可再分解的数据单位。
  • 数据存储条目:对存储数据的定义。
  • 加工条目:通常采用输入—处理—输出(IPO,Input-Process-Output)视图描述

请采用面向数据流的方法对你所在团队项目的功能需求进行建模。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值