版本管理
版本是产品开发过程中的步调、节奏,是迭代开发的重要标志。版本库是产品的成长日记,记录产品从诞生之日开始的点点滴滴,是一个产品美好或残酷的回忆。
一、一切从软件时代说起
作为一个老产品经理,我从2004年大学毕业后进入第一家企业。这家企业是一个老牌的软件公司,从98年就有了自己的产品。第一个版本是拷到软盘里面卖的(现在应该有好多人都没见过软盘了)。04年的时候,这家公司已经发展到小有规模,大约一两千人的样子,产品开发的管控也是非常正规的。我就拿这家公司的实践来给大家简单讲一下软件版本管理怎么做。互联网的产品版本管理其实也是类似的。
1. 每日构造
软件产品(包括APP)都有一个编译的过程,编译就是把程序员写的代码用编译工具生成操作系统可以识别的运行文件,具体怎么做的大家不用知道。一般来说软件产品编译还要打包成安装包,安装包可以让用户在自己的电脑上安装软件然后使用。
也就是说产品会经历:写代码 -> 编译 -> 打包 -> 发布 -> 测试(使用),这几个环节。以前我们会每天发布一个版本,build号会每天递增(关于版本号的管理说明大家可以看我的《十年老产品经理教你管理需求池》这篇文章)。像这种机械的工作有很多自动化的工具完成,比如说final builder。
于是每天的工作按照下面的步骤进行:
程序员:领取任务 -> 获得全部最新代码 -> 编写代码 -> 把代码上传到服务器。
服务器:每天凌晨自动获取全部最新代码 -> 编译 -> 版本号+1 -> 打包 -> 发布。
测试员:获取新版本 -> 安装 -> 验证这个版本修复的bug -> 提交新bug。
需求分析师(以前的产品经理):和开发撕逼 -> 和测试撕逼 -> 和开发+测试撕逼 -> 和客户市场撕逼。
有点像《西部世界》里面的情节,每天都是新的、重复的一天。
2. 产品开发的杀青——发版
拍戏有结束的一天,完成了前期拍摄进入后期制作的日子叫“杀青”。产品开发也是一样,之前的产品比较大,二十个人做半年到一年左右。一般到了计划上线的日期再往后延期一两个月的时间点,产品开发正式杀青。不过和一般人想的不一样,因为我们是每天都会有一个版本,半年的时间就会有一百多个版本,最后实际给市场人员销售的都不是最后一天出来的版本。正式销售的经常是从最后一周中挑出来的比较稳定的版本(没有重大bug,bug数量相对较少)。
写到这里,大家可能会发现,所有的正式版都是有bug的,并且这些bug都是被开发团队发现的。所以产品经理们也不要纠结自己的产品有bug该不该发布的问题了。
产品上线后,我们会针对bug不断发出新的补丁,或者新的版本。
这是软件产品的版本管理方式。互联网项目如果有条件也可以借鉴,如果你的团队有测试人员的话。很多流程在创业团队能减就减,这也无可厚非。但基本的版本管理意识和版本记录是必须要有的。
二、版本是产品开发的“号子”
从软件公司出来后,我经历过很多靠谱的、不靠谱的,软件的、互联网的,别人的、自己的公司。然后我惊讶地发现一个问题:大部分公司没有版本的概念 ╮( ̄▽ ̄””)╭。
1. 为什么你的公司没有版本
中国互联网和美国互联网有着显著的区别。中国互联网创业更多的是从商业模式创新开始,而不是技术创新。加上大众创业、万众创新的口号,导致各行各业、各种工作背景的人纷纷涌入互联网创业大潮,这里面不乏成功的佼佼者。
在这种创业氛围和社会环境下,“单点突破、野蛮生长”成为了创业公司的首要准则,拼命做大规模、融资、死亡,导致了大部分创业公司缺少匠人精神。产品是一个需要静下心来仔细雕琢的东西,运气好的产品经理在公司大boss往前冲时能留给你时间、资源来慢工出细活,运气一般的产品经理变成了老板管理技术团队的监工。很多产品和技术的沟通障碍也来源于此。没有匠心的团队是不会重视产品版本库的。
2. 从0开始建立版本库
不管公司氛围怎么样,产品经理总要在力所能及的范围内做到最好。不管怎么样,首先走出第一步:建立版本库、记录第一个版本。
[截图1:新建第一个版本]
有了第一个版本后,所有的开发、运营都围绕着版本的概念来协调:XX需求会在XX版本上线,用户在XX版本中反馈了一个问题,活动会在XX版本XX时间上线等等。
3. 产品经理的规划能力
版本号类似于:3.2.0.1325 这种格式。四个版本依次为:主版本、次版本、修订版本、日期版本。第四个日期版本一般用于产品和技术、测试部门的沟通。
前三个版本的功能和时钟的时针、分针、秒针有点像。
老板、产品总监会重点关注主版本,会涉及到重要功能上线、产品的重大改版,这个版本号会和公司战略发展结合进行更新;
产品经理、运营人员会重点关注次版本,会涉及到新模块、新功能的上线,运营;
产品专员、测试人员、服务人员也会关注到修订版本,会涉及到bug修复、小功能上线。
当然这些不是绝对的,只是告诉大家需要有版本层次的意识。作为一个合格的产品经理,需要对自己产品方方面面都了如指掌。
三、版本文档里面包括什么
版本是协调各部门工作步调的一个机制。版本文档是可实际操作的基础。
1. 版本简介
版本简介用简单的几句话描述本次版本更新的目的、范围,预计上线的时间。
[截图2:版本简介]
2. 需求列表
版本准备上线那些需求,需求的优先级。
[截图3:需求列表]
3. 需求文档|原型
每个需求的详细说明,需求文档、原型图、流程图。
[截图4:需求文档、原型]
4. UI设计图|其他附件
界面的UI设计图。由UI设计成员完成。
[截图5:UI设计图、其他附件]
万事开头难,第一个版本建好后,一个完整的版本库就能逐步搭建起来了。版本库是摆脱产品开发流程混乱的必做工作。
相关阅读
Photoshop所有版本中,最经典的版本就是CS6了,本教程着重讲解Photoshop CS6版本安装及破解详细步骤,并给出Photoshop CS6,如需要可在下
刚入行的产品经理,往往一提到任何功能,任何需求,立马啪啪的打开电脑,看我给你把原型画出来了,牛逼吧?做了一阵子产品经理之后,一提到任何
文章为作者经历一个项目后对配置文件的思考总结,希望能够给你一些启发。一、为什么要了解配置文件?配置文件是技术童鞋在开发过程中
在当今的移动互联网时代,直播类产品我们再熟悉不过了,比如看游戏直播、给美女主播打赏、听直播课程等。此外,伴随着抖音、快手等短视
作为一个新职位概念,“AI产品经理”的定义和分类,是互联网产品经理以及AI从业者都非常关心的。本文,作者将尝试提出自己的观察和总结