软件需求工程 课堂笔记9

由于出去比赛,没有去上课,因此这份课堂笔记是我自己对照PPT脑补出来的


过程建模

1. 过程建模

过程建模是结构化建模的核心方法

2.数据流图DFD

DFD(Data Flow Diagram) 数据流图

1.基本元素

  • 外部实体

    • 外部实体是指处于待构建系统之外的人、组织、设备或者其他软件系统,它们不受系统的控制,开发者不能以任何方式操纵它们
    • 需要进行建模的外部实体是那些和待构建的软件系统之间存在着数据交互的外部实体,它们是待构建系统的数据源或者数据目的地
    • 所有的外部实体联合起来构成了软件系统的外部上下文环境
  • 过程

    • 过程是指施加于数据的动作或者行为,它们使得数据发生变化,包括被转换(transformed)、被存储(stored)或者被分布(distributed)
    • 可能是由软件系统控制的,也可能是由人工执行的,它重在数据发生变化的效果而不是其执行者
    • 可能会表现为不同的抽象层次
  • 数据流

    • 数据流是指数据的运动,它是系统与其环境之间或者系统内两个过程之间的通信形式

    • 数据流可以分割和组合

      软件需求工程 课堂笔记9

    • 数据字典和ERD通常被用来描述DFD数据流的详细内容

  • 数据存储

    • 数据存储是软件系统需要在内部收集、保存,以供日后使用的数据集合
    • 数据存储的详细内容通常也是用数据字典和ERD来进行描述的

2.规则

  • 过程是对数据的处理,必须有输入,也必须有输出,而且输入数据集和输出数据集应该存在差异

软件需求工程 课堂笔记9

  • 数据流是必须和过程产生关联的,它要么是过程的数据输入,要么是过程的数据输出

    软件需求工程 课堂笔记9

3.层次结构

  • 上下文图

  • 0层图

  • N层图(N>0)

4.层次结构的建立

1.创建上下文图

2.发现并建立DFD片断

3.根据DFD片断组合产生0层图;

4.对0层图的过程进行功能分解,产生N层图

5.DFD的验证

3.微规格说明

1.结构化英语/伪码

2.行为图

3.决策表

4.决策树

4.数据字典

数据字典是一个储存库,包含软件使用和产生的所有数据对象的描述,其中也包括DFD当中数据流和数据存储的定义

数据字典要求对数据元素(尤其是其结构)的描述要精确、严格和明确,有一个符号表可以参考一下。

软件需求工程 课堂笔记9

5.模块结构图

1.功能分解图

2.过程依赖图

6.DFD的类型