关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » 程序人生 »拿什么来衡量程序员的生产力?

    拿什么来衡量程序员的生产力?

    2015-02-05 00:00:00 出处:ITJS
    分享

    要是你用谷歌搜索“mearsuring software developer productivity”,那么你会发现出来的全都是一些废话,一点用处都没有的废话。
    Nick Hodges,《Measuring Developer Productivity》

    所以现在你知道了吧,原来我们并没有办法来衡量程序员的工作效率。

    老实说,我们现在还没有明确的方法可以衡量程序员以及整个团队的生产力。我们可以确定谁可以依赖,谁比较努力,但却无法证明这些猜想,也没有量化的方法。

    我们的代码写得多,所以我们的生产力更高

    既然开发人员的工作就是写代码。那么,何不通过衡量代码的多少来衡量其生产力呢——看看他们写了多少行代码?

    但是,不同编程语言之间的代码行数是没办法比较的,即使使用的是相同的编程语言,在不同的框架下的程序员之间的生产效率,光看代码写了多少也是无从裁定的。

    更根本的问题是,通过衡量所写的代码行数来断定生产力其实没有意义的。很多软件开发中的最重要部分还包含思考和学习——不仅仅是写代码。

    最优秀的程序员会将大量的时间用于了解和解决疑难杂症,或帮助他人解决难题,而不是写代码。他们会想方设法简化代码,避免重复。他们会通过实验、建立原型等方式迭代代码,替换原先旧的代码,以获得最佳的解决方案。

    所以,光从代码数量上看,还真看不出程序员的生产力水平来。

    我们钱赚得多,所以我们的生产力更高

    我们也可以通过财务上面的盈利能力来衡量每个团队的产出,或者其他的业务措施,如有多少用户正在使用系统——要是开发人员能为企业赚更多的钱(或节省更多的钱),那么是不是他们的生产力更高呢?

    利用财政措施似乎在执行层面上是一个不错的主意,但是却有太多的商业因素是不受开发团队控制的。有些开发团队很垃圾,但他们的产品就是成功了;而有些团队兢兢业业却还是只收获了失败的果实。注重节约成本的理念很有可能会导致许多管理者裁人,企图“少花钱多办事”,而不是投资于真正的生产力提高。

    看来此路不通,我们需要寻找其他更有有意义的生产力指标。

    我们的开发速度快,所以我们的生产力更高

    衡量开发速度——敏捷速度——看起来更像是另一种从团队层面来衡量生产力的方式。毕竟,软件开发的重点是提供可工作的软件。要是你的团队能更快地拿出产品,自然是更好。

    但是,速度(一个团队在一段时间内能完成的工作)与其说是衡量生产力的,还不如更精确点说,是用来衡量预见性的:用来衡量一个团队能承受多少的工作。

    但是,我们又不得不考虑人员加入或离开等对速度的影响因素。而且,有一点你得清楚,速度只能只能用于衡量已知团队——由于很多因素的不同,速度并不能用于不同团队之间的比较。

    保持忙碌的状态就对了

    一个我认识的经理曾这样说道,与其试图衡量生产力,还不如

    “保持忙碌的状态就对了。只要我们不断地挖掘问题,就一定可以找到瓶颈,解决掉这些难题。”

    在这种情况下,我们会衡量——并优化——循环时间。

    团队可以使用看板去监控——并限制——正在进行的工作,并确定瓶颈,使用价值流图可以了解需要优化的步骤、排序、延误和信息流。总之一切为了尽快地交货和发布。

    但是我们还是不能将交货速度等同于生产力。这是因为只优化交付本身的循环时间/速度很有可能会导致更大的长期性问题,要知道这种方式实质上是在鼓励人们只顾眼前,从而偷工减料,背负技术债务。

    我们的软件更好,所以我们的生产力更高

    众所周知,软件中出现bug和错误会导致成本显著提高:不仅开发返工成本高了,维护和支持的成本也高了。而最最重要的是,差的软件可能会造成客户的流失,甚至是生意的失败。

    要想衡量你正在写的软件是好是坏也很容易:缺陷密度、缺陷逃逸率,以及利用SonarQube之类的工具对代码库进行静态分析。

    我们知道如何编写好的软件。但是软件质量是否真的足以定义生产力?

    开发人员——衡量和改进IT性能

    开发团队试着综合上述一些因素来衡量生产力:交付速度和质量。

    但开发人员并不限于创建和提供代码——相反还需要着眼于为端到端提供IT服务的性能指标:交付吞吐量和服务质量。

    所以这不只是软件更快、更好的问题,而是需要提供更好更快的服务,在速度和功能之间选择平衡,衡量并提高生产效率和质量。

    还有一点,最近有研究表明,企业要想成功:不仅生产力要提高,更重要的是要提高市场份额和盈利能力。

    衡量成效,而不是产量

    不要再试图去衡量单个开发人员的生产力了。

    这纯粹是在浪费时间。

    每个人心中都有一杆秤。 对于表现优秀的——鼓励他们继续朝着正确的方向前进,再接再厉。对于那些努力上进的——给予他们帮助。对于那些不适合的——可以请出去了。

    衡量和提高团队或组织级别的生产力将会让你收获更加有意义的回报。

    所以当涉及到生产力时:

    1.衡量关键因素——能对团队和组织起重要作用的因素。
    2.设置的指标应该是起积极作用的——可以推动学习和改进,而不是造成团队或个人之间关于产量的恶性竞争。

    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    哈弗H6经典版重庆车展吸睛,8.19万起售,性价比王者来袭!

    vivo海外新机Y400 Pro与X200 FE曝光,定位中高端市场,上市在即

    苹果iOS26将推液态玻璃设计,或为20周年iPhone特别版预热

    红魔电竞平板3Pro来袭,9英寸小屏能否成为游戏新宠?

    荣耀布局机器人,能否在AI终端生态之战中抢占先机?

    美的空调免费清洗服务受热捧,用户:专业又省心,点赞!

    英特尔酷睿9 270H性能首秀:单线程跑分领先i5-14500HX 14%

    HOTWAV R9 Plus三防平板来袭,20080mAh大电池续航无忧!

    小米耳机管理大变革!蓝牙设置页一统江湖

    TCL QM5K系列QD-Mini LED电视发布:HVA面板,分区数高达314

    IT头条

    华为Pura80系列新机预热,余承东力赞其复杂光线下的视频拍摄实力

    01:28

    阿里千问3开源首战告捷:全球下载破千万,国产AI模型崛起新高度!

    01:22

    DeepSeek R1小版本试升级:网友实测编程能力已达到国际一线水平

    23:15

    NVIDIA 与 Dell 合作,大规模交付 Blackwell AI 系统

    20:52

    Cerebras 以最快的 Llama 4 Maverick 性能引领 LLM 推理竞赛

    20:51

    技术分享

    PHP中的随机性——你觉得自己幸运吗?

    搞定Ubuntu Linux下WPA无线上网

    Java使用内存映射实现大文件的上传

    MySQL安全性指南

    MySQL两项性能的基本测试浅谈

    教您使用UniqueIdentifier选取SQL Server主键

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。