首页 > 其他分享 >节省显示器同时提升持续集成问题修复及时性的“流水线问题责任聚焦”实验

节省显示器同时提升持续集成问题修复及时性的“流水线问题责任聚焦”实验

时间:2023-08-02 16:36:03浏览次数:31  
标签:对照组 修复 开发人员 显示器 实验 流水线 团队 及时性

作为企业IT部门某个开发团队负责人的你,从书上和大佬那里得知,软件开发团队,如果采用持续集成实践,那么就能降低软件开发过程中的返工。

于是你按照书中和大佬所说的,在团队工位显眼位置,摆放了一个大显示器,并接上持续集成流水线。

你喊团队中所有的5位开发人员来开会,告诉他们,一旦流水线运行出现问题,比如编译打包错误或自动化测试运行失败,显示器就会显示告警的红色/黄色画面。团队中无论谁看到了红色/黄色告警,第一时间就要放下手中工作,及时修复流水线。团队中的其他人,也要配合这位同事的修复工作。

开发人员都答应了。

但很快你就发现,你所辛辛苦苦搭建的流水线健康显示屏,其实就是一个摆设。团队开发人员根本就不关注。即使显示屏变红/黄好几天,也无人修复。

这个问题该如何破?

你读了阿伦森的《社会心理学》,其中的“责任稀释假说“给了你很大的启发。即目睹紧急情况的人越多, 他们中任何一个人干预的可能性就越小。

你觉得工位边上的持续集成流水线健康状况显示器,其实就再现了一个***责任稀释的场景***。看到红色/黄色告警的开发人员,都会觉得其他开发人员已经看到并处理了,于是不再采取行动。

你从书中了解到,在1968年,两位社会心理学家用实验模拟了一个人命关天的紧急情况。实验结果发现,当受试者面临要出人命的紧急情况,并意识到周围有4个旁观者时,只有31%的概率会去施救。若旁观者下降为2人,施救的概率上升到62%。当周围没有旁观者,施救的概率会达到85%(如图)。

Screenshot 2023-08-01 at 22.50.35.png 图:当周围没有旁观者,受试者施救的概率会达到85%

我在“吾真本说混沌工程”知乎专栏的文章“做软件的人不被他人忽悠的唯一方法”里,说只有自己动手做有对照组的科学实验,才能避免被忽悠。

为了避免被忽悠,你觉得可以设计一个实验,来找到提升自己团队流水线问题修复及时性的方法。

该如何设计这个实验?

ashley55_a_mac_screen_displaying_several_red_and_green_lights__105a4b31-ddf4-4a28-a631-2691bd225d11.png

我在下面帮你列出这个实验的6个步骤和具体实施方法。你可以根据团队具体情况,做适当的调整。如果遇到问题,欢迎在评论区留言,与我交流。

1 基于观察

放置在工位附近显眼位置的持续集成流水线健康显示屏,就是一个摆设。团队中的5位开发人员平时根本就不关注。即使显示屏变红/黄好几天了,也无人修复。

2 问出问题

是什么阻碍了开发人员,让他们即使看到了显示屏的红色/黄色告警,也不及时修复流水线问题?

3 形成可验证的解释性假说

根据“责任稀释假说“,目睹流水线红色/黄色告警的开发人员越多, 他们中任何一个人修复流水线问题的可能性就越小。

4 基于假说做出预测

如果将工位附近的流水线健康显示屏撤掉,并要求每位开发人员,在向流水线合并代码后,需要通过自己的电脑显示器,观察流水线健康状态。直到状态变为健康的绿色,才算合并成功。若其间发现红色/黄色告警,因为只有她/他一人在场,周围没有旁观者,那么她/他主动修复流水线所发现的问题的概率会达到最大。

5 设计并执行有对照组的实验检验预测

你需要设法吸引IT部门负责人对这个实验感兴趣,并获得她/他的支持,比如帮助你找到另一个同样有5人左右开发人员的开发团队作为***对照组***,并获得那个开发团队负责人的支持。而你所在的团队,可以作为***实验组***。

由IT部门负责人和实验组与对照组这两个开发团队负责人,三人成立实验小组。

为了让实验结果不会因为实验组和对照组两个开发团队的开发人员,因相互攀比而有损数据的准确性,该实验***从始至终秘密进行***。即实验的事情,只有实验小组的那三人知道。若其他人问起实验过程中一些事情的缘由,比如为何撤销显示屏,可以编一个理由,比如其他团队临时借用。总之不要透露正在开展的实验和实验意图。

在实验开始前,两个开发团队的负责人,需要各自准备好流水线健康状况观测工具。比如能通过工具,观测出流水线何时出问题变红/黄,何时修复好变绿。可以设置一个及时修复的时长范围。比如流水线每次从变红/黄到变绿之间,没有超过4小时,算及时修复。否则,就不算。

对照组在工位显眼位置,摆放一个大显示器,并接上持续集成流水线。对照组团队负责人在实验开始前一天,召集所有开发人员,告诉他们一旦流水线运行出现问题,显示器显示告警的红色/黄色画面,团队中无论谁看到了红色/黄色告警,第一时间就要放下手中工作,及时修复流水线。团队中的其他人,也要配合这位同事的修复工作。

