△ 迭代开发
△ 增量开发
迭代开发中,每一次的交付物都是完整、用户可用的。如同上图的蒙娜丽莎像,虽然第一幅图比较粗糙,但是用户可以看到完整的轮廓,不影响对整体的理解,而且过程比较可控,可以随时修改;而增量开发中,每一次的交付物虽然精细,但对用户来说不可用,必须全部完成才能拼成一个完整的、用户可用的产品,且风险不可控,一旦发现之前的存在问题,也很难回头了。
而学过绘画的人也都知道,画画是先从轮廓开始、逐步迭代、精细化的过程,而不是增量的过程,除非是画过千百次这样的画,已经完全胸有成竹。但显然这对我们这样一个创新型、充满各种不确定的产品来说不太合适。
三、MVP原则拆分需求
现在我们已经确定要以迭代开发而非增量开发的形式来拆分需求了,那么具体该怎样分解呢?
在培训课堂上我们做了这样一个练习:听课人员分成两个小组,每个小组的成员分别在贴纸上写出自己每天早上从起床到出门需要做的所有事情,组长把所有的内容汇总,再分类展示,得到用户故事地图:
老师问大家,整个过程大概要多久?大家回答:一个小时左右。老师说:假设有一天你起晚了,并且这一天你要参加一个非常重要的会议,不能迟到。现在你只有五分钟的时间出门,你会从其中选择哪些?
大家一致选择了上厕所、刷牙、洗脸、换衣服、关门、锁门这几项。虽然大部分事项被省略掉了,但其实并不影响大家出门。这也就是MVP的理念,即最小化可行产品,它无疑是简陋的、粗糙的,但是它是完整的、基本流畅的、用户可使用的产品。这样,既可以在最短时间内有所产出,又保证了用户体验的连续性(不至于因为砍掉太多功能而根本无法使用);同时使用这种方法,可以让项目所有成员都看到一个完整的用户场景,可据此快速讨论出优先级,避免只见树木、不见森林的情况,节省了大量的时间。
对于一个老产品的快速迭代,通过这种方法也可以快速判断出功能的优先级。然后我们可以重点看该功能对应的用户反馈,归纳出问题的核心原因,得出解决方案,再通过业务价值、问题程度、预计效果、开发成本等因素综合判断具体的优先级。
最后总结一下心得:以前我会认为排优先级是产品经理考虑的事情,设计高质量的方案才是设计师的事情。就好比我用专业技能打造一个完美的工艺品,我不应该因为对方买不起就自降身价,偷工减料。而现在我会认为根据市场需要判断该产出什么样的工艺品,如何把握制作节奏,如何更快市场化才是最考验能力的事情。与所有设计师共勉。