需求管理:软件项目需求管理简述
在软件项目的开发过程中,需求变更贯穿了软件项目的整个生命周期,从软件的项目立项,研发,维护,用户的经验在增加,对使用软件的感受有变化,以及整个行业的新动态,都为软件带来不断完善功能 ,优化性能,提高用户友好性的要求。
在软件项目管理过程中,项目经理经常面对用户的需求变更。如果不能有效处理这些需求变更,项目计划会一再调整,软件交付日期一再拖延,项目研发人员的士气将越来越低落,将直接导致项目成本增加、质量下降及项目交付日期推后。这决定了项目组必须拥有需求管理策略。
二、需求管理复杂性分析
软件需求是整个软件开发项目的最关键的一个输入,和传统的生产企业相比较,软件的需求具有模糊性、不确定性、变化性和主观性的特点,他不像生产汽车、电脑等硬件的需求,是有形的、客观的、可描述的、可检测的,软件需求是软件项目最难把握的问题,他的复杂性体现在以下方面:
1、需求的描述问题。
缺少正式的完整的需求文档浪费了大量的人力物力,但是有了需求文档又出现了新的问题。在用户方进行的需求评审会完全是走形式,因为用户根本不去听他读那上百页的需求文档。不同层次的客户(用户)关心的问题是不一样的,想要每个客户都成为需求专家是不现实的。
2、需求的完备程度问题。
需求如何做到没有遗漏?如何准确划定系统的范围?这确实是一个两难问题,稍微大一点的系统要想穷举需求几乎是不可能的,每次开需求评审会时,总会冒出新的需求,以至于系统没有一个准确的范围界定。即使是这样,系统还是要开发,没办法,系统的范围还要硬性的划定一个,从而建立一个基线。
3、需求开发的工期问题。
在需求上花费了大量的时间,客户、软件公司是否能够忍受?为了确保需求的正确性,完备性,项目经理往往坚持要在需求阶段花费大量的时间,但是客户与公司的高层领导却会为项目迟迟看不到实际可运行的软件担心不已!他们往往会逼迫项目组尽快往前推进,而项目组的成员往往也会为系统复杂的善变的需求折腾的筋疲力尽,他们也希望尽快结束此阶段。
4、需求的细致程度问题。
需求到底描述到多细,才算可以结束了?仁者见仁,智者见智,并没有定论,如果时间允许,要想细总可以细下去的。但是,需求的周期越长,可能的变化越多,对设计的限制越严格,对需求的共性提取要求越高,所以只要大家(客户、用户、需求分析人员、设计人员、测试人员)认为描述清楚了,就可以进入设计阶段了。
5、需求的变化问题。
在软件开发过程中如果只有一条真理的话,那一定是:需求的变化是永恒的,需求不可能是完备的。软件开发的过程实际上是同变化做斗争的过程,需求的变更不一定是坏事,也有可能是好事,是商业机会,对市场敏感的人可以从需求的变化中发现市场机会。
需求变化的原因很多,如:
一开始没有识别全,需要增加需求;
业务发生了变化,需求必须变化;
需求错误;
需求不清楚。
需求的变化问题是每个开发人员、每个项目经理都遇到的问题,也是最头痛的问题,一旦发生了需求变化,你不得不来修改你的设计、重写你的代码、修改你的测试用例、调整你的项目计划等等,需求的变化好比是万恶之源,为项目的正常的进展带来不尽的麻烦,怎么办?管理它!使需求在受控的状态下发生变化,而不是随意变化,需求管理就是要按照标准的流程来控制需求的变化。
难题随之而来,需求中的变化一般不是突发的革命性的变化,最常见的是项目需求的渐变(Project Scope Creep)问题,这种渐变很可能是客户与开发方都没有意识到的,当达到一定层度时,双方才蓦然回首,发现已经物是人非,换了一番天地。
三、需求管理策略
需求管理需要遵守以下策略:
1、需求一定要与投入有必然的联系。
需求一定要与投入有必然的联系,否则如果需求变更的成本由开发方来承担,则项目需求的变更就成为必然了。人们常说世上没有免费的午餐,同样也不应该有免费的需求变更。但是,接受需求变更目前却是软件开发商不得不咽下的苦果。所以,在项目的开始无论是开发方还是出资方都要明确这一条:需求变,软件开发的投入也要变。
2、需求的变更要经过出资者的认可。
需求的变更引起投入的变化,所以要通过出资者的认可,这样才会对需求的变更有成本的概念,能够慎重地对待需求的变更。
笔者曾经经历过一个项目,为了避免项目的风险,我们请了用户代表全程参与了开发过程,结果此用户代表在开发过程提出了大量“小的需求变更,当开发人员按此需求变更修改了软件时,在项目进入现场实施阶段时,却有大量的这些变更需要改回去,问题就是出在我们的项目组成员视该用户代表的需求为圣旨,却忽略了需求是否经过了客户方真正有决策权的人员的认可。
3、小的需求变更也要经过正规的需求管理流程。
小的需求变更也要经过正规的需求管理流程,否则会积少成多。在实践中,人们往往不愿意为小的需求变更去执行正规的需求管理过程,认为降低了开发效率,浪费了时间。正式由于这种观念才使需求的渐变不可控,最终导致项目的失败。
4、精确的需求与范围定义并不会阻止需求的变更。
并非对需求定义的越细,越能避免需求的渐变,这是2个层面的问题。太细的需求定义对需求渐变没有任何效果。因为需求的变化是永恒的,并非由于需求写细了,它就不会变化了。注意沟通的技巧。考试大收集
实际情况是用户、开发者都认识了到了上面的几点问题,但是由于需求的变更可能来自客户方、也可能来自开发方,作为客户他们可能不愿意为需求的变更付出更多的投资,开发方有可能是主动的变更了需求,他们的目的可能是使软件做的更精致,于是作为需求管理者、项目经理需要采用各种沟通技巧来使项目的各方各得其所。
基于上述的问题,必须对需求进行管理,使需求能够真正成为软件工程和管理的基线,使软件计划、活动和工作产品同软件需求保持一致,使需求可以复用。
- 1建筑工程项目管理软件
- 2软件项目管理工具
- 3项目管理系统
- 4工程行业科研项目管理系统
- 5工程项目管理软件下载
- 6开源项目管理系统下载
- 7工程项目管理
- 8多项目管理
- 9项目管理
- 10哪家项目管理好
- 11企业项目管理排名
- 12项目管理系统有哪些
- 1咨询工程师考试《项目决策分析与评价》模拟题
- 2含 PVA 综合废水处理方案 17p
- 3小型混凝土泵车的设计和使用
- 4怀柔"千里眼"监控施工安全
- 5人行道铺装施工
- 6建筑业企业资质管理将用新规定
- 72015咨询工程师考试《项目组织与管理》模拟练习(5)
- 8项目材料、机械设备、工程技术人员的管理责任内容
- 9西藏:建议偏远县实行差异性工程造价
- 10现场预应力混凝土试验的内容有哪些
- 112015年监理工程师《基本理论和相关法规》练习题(11)
- 12二级建造师法规知识点:建设工程专业人员执业资格的准入管理
- 132015年造价工程师考试《计价控制》第四章讲义(17)
- 14合福客专古溪特大桥道岔连续梁首跨灌注成功
- 15市政排水施工组织设计47P
- 16[广西]地下室外墙、顶板防水施工方案(SBS改性沥青防水卷材)
- 172015年注册安全工程师《相关法律知识》模拟试题(34)
- 182015年咨询工程师每日一练免费在线测试(2015.11.21)
- 192012一级建造师《公路工程》:钻孔桩施工方法
- 202015年咨询工程师《组织与管理》每日一练(3.23)
- 212015年安全工程师《生产技术》模拟题(4)
- 22宏观经济政策与发展规划考点:规范政府核准制
- 232015年招标师:货物招标内容、范围与标包范围
- 242015年安全工程师《安全生产法》:生产安全事故分级
- 25安全工程师《管理知识》复习资料:事故调查组成员的行为规范
- 262015年监理工程师《工程质量、投资、进度控制》模拟题(3)
- 27MAG焊脉冲电流控制旋转喷射过渡
- 28某27层高层住宅消防安装工程施工组织设计
- 29湖南机械解析混凝土泵泵送管道的敷设要求
- 302008年监理工程师《建设工程监理案例分析》习题9
成都公司:成都市成华区建设南路160号1层9号
重庆公司:重庆市江北区红旗河沟华创商务大厦18楼