YesDev-创业团队的研发全流程闭环管理

简介: 软件项目的研发,不只是“写写代码,改改Bug”这么简单。创业团队早期注重野蛮生长和快速扩展,随着人员越多,业务越复杂,涉及的技术领域越广,更需要一套完整、清晰、规范的研发协作流程。否则,就会容易陷入团队混乱、流程混乱、项目混乱、系统混乱的窘境。

研发痛点

软件项目的研发,不只是“写写代码,改改Bug”这么简单。


创业团队早期注重野蛮生长和快速扩展,随着人员越多,业务越复杂,涉及的技术领域越广,更需要一套完整、清晰、规范的研发协作流程。否则,就会容易陷入团队混乱、流程混乱、项目混乱、系统混乱的窘境。


一旦陷入混乱,就会对以下常见的研发痛点更加深有体会:

  • 都是“一句话需求”,开发不知要做什么,测试人员不知要测什么,只能边做边想,很可能做到最后做不下去,前面的时间白白浪费,需求搁置;
  • 需求混乱,需求方或产品经理直接找一线开发人员,谁提的需求急就先做谁的,开发人员每天都很忙,天天在加班,但总感觉整体的产能不是那么理解;
  • 时不时出现线上故障,不知道又是谁在发布了什么系统,不断“救火”;
  • 内部的沟通协作冲突明显,消息得不到有效的流转和同步,甚至开会时公然拍桌子叫板;
  • 团队不稳定,人员流动率高……


严控两个源头:需求+源代码

软件工程是一门学科,引自百度百科的定义:

软件工程是一门研究用工程化方法构建和维护有效、实用和高质量的软件的学科。



为了构建和维护有效、实用和高质量的软件,势必会存在对应的解决方案。

追本溯源,我建议可以从两个源头进行严格的控制。


一方面,严控需求源头。


需求提出后,产品经理要对需求进行文档化。不管是用Word文档,还是使用Axure的专业制作工具。好的需求文档,是整个协作流程的起点。坏的需求,自提出后,就会持续污染下游和后续的协作流程,包括:开发对需求不明确、测试对需求不理解、上线后客服和用户对需求的价值不清晰、后续发生了故障无法维护。更重要的是,需求不明确或没有记载,非常容易产生“纠纷”和“扯皮”,影响内部协作的氛围,增加内耗,损失时间成本不说,还损伤心情和增加心理负担。除了做好需求记录,还要做好需求评审。千万不要各自去猜产品的需求。

图片来自于网络


另一方面,严控代码质量。


需求规划和整理得再好,如果施工执行不当,也会大打折扣。Bug问题多,上线后容易出故障,维护成本高,存在安全漏洞,用户使用困难和体验差,对不同终端设备兼容性差等。严控代码质量,更为有效的方式是三角验证,通过第三方来评定。例如:测试验收、进行相互code reivew、使用Sonar等专业工具分析评估静态代码质量、通过自动化测试测试进行360度全方位的白盒测试、要求开发人员针对复杂和核心的需求提供技术开发文档并进行审查。


需求是方向,方向不明确则越走越步履维艰;代码是根基,根基不稳则越盖越可怕。

系统非常稳定,图片来自于网络


闭环管理的意义

作为技术负责人,或者作为老板,要考虑研发的整体闭环管理。


首先,要对整个团队和最终的结果负责任。


其次,要基于对结果负责的目标,制定和构建团队的协作流程和规范,以敏捷开发为蓝本,结合人员、业务特点、每周的时间线、内部的习惯和偏好,搭建闭环管理。

最后,落地实施。


闭环管理的意义在于形成正向的反馈和闭环,使得技术人员有成长、项目可以更快更稳持续迭代升级、公司的业务持续增长和迎来新的突破。犹如种子破土而出,向阳而生,开枝散叶,欣欣向荣。


所以,从个人、到项目、再到企业,分为三个闭环。


个人小闭环:注重高效的个人工作和习惯偏好,同时也要注意让团队成员每个人能充分发挥各自的优势和主观能动性,发挥集成智慧的力量。明确好职责和分工。


项目闭环:软件开发是一个需要高智力、频繁沟通和密切协作的过程。从一个抽象的需求提出来,到最终发布上线交付有价值且可正常运行的软件,这个过程需要多个部门、多个学科领域进行通力配合。由此,每次项目迭代的时间越紧凑,这个组织就越有活力;迭代得越频繁,企业的产品和业务就越有市场竞争力。当然,前提是,不以过度损坏项目质量为前提。


