💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
## 软件需求分析 ## 任务 解决目标系统“做什么”问题 深入描述软件的功能和性能 确定软件涉及到的约束和软件接口 定义软件的其他有效需求 ![](https://box.kancloud.cn/2016-04-28_572182a32794e.jpg) ## 特点 一致性、完整性、限时性、有效性、可验证性 ## 需求分析的过程 ### 问题识别 建立分析所需要的通信途径 ### 分析与综合 从信息流和信息结构出发,逐步细化所有的软件功能,找出联系,接口特性和设计上的约束,分析他们是否满足功能要求,是否合理 ### 编制需求分析阶段的文档 软件需求说明书 数据要求说明书 初步的用户手册 修改完善与确定软件开发实施计划 ### 评审 系统定义的目标是否与用户的要求一致 系统需求分析阶段提供的文档资料是否齐全 文档中的所有描述是否完整,清晰,准确反映用户的需求 与所有其他系统成分的重要接口是否都已经描述 ## 软件需求分析的方法 SA:面向数据流的结构化分析方法 JSD:面向数据结构的Jackson方法 DSSD;结构化数据系统开发方法 OOA:面向对象的分析方法 ## 软件需求分析的原则 分解、化简和抽象 ### 抽象 在开始建立分析模型前先理解问题 开发模型 记录需求的起源和原因 使用需求视图 给予需求优先级 删除排除性 ### 分解 纵向分解和横向分解 ## 数据流图(DFD) ### 特性 抽象性,概括性,层次性 ### 主要图形元素 ![](https://box.kancloud.cn/2016-04-28_572182a34291a.jpg) ### 数据流与数据加工的关系 ![](https://box.kancloud.cn/2016-04-28_572182a374af9.jpg) ### 检查和修改DFD的原则 只能有四种图形元素 每个加工至少有一个输入数据流和一个输出数据流 数据流图的主图必须包括四种基本元素,缺一不可 需要增加编号 子图要与主图对应 每个元素必须有名字,不允许有控制流 ### 数据流图的作用 系统分析员可以用它自定向下分析系统信息流程 可在图上画出需要计算机处理的部分 根据数据存储,进一步做数据分析,想数据库设计过度 根据数据流方向,定出存取方式 对应一个处理过程,用相应的语言、判定表等工具表达处理方法 ### DFD的优缺点 总体概念强,每一层强调“干什么,需要什么,给出什么” 可以反映数据的流向和处理过程 自定向下分析,容易急躁发现系统各部分的逻辑错误,容易改正 容易与计算机处理相对照 不直观,需要概括、抽象、修正 没有计算机,人工绘制太麻烦,工作量大 ![](https://box.kancloud.cn/2016-04-28_572182a393b1b.jpg)