当前位置:首页>编程日记>正文

构建从目标到研发过程的全生命周期体验

作者/PingCode研发PV孙敬云

最近有客户提出这样一个问题:现在的工具功能都大同小异,PingCode有什么特别之处?

那么要回答这个问题,我可能要从”根“上说起。

 

一、首先,在产品的构建理念上PingCode有一套完整的理论基础

 

假如企业有一个目标,为了实现这个目标,员工们以一种资源的形式出现在那里,承担着机器做不了的工作。这种管理方式的理念是:所有管理者的工作,就是在员工身上汲取他们所需要的。这是从工业时代就已经成熟的管理方式,它把员工当成一种资源,而员工自己的定位就是”为老板打工“。

 

对于劳动密集行业来说,这种方式经久不衰。因为这类员工的工作内容重复性高、易标准化,管理者可以制定具体的行为规范,通过细致的考核标准和明确的赏罚条款简单直接的给予激励。

但是对于知识密集行业来说,这种方式很难完成伟大的工作。

因为这类员工的工作通常是定制化的、具有一定创造性的,他们需要在一个小范围内保持公开透明、充分沟通。如果这时员工的脑子里都是”为老板打工“,那么他有一百种方式玩忽职守。这绝不是危言耸听,根据盖普勒的统计,每10名员工中有7名是”不敬业的“,他们要么自由散漫,要么主动出手破坏组织的努力成果。

那么这是员工的错吗?其实归根到底是员工们没有”为自己做事“,他们缺少参与感,缺少在工作中的那一份”乐趣“。

如果细化到IT行业-研发领域,我认为应该弱化管理的”管“字,而更看重管理的”理“字。比如这样的一个管理模型:

构建从目标到研发过程的全生命周期体验 配图01

1、研发的基础离不开工具的支撑,通过工具可以最大化的释放员工的双手,这对于效能的提升是非常明显的,比如通过DevOps工具链搭建CI/CD,它不仅加速了部署过程,更是提供了另一种研发场景的可能性。当然工具绝不是一成不变的,它们会根据企业的实际发展不断的向前演进,带来新一代的效能革命。

2、基于相同的工具集,我们能更容易的统一技术规范,比如编程规范、工程化方案、CI/CD、基础架构和文档标准等等。统一技术规范是为了标准化研发过程,因为标准化的行为更容易进行复制,从而产生规模化的经济效应。

3、有了统一的技术规范,企业就可以重新构建自己的研发工作流。工作流就像水流入管道一样,顺着定义好的规则从左到右的流动,我们要尽早的发现管道中的瓶颈并予以解决,通过不断的改进让这条工作流越来越高效,能够提供更大的交付能力。

4、在一定的流程制度约束下,我们可以成立很多跨职能团队,向他们赋能,允许他们自我管理,通过激活脑力工作者的创造力和内在动力,让他们”为自己做事“,享受工作中的”乐趣“,从而创造更大的价值。

5、组建高效能的敏捷团队不是目的,实现企业目标才是。因此在自组织团队之上要有一套目标引导机制,目标管理主要就两点:一是我们的目标是什么;二是如何知道我们向着目标前进。

通过上述的管理模型示例我们可以发现,研发领域管理者的主要工作并不是”鞭笞“着员工的干活,而是营造一个”共赢“的工作环境,将员工引导到正确的轨道上,让他们在一定的自由空间下发挥最大的价值。

 

那么PingCode的产品矩阵如何体现「研发领域的管理方式」?

  • 很简单,PingCode本身就是工具集中重要的一个,同时PingCode还具有打通其他工具的能力(通过REST API和应用市场)

  • 通过PingCode Wiki可以沉淀企业内的技术规范和流程制度

  • 通过PingCode Plan、PingCode Agile和PingCode Testhub可以非常容易的搭建出一套标准化的研发工作流,打开即用

  • 通过PingCode Agile可以让敏捷团队(Scrum和Kanban)规划自己的工作、显现真实进度、回顾和不断的改进自己;

  • 通过PingCode Goals可以让所有的项目有共同的目标,在更高的视野上及时了解企业目标的进展。

PingCode官网

 

二、其次,与其看单独的功能点,不如连起来看PingCode的工作流

 

PingCode是根据场景来组织功能的,我先放一张场景图:

构建从目标到研发过程的全生命周期体验 配图02

(规模化敏捷)

在一个健康的IT企业中,一个明智的决策通常要经过充分的调研和评估,然后才能成为各个研发部门的目标。在这个过程中,企业中的各个关键角色要进行目标对齐,所有人的步调要保持一致。关于如何使用PingCode Goals进行目标管理?请参考:「国内首款OKR SaaS厂商,是如何落地研发目标管理的」

目标确定后,一些关键工作项要有明确的落地计划,这就需要通过PingCode Plan来进行规划。在PingCode Plan中通过路线图可以清晰看到所有工作的时间节点,这个阶段对应着”规模化敏捷“图中的”特性“节点。

构建从目标到研发过程的全生命周期体验 配图03

紧接着,在PingCode Plan中,将这些工作项安排到不同的敏捷团队的”待办工作事项“中,让这些自组织团队在一定的时间区间内安排开发工作:

构建从目标到研发过程的全生命周期体验 配图04

