<< Click to Display Table of Contents >> 软件需求分析 |
3. | 软件开发 |
3.1 | 软件的需求分析 |
3.1.1 | 需求分析 |
首先,开发者和最终客户应共同对最终客户的应用需求作充分的调研,提交完整的需求分析 报告。在需求分析报告中必须描述的基本问题是:功能、性能、强加于实现的设计限制、属 性、外部接口。应当避免把设计或项目需求写入需求分析报告中。它必须说明由软件获得的 结果,而不是获得这些结果的手段。
软件需求可以用若干种方法来表达,如通过输入、输出说明;使用代表性的例子;用规范化的模型。开发者应尽可能地使用模型的方式,因为这是表达复杂需求的精确和有效的方法。比如用统一建模语言(UML)来描述需求。
编写需求分析报告的要求
a.无歧义性
对最终产品的每一个特性用某一术语描述;若某一术语在某一特殊的行文中使用时具有多种含义,那么应对该术语的每种含义做出解释并指出其适用场合。
b.完整性
需求分析报告应该包括全部有意义的需求,无论是关系到功能的、性能的、设计约束的、还是关系到外部接口方面的需求;对所有可能出现的输入数据的响应予以定义,要对合法和非合法的输入值的响应做出规定;填写全部插图、表、图示标记等;定义全部术语和度量单位。
c.可验证性
需求分析报告描述的每一个需求应是可以验证的。可以通过一个有限处理过程来检查软件产品是否满足需求。
d.一致性
在需求分析报告中的各个需求的描述不能互相矛盾。
e.可修改性
需求分析报告应具有一个有条不紊、易于使用的内容组织;没有冗余,即同一需求不能在需求分析报告中出现多次。
f.可追踪性
每一个需求的源流必须清晰,在进一步产生和改变文件编制时,可以方便地引证每一个需求。
g.运行和维护阶段的可使用性
需求分析报告必须满足运行和维护阶段的需要。在需求分析报告要写明功能的来源和目的。
3.1.2 | 需求分析报告的编制者 |
需求分析报告应由最终客户和开发者双方共同完成。其中:最终客户负责根据实际需要提出希望软件实现的功能;软件开发者根据最终客户提出的性能需求,结合软件开发编写需求分析。
3.1.3 | 需求报告评审 |
在软件需求分析工作完成后,软件开发者应向最终客户提交《软件需求分析报告》。最终客户组织有关人员对需求进行评审,以决定软件需求是否完善和恰当。评审完成后,就可以进入软件的设计阶段。
3.1.4 | 需求报告格式 |
《软件需求分析报告》需按一定的格式进行编写,具体的《软件需求分析报告》文档编写模板请见附录A。