在DevOps文化中,失败不仅仅是一个选择;更是朋友。
DevOps只是价值流开发的另一个术语。 价值流是什么意思?
价值是与客户和利益相关者互动时产生的。 一旦进入价值流开发,很快就会意识到价值不是实体。 价值不断变化。 价值是一个过程。 价值是流动。
因此,术语流。 只有在流的情况下,价值才是价值。 这种价值流就是所谓的持续集成(CI)。
如何创造价值?
无论多么仔细地指定价值,其期望都会发生变化。 因此,定义和产生价值的唯一现实方法是征求反馈。
但是很明显,没有人自愿提供反馈。人们很忙。需要征求客户和利益相关者的反馈,但是无论如何,他们总是有更紧迫的事情要做。即使发脾气并坚持要求他们停止正在做的事情并提供我们急需的反馈,充其量也只会得到一些冷淡的评论。很少去做。人们很忙。
逐渐了解到,寻求反馈的最有效方式是失败。失败是让客户和利益相关者放弃一切,起来集中精力的肯定方式。如果拒绝失败,那么会继续自信地沿着发展道路前进,直到后来发现错了。
Agile DevOps文化就是要放弃这种傲慢的立场,并采取谦虚的态度。我们承认并不了解全部,致力于采用一种更为谦虚的方法来实现价值流。
尽快失败是至关重要的。这样,失败就不重要了。它是无害的,易于克服,易于修复。但需要反馈来知道如何解决它。最好的反馈是对失败的反应。
来从视觉上说明这种动态:
此图说明了通过以连续,永无止境的方式征求反馈来产生价值的动力。
失败适合哪里?
在上述过程中,在哪里看到失败? 这就需要另一个图表:
失败是关键。没有失败,任何有用的事情都不会完成。由此,得出结论,失败是我们的朋友。
怎么知道失败了?
在瀑布式方法的坏日子中,主要指令是“失败不是一种选择”。承受的压力是,每一步都必须取得完全合格的成功。我们竭尽全力避免收到任何反馈。保留了有关重大爆炸事件的反馈;当所有人都对构建的系统多少不满意时,就此开始了。
简而言之,那是失败的传统学习方式。随着agile和DevOps的出现,经历了文化转型,并接受了渐进式的迭代开发过程。每次迭代都以小的失败开始,进行修复并持续下去(小是此处的关键字)。但如何知道是否失败了?
唯一可以确定的方法就是要有一个可衡量的测试或目标。可衡量的测试将让我们知道是否以及如何失败。
现在已经做好了准备,并暴露了以无害,以失败为中心的文化基础,本系列的下一篇文章将深入探讨如何迭代失败的尝试,以满足可衡量的测试和目标。