通过厨房做菜解释什么是敏捷开发

本文通过厨房做菜的例子,形象地对比了瀑布开发与敏捷开发两种软件开发模式的特点及适用场景。瀑布开发像一次性上齐所有菜品,适用于需求明确的项目;而敏捷开发则采取分批交付的方式,更适应需求变化频繁的软件开发。

预计阅读时间:3分钟

0?wx_fmt=jpeg


厨房做菜,需要有买菜、切菜、炒菜这几个过程。如果厨房一共要做十道菜,那么一次性买这十道菜的食材,前处理这十道菜比如切菜,再一次性制作这十道菜,然后一次性交付给食客,这个过程就是瀑布开发,也就是所谓的横切。如果是一道菜一道菜地完成买菜、切菜、炒菜这几个过程,然后一道菜一道菜地分批交付给食客,这个过程就是敏捷开发,也就是所谓的竖切


当然,从食客的角度来看,有人喜欢一次性交付,特别是一大帮人,一道菜一道菜上很容易造成一道菜上了以后转了一圈就没有了,然后就要等下一道菜,非常不过瘾。但是如果厨房处理时间过长,食客要饿着肚子等很长时间,那么就会意见很大。所以有些食客喜欢一道菜一道菜地分批交付,不至于饿着肚子一直等着,可以边吃边等,而且对厨房的整体交付时间不会太敏感。


而厨房做菜与软件开发的最大区别是,厨房做菜是按餐单做的,都是标准化产品,需求清晰,过程熟悉;而软件开发是没有重复的,需求不清晰,充满不确定性。因此软件开发更难预估所需要的时间,在执行过程中,所需时间也是最不可控的因素,而通常客户都有一个目标日期需要满足。一次性按期交付的可能性非常低,风险非常大,而且反馈太迟,没有修正的机会。所以像一道菜一道菜分批上这样的持续交付,既能尽快获得客户的反馈,从而及时修正并确保后续交付的正确性,又可以不断地满足客户的部分需要,降低客户对时间的敏感度,降低影响。


至于如何把软件开发的过程变成一道道菜的分批交付,就需要有把项目拆分成一个个可独立交付的用户故事的能力。长按下面的二维码关注我的公众号可以看我的另一篇文章《把项目拆分成用户故事才是硬本领》详细讲述相关的方法。


640?wx_fmt=jpeg

0?wx_fmt=png


关于作者


  • 早期敏捷践行者

  • 起步于极限编程

  • 熟悉极限编程Scrum、看板方法、测试驱动开发、持续集成、行为驱动开发


基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究(Matlab代码实现)内容概要:本文围绕“基于可靠性评估序贯蒙特卡洛模拟法的配电网可靠性评估研究”,介绍了利用Matlab代码实现配电网可靠性的仿真分析方法。重点采用序贯蒙特卡洛模拟法对配电网进行长时间段的状态抽样与统计,通过模拟系统元件的故障与修复过程,评估配电网的关键可靠性指标,如系统停电频率、停电持续时间、负荷点可靠性等。该方法能够有效处理复杂网络结构与设备时序特性,提升评估精度,适用于含分布式电源、电动汽车等新型负荷接入的现代配电网。文中提供了完整的Matlab实现代码与案例分析,便于复现和扩展应用。; 适合人群:具备电力系统基础知识和Matlab编程能力的高校研究生、科研人员及电力行业技术人员,尤其适合从事配电网规划、运行与可靠性分析相关工作的人员; 使用场景及目标:①掌握序贯蒙特卡洛模拟法在电力系统可靠性评估中的基本原理与实现流程;②学习如何通过Matlab构建配电网仿真模型并进行状态转移模拟;③应用于含新能源接入的复杂配电网可靠性定量评估与优化设计; 阅读建议:建议结合文中提供的Matlab代码逐段调试运行,理解状态抽样、故障判断、修复逻辑及指标统计的具体实现方式,同时可扩展至不同网络结构或加入更多不确定性因素进行深化研究。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值