2018-10-23 敏捷实践—Set Based Design
敏捷实践—Set Based Design
“Have a fixed set of requirements is an illusion of certainty”
人的本性总是不喜欢不确定性的—总想在纷繁复杂,时刻发展变化的世界寻找确定性。但是不确定性和变化是规律和事实,所谓的确定性只是自己头脑的幻觉。
回到design的选择,我们可以问问这几个问题:
1)我们必须今天做决定吗
2)现在的design option是最优的吗?为什么?
3)我们有了充分的事实和知识支持我们做决定吗?(客户的,市场的,技术的等等)
4)谁将来做这个决定?基于什么?
5)在选择的option中有什么隐含的assumption?有没有被validate过?
如果答案不那么充分,也许SBD是一个方法可以考虑。因为指望一个超人或神仙可以预先作出英明的决定,是不合理的。设计design本身就是一个持续不断的把不确定性转化为知识的过程。无论系统设计的如何好,真实的客户需求和技术发展都在演化,所以不确定一直存在,我们要拥抱不确定性。
SBD maintains multiple requirements and design options for a longer period in the development cycle. As the timeline advances, SBD uses empirical data to narrow the focus on the final design option. Through this approach, one can assume variability, preserve options for as long as possible, providing maximum flexibility. Conversely, point-based design commits to a set of requirements and a single design strategy too early in the process. It often leads to late discoveries that require substantial rework as the deadline approaches. This may require shortcuts, quality compromises, and—worse—missed program commitments and deadlines. Using the Continuous Delivery Pipeline to provide feedback and learning along with SBD is often the optimal approach.
Employing SBD along with the teams, the System Architect/Engineering defines the subsystems and components for the solution and identifies architecture options for each. The teams then explore multiple alternative concepts for each subsystem, filtering out options that provide less economic value, are flawed in some way that cannot meet the targets, or violate laws of physics, etc.
The teams explore set-based design alternatives, applying a hypothesis-driven Minimum Viable Product (MVP) approach with a Lean Startup mindset. Design alternatives include hypotheses and assumptions. MVPs may also define experiments to gain the knowledge that allows teams to validate or invalidate those hypotheses, filter alternatives, and arrive at the optimal economic decision.
Of course, exploring multiple design options comes at a cost to develop and maintain those options, even if they are mostly model or paper-based. However, if there’s a high degree of innovation, variability, or immovable deadlines (e.g., the crop combine must ship in January), a set-based design may be the best choice. In this case, design efficiency depends on several factors:
> Flexibility – Preserving a broad set of design options for as long as possible;
> Cost – Minimizing the cost of multiple options through modeling, simulation, and prototyping;
> Speed – Facilitating learning through early and frequent validation of design alternatives.
BY 崔刚然 斩妖除魔净心田 :
1.这段文字体现的SAFe的精髓,几个核心原则都在里面:take economic view, multi option,确实是“文眼”所在;
2.然而,他有一个假设,就是“团队具备在PoC阶段就可以提前multi option的能力”,所有的团队都是这样吗?
3.我们回到“不确定性”本身,对于新生事物,整个“利益相关者的交易结构—即商业模式”都不明确的情况下,没有一个价值流段的人,能够“multi option,flexible arch.”,即便宣称有,也要打引号,此类不确定性太过不确定,
4.另外一类不确定性,即一个超大型或大型的组织,她所处的行业变化很快,组织的能力储备很全面,(也就是牛人一堆),但是组织管理方式的变化速度之加速度没有行业外部变化速度之加速度快,(对不确定性的表述用加速度更合理,因为一个大型企业由于其规模效益,速度基值很高,惯性很大,在存量型利益结构上有特殊的速度优势),但是资本,创新更看重加速度优势,基后发先至,加速度把新不确定性的发展速度逼近到和产业基值速度相当时,“利益相关者的交易结构”,就会被改变。应对这一类的不确定性,SAFe为规模化的组织开出了良药;PoC multi option是可行的,能力有,资金支持也有(当然,这个大企业更看重节流节省是相违背的);
5.有效识别不确定性类型,在选择合适的应对方法。“天下武功,唯快不破”,“独孤九剑,风靡有时”,“葵花宝典”也败于一时。
以上举了不确定性的两个极端,今天的我们该如何取舍,才是最值得思考的。
~ End ~