【软件工程】三、软件开发方法学——结构化分析方法

版权声明:欢迎转载,转载请注明出处:土豆洋芋山药蛋 https://blog.csdn.net/qq_33414271/article/details/85527937

首先回顾一下软件开发方法学在整个软件开发过程中的位置:
在这里插入图片描述

结构化方法

一种系统化的软件开发方法,包括:

  • 结构化分析方法——需求
  • 结构化设计方法——设计
  • 结构化程序设计方法——coding

一、 结构化分析方法

目的是为了给出问题的模型。
在这里插入图片描述

1.1基本术语

一个抽象层是由一组确定的术语定义的,为支持需求分析中有关要使用的那些信息的表达,结构化分析方法给出了以下五个术语/符号:
在这里插入图片描述

1.2 模型表达工具

(a)数据流图(DFD图)——表达系统功能模型的工具
是一种描述数据变换的图形工具,它包含的元素可以是数据流、数据存储、加工、数据源和数据潭等。
在这里插入图片描述

(b)数据字典——定义数据流和数据存储
用于定义数据流和数据存储的结构,并给出构成所给出的数据流和数据存储的各数据项的基本数据类型。

引入:一些逻辑操作符——用于定义数据结构
在这里插入图片描述

(c)判定表或判定树等——定义加工小说明
描述加工“做什么”,即加工逻辑,也包括其它一些与加工有关的信息,如执行条件、优先级、执行频率、出错处理等。

如判定表,判定树,结构化自然语言。

1.3结构化分析过程

①建立系统的功能模型
使用的工具为数据流图DFD
首先:建立系统环境图(顶层数据流图),确定系统边界。
继之:自顶向下,逐步求精,建立系统的层次数据流图。

②建立数据字典
使用的工具为结构符:+、I、{}等
定义数据流定义数据存储
定义数据项

③给出加工小说明:集中描述一个加工“做什么”,即加工逻辑,也包括其它一些与加工有关的信息,如执行条件、优先级、执行频率、出错处理等。

1.4 案例

建立一个简化的商业自动化系统,其中:

营业员通过该系统记录每日销售的商品(商品名,商品编号,单价,数量,销售时间);

收款员通过该系统记录收到的现金数额以及购物余额;

商店经理每日统计销售额,并在必要时查看某种商品的销售情况(商品名,商品编码,金额)。

①建立系统的功能模型首先:建立系统环境图,确定系统边界

在这里插入图片描述
其中:
1数据流为:销售的商品,日销售额等3个输入流,3个输出流
数据源为:营业员,经理,收款员
数据潭为:经理,收款员
2加工名为:要建立的系统名字立的系统名字

继之:自顶向下,逐层分解
A、按人或部门的功能要求,将加工“打碎”(将“父图”的每一加工按其功能分解为若干子加工),形成:
在这里插入图片描述

B、“分派”数据流(将“父图”的输入流和输出流“分派”到子加工),形成:
在这里插入图片描述

C、引入文件,使之形成一个有机整体一系统(在各加工之间建立合理的关系):
在这里插入图片描述

继续A、B、C:自顶向下,逐层分解。继续细化。

②建立数据字典

在这里插入图片描述
数据字典:
1、数据流:
销售的商品=商品名+商品编号+单价+数量+销售时间
现金额=余额=日销售额=非负实数
查询要求=[商品编号旧期]
查询要求1=商品编号
查询要求2=日期
销售情况=商品名+商品编号+金额
2、数据存贮:
销售文件={销售的商品}
3、数据项(数据流及数据存储的组成成分)
给出所有数据项的数据结构类型定义

③给出加工小说明

描述一个加工,一般遵循如下模版:
加工编号:给出加工编号
加工名:给出该加工的标识
输入流:给出该加工的所有输入数据流输出流:给出该加工的所有输出数据流加工逻辑:采用结构化自然语言或判定表或判定树等工具,给出该加工输入数据和输出数据之间的关系

注意:
结构化分析方法是一种半形式化的规约方法,给出了一组特定的术语表和标准化的表达格式-数据流图,在表达上均必须遵循一些约定,即应以一种准确和一致方式使用之。

猜你喜欢

转载自blog.csdn.net/qq_33414271/article/details/85527937