项目管理资源网

您的位置:项目管理资源网 >> 研发制造项目管理

原型法破解小型软件项目需求分析之痛

2009/12/16 9:58:04 |  3824次阅读 |  来源:网友转载   【已有0条评论】发表评论

是在开发中不断补充的需求使到项目越变越庞大,以致超过其计划及预算范围。

  正常的需求变更本来也没有什么大事情,但由于我们在开发模式上没有对需求修改有足够的准备,结果是频繁的变更把整体结构变得日渐紊乱,补丁代码使得整个程序难以理解和维护。不但插入的补丁代码使模块违背强内聚、松耦合的设计原则,而且不断的收回变更和删除特性导致了更多的问题,例如出现软件质量明显下降等现象。

  原型法工具使项目浴火重生

  看着日渐走向失败的项目,一筹莫展的我心里是哪个的焦急。这时,一位资深的软件需求分析前辈提示我,为何不尝试一下原型法工具。后来,我在应用原型法进行需求分析后,项目才得以起死回生。真所谓是:山穷水复疑无路 柳暗花明又一村;不经一事,不长一智。

  (1)什么是开发项目的需求分析?

  软件开发中最为困难的是要准确知道应该要开发些什么。因为一旦需求分析做错了,不但会给系统功能带来极大的损害,并且不断的修改也会浪费资源。有资料表明,现在的软件项目中返工开销几乎占了总开发的一半,而导致返工的主要原因就是需求分析不明确。

  软件需求分析(Software Requirement Analysis)是一个项目的开端,也是项目最重要的关键点。它的定义是指研究用户想要得到的东西,完全理解用户对软件需求的完整功能,确认用户软件功能需求,并建立可确认的、可验证的一个基本依据。曾有调查报告显示,软件产品存在不完整性、不正确性等问题,80%以上是由于需求分析错误所导致的,而且由于需求分析错误造成功能性问题尤为突出。所以,一个成功的需求分析是软件项目能否成功的关键一步。因此,在软件开发中产生了一个核心问题:如何在用户需求不明确的情况下进行系统开发?

  (2)什么是原型法?

  软件需求分析方法有很多,如传统方法、原型方法、模型驱动方法、结构化方法等。一般来说,选择那种方法要根据项目的具体情况和资源来选择,不能盲目套用。这里着重阐述原型法。

  原型法(Prototyping)的理念是指在获取一组基本需求之后,快速地构造出一个能够反映用户需求的初始系统原型。让用户看到未来系统的概貌,以便判断哪些功能是符合要求的,哪些方面还需要改进,然后不断地对这些需求进一步补充、细化和修改。依次类推,反复进行,直到用户满意为止并由此开发出完整的系统。简单的说,原型法就是不断地运行系统的"原型"来进行揭示、判断、修改和完善需求的分析方法。

  (3)原型需求分析法的特点

  原型法是一种循环往复、螺旋式上升的工作方法,它更多地遵循了人们认识事物的规律,因而更容易被人们掌握和接受。原型法强调用户的参与,特别是对模型的描述和系统需求的检验。它强调了用户的主导作用,通过开发人员与用户之间的相互作用,使用户的要求得到较好的满足。不但能及时沟通双方的想法,缩短用户和开发人员的距离。而且能更及时、准确的反馈信息,使潜在问题能尽早发现并及时解决,增加了系统的可靠性和适用性。

  简单的说,原型法是将系统调查、系统分析和系统设计合而为一,使用户一开始就能看到系统开发后是一个什么样子。而且用户参与了系统全过程的开发,知道哪些是有问题的,哪些是错误的,哪些需要改进等,就能消除用户的担心,并提高了用户参与开发的积极性。同时,用户由于参与了开发的过程将有利于系统的移交、运行和维护。

  但需要注意的是,原型法的适用范围是比较有限的。它只对于小型、简单、处理过程比较明确、没有大量运算和逻辑处理过程的系统比较合适。它的局限性是对于大型的系统不太适合,因为对于

    项目经理胜任力免费测评PMQ上线啦!快来测测你排多少名吧~

    http://www.leadge.com/pmqhd/index.html

“项目管理生根计划”
企业项目经理能力培养和落地发展方案下载>>

分享道


网站文章版权归原作者所有,如有认为侵权请联系我们,将于1个工作日内作出处理!
网友评论【 发表评论 0条 】
网友评论(共0 条评论)..
验证码: 点击刷新

请您注意护互联网安全的决定》及中华人民共和国其他各项有关法律法规或间接导致的民事或刑事法律责任
·您在项目管理资源网新闻评论发表的作品,项目管理资源网有权在网站内保留、转载、引用或者删除
·参与本评论即表明您已经阅读并接受上述条款