Continuous integration 是否每月发布,瀑布变相?

Continuous integration 是否每月发布,瀑布变相?,continuous-integration,continuous-deployment,agile,continuous-delivery,agile-processes,Continuous Integration,Continuous Deployment,Agile,Continuous Delivery,Agile Processes,我开始深入研究敏捷,并对某些公司如何推广他们的发布提出了疑问。我需要了解社区是否同意服务的每月发布周期在理论上与瀑布相同?我的理由是,如果一个团队将几个服务更改/功能捆绑在一起,每月发布一次大规模的版本,那么它与瀑布是一样的。那不是吗 “敏捷方式”是在每个变更/修复/功能合并时发布它们?敏捷价值观之一是 请注意,它没有指定您需要根据特定的频率或方法进行释放。这是因为敏捷是一种方法,不是一个框架,也不是一种方法 一个组织也许能够每月发布一次,但仍然能够很好地应对变化。这在很大程度上取决于产品的性质

我开始深入研究敏捷,并对某些公司如何推广他们的发布提出了疑问。我需要了解社区是否同意服务的每月发布周期在理论上与瀑布相同?我的理由是,如果一个团队将几个服务更改/功能捆绑在一起,每月发布一次大规模的版本,那么它与瀑布是一样的。那不是吗
“敏捷方式”是在每个变更/修复/功能合并时发布它们?

敏捷价值观之一是

请注意,它没有指定您需要根据特定的频率或方法进行释放。这是因为敏捷是一种方法,不是一个框架,也不是一种方法

一个组织也许能够每月发布一次,但仍然能够很好地应对变化。这在很大程度上取决于产品的性质和环境。其他组织可能需要在更改/修复/功能准备就绪后尽快发布。这两个组织仍然可以遵循敏捷方法


作为一个极端的例子,想象一种产品,它只在圣诞节被顾客使用过。频繁发布仍然是有价值的,因为这有助于降低技术风险,但每次新功能完成时发布可能被认为是过火了。

关于Scrum的原著《使用Scrum的敏捷软件开发》规定了每月的冲刺。然而,it和其他方法通过指定每个sprint创建一个“可能可交付的产品”来断开sprint与发布(即开发与交付)的联系。产品应该处于可以交付给客户的状态,但出于商业原因,公司可能不会选择这样做。(顺便说一句,我看到的一个原因是,客户只希望每季度发布一次安全补丁除外。)

另一方面,尽管敏捷社区对此存在争议,但持续交付不必被sprint日期所阻碍:您可以根据需要随时交付,随时获得接受,并使用sprint结束仪式向利益相关者展示sprint期间批准和交付的一切


作为一名维护瀑布认证(PMP)的敏捷教练,因为瀑布适用于某些类型的项目,我认为说敏捷是瀑布的一个子集是基于将交付与周期捆绑在一起的误解,这是不必要的。

我认为每月发布的方法将是一种灵活的反模式,替代方法将:1.隔离缺陷“爆炸半径”2.允许更少痛苦的回滚3.最小化发布支持4.更好地定义服务变更的所有权/责任我投票将此问题作为离题来结束。请参阅“关于软件开发方法和实践或项目管理的问题”的警告。请考虑软件工程或项目管理层交换这些问题。“我接受您的观点。”令人惊讶的是,您嵌入了链接,因为问题的基础来自“频繁交付工作软件,从几周到几个月,优先选择较短的时间段。”。。。我的意见征询集中在每月规模的批量变更上。对我来说,敏捷是瀑布的一个子集(瀑布的一个专门和成熟的孩子)。