软件工程——需求分析(生存周期),需求规格说明书,数据流图

简介: 在前面我们进行了项目的软件计划,完成了可行性研究报告,知道了要做什么的问题,而下一步,我们就需要进一步的了解项目具体要怎么做,回答必须要做什么的问题了。

在前面我们进行了项目的软件计划,完成了可行性研究报告,知道了要做什么的问题,而下一步,我们就需要进一步的了解项目具体要怎么做,回答必须要做什么的问题了。


20200602205614289.png


需求分析的地位


软件系统定义阶段的最后一个阶段,准确回答系统必须做什么的问题


结束的标志是什么?


形成需求规格说明书


需求分析的过程有哪些?


1.回答系统必须做什么,深入描述软件的功能和性能。在可行性研究报告的基础上更行更细的研究


2.确定软件设计的约束和软件同其他系统元素的接口细节


3.定义软件的其他有效性需求


             20200602205741925.png    


软件需求规格说明的原则

从显示中分离功能,即描述要“做什么”而不是“怎样实现”


要能以层次化的方式对问题进行分解和不断细化(把一个抽象的问题以层次化的方式进行分解,分解成功能不同的子问题)


分解方法:横向分解,纵向分解


  20200602205830151.png            


数据流图


数据流图是什么?


是描述数据处理过程的工具,它表示了系统内部信息的流向,并表示了系统的逻辑处理的功能


特性是什么?


抽象性、概括性、层次性


面向数据流的分析方法


结构化分析方法。使用数据流图DFD与数据字典DD来描述


核心是分解化简问题,将物理与逻辑表示分开,对系统进行数据与逻辑的抽象


优缺点有哪些?


1.总体概念强,每一层都明确强调“干什么”,“需要什么”,“给出什么”


2.可以反映出数据的流向和处理过程


3.由于自顶向下分析,容易及早发现系统各部分的逻辑错误,易修改


4.容易与计算机处理相对照


5.不直观,一般都要在作业流程分析的基础上加以概括、抽象、修正来得到


6.如果没有计算机系统帮助的化,人工绘制太麻烦,工作量较大


数据流图的主要图形元素


              20200602205857862.png        


分层数据流图(一般划分3层)


   20200602205929613.png                


实例说明


实例:计算机教材销售系统


20200602210617318.png


检查和修改数据流图的原则


数据流图上所有图形符号只限于前述四种基本图形元素


数据流图的主图必须包括期中基本元素,缺一不可


每个加工至少有一个输入数据流和一个输出数据流


在数据流图中,需按层给加工框编号。编号表明该加工所处层次及上下层的亲自关系


规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致


用于写加工逻辑说明的工具


结构化英语


判定表


判定树


总结


软件计划和需求分析是相互依存的,软件计划为需求分析提供依据,需求分析在软件计划的基础上进行拆解分析

软件计划最后需要生成可行性研究报告,需求分析形成需求规格说明书

相关文章
软件工程——软件开发阶段(概要设计、详细设计)
需求分析确定了系统的开发目标,下一步工作就是软件设计。软件设计可以进一步地 分为两个阶段:总体设计和详细设计。确定系统的具体 实现方案、给出软件的模块结构、编写各个文档
|
7月前
|
XML 存储 安全
软件体系结构 - 需求规格说明书
软件体系结构 - 需求规格说明书
523 0
|
7月前
|
UED
产品服务需求分析与概念设计阶段
产品服务需求分析与概念设计阶段
136 3
|
数据库
【系统分析】软件工程——概要设计和详细设计
【系统分析】软件工程——概要设计和详细设计
512 0
|
数据库
软件设计原则
软件设计原则
|
设计模式 算法
软件设计的原则
软件设计的原则
98 0
|
设计模式
软件设计原则有哪些(下)
软件设计原则有哪些(下)
88 0
|
设计模式 安全 Java
软件设计原则有哪些(上)
软件设计原则有哪些(上)
145 0
|
算法 数据库 存储
概要设计与详细设计的区别
概要设计与详细设计的区别     概要设计就是设计软件的结构,包括组成模块,模块的层次结构,模块的调用关系,每个模块的功能等等。同时,还要设计该项目的应用系统的总体数据结构和数据库结构,即应用系统要存储什么数据,这些数据是什么样的结构,它们之间有什么关系。
11794 0
|
设计模式 数据可视化 测试技术
软件设计原则讲解,昭昭在目!
本文主要介绍 软件的设计原则
158 0