结构化分析

1、主要思想:
主要思想:抽象与自顶向下的逐层分解 (控制复杂性的两个基本手段)

2、瀑布模型
软件定义时期:问题定义,可行性研究,需求分析
软件开发时期:总体设计,详细设计,编码与单元测试,综合测试
软件维护时期:软件维护

3、可行性研究
技术可行性
经济可行性
操作可行性

4、结构化方法概述
一种面向数据流的传统软件开发方法
以数据流为中心构建软件的分析模型、设计模型和实现模型
分为:

结构化分析(Structured Analysis,简称SA)
结构化设计(Structured Design,简称SD)
结构化编程(Structured Programming,简称SP)

5、结构化分析模型
1、数据字典是模型的核心,它包含了软件使用和产生所有数据的描述
2、数据流图:用于功能建模,描述系统的输入数据流如何经过一系列的加工变换逐步变换成系统的输出数据流
3、实体—关系图:用于数据建模,描述数据字典中数据之间的关系
4、状态转换图:用于行为建模,描述系统接收哪些外部事件,以及在外部事件的作用下的状态迁移情况

6、面向数据流的软件建模
(1)系统流程图(SFD)
系统流程图:描绘物理系统的工具,其基本思想是用图形符号以黑盒子形式描绘系统里面的每个部件(程序、文件、数据库、表格、人工过程等),表达的是信息在系统各部件之间流动的情况。
系统物理模型!
(2)数据流图
系统逻辑模型描述分三个方面:
数据流图(DFD Data Flow Digraph)              
数据字典(DD DataDictionary)
加工/处理说明(IPO)

数据流图
数据流(data flow):由一组固定成分的数据组成,代表数据的流动方向
加工(process):描述了输入数据流到输出数据流的变换,即将输入数据流加工成输出数据流
文件(file):使用文件、数据库等保存某些数据结果供以后使用(数据存储)
源或宿(source or sink):由一组固定成分的数据组成,代表数据的流动方向

如何画数据流图
基本方法:自顶向下逐层分解。
注意数据守恒

7、数据字典
数据流图与数据字典是密不可分的,两者结合起来构成软件的分析模型
数据字典由字典条目组成,每个条目描述DFD中的一个元素
数据字典条目包括:数据流、文件、加工、源或宿

8、基本加工的小说明
加工逻辑的描述方法
结构化语言:介于自然语言和形式语言之间的一种半形式语言
判定表:适用于加工逻辑包含多个条件,而不同的条件组合需做不同的动作
判定树:判定表的变种,它本质上与判定表是相同的,只是表示形式不同

8、实体关系图
实体—关系图(Entity-Relation Diagram, ERD)用于数据建模,描述数据字典中数据之间的关系
实体是客观存在的数据对象
只封装数据,不封装数据的操作,和OO类不同
例如: 学生, 学校, 事件, 植物
实体具有属性
例如: 学生具有姓名和地址
实体间可存在多种不同关系
例如:教师指导学生,学生选课

猜你喜欢

转载自blog.csdn.net/algzjh/article/details/80729403