NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

安全、软件与加速学习

  • 2013-07-17
  • 本文字数:1656 字

    阅读完需:约 5 分钟

敏捷方法具有创造伟大结果的潜质,但它并不能够保证达成伟大结果。实际上,轶事证据表明,只有小部分采用并适应了敏捷方法的团队和组织机构,能够达成这些伟大结果。这是因为成功还有一些隐性条件,而安全性似乎正是其中之一。

让我们从头开始。什么情况下敏捷方法能产生伟大结果?答案是当团队能够加速学习步伐的时候。这份 2007 年的报导如此写道:

敏捷实践,从测试驱动开发和持续集成,到迭代和回溯,共同组成了一个帮助团队学习得更快的链条。通过反复运用种种实践,敏捷团队加速了学习的过程,直面软件工程的瓶颈。我们可称之为“科学方法”、“持续改进”或者“检验一切”。

慢慢地,这种观点围绕着敏捷社区找到了自己的出路,而行为驱动开发(BDD)的主要作者 Dan North 在题为蓄意发现的文章中写道:

“学习是一种限制”,Liz Keogh 与我分享了她最近遇到的某个思维实验。回忆一下我们团队最近完成的一个重要项目或一项工作(最好是耗时数月的工作)。它从启动到交付花了多长时间?现在想象一下我们将要重复做同样的项目,拥有相同的团队和组织约束,一切都是相同的——除了团队已经熟知任何他们从项目中学到的内容。那么这一次通过各种方法完成项目需要多长时间?

停下来回答一下这个问题。最终,宣称完成重复项目大约需要 1/2 到 1/4 时间的答案并不罕见。由此引出了“学习是一种限制”(注:作者实际上是要说明,无知才是阻碍,我们需要通过学习来克服它)的结论。

在 2010 年,这一领域中的许多领导者开始探寻实践之外的东西;他们开始在人际动力学和团队 / 组织机构的文化中寻找成功的关键。其中的一项理念似乎根植于安全,并作为支持加速学习的基本属性。

Scott Belware 在 2010 年的 Workplace Safety for Software Developers中,描写了在软件开发组织机构里,冒险的负面影响。

而 Daniel Mezick 在《文化游戏》一书中,描绘了学习文化中安全的必要性。在 InfoQ 的采访中,他表示:

安全是社交学习或我称之为部落学习的基本要求。因此,它需要一个管理者重点关注的领域,并更深入的学习。在这本书中,我解释了如何及为何低安全水平与社交学习的低水平有关联。低学习水平调节在面对变化时能够适应多少。哈佛商学院教授 Amy Edmondson 的研究显示,心理安全,社交学习水平,参与水平,及生产力水平,都是有关联的。这就是为什么我们必须特别注意人类行为的动态。

今年, Joshua Kerievsky Amr Elssamadisy 都撰写博客文章,探讨了这样的话题:软件开发的新观念如何从安全角度,为何时一切正常、何时出现问题带来了新的曙光。在技术安全(Tech Safety)中,Joshua 写道:

技术安全是无处不在的驱动力,就像呼吸一样。它不是一种流程或技术,也不是一项优先事项——因为它不会被其他优先事项所取代。对技术安全的评估意味着持续改进以下各方面的安全性:流程、代码库、工作场所、关联关系、产品和服务。它是通往卓越的道路,而它自身并不是一种目标。它影响那些我们注意的事情、我们努力奋斗的工作以及我们的组织机构如何运行。

Is it Safe to Fail?中,Guy Nachimson 介绍了 Christopher Avery 的责任流程模型非暴力沟通,以及Jim McCarthy 的核心协议,并将它们与创建生产伟大软件的安全文化联系在一起。

最后, John Krewson认为,尽管技术安全(Tech Safety)是一种崇高的理想,但它注定失败并且将失效:

这是一项崇高的理念,我满心相信它的价值。然而,在技术安全理念的表面之下潜藏着一个问题,可以称之为“风险平衡”。风险平衡是 Gerald Wilde 在 1994 年发展出的一项理论,该理论的观点在于:我们并不会省去风险,而是在消耗它。换句话说,当我们落实某种方法来让自己的生活更安全的时候,我们用它来为生活中其他领域更危险的行为进行开脱,因而从整体上来说我们并不会变得比之前更安全。

观看和创建安全文化和环境,是否真的将会流行起来——作为创建更有效的软件开发团队和更好的软件的方法——还有待观察。尽管如此,它实际上是一个值得探索和尝试的主题。关于这些, 你的经历又是怎样的呢?

查看英文原文: Safety, Software, and Accelerated Learning

2013-07-17 07:381036
用户头像

发布了 256 篇内容, 共 68.5 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

android音视频开发面试!享学课堂课程怎么样

android 程序员 移动开发

Android软件开发面试题!动脑学院vip视频破解

android 程序员 移动开发

分布式常见协议和算法要点摘录-Paxos&Raft

追风少年

分布式 raft PAXOS

什么是挖矿木马?我猜你还不知道

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

Android面试基础技能罗列,自学编程找工作

android 程序员 移动开发

Android进程保活黑科技实现原理解密及方法,赶紧学起来

android 程序员 移动开发

漫游图书馆广发招募令,让你的闲置书“游”起来!

墨天轮

MySQL 数据库 oracle 技术书籍 书籍

模块一作业

lxz

Android高级工程师必看系列,Android基础入门教程

android 程序员 移动开发

云原生网关开源、自研、商业化三位一体战略背后的思考

阿里巴巴云原生

阿里云 开源 云原生

2021云栖大会开源引力峰会重磅发布的战略合作,Grafana服务到底是什么?

阿里巴巴中间件

阿里云 开源 云原生 Grafana 云栖大会

第一周学习总结

lxz

架构实战营 模块二作业

felix

架构实战营

2021年最新基于Spring Cloud的微服务架构分析

程序员 架构 SpringCloud

Android进阶之光,享学课堂Android架构师第一期

android 程序员 移动开发

Android面试题2020中高级,享学课堂vip怎么样

android 程序员 移动开发

《我想进大厂》之kafka夺命连环11问

艾小仙

kafka 面试 后端

海量数据分析更快、更稳、更准!GaussDB(for MySQL) HTAP只读分析特性详解

华为云数据库小助手

GaussDB 华为云数据库 GaussDB(for MySQL)

Android面试心得必备技能储备详解,原理+实战+视频+源码

android 程序员 移动开发

Android高级:动脑学院android全套

android 程序员 移动开发

apm应用性能管理,享学课堂架构师vip

android 程序员 移动开发

Android高级工程师必备知识!享学课堂vip怎么样

android 程序员 移动开发

kubernetes设置共享内存

ilinux

To B的网易

海比研究院

Android资深架构师分享学习经验及总结,三面美团Android岗

android 程序员 移动开发

android路由表位置,扔物线朱凯

android 程序员 移动开发

Android软件开发面试题,享学课堂Android架构师视频百度云

android 程序员 移动开发

Android面试题整理,动脑学院视频百度云

android 程序员 移动开发

Android面试题整理,享学课堂Android架构师vip

android 程序员 移动开发

apk瘦身,动脑学院vip课程分享

android 程序员 移动开发

Tapdata Cloud 版本上新 | 支持通知自配置,支持GP、MQ数据源,界面更友好!

tapdata

数据库 mongodb

安全、软件与加速学习_DevOps & 平台工程_Amr Elssamadisy_InfoQ精选文章