进入每一个敏捷团队的”待办工作事项“(PingCode Agile的需求列表)中,自组织团队就可以看到按优先级排序的各类需求

构建从目标到研发过程的全生命周期体验 配图05

敏捷团队会根据综合因素(通常包含:优先级、工作量、依赖关系、非功能性需求的比例等等)安排每个开发周期的工作,他们在每个开发周期结束时都会产出一个可以交付的程序增量。

随后我们将所有的Scrum团队完成的服务进行集成,形成一个全局版本,部署到生产环境中,这个阶段对应着”规模化敏捷“图中的”PROD“节点。

构建从目标到研发过程的全生命周期体验 配图06

最后,各部门、业务负责人在企业的目标同步会议上,通过PingCode Goals对目标的完成进度进行复盘,一个理想的复盘会议应该要基于一定的行为记录、数据分析进行后续决策。

 

最后,PingCode的功能比较全面,体验也更自然

 

因为PingCode的功能点非常多,我在这里只举几个例子:

1.用户故事的360°的关联

 

在PingCode中,一个用户故事既承载着一个业务价值点,也是一个沟通的平台。在一个用户故事上可以看到非常多的信息,比如一些基本信息,包括:状态、负责人、关注人、开始结束时间、优先级、风险、故事点、需求来源、需求类型、发布版本、标签、描述、自定义字段等等;还有一些关联信息,包括:子任务、缺陷、关联工作项、关联测试用例、关联文档、关联附件等等;还有一些开发数据,包括:代码提交记录、评审记录、构建记录、部署记录等等;还有一些交互数据,包括:评论、卡片的活动记录、状态流转记录等等。可谓是一张卡片,全纬度的数据。

构建从目标到研发过程的全生命周期体验 配图07

2.规划迭代

(适用于Scrum团队开计划会议的时候,投大屏幕)

构建从目标到研发过程的全生命周期体验 配图08

3.迭代回顾

(适用于Scrum团队开回顾会议的时候,投大屏幕)

构建从目标到研发过程的全生命周期体验 配图09

更多的功能点,我还是建议各位读者们自己体验,我就不自卖自夸了。希望通过这篇文章可以说明PingCode的特别之处,也希望能够帮助您寻找到更合适的研发管理工具。

PingCode官网——点击立即领取25人免费版​


http://www.coolblog.cn/news/970357eb44c4fea4.html

相关文章:

  • asp多表查询并显示_SpringBoot系列(五):SpringBoot整合Mybatis实现多表关联查询
  • s7day2学习记录
  • 【求锤得锤的故事】Redis锁从面试连环炮聊到神仙打架。
  • 矿Spring入门Demo
  • 拼音怎么写_老师:不会写的字用圈代替,看到孩子试卷,网友:人才
  • Linux 实时流量监测(iptraf中文图解)
  • Win10 + Python + GPU版MXNet + VS2015 + RTools + R配置
  • 美颜
  • shell访问php文件夹,Shell获取某目录下所有文件夹的名称
  • 如何优雅的实现 Spring Boot 接口参数加密解密?
  • LeCun亲授的深度学习入门课:从飞行器的发明到卷积神经网络
  • Mac原生Terminal快速登录ssh
  • java受保护的数据与_Javascript类定义语法,私有成员、受保护成员、静态成员等介绍...
  • mysql commit 机制_1024MySQL事物提交机制
  • 支撑微博千亿调用的轻量级RPC框架:Motan
  • jquery 使用小技巧
  • 2019-9
  • 法拉利虚拟学院2010 服务器,法拉利虚拟学院2010
  • vscode pylint 错误_将实际未错误的py库添加到pylint白名单
  • 科学计算工具NumPy(3):ndarray的元素处理
  • 工程师在工作电脑存 64G 不雅文件,被公司开除后索赔 41 万,结果…
  • linux批量创建用户和密码
  • newinsets用法java_Java XYPlot.setInsets方法代碼示例
  • js常用阻止冒泡事件
  • 气泡图在开源监控工具中的应用效果
  • 各类型土地利用图例_划重点!国土空间总体规划——土地利用
  • php 启动服务器监听
  • dubbo简单示例
  • 【设计模式】 模式PK:策略模式VS状态模式
  • [iptables]Redhat 7.2下使用iptables实现NAT
  • Ubuntu13.10:[3]如何开启SSH SERVER服务
  • CSS小技巧——CSS滚动条美化
  • JS实现-页面数据无限加载
  • 阿里巴巴分布式服务框架 Dubbo
  • 最新DOS大全
  • Django View(视图系统)
  • 阿里大鱼.net core 发送短信
  • 程序员入错行怎么办?
  • 两张超级大表join优化
  • 第九天函数
  • Linux软件安装-----apache安装
  • HDU 5988 最小费用流
  • Sorenson Capital:值得投资的 5 种 AI 技术
  • 《看透springmvc源码分析与实践》读书笔记一
  • 正式开课!如何学习相机模型与标定?(单目+双目+鱼眼+深度相机)
  • Arm芯片的新革命在缓缓上演
  • nagios自写插件—check_file
  • python3 错误 Max retries exceeded with url 解决方法
  • 行为模式之Template Method模式
  • 通过Spark进行ALS离线和Stream实时推荐