首先看软件需求分析
需求分析阶段的任务分为四个阶段:需求获取,需求分析,需求定义,需求验证
需求获取这部分比较模糊,应该也是比较杂,比较灵活的一部分,先来个大概的功能叙述,然后将需求一项一项地列出来。
需求分析这部分要求对前面的需求进行规范
1,对每项需求给出清楚的描述
2,要求描述没有歧义
3,各项需求之间不能存在矛盾,软件需求和实际需求不能矛盾
4,对需求实现的可行性进行分析
4.1 技术可行性:在现有条件和环境技术下考虑
4.2经济可能性:小项目一般不考虑这个
4.3社会可能性:考虑知识产权的侵害问题
5,获取的需求是否全面周到,从已知的需求是否隐含一些必须有的其他需求,以及深入探讨系统功能所产生的可能的对功能需求的补充。
需求定义,要求系统全面地写出软件需求规格说明
需求验证,要经过客户对需求规格说明的评审
(需求规格说明还没有搞清楚,在后面有时间补充
结构化的分析方法包括了以下几种元素
数据对象描述
实体-关系图
加工规格说明
数据流图
控制规格说明
状态-迁移图
数据字典
我们在结构化设计阶段的任务是写出概要设计和详细设计
概要设计包括:
体系结构设计:
数据流图相关
接口设计:
数据流图
数据设计:
数据对象描述
数据字典
实体-关系图
详细设计包括:
过程设计:
加工规格说明
控制规格说明
状态-迁移图
我们来解释一下上面结构化分析方法里出现的一些项目
功能建模
数据流图有四种基本的图形符号
椭圆或圆角矩形: 表示加工,对输入数据进行变换以产生输出数据,其中要注明加工的名字
直角矩形或长方体:外部实体。即数据输入源,或数据输出汇点。其中要注明数据源或数据汇点的名字
平行线或右面竖边缺的矩形:数据存储。要用名字或名词性短语为数据存储命名。
一个箭头:数据流。描述被加工数据及传递方向。箭头旁边要注明数据流的名字,可用名词或名词性短语命名。
数据源或数据汇点表示图中要处理的数据的输入来源或处理结果要送往何处,数据源或数据汇点不是目标系统的一部分,只是目标系统的外围环境
中的实体部分,因此成为外部实体。实际问题中它可能是组织,部门,人,相关的软件系统或硬件设备。
数据流表示数据沿箭头方向的流动。数据流可表示这些加工之间被传送的有名数据,也可表示在数据存储和加工之间传送的未命名数据,这些数据流虽然没有命名,但因其所连接的是有名加工和有名数据存储,所以其含义也是清楚的。
加工是对数据对象的处理或变换,加工的名字是动词短语,以表明所完成的加工。一个加工可能需要多个数据流,也可能产生多个数据流。
数据存储在数据流图中起保存数据的作用,可以是数据库文件或任何形式的数据组织。从数据存储中引出的数据流可理解为从数据存储中读取数据或得到查询结果,指向数据存储的数据流可理解为向数据存储中写入数据
环境图也称为顶层数据流图(或0层数据流图),它仅包括一个数据处理过程(加工),也就是要开发的目标系统,(就是目标系统,输入输出,实体部分)。
数据流图的分层是为了解决图上过多的加工引起的不直观,如果我们的加工不多,那么分层也没有必要了。