创业大闭环:把软件产品做出来是一回事,把产品卖出去又是另一回事,把产品卖出去同时提供好售后技术服务又是另一回事。如果要赢得客户的信任和口碑,需要整个企业组织更加密切地配合。大闭环跑通,通过MVP以最小的代价成本和风险验证产品,把产品卖出去以赢得付费客户,跑出ROI、ARR、付费漏斗和“性感的”增长曲线。


软件研发全流程闭环管理

结合我们自己在使用以及研发的YesDev工具,粗略分享下如何构建自己创业团队的闭环管理。分别五个主要步骤:

  • Step 1. 需求池维护(需求越简陋,协作越痛苦)
  • Step 2. 项目迭代(计划、统筹和协调能力)
  • Step 3. 即时研发协作流(专注当下的高效工作)
  • Step 4. 增量跟踪(风险把控,积极达成目标)
  • Step 5. 一键发布(持续交付)

依次介绍如下。


Step 1. 需求池维护(需求越简陋,协作越痛苦)

坚持:一切需求,统一记录到需求池里。


针对需求,可以由产品经理或产品专员统一收集和记录,并整理成需求文档,在产品内部评审通过后,再流转给研发部门进行需求评审。


1、直接用富文本编辑器(会记录需求的历史变更)


2、上传Axure制作的PRD,并关联到需求


3、上传word或excel等需求文档的附件(word可以直接粘贴)


4、如果是使用第三方平台制作PRD,可以以链接形式提交,例如:墨刀、蓝湖的链接。

需求要记得做好记录,切莫以庞大的大版本需求为主,应以具体、细小、清晰的需求为工作单元。


Step 2. 项目迭代(计划、统筹和协调能力)

梳理好需求后,下一步就是进行需求评审,然后由技术负责人员组织开发人员和测试人员进行开发排期。细说下来就是:


1、需求评审通过后(若需求评审不通过,应打回,下次再评),规划好迭代的需求,指定项目负责人;


2、由负责开发的人员和测试人员评估工时和计划完成时间;


评估后的任务列表:


3、汇总项目总工时、项目排期和开发计划。

项目总工时体现了本次项目迭代需要投入的人力成本,


项目排期,可以让你提前知道项目的里程碑和计划完成时间,


开发计划表,可以让你更精确地把控每个计划的细节和更充分的信息,


4、使用项目燃尽图持续跟进项目的进度和把控延期风险,直到项目完成。


Step 3. 即时研发协作流(专注当下的高效工作)

高效的协作,离不开频繁的沟通,包括:面对面交流、每日站会、会议、视频,这些都需要实时和被动的通知。


为此,我们需要在日常办公中使用最多最频繁的企业微信群、钉钉群或飞书群中,和项目干系人等其他部门,一起围绕某个项目或产品线接收公开、实时的项目动态消息。

例如需求指派的通知:


又如Bug修复的通知:


群消息的意义和作用在于,让项目成员同步接收公开、透明和一致的实时消息动态。同时,邮件通知则是针对具体的工作负责人,进行的点对点的精准通知和推送。


例如Bug指派时的邮件通知:

更为重要的是,除了给开发人员提供实时的消息通知外,还要在减少对开发人员的干扰和不增加额外的人工操作成本,实现更高效、自动化和简单易用的协作流。这时,就需要用到GitOps了,即通过集成Git代码提交和关联到YesDev,同时实现智能通知和自动流转。


例如,按以下格式,

需求注释格式是:

需求#{需求ID}:开发人员填写的注释内容

其中,{需求ID}对应YesDev的需求ID,注释示例:

需求#666:首页静态页面开发



在开发人员提交注释后,就可以自动完成以下事情和动作。

1、需求状态,自动更新为【研发中】,方便更新和提供最新最准确的开发进度;

2、自动备注和上屏,方便针对需求进行code review(现有的Git工具都是针对分支的code review);


3、自动为开发人员添加当天的任务,减少每天登记工时的烦恼;


4、发送必要、精准的邮件通知和IM群通知推送;


5、联动记录变更,形成操作记录。


你也可以通过统计报表,查看团队成员最近的活跃程度。


Step 4. 增量跟踪(风险把控,积极达成目标)

项目迭代颗粒度大时,你可以使用有效的工具和方式,进行更有针对性的管控,抓住核心,有的放矢。


一方面,你可以使用项目的任务看板,和敏捷看板,在每日站会时,实时更新团队的最新动态和遇到的问题。


另一方面,除了可以用项目的燃尽图跟踪单个项目的进度和风险外,你也可以使用项目甘特图和导出Excel,对多个项目或项目集进行宏观的分析和统筹。


还有,就是要学会看懂数据,并使用邮件进行有效地向上汇报。

为此,针对单个项目,可以使用项目汇总邮件,自动对比上一次的发送结果,从而可以有效地追踪在此的持续变化和增量内容。


