教学辅导—-需求分析一、需求分析的任务 需求分析是软件定义时期的最后一个阶段,它的基本任务是准确地回答“系统必须做什么
需求分析所要做的工作是深化描述软件的功能和性能,确定软件设计的限制和软件同其它系统元素的接口细节,定义软件的其它有效性需求
通常软件开发项目是要实现目标系统的物理模型,即确定待开发软件系统的系统元素,并将功能和数据结构分配到这些系统元素中
它是软件实现的基础
需求分析的任务不是确定系统如何完成它的工作,而是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清楚、具体的要求
在这个阶段结束时交出的文档中应该包括详细的数据流图(DFD),数据字典(DD)和一组简明的算法描述
需求分析阶段的任务包括下述几方面
1.确定对系统的综合需求 2.分析系统的数据需求 分析系统的数据需求是由系统的信息流归纳抽象出数据元素组成、数据的逻辑关系、数据字典格式和数据模型
并以输入/处理/输出(IPO)的结构方式表示
因此,必须分析系统的数据需求,这是软件需求分析的一个重要任务
3.导出系统的逻辑模型 就是在理解当前系统“怎样做"的基础上,抽取其“做什么”的本质
4.修正系统开发计划 5.开发原型系统二、需求分析的步骤 结构化分析方法(简称 SA 方法)就是面对数据流自顶向下逐步求精进行需求分析的方法
需求分析的步骤如下
1. 调查讨论 2.分析与综合 应注意下述两条原则:第一,在分层细化时必须保持信息连续性,也就是说细化前后对应功能的输入/输出数据必须相同;第二,当进一步细化将涉及如何具体地实现一个功能时,也就是当把一个功能进一步分解成子功能后,并将考虑为了完成这些子功能而写出其程序代码时,就不应该再分解了
3.书写文档 在这个阶段应该完成下述四种文档资料: (1)系统规格说明
(2)数据要求
(3)用户系统描述
(4)修正的开发计划