实验组则悄悄撤销工位附近的流水线健康显示屏。实验组团队负责人,就是你,在实验开始前一天,召集所有开发人员,要求他们在向流水线合并代码后,需要通过自己的电脑显示器,而不是工位附近的流水线健康显示屏,观察流水线健康状态。只有健康状况变为绿色,才算合并成功。若发现红色/黄色告警,就需要立即修复。其他开发人员在修复期间,需要积极配合。

设置一个开展实验时间段,比如6周。两个团队同时开展实验,并同时采集数据。

每2周作为一个迭代。实验小组在迭代末就开一次碰头会,分析和对比这2周采集的观测数据,即这2周流水线问题及时修复的百分比。

6 根据实验结果可回到第3步不断迭代优化假说/预测/实验过程

到第6周结束,总结和对比这3个迭代实验组和对照组流水线问题及时修复百分比。根据实验数据,看看是否支持第4步的预测,并决定是否回到第3步,改进假说、预测或实验过程。

如果在实验过程中遇到问题,欢迎在评论区留言,与我交流。

如果觉得本文对你有帮助,欢迎点赞,点击在读,并转发给其他经常受流水线问题修复不及时之害的小伙伴。你觉得提升流水线问题修复及时性,还有什么其他好办法你还希望我聊有关做软件的其他什么新话题?欢迎在评论区留言。我会仔细阅读每一条留言。期待听到你的声音。


企业生意蒸蒸日上,软件系统稳定运行。你所阅读的文章,来自**“吾真本说混沌工程”**知乎专栏。

标签:对照组,修复,开发人员,显示器,实验,流水线,团队,及时性
From: https://blog.51cto.com/u_16163674/6939672

相关文章

  • 码云自动化流水线配置并通知飞书之准备工作
    码云流水线❝之前讲过Jenkis方式部署项目,其实对于一些个人小项目和测试项目,我们有一个更方便的工具,码云以及它的流水线,本篇先介绍一下要准备的工作!❞目标是什么主要要做到,在码云上一键构建,自动部署并同时给飞书机器人发送结果。注意可以选择钉钉、飞书、企业微信,我这里选择的是飞书......
  • ubuntu 命令调节显示器亮度
    1.显示器名字xrandr-q|grep"connected"HDMI-0connectedprimary1920x1080+0+0(normalleftinvertedrightxaxisyaxis)527mmx297mmDP-4connected1920x1080+1920+0(normalleftinvertedrightxaxisyaxis)527mmx297mm2.调节亮度xrandr--outpu......
  • 把电脑显示器当作另一个视频输出设备的显示器
    需求有一个笔记本电脑和一个支持HDMI输出的机顶盒,希望机顶盒的内容输出到笔记本的屏幕上。硬件hdmi转usb的视频采集卡。绿联视频采集卡海备思usb采集卡软件配置以Potlayer为例。采集卡怎么用?电脑怎么成为其他设备的显示器?potplayer设置教程/采集卡连接电脑软件操作方......
  • jenkins流水线
    为什么使用流水线Pipeline的基本概念喝Jenkins-file......
  • 【jenkins】多分支流水线的简单应用
    Jenkins多分支流水线(Multi-BranchPipeline)是一种用于持续集成和交付的自动化构建和部署流水线。它可以根据代码库中的不同分支或标签,自动创建和执行适用于各个分支的独立流水线。以下是配置和使用Jenkins多分支流水线的一般步骤:安装必要的插件:在Jenkins中安装Pipeline插件、......
  • CI流水线中Jenkins应用实践丨IDCF
    作者:达日汗,中国农业银行研发中心,系统支持部 CI(ContinuousIntegration)在维基百科中的定义是:经常将几个小改动合并到一个主分支中,强调开发人员提交了新代码之后,立刻进行构建和(单元)测试。持续集成可以帮助开发人员尽早定位到错误,控制开发流程,减少大量不必要的工作,提高工作效率。一......
  • [笔记]组成原理_中央处理器_异常和中断、指令流水线
    异常和中断机制有关异常和中断的基本概念:由CPU内部产生的意外事件被称为异常,有些教材中也称为内中断;由来自CPU外部的设备向CPU发出的中断请求,被称为中断,通常用于信息的输入与输出。有些教材中也称为外中断。通常情况下,对异常和中断的具体处理过程,由操作系统(和驱动程序)完成。异......
  • 雷电4扩展坞HDMI显示器无法睡眠问题
    背景:最近使用Dell的雷电4扩展坞WD22TB4,感觉很爽,取电脑时,不用再拔显示器、鼠标、键盘,直接把雷电4接口拔出即可。后来通过windowsupdate升级了intel显卡驱动后,发现电脑无法睡眠了,一睡眠就死机,只能长按电源键强行关闭电脑。一开始以为是win11问题,升级了一下系统发现也不行。再排......
  • 笔记本扩展显示器分辨率低,navicat显示大模糊
    解决办法:右键->属性->兼容性->更改高DPI设置......
  • 第3章 流水线技术
    0.流水线的分类(1)按照所完成的功能:单功能流水线、多功能流水线;(2)多功能流水线中按照同一时间内各段之间的连接方式:静态流水线、动态流水线;(3)按照流水线的级别:部件级流水线、处理机级流水线、处理机间流水线;(4)按照流水线中是否有反馈回路:线性流水线、非线性流水线;(5)根据任务流入和......