下载后可任意编辑 软件工程-软件目的需求开发与管理 需求开发与管理是软件项目中一项十分重要的工作,据调查显示在众多失败的软件项目中,由于需求原因导致的约占到 45%,因此,需求工作将对软件项目能否最终实现产生至关重要的影响。虽然如此,在项目开发工作中,很多人对需求的认识还远远不够,从本人参加或接触到的一些项目来看,小到几十万元,大到上亿元的软件项目的需求都或多多少的存在问题。 有的是开发者本身不重视原因、有的是技术原因、有的是人员组织原因、有的是沟通原因、有的是机制原因,以上种种原因都表明做好软件需求开发是一项系统工作,而不是简单的技术工作,只有系统的了解和掌握需求的基本概念、方法、手段、评估标准、风险等相关知识,并在实践中加以应用,才能真正做好需求的开发和管理工作。 本文将通过介绍关于软件需求的基本知识和个人在实际工作中总结的一些经验,帮助读者了解软件需求,学习需求开发的一些基本方法,避开因需求原因而导致的项目失败。 1 什么是软件需求和需求工程 1.1 软件需求的定义 在 IEEE 软件工程标准词汇表(1997 年)中定义软件需求为: 1)用户解决问题或达到目标所需的条件或能力。 2)系统或系统部件要满足合同、标准、法律规范或其它正式规定文档所需具有的条件或能力。 3)一种反映上面(1)或(2)所描述的条件或权能的文档说明。 实通俗的讲,“需求”就是用户的需要,它包括用户要解决的问题、达到的目标、以及实现这些目标所需要的条件,它是一个程序或系统开发工作的说明,表现形式一般为文档形式。 1.2 需求工程的定义 需求分析的过程,也叫做需求工程和需求阶段,它包括了需求开发和需求管理两个部分。需求开发是指从情况收集、分析和评价到编写文档、评审等一系列产生需求的活动,分为四个阶段:情况猎取、分析、制订规格说明和评审。这四个阶段不一定是遵循线性顺序的,他们的活动是相互独立和反复的。需求管理是软件项目开发过程中控制和维持需求约定的活动,它包括:变更控制、版本控制、需求跟踪、需求状态跟踪等工作。 2 需求分析的风险 由于需求分析的参加人员、业务模式、投资、时间等客观因素的影响和需求本身具有主观性和可描述性下载后可任意编辑差的特点,因此,需求分析工作往往面临着一些潜在的风险。这些风险主要表现在: 1)用户不能正确表达自身的需求。在实际开发过程中,常常碰到用户对自己真正的需求并不是十分明确的情况,他们认为计算...