测试管理方法之需求管理
沉沙 2019-01-03 来源 : 阅读 2273 评论 0

摘要:本篇教程探讨了测试管理方法之需求管理,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。

本篇教程探讨了测试管理方法之需求管理,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。

测试管理方法之需求管理

<

 曾经在面试项目经理和需求人员的时候,我一般会问几个问题,请问如何做一个好需求?好需求的标准是什么?如何判断别人做需求的水平是好还是坏?有很多回答,但是最常见的是,需求做完后,通过客户的满意度来判断。我说如果是客户满意度来回答,岂非非得等到需求过程结束后,才能获悉?都需求结束了,判断出来了又有什么用?换句话来说,是否项目经理需要跟着需求人员做需求,才能知道需求做的好还是不好?那既然项目经理都跟着做了,那还要需求人员干什么?是否只要一个会帮着打打字的小姑娘就可以了?
  很有意思的逻辑,貌似从这个逻辑中,我们可以推出目前项目经理做需求更好。貌似市场上也有很多公司招聘项目经理要求会做需求。但是真是这样的吗?如果项目经理做需求,那需求人员做什么!这是糟糕的角色定位,具体分析可以参考我写的“漫谈中国软件” 。那反过来推理,项目经理不做需求,项目经理就不应该陪着需求人员去做需求,那么项目经理如何才能判断出需求人员做的需求到底是一个好的需求还是坏的需求?这就是我开篇提的面试问题了。这些问题不是说需求具体应该怎么做,分几步,每步怎么弄?而是在讨论做好需求的标准是什么?或者说怎么判断出需求的质量。这其实属于软件工程范畴,因为它本身没有具体细化到需求细节,更多是以面来看整个需求过程的工艺如何。
  参考CMMI中需求过程的说法,一个优秀的需求标准如下:
  此处较为学术化,我用另一个通俗维度结合我的经验来重点分享叙述。判断一个好的需求,可以从几方面入手。
  一,关注需求的规划
  每一个系统都是要去解决相应某领域的问题。曾见过一个MIS管理系统A,里面把所有杂七杂八的功能都做 在一个系统里,这些功能都很简单。但是当某个系统B专业解决了一块问题的时候,就把A系统的某些功能覆盖掉了。这个时候A系统很尴尬,因为他不仅存在推广 浪费,功能白做的问题,还存在后续定位发展问题,系统的未来可能被替换掉。
  还见过一个系统,项目一期和二期在规划上没有很好的衔接,出现二期做需求的时候,对一期项目的设计产生较大冲击,甚至严重到将一期大部分功能推到重来。这些也是没有规划的原因。
  所以好的需求,一定有一条主线去贯穿整个系统,一定是在某个领域无可替代,有发展动力和生命力的。这也是CMMI中提到的完整性体现。
  二,关注需求用户场景和需求变更列表分析
  在CMMI中有用户需求和系统需求,用户需求表述的用户用自己的语言来描述当前对系统的一些期望。其实通俗点说用户需求最重要表达的是系统解决的用户场景问题。用例的表述需求方式的兴起也是基于场景来设计的。
  曾讨论需求变更的源头分析,大多数需求变更基本是当时场景描述缺失。
  比如:用户订餐,从功能上来说只是需要提交一个订单而已。但是从场景分析来看,用户订餐,会先去找餐厅,会先找常吃的菜,会分请情侣,商务宴请,请家人,请朋友各种场景,最后才是提交一个订单而已。我们会发现可能做一个订单提交功能,不一定是最重要的,可能客户重点是想解决一个请人吃饭的问题。如果这个时候把提交订单功能做的出神入化岂非本末倒置?
  所以判断一个需求做的好不好,其实很简单,就是抽其中一段需求内容分析其所适用的场景和目标。如果能表述很清晰,就说明需求质量很高。这也是CMMI中正确性,可行性的的体现。
  三,关注需求产出物齐全
  所谓“燕过留痕,人过留迹”,优秀需求人员才能做出好的需求,而做事的方式一定会有个完整的套路,就象武功高手练的“降龙十八掌”,“六脉神剑”一样也是有套路的。所以判断需求做的好不好,在一些方面也能体现出来。结合经验,总结如下:
  关注目标和进度:
  需求范围SOW敲定 --- 判断与客户的沟通和需求范围的控制力
  需求计划 --- 判断需求过程推进顺利的标准
  需求工作量投入量估算 --- 判断需求过程的控制力
  关注深度:
  需求会议纪要 --- 判断需求过程交流达成共识产物
  需求问题列表 --- 判断需求过程中双方交流的深度和水平
  功能性和非功能性的需求覆盖 --- 判断需求过程中需求完整性
  关注外部关联:
  需求评审(关联设计,测试,UI)问题列表 --- 判断需求复杂度和知识传递的效果(可选)
  需求跟踪矩阵--- 需求知识传递的保障(可选)
  关注结果:
  需求文档确认和高仿真原型的确认结果 --- 最终判断需求过程的结果
  基本在需求产出物齐全这块包括了CMMI中优秀的需求剩下的其它特性体现。
  所以一个好的需求工艺,也是靠“听”和“看”就可以了,不需要直接参与。而项目经理需要的是在这个过程中练习“听”和“看”的本领。需要关注当需求工艺某方面出现问题的时候,知道怎么解决它。例如:我们发现SOW范围没敲定下来,就开始推进需求讨论了,那么项目经理要能判断出什么问题,以及怎么解决它。或者需求知识传递效果不太好,怎么解决,等等之类。
  总之,对于需求过程的把控是项目经理的职责,而对于需求的实施不需要项目经理。项目经理需要花更多时间在软件工程的整体把控和客户关系的梳理上。只有这样,才能发挥团队最大作用,做出一个好需求,做出一个好软件。    

本文由职坐标整理发布,学习更多的相关知识,请关注职坐标IT知识库!

本文由 @沉沙 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 0
看完这篇文章有何感觉?已经有1人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程