在时间周期维度,可以按周或按每周二、每周四等时间频率进行汇总汇报,结合邮件和清晰完整的Excel附件,为上级提供简要和充分的数据和信息,辅助上级做出决策。


Step 5. 一键发布(持续交付)

最后,还可以接入一键发布。

在工作台上,找到一键发布。


进入一键发布后,就可以选择需要发布的系统,并关联到项目。


也可以查看发布历史记录,


以及发布成功后的群通知:


至此,从一个需求提出到发布上线,中间的研发闭环已经跑通。

更多的功能,以及具体的作用,可以直接免费注册YesDev体验使用。

相关文章
|
7月前
|
数据采集 运维 算法
大数据项目管理:从需求分析到成果交付的全流程指南
【4月更文挑战第9天】本文介绍了大数据项目从需求分析到成果交付的全过程,包括需求收集与梳理、可行性分析、项目规划、数据准备与处理、系统开发与集成,以及成果交付与运维。文中通过实例展示了如何进行数据源接入、数据仓库建设、系统设计、算法开发,同时强调了需求理解、知识转移、系统运维的重要性。此外,还提供了Python和SQL代码片段,以说明具体技术实现。在大数据项目管理中,需结合业务和技术,灵活运用这些方法,确保项目的成功执行和价值实现。
1932 1
|
敏捷开发 机器学习/深度学习 搜索推荐
如何做好创业公司研发团队的项目管理?
探讨创业公司中的软件研发项目管理问题: 大部创业公司的软件研发管理处于什么阶段? 如何改善软件研发过程和提高效率? 软件研发过程会涉及哪些工程理论和方法?
361 0
如何做好创业公司研发团队的项目管理?
|
供应链 数据管理 物联网
一撕得:全员参与低代码开发,全面实现企业数字化管理
借助钉钉宜搭,一撕得全面实现数字化管理,持续推动业务和企业进步。
636 0
一撕得:全员参与低代码开发,全面实现企业数字化管理
|
人工智能 小程序 大数据
厦门航空牵手阿里云打造航空业移动研发中台,研发效率提升50%
厦门航空与阿里云宣布合作打造航空业“移动研发中台”。该项目将基于阿里云企业级移动研发平台EMAS,结合厦门航空在航空业数字化探索实践联合研发,搭建完成后将助力厦门航空打造厦门航空超级APP。
788 0
厦门航空牵手阿里云打造航空业移动研发中台,研发效率提升50%
对话阿里敏捷教练 | 成功辅导过淘宝、闲鱼,他都是如何帮助团队实施敏捷的
阿里有一句话叫做:一张图、一场仗,一颗心,首先画好一张整体的图,把团队之间协作的图画好,我们才能得对齐,上下同心,然后把这场仗打好。
3620 0
|
Kubernetes 持续交付 容器
企业研发效能月刊:告别996,走向“211”!
云效功能 项目管理 >看板: 云效全面支持看板方法的实践,包含:更好地可视化端到端价值流动,确保产品、开发、测试等职能的前后拉通;支持任务按所属模块展开为子列,确保不同模块与所属的开发任务对齐;明确定义各列的流转规则,确保在交付过程中内建质量;限制各列工作项的并行数目,促进需求的快速持续交付;凸显交付过程中的问题、瓶颈和阻碍,让团队聚焦应该关注的问题等。
5220 0
|
供应链 前端开发
研发产品经理的价值思考-上
一般来说,互联网公司的产品经理无需细分业务产品以及研发产品经理;但是在有这样划分的组织里,研发产品经理作为夹在业务产品以及研发工程师之间的职能,其价值引起了笔者的思考与观察。
1245 0
|
持续交付
互联网产品一站式研发协同的快速开始
阿里巴巴协同研发平台产品专家李智为大家带来了题为互联网产品一站式研发协同的快速开始的演讲。本文主要从产品研发方法论开始说起,谈到了项目协作的重要性和一站式带来的好处,也讲解了产品如何快速开始,最后对开发平台的团队配置和愿景做了总结。
3432 0
报名 | 阿里巴巴研发效能实践日——敏捷精益项目管理
文末免费领:阿里研发效能提升宝典喔~
9006 0
|
开发工具
互联网产品需求管理思考1——统一需求管理,互联网营销
  对于互联网公司而言,产品需求管理是产品研发的核心环节,产品需求的正确与否直接影响产品开发周期、产品开发成本、产品运营成本,甚至直接决定了产品市场竞争力。根据统计:产品开发中40%~60%的问题都是在需求阶段埋下的"祸根" ,在测试阶段及运营阶段发现需求阶段植入的问题,解决的代价是需求阶段发现问题的68~200倍。
1416 0
下一篇
DataWorks