(1)什么是开发项目的需求分析?安全
软件开发中最为困难的是要准确知道应该要开发些什么。由于一旦需求分析作错了,不但会给系统功能带来极大的损害,而且不断的修改也会浪费资源。有资料代表,如今的软件项目中返工开销几乎占了总开发的一半,而致使返工的主要缘由就是需求分析不明确。training.mypm.net性能
软件需求分析(Software Requirement Analysis)是一个项目的开端,也是项目最重要的关键点。它的定义是指研究用户想要获得的东西,彻底理解用户对软件需求的完整功能,确认用户软件功能需求,并创建可确认的、可验证的一个基本依据。曾有调查报告显示,软件产品存在不完整性、不正确性等问题,80%以上是因为需求分析错误所致使的,并且因为需求分析错误形成功能性问题尤其突出。因此,一个成功的需求分析是软件项目可否成功的关键一步。所以,在软件开发中产生了一个核心问题:如何在用户需求不明确的状况下进行系统开发?项目管理者联盟ui
(2)什么是原型法?spa
软件需求分析方法有不少,如传统方法、原型方法、模型驱动方法、结构化方法等。通常来讲,选择那种方法要根据项目的具体状况和资源来选择,不能盲目套用。这里着重阐述原型法。training.mypm.net.net
原型法(Prototyping)的理念是指在获取一组基本需求以后,快速地构造出一个可以反映用户需求的初始系统原型。让用户看到将来系统的概貌,以便判断哪些功能是符合要求的,哪些方面还须要改进,而后不断地对这些需求进一步补充、细化和修改。依次类推,反复进行,直到用户满意为止并由此开发出完整的系统。简单的说,原型法就是不断地运行系统的"原型"来进行揭示、判断、修改和完善需求的分析方法。www.mypm.net设计
(3)原型需求分析法的特色项目管理
原型法是一种循环往复、螺旋式上升的工做方法,它更多地遵循了人们认识事物的规律,于是更容易被人们掌握和接受。原型法强调用户的参与,特别是对模型的描述和系统需求的检验。它强调了用户的主导做用,经过开发人员与用户之间的相互做用,使用户的要求获得较好的知足。不但能及时沟通双方的想法,缩短用户和开发人员的距离。并且能更及时、准确的反馈信息,使潜在问题能尽早发现并及时解决,增长了系统的可靠性和适用性。资源
简单的说,原型法是将系统调查、系统分析和系统设计合而为一,使用户一开始就能看到系统开发后是一个什么样子。并且用户参与了系统全过程的开发,知道哪些是有问题的,哪些是错误的,哪些须要改进等,就能消除用户的担忧,并提升了用户参与开发的积极性。同时,用户因为参与了开发的过程将有利于系统的移交、运行和维护。项目经理圈子开发
但须要注意的是,原型法的适用范围是比较有限的。它只对于小型、简单、处理过程比较明确、没有大量运算和逻辑处理过程的系统比较合适。它的局限性是对于大型的系统不太适合,由于对于须要大量的运算、逻辑性较强的程序模块,原型法是很难经过简单的了解就构造出一个合适的模型,供用户评价和提出修改建议。项目经理圈子rem
使用原型法进行需求分析的流程
(1)快速分析,弄清用户的基本信息需求
需求分析原型法的第一步是在需求分析人员和用户的紧密配合下,快速肯定软件系统的基本要求。也就是把原型所要体现的特性(界面形式、处理功能、整体结构、模拟性能等)描述出一个基本的规格说明。快速分析的关键是要选取核心需求来描述,先放弃一些次要的功能和性能。尽可能围绕原型目标,集中力量肯定核心需求说明,从而能尽快开始构造原型。项目管理培训
这个步骤的目标是要写出一份简明的骨架式说明性报告,能反映出用户需求的基本见解和要求。这个时候,用户的责任是先根据系统的输出来清晰地描述本身的基本须要,而后分析人员和用户共同定义基本的需求信息,讨论和肯定初始需求的可用性。
(2)构造原型,开发初始原型系统
在快速分析的基础上,根据基本规格说明应要尽快实现一个可运行的系统。我在这个项目获得的经验是原型系统可先考虑原型系统应必备的待评价特性,暂时忽略一切次要的内容。例如安全性、健壮性、异常处理等。若是这时为了追求完整而把原型作得太大的话,一是须要的时间太多,二是会增长后期的修改工做量。所以,提交一个好的初始原型须要根据系统的规模、复杂性和完整程度的不一样而不一样。本步骤的目标是:创建一个知足用户的基本需求并能运行的交互式应用系统。在这一步骤中用户没有责任,主要由开发人员去负责创建一个初始原型。
(3)用户和开发人员共同评价原型
这个阶段是双方沟通最为频繁的阶段,是发现问题和消除误解的重要阶段。其目的是验证原型的正确程度,进而开发新的原型并修改原有的需求。因为原型忽略了许多内容和细节,虽然它集中反映了许多必备的特性,但外观看起来仍是可能会有些残缺不全。所以,用户可在开发人员的指导下试用原型,在试用的过程当中考核和评价原型的特性,也可分析其运行结果是否知足规格说明的要求,和是否知足用户的愿望。并可纠正过去沟通交流时的误解和需求分析中的错误,增补新的要求,或提出全面的修改意见。转自项目管理者联盟
总的来讲,原型法是经过强化用户参与系统开发的过程,让用户得到系统的亲身体验,找出隐含的需求分析错误。原型需求分析法是鼓励改进和创造,经过不断交流来提升需求实现的质量和软件产品的质量,目的是为了更好的提升客户满意度。