五种矫捷技术协助防止CrowdStrike式疑问
咱们将讨论矫捷技术如何在发现和应答 CrowdStrike 争议等疑问中施展至关关键的作用。
译自5 Agile Techniques To Help Avoid a CrowdStrike-Like Issue,作者 David Eastman。
矫捷软件开发方法的一个被低估的长处是,它能够量化“假设”疑问的价值,而不会影响名目的连接性。也就是说,矫捷领有少量内置系统来审核名目周围的环境并质疑的做法。
这篇文章讨论了矫捷的技术和仪式如何在发现和应答或许形成严重侵害的疑问方面施展至关关键的作用——正如最近的CrowdStrike 争议所示。
1. 外部环境疑问
“外部环境疑问”是一个参考,在科幻小说中盛行起来,指的是咱们无法立刻了解的事情带来的要挟:
“外部环境疑问或 OCP 是对特定个体(组织、社会、文明或文明)阅历齐全生疏的应战。因为 OCP 是史无前例的事情,因此最终结果是无法预测的。”
你或许据说过许多其余表白相似意思的术语;从“未知的未知”到“黑天鹅”。咱们最近从 CrowdStrike 事情中看到的局部要素就是其中之一——安保软件造成大规模停机,而没有恶意行为者。
经过推进名目的边界,即使只是基于直觉或阅历,也会发生见地。
代码中存在着各种各样的失误,它们从未形成疑问。咱们只留意到那些被环境提醒的失误。咱们在开发环节中的上班是缩小失误暗藏的外表积,并找出正当的流程来修复出现的任何疑问。
矫捷十分长于为团队或许最后没有关注的疑问提供一个安保的游乐场来环视名目。它疏导人们对各个畛域的兴味,而不会失去对资源的追踪。
依据定义,组织中的任何人都不会花期间思考他们没有阅历的事情的或许结果。但是,经过推进名目的边界,即使只是基于直觉或阅历,也会发生见地。即使无法预感疑问的初始方式,也往往可以预感次级疑问。
矫捷提供的是技术和框架,它们都注重这些技术。你或你的团队可以独自驳回这些技术,而无需遵照其余关系通常,但正是这些技术在矫捷团队中随着期间的推移而获取增强。
2. 期间盒(Timebox)
这是一种正式的方式,用于限度子团队审核一个稍微偏离轨道的疑问的期间,同时将其坚持在冲刺内——团队赞同成功义务的固定期间段——并接受其余义务将在之后立刻被接手。
它正确地假定,假设一个处置方案须要深化钻研一个深奥的疑问,那么这个处置方案或许不实用于名目的时限。这是一种很好的方式来了解,没有哪个软件是“最终处置方案”,而仅仅是目前状况下,在现有资源下做事的正确方式。假设状况出现变动,可以在从新扫视这个疑问。
3. 回忆(Retrospective)
它通常被视为仅仅是一个周完结仪式,但实践上它是一种审核先前承诺的保障的关键方式。承诺在刚刚过去的冲刺中处置但尚未处置的举措,标明须要从新评价。它还让团队成员无时机凝听正在酝酿的风暴并启动干预。
假设不足理智的 Scrum Master 或团队指导的治理,这些回忆或许会过于凑近毛主义的“奋斗会”。让团队中的一名成员质疑另一名成员是肥壮的,但也或许形成摩擦。有时结果只是清单上的一个额外名目,但有时它会触发对整个名目的严重反思。
特权代码
让咱们先花点期间回忆一下CrowdStrike疑问的方式,虽然咱们目前还不知道所有细节,但它依然在咱们脑海中。在大少数操作系统(如 Windows)中,您有在“用户空间”运转的程序,与在“内核空间”运转的代码同样。只要特权代码可以在内核中运转,而用户空间中运转的程序代码(或线程)必需礼貌地向内核恳求消息,并期待结果。为了高效上班,安保软件须要在内核中运转,这样它就可以实时检查外部形态。咱们知道内核进程何时在 Windows 中检测到失误:您会看到臭名昭著的蓝屏死机,操作系统会中止运转以包全自身免受进一步损坏。
微软会对任何想要在内核中运转在 Windows 上的第三方系统启动一系列测试,并认证其能否经过。因为微软是一个宏大而缓慢的企业,您可以构想认证须要一些期间。假设您的上班是作为一家安保公司来发现 0 日攻打,而后立行将照应流传到您被付费包全的所无机器,那么期待 Bob 从假期回来启动一些测试是无法裁减的。
因此,为了绕过这个疑问,安保公司可以从其经过认证的已装置代码中加载额外的伪代码,以思考刹时变动。
到此为止。假设您在安保团队上班,并听到对于这种处置方案在多个回忆中不时积攒的消息,您会参加吗?这是一个很好的例子,它展现了一个齐全正当的处置方案,但依然存在缺点。(此视频很好地引见了内核代码畛域。)
4. Brown Bags
这些通常只是冗长的演示——通常在午餐期间——团队成员可以选用一个主题与团队讨论。这些用于协助为行未来到的更改或编码应战做好预备。
这些将团队成员对某个畛域的真正兴味或阅历与名目的关系性咨询起来。我记得做过一个对于正则表白式的主题。
让对某个畛域充溢激情的人实践运转它并不总是适合的,但将猎奇心流传到整个团队中一直是一件善报。
5. Sprint Zero
这是通常建设钻研峰值以及名目成功所需的其它定制系统的 Sprint。
人们钻研的一些最痴呆的事情是为测试环境伪造服务的方法。这些方法的副产品是迫使开发人员更多地了解他们正在伪造的实在服务,以及在整个服务生命周期中节俭期间。
论断
假设您尝试从严重事情倒推——问“咱们如何防止这种状况?”——您很快就会遗记事实生存不会发展,并制订出简直有关紧要的方案。简而言之,您将与过去的抗争作奋斗。即使您对矫捷没有兴味,也要思考如何在名目中构建审核门路的方法,而不会阻碍您的旅程。