本文想跟大家分享下创业公司的项目管理经历,希望在创业道路上的小伙伴也能有所收获。创业公司的项目特点和难题说起创业公司,在创业初期面临的一个比较大的痛点,莫过于如何实现高效低成本的项目管理模式 – 小步快跑、快速迭代?如何将研发团队有效组织起来,在可控、可视化的范围类进行产品版本迭代更新?现如今,大多数互联网创业公司都追崇者敏捷开发的思路,甚至很多成熟型大公司都沿用这种开发管理模式。
敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。
“ Fix time, Flex Scope”是敏捷迭代的核心理念。在创业公司,很多创业者初期在项目管理上都使用任务看板、每日站会、计划纸牌等手段进行项目管理,这也是比较常见的项目管理手段。因为这种方式会更加便捷,没有“套路”,能让人一目了然、快速看到现在在发生什么,未来将要发生什么。
但是这里会存在以下几个难题: 人工线下操作、记录粘贴耗费时间和精力;修改删除麻烦,不方便随时更新;历史记录看不到,无法回顾历史数据;子任务拆分不方便,拆分后无法修改;对人员管理不便,随着团队扩张,操作越来越困难。
我们在创业道路上是如何做的呢?最近两年在创业的道路上,经历了从0到1的团队搭建,直到研发团队超过40人,包括产品、设计、研发、测试。整个研发团队按照一个项目的节奏跑自己的产品,曾经也拆分过小项目组跑其他项目。不论是大项目组跑也好,小项目组跑也好,都是以产品为核心导向进行功能迭代开发。
40多人都在一个办公区域(基本不存在异地沟通问题),整个项目采用敏捷开发、版本迭代的过程在跑,产品版本迭代将近30次,基本保持每1-2周一次迭代的过程。虽然跑的很快,但开始我们也存在一些问题创业公司共同的项目管理问题。
整个够格产品分为android/ios/网页端/PC端等 多系统多平台。
但后台人员是公用的,基本是1对多的关系。这种多终端协作开发的方式需要一套成熟的项目流程进行管理,整个团队也尝试过用任务看板等线下的方式进行项目研发管理。然而依然会碰到下面几个问题 耗费时间和精力:最初大家还是愿意接受线下手工的方式写字操作各自任务记录,后面每人每日都要花费大量时间手写任务列表,进行卡片粘贴。
到最后整个团队都觉得这样写起来很麻烦,逐渐放弃了手动写的过程,转而进入线上工具的管理。更新删除麻烦:团队每个人每天都需要对今天完成的任务进行更新,多数时候当大家拿起笔去更新时重写内容时就开始愁苦。写了一天代码要下班了还得重新写字更新今日任务,尤其碰到需要删除重新的需求任务更是崩溃。历史记录找不到:每天只能看到当天完成了什么,昨天完成了什么。
当整张墙贴的密密麻麻时,想找一个人任务时,眼睛都要瞅半天。此时大家真想有个“搜索”功能。尤其在每期迭代结束后,统计每个人任务进度时,简直要崩溃。此时多希望有个工具能帮我做这件事。
子任务拆分不方便:产品需求永远都会拆分子任务,研发在开发时也需要拆分更细的子任务。此时自己用人工的方法来做就显得特别麻烦,尤其拆好的子任务要做拆分修改时,更是麻烦。人员管理麻烦:我们当初整个看板名字是固定的,随着后续有新同事进来,旧同事离开,整个看板都需要更新。这时就需要把看板上的所有任务全部清除后再重新布局。
后面尝试转移到线上工具管理后,整个研发团队的迭代节奏明显加快许多,原先将近两周才完成的迭代、现在相同任务量缩短到一周。每日晨会、站会时间也由半小时缩短到15分钟。研发团队每日下班的时由原先花费将近10分钟更新今日任务的时间,缩短至1-2分钟搞定下班回家。
从这个现象可以看出一个有效的工具能帮助研发团队提高效率。在产品迭代流程方面,我们采用周期的研发节奏,整个产品研发的迭代顺序大致是 需求收集 – 需求分析 – 功能策划 – 原型设计 – 需求评审排期 – 开发阶段 – 测试阶段 – 上线阶段,这里实现一个完整的迭代。对项目时间管理,本来采取的是线下excel表格管理,后面也逐渐转移线上工具化管理。
下面就详细讲解下 在产品迭代项目的每个阶段我们都做了什么。需求收集阶段产品部门有自己的需求收集和分析方法,我们会在建立一个“需求池 ”,产品会将收集来的各方面需求收录到池子里。需求池的需求主要来源于市场、用户、竞品、老板、产品经理。我们会用线上工具将需求进行分类管理,比如APP端需求、运营需求、网页端需求等等。
并定期对需求池中的需求进行合并删减。在需求收集阶段,产品部会和运营、市场、商务等同事进行详细沟通,确保了解每一个需求的目的和意义。需求分析阶段对建立的“需求池”,产品对定期进行评估,评估也是基于产品内部的讨论,在讨论前一定要确保了解每一个需求背景和意义,不要一个人拍脑袋把需求拍出来。
我们崇尚以产品为公司核心导向,所以产品经历的决定权很重要,直接影响公司战略走向。所以对于需求池的需求进行详细分析时,一定多基于用户、市场和公司角度出发。对需求池的需求分析主要做两件事: 整理需求池内容,从优先级和重要性两个纬度进行产品功能筛选。确定需求池优先级和重要性后,进行需求标记,创建新迭代并关联需求。
确定要做的需求后,就需要开始细化需求。这时候就考验产品经理的功底了。功能策划阶段在确定要做的需求后,为了保证需求在研发阶段的完整性和可分工。
需要在功能策划阶段就要对产品需求进行模块拆分和任务拆分。确保需求的颗粒度与研发时间评审的模块一致,如果不知道怎。