我的一个敏捷团队中的一个在项目早期阶段就采取了一种有趣的方法。他们没有开始使用Sprint 0来启动项目,而是在其中设置代码基础结构并确定解决方案体系结构,而是开始构建“行走的骨架”,他们将其描述为DevOps实践。

这看起来是什么归结为构建的东西很小(在API的情况下,单个端点仅返回200-OK),使其能够持续集成,并建立了持续交付管道以在各个环境中进行部署:


开发►测试►UAT►预生产►生产


在此过程中,他们设法剔除了许多非功能性需求

我的问题是:什么是“行走的骨架”?遵循DevOps的实践,它对敏捷团队有什么好处? >

评论

喜欢这个,我可以分享一个实际的(上周)事情,午餐后从中得到的结果是什么

经常让我感到困惑的是,他们在DevOps中学习新事物,就像“等等……这是常识!是的,在可持续性方面投入了更多精力。”

#1 楼

“行走骨架”是您的基本建筑概念的“概念验证”形式。在概念验证通常更多地集中于单个功能的情况下,“行走的骨架”是一种简约的端到端实现。 “行走的骨骼”不是您概念的概述(仅是“骨骼”),而是真正的可执行文件和可移植的(它可以“行走”:O),应进行测试。

Alistair Cockburn已对此进行了描述(并经常被引用):


行走骨架是系统的一个很小的实现,它执行小的端到端功能。它不需要使用最终的体系结构,但是应该将主要的体系结构组件链接在一起。然后,架构和功能可以并行发展。


DevOps的优势在于,应在项目早期开发“行走骨架”,并使其正常工作,可运输和可测试的代码。这样,DevOps可以在项目早期建立完整的连续集成链,而不必在项目的最后阶段开始使用。这意味着任何可能出现的问题也将在早期得到解决,而不是在最后进行工作。

评论


嗯,这不仅是CI链,而且从字面上讲还可以覆盖端到端生产管道,包括交付和部署。框架也是如此-您无需在第1天就对最终产品进行所有质量检查验证,就可以在框架上逐渐增加故事“肉”时,逐渐向该框架添加验证“肉”。

–丹·科尼莱斯库(Dan Cornilescu)
17 Mar 29 '17 at 12:59

我喜欢“肉”一词,非常适合所用的术语:P

– 7ochem
17年3月29日在13:01

好答案。我想这相当于最低限度可行产品的交付渠道。

–阿德里安
17年3月29日在15:39

这听起来与最低限度的可行产品相似,但在更细微的层面上-也许是“最低限度可行的组件”。从服务中返回200只是为了让它“运行”,这听起来像我的存根。

–戴夫·斯沃斯基(Dave Swersky)
17-3-29在16:55