第三章 软件需求分析 软件需求分析是软件定义阶段的最后一个步骤,它的基本任务是要准确地回答“系统必须做什么
”这个问题,即对目标系统提出完整、准确、清晰、具体的要求
需求分析的结果是系统开发的基础,直接影响软件产品及工程的质量
软件需求分析是一个不断进行揭示和判断的过程
在此过程中我们将对在软件可行性研究阶段确定的软件范围加以提炼使之具体化,并分析各软件部件可能采用的解决办法
在软件需求分析阶段,软件的开发者和软件需求者起着同样的重要作用
软件需求者设法把有关软件功能和性能的一些模糊的概念加以重述,使之成为具体的细节,而软件开发者则起着询问、顾问和问题解决者的作用
在需求分析中需要大量地交换意见,这其间充满着传错信息和发生误解的可能性,而我们的任务就是面对各种矛盾,协调各种人与人、人与物,物与物之间的关系
1 需求分析的任务 1
确定系统的综合要求 系统的综合要求包括下面几个方面
(1) 确定系统的功能要求
提出系统必须完成的全部所有功能
(2) 确定系统的性能要求
包括系统的响应时间、系统需要的存储容量、后援存储器容量、系统重新启动、系统的安全性和可靠性等方面的性能要求
(3) 确定系统的运行要求
主要是指系统运行时所处的环境要求,包括支持系统运行的软件环境,工具软件和系统软件;支持系统运行的硬件环境,外存储器、通信接口、输入和输出等外部设备
(4) 系统的扩充要求
不属于当前系统的开发范围,是将来有可能提出的要求,目的是使在 现有的设计中为将来的扩充做准备
分析系统的数据要求 任何一个软件系统其本质上都是一个信息处理系统,系统必须处理的信息和系统应该产生的信息在很大程度上决定了系统的概貌,同时也对软件设计有着深远的影响
因此,分析系统的数据要求,是软件需求分析的任务之一
系统的数据来源和去处一般含如下几个方面