五、PO的能力
敏捷开发中对PO(Product Owner)的要求是很高的,对产品的business value,Roadmap,产品功能,沟通能力等各方面都要可以独当一面。但现实中某些PO对business value没有自己的判断,只是从销售或者市场部门获得需求,同时在产品功能的细节上也没有深入的考量。我们公司现有的PO大多数是在30岁以上,在电信行业都有7年以上的产品经验,合作很好。但也有一位新的产品经理,最初只是做产品经理的助理,后来不知如何也可以设计产品,根本没有business value的概念,只是老板说什么就做什么,还经常自己造一些需求,功能的细节自己也想不清楚,很难沟通。直接的影响就是开发人员需要花费大量的时间帮助PO分析需求,真正开发的时间就很少了,每次都很被动。为此,我们是这么做的:
在团队中增加了“RA”(Requirement Analyst)的角色,每次由RA、PO、开发人员共同讨论。
对RA的要求是既要有技术背景,同时也要可以站在用户角度去根据用户使用场景分析功能需求。其实RA和QA有工作重叠的情况,但为了提高开发效率,增加RA的角色是值得的。
六、主动性
敏捷开发要求PO(product owner)和Team要充分沟通,但在实践中往往会出现以下情况:
1. PO在sprint planning会议中讲了Feature后,Team成员没有主动和PO进行细节的沟通,很多时候有不明确的地方,会按照自己的理解进行设计、编码
2. 每日构建后,PO不会去review今天完成了哪些feature,是否有不符合需求的,而是要等到在testing server上之后再去验收
原则上讲,双方的不主动是“习惯”使然,大家习惯于“各扫门前雪”,同时也会和东方人内敛的性格有关。我们在实践中是这样做的:
1. 在制定sprint plan时,不会在sprint的末端再做Demo,而是将sprint分为更小的阶段,每一个阶段做一个正式的Demo,这样从制度上保证PO对产品的关注,更早的发现风险。
2. 在绩效考核上,项目奖金的发放对象是PO和开发团队,即PO和开发团队作为一个整体对项目的成败负责,在我们公司PO的项目奖金比例是25%,开发团队是75%。项目是否成功由公司的管理层(其实就是PO的manager)决定。