结构化分析方法(Structured Method,结构化方法)是强调开发方法的结构合理性以及所开发软件的结构合理性的软件开发方法。结构是指系统内各个组成要素之间的相互联系、相互作用的框架。结构化开发方法提出了一组提高软件结构合理性的准则,如分解与抽象、模块独立性、信息隐蔽等。针对软件生存周期各个不同的阶段,它有结构化分析(SA)和结构化程序设计(SP)等方法。
结构化分析方法
结构化分析方法:结构化分析方法是一种建模技术,该模型的核心是数据字典,包括在目标系统中使用和生成的所有数据对象。
数据流图(DFD):描述系统中数据如何被传送和变换,以及描述如何对数据流进行变换的功能,用于功能建模
实体-关系图(E-R):描述数据对象及数据对象的关系,用于数据建模
状态-迁移图(STD):描述系统对外部事件如何响应,如何动作,用于行为建模
结构化分析方法(Structured Method)是强调开发方法的结构合理性以及所开发软件的结构合理性的软件开发方法。结构是指系统内各个组成要素之间的相互联系、相互作用的框架。
结构化开发方法提出了一组提高软件结构合理性的准则,如分解与抽象、模块独立性、信息隐蔽等。
针对软件生存周期各个不同的阶段,它有结构化分析(SA)、结构化设计(SD)和结构化程序设计(SP)等方法。
结构化分析方法给出一组帮助系统分析人员产生功能规约的原理与技术。它一般利用图形表达用户需求,使用的手段主要有数据流图、数据字典、结构化语言、判定表以及判定树等。
结构化分析的步骤如下:
①分析当前的情况,做出反映当前物理模型的DFD;
②推导出等价的逻辑模型的DFD;
③设计新的逻辑系统,生成数据字典和基元描述;
④建立人机接口,提出可供选择的目标系统物理模型的DFD;
⑤确定各种方案的成本和风险等级,据此对各种方案进行分析;
⑥选择一种方案;
⑦建立完整的需求规约。
结构化分析方法 (2)
结构化分析方法的实质是着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。
结构化分析的步骤如下:
(1)通过对用户的调查,以软件的需求为线索,获得当前系统的具体模型
(2)去掉具体模型中非本质因素,抽象出当前系统的逻辑模型
(3)根据计算机的特点分析当前系统与目标系统的差别,建立目标系统的逻辑模型
(4)完善目标系统并补充细节,写出目标系统的软件需求规格说明
(5)评审直到确认完全符合用户对软件的需求
结构化设计方法给出一组帮助设计人员在模块层次上区分设计质量的原理与技术。它通常与结构化分析方法衔接起来使用,以数据流图为基础得到软件的模块结构。SD方法尤其适用于变换型结构和事务型结构的目标系统。在设计过程中,它从整个程序的结构出发,利用模块结构图表述程序模块之间的关系。结构化设计的步骤如下:
①评审和细化数据流图;
②确定数据流图的类型;
③把数据流图映射到软件模块结构,设计出模块结构的上层;
④基于数据流图逐步分解高层模块,设计中下层模块;
⑤对模块结构进行优化,得到更为合理的软件结构;
⑥描述模块接口。
结构化分析的常用工具
1、数据流图(DFD-Data Flow Diagram)数据流图是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统的功能建模。
数据流图中主要图形元素有:数据流—流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。
数据源——代表系统之外的实体,可以是人、物或其他软件系统。
数据存储——对数据的加工处理---——加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。
—表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。
建立数据流图步骤如下:
(1)由外向内:先画系统的输入和输出,然后画系统的内部
(2)自顶向下:顺序完成顶层、中间层、底层数据流图
(3)逐层分解
为保证构造的数据流图表达完整、准确、规范,应遵循以下数据流图的构造规则和注意事项:
(1)对加工处理建立唯一、层次性的编号,且每个加工处理通常要求既有输入又有输出
(2)数据存储之间不应该有数据流。
(3)数据流图的一致性。
(4)父图、子图关系与平衡规则。
2、数据字典(DD-Data Dictionary)
数据字典是结构化分析方法的核心——数据字典是对所有与系统相关的数据元素的一个有组织的列表,以及精确严格的定义,使用户和系统分析员对输入、输出、存储和中间结果有共同的理解。
数据字典的作用是对数据流图(DFD)中出现的被命名的图形元素的确切解释,通常数据词典包含的信息有:名称、别名、何处使用/如何使用、内容描述、补充信息等。
3、判定树
使用判定树进行描述时,应先从问题定义的文字描述中分清哪些是判定条件,哪些是判定结论,根据描述材料中的连接词找出判定条件之间的从属关系、并列关系、选择关系,根据它们构造判定树。
4、判定表
判定表和判定树似是而非,当数据流图中的加工要依赖于多个逻辑条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合而引发的,使用判定表描述比较适宜。
判定由四部分组成:(1)基本条件;(2)条件项;(3)基本动作;(4)动作项
参考引用:http://blog.sina.com.cn/s/blog_62b8fc3301013rm7.html
https://blog.csdn.net/qq_45957210/article/details/112004735?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-4.no_search_link&spm=1001.2101.3001.4242.3