软考——软件工程——结构化分析与设计方法

目录

1,结构化分析SA方法

1.1,数据流图DFD

1.2,数据字典DD

1.3,加工逻辑的描述

2,结构化设计SD方法

3,结构化程序设计SP方法


结构化分析与设计方法是一种面向数据流的传统软件开发方法,它以数据流为中心构建软件的分析模型和设计模型。结构化分析SA结构化设计SD结构化程序设计SP构成了完整的结构化方法

结构化分析SA方法

是将系统开发看成工程项目,有计划、有步骤地进行工作,是一种应用很广泛的开发方法,采用“自顶向下,逐层分解”的开发策略。

分为以下几部分:

1,一套分层的数据流图DFD:用来描述数据流从输入到输出的变换流程

2,一本数据字典DD用来描述DFD中的每个数据流、文件以及组成数据流或文件的数据项

3,一组小说明(也称加工逻辑):用来描述每个基本加工(即不在分解的加工)的加工逻辑

数据流图DFD

描述系统的输入数据流如何经过一系列的加工,逐步变换成系统的输出数据流。

DFD的信息流大体上可以分为两种类型:一种是变换流(对应的映射是变换分析),一种是事务流(对应的映射是事务分析)。

数据流:由一组固定成分的数据组成,表示数据的流向。

加工:描述输入数据流到输出数据流之间的变换,即过程。

数据存储:用来表示存储数据,每个数据存储都有一个名字。

外部实体:是指存在于软件系统外的人员、组织或其它系统。它指出 系统所需数据的发源地和系统所产生的数据的归宿地。

数据字典DD

就是用来定义表示数据流图中各个成分的具体含义的,它以一种准确的、无二义性的说明方法为系统的分析、设计及维护提供了有关元素一致的定义和详细的描述。

数据字典中有4类条目:数据流、数据项、数据存储、基本加工

符号含义说明
=被定义为
+x=a+b,表示x由a和b组成
[...|...]x=[a|b],表示x由a或b组成
{...}重复x={a},表示x是由0个或多个a组成
m{...}n{...}或{...}\binom{n}{m}重复x=2{a}5,表示x中最少出现2次a,最多出现5次a,5和2为重复次数的上下限
(...)可选x=(a),表示a可在x中出现,也可以不出现
"..."基本数据元素x="a",表示x是取值为字符a的数据元素
..连接符x=1..9,表示x可取1~9中任意一个值

数据流条目给出了DFD中数据流的定义,通常列出该数据流的各组成数据项。

数据存储条目是对数据存储的定义。

数据项条目是不可再分解的数据单位。

加工条目是用来说明DFD中基本加工的处理逻辑。

加工逻辑的描述

1,结构化语言:是介于自然语言和形式语言之间的一种半形式语言,它的结构可分为外层和内层两层。

外层:用来描述控制结构,采用顺序、选择和重复3种基本结构。

内层:一般是使用祈使句形式的自然语言短语。

2,判定表:能够清楚地表达复杂的条件组合与应做的动作之间的对应关系。

3,判定树:也称为决策树,适合描述问题处理中具有多个判断,而且每个决策与若干条件有关。

结构化设计SD方法

是将结构化设计分析得到的数据流图映射出软件体系结构的一种设计方法。强调模块化、自顶向下逐步求精、信息隐蔽、高内聚、低耦合等设计规则。软件设计分为概要设计和详细设计两个步骤。

结构图:

1,模块:指具有一定功能并可以用模块名调用的一组程序语句,一个模块具有外部特征和内部特征;

2,调用:模块和模块之间的调用关系用从一个模块指向另一个模块的箭头来表示;

3,数据:模块间还经常用带注释的短箭头表示模块调用过程中来回传递的消息。箭头尾部带空心圆的表示传递的是数据,带实心圆的表示传递的是控制信息。

4,结构图的形态特征:

深度:指控制图控制的层次,也就是模块的层数;

宽度:指一层中最大的模块个数;

扇出:指一个模块的直接下属模块的个数;

扇入:指一个模块的直接上属模块的个数

结构化程序设计SP方法

1,采用自顶向下、逐步求精的程序设计方法

2,使用3种基本控制结构构造程序。任何程序都可以由顺序、选择、重复3种基本控制结构构造,这3种基本结构的共同点是单入口、单出口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

缱绻命运

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值