发布了二十年的《敏捷宣言》是否依然适用?

news2025/1/14 18:31:18

敏捷宣言已经诞生二十年,这份简短却“颠覆”规则的文件,帮助我们将产品开发交付的方式,从长途运输变成了“次日达”一样的存在。当下的我们正处在一个持续创新的世界,面对技术变革洪流,有时候我们可能会产生思考:敏捷宣言是否仍然应该成为我们的指南?

在正式讨论这个问题之前,我们先来重温一下敏捷宣言:

一、敏捷宣言的诞生

2001年2月11日至13日,在犹他州瓦萨奇山的雪鸟(Snowbird)滑雪胜地洛奇酒店,17位软件开发领域的领军人物聚在一起 ,他们分享、探讨了非常多的软件开发方式、经验,比如:极限编程(XP)、透明化、自适应软件开发(ASD)、特征驱动开发(FDD)、动态系统开发方法(DSDM)等等,并试图找到他们的共同点,以更简单的规则来适应快速变化的环境。

经过为期三天的讨论,他们在价值观和原则层面上达成共识,选择了 Agile 一词并为其赋予了特殊的意义,制定并发布了软件行业历史上最为重要的文件之一:《敏捷宣言》

参会者将这个组织命名为“敏捷联盟( The Agile Alliance )”,希望能够帮助软件行业中的其他人以全新、更敏捷的方式思考软件开发、方法和组织。而“敏捷宣言”则被展示在一个网站上( https://agilemanifesto.org/ ) 。到目前为止,《敏捷宣言》已被翻译成了60多种语言,并作为一种信仰被推广至全球,甚至是非软件行业。

二、关于敏捷宣言的讨论:敏捷宣言是否依然适用?

1、不断发展的敏捷实践

从敏捷宣言发布时起,其内容就几乎就没有发生过变化,但围绕敏捷的世界却大不相同。

敏捷宣言的17位发起人虽然成功地在几个核心原则下统一了他们不同的观点,但争论并没有就此结束。在某些方面,敏捷的发展早已经超越了创始人在开始时所提出的范畴,并且似乎每个人对敏捷都有自己的看法。比如SAFe、LeSS等等,甚至有些敏捷实践和软件开发没有任何关系,而敏捷宣言却曾这样描述:“我们正通过这样的方式,来帮助其他人发现更好的软件开发方法。

Scrum.org 的 CEO 戴夫·韦斯特 (Dave West) 曾前往各个组织观察敏捷实践,然后组建了一个研究团队,并使用敏捷开发的模式研究病毒治疗遗传失明的方法。事实上,软件开发之外的领域利用敏捷方法的已经并不少见,但这并不在宣言提出人的意料之中。

敏捷专业人士布坎南曾这样解释《敏捷宣言》:“并不是说它不能被解释,而是需要更深入的理解才能确保这些原则/价值观被正确地翻译”,但即使在软件开发中,要正确理解并执行这些原则也并不容易。

2、像流水线一样生产敏捷

许多人认为,敏捷培训和咨询的泛滥加剧了“伪敏捷”之类的存在,有些人甚至将这种敏捷推广背后的组织称为“敏捷产业联盟”。敏捷专业人士布坎南曾这样评价这种现象:“你做的和说的可能都是对的,但你不理解基本的敏捷原则”。

甚至有些人认为敏捷管理工具制造厂商,比如 PingCode、Atlassian 也加剧了这种情况,因为工具支持像 Scrum 和 Kanban 这类敏捷框架,固化了敏捷,让使用敏捷的人不用加以理解就能直接使用。但实际上,敏捷是一种文化价值,团队应该可以用他们认为最合适的方式工作。而敏捷框架与敏捷文化价值观是并存的,但如果你没有文化上的认同,那么你所做的可能从一开始就有缺陷。

为了敏捷而敏捷,过度追求敏捷本身,往往会与宣言的原则背道而驰——过分关注细节、缺乏交付、僵硬的遵守流程原则,出现这种现象的从业者甚至有些是带有敏捷证书的。这些糟糕的敏捷体验很可能机会导致一些人完全放弃敏捷。但是在敏捷被广泛采用的同时,很多人也会因《敏捷宣言》有时被误导,那么《敏捷宣言》还是一份值得参考的指南吗?

四、《敏捷宣言》还有意义吗?

在与数以百计的客户、内部和外部敏捷教练、敏捷爱好者和狂热的实践者交谈之后,以及从社交媒体上花了大量的时间调研之后,可以确认的是:敏捷宣言仍然具有现实意义,甚至现在比以往更有意义。

Scrum.org的CEO 戴夫·韦斯特 (Dave West) 曾这样评价:敏捷原则其实根本不是什么新东西,它们只是以一种不同的方式被应用。敏捷宣言的价值就像是伽利略、阿基米德等科学工作者发现的定律/规律。

或者,我们可以这样认为,《敏捷宣言》最大的成就是整理出了一种尚未用于软件开发领域的思维方式。

那么,我们应该根据世界的变化对《敏捷宣言》进行更新吗?

不一定。

当像《敏捷宣言》这样具有文化意义的东西出现

文章转自:敏捷开发指南系列文章

推荐阅读:

1、Scrum三大工件包括哪些?在敏捷开发中的作用?

2、Scrum 四个会议及正确召开方式

3、Scrum 开发方法中的3大角色及其岗位的具体职责

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/74614.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

day42 文件包含LFIRFI伪协议编码算法代码审计

前言: #知识点: 1、解释-什么是文件包含 2、分类-本地LFI&远程RFI 3、利用-配合上传&日志&会话 4、利用-伪协议&编码&算法等 #核心知识: 1、本地包含LFI&远程包含RFI-区别 一个只能包含本地,一个可…

操作系统例题合集(持续更新)

传送门 由于操作系统知识太多,再加上我总结的比较细,所以一片放不下,拆分成了多篇文章。 操作系统笔记——概述、进程、并发控制 操作系统笔记——储存器管理、文件系统、设备管理 操作系统笔记——Linux系统实例分析、Windows系统实例分析 …

模拟和矢量信号源进阶使用技巧

前言 通常射频信号源的简单应用通常只是输入频率、功率,加上一些模拟、数字调制,然而要充分挖掘出信号源的潜力和性能需要更多的技巧。本应用指南会告诉您可以通过更多的方式提高射频信号源输出信号的质量,具体内容包括: 1. 提高…

【LeetCode_字符串_逻辑分析】6. Z 字形变换

目录考察点第一次:2022年12月9日10:58:17解题思路代码展示题目描述6. Z 字形变换 将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如下&#xf…

DAP组件外部服务开发说明

DAP数据分析平台主要是为了满足企业数据分析的需要而开发的一款产品,不同于一般的BI平台,DAP数据分析平台更侧重数据的聚合,平台预置有数据源注册、ODS注册与管理、数仓配置与数据聚合,从而实现企业业务数据的统一,构建…

不掌握这些坑,你敢用BigDecimal吗?

背景 一直从事金融相关项目,所以对BigDecimal再熟悉不过了,也曾看到很多同学因为不知道、不了解或使用不当导致资损事件发生。 所以,如果你从事金融相关项目,或者你的项目中涉及到金额的计算,那么你一定要花时间看看…

C++ 特殊类的设计

文章目录1. 设计一个只能在堆上创建对象的类2. 设计一个只能在栈上创建对象的类3. 设计一个类不能被拷贝4. 设计一个类 不能被继承5. 设计一个类,只能创建一个对象前言: 在本文中,我们掌握几种常见的特殊类的设计。1. 设计一个只能在堆上创建…

微信小程序使用vant 和 mobx 自动定义Tabbar

vant 和 mobx 自动定义Tabbar 在此案例中,用到的主要知识点如下: 自定义组件 Vant 组件库 MobX 数据共享 组件样式隔离 组件数据监听器 组件的 behaviors Vant 样式覆盖 1.首先需要给我们的app.json 配置tabBar “custom”:true 注意点&…

代码随想录算法训练营第五十九天| LeetCode503. 下一个更大元素 II、LeetCode42. 接雨水

一、LeetCode503. 下一个更大元素 II 1:题目描述(503. 下一个更大元素 II) 给定一个循环数组 nums ( nums[nums.length - 1] 的下一个元素是 nums[0] ),返回 nums 中每个元素的 下一个更大元素 。 数字 x 的…

实践 DevOps 测试策略

什么是 DevOps 测试策略? DevOps 的一个重要组成部分是持续集成/持续交付(CI/CD),在 CI 和 CD 之间的就是持续测试。 如果不进行持续测试,将会出现: 缺陷的泄漏软件延期交付客户不满意DevOps 测试策略的好处 可以提供更快的反…

如何在vscode、remix中结合hardhat编译部署合约

创建 hardhat 工程 # 创建npm空项目,注意这里要选择合约项目对应的文件目录 npm init # 安装 hardhat 环境,这里安装的版本 2.11.1 npm install --save-dev hardhat2.11.1 # 创建工程 npx hardhat首先创建 npm 空项目,注意这里要选择合约项目…

Linux编程环境

一、实验目的 1.熟悉Linux下C语言程序设计的基本步骤 2.掌握gcc编译器的各种参数的使用方法 3.掌握gcc编译器创建函数库的方法 4.掌握gdb调试程序的方法 5.掌握多文件编译中的makefile的用法 二、实验软硬件要求…

matlab学习笔记(八)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 matlab学习笔记(八)一、傅里叶变换的MATLAB求解二、连续时间信号的频谱图三、MATLAB分析LTI系统的频率特性一、傅里叶变换的MATLAB求解 MATLAB的symb…

大学生网页设计制作作业实例代码 (全网最全,建议收藏) HTML+CSS+JS

文章目录📚web前端期末大作业 (1500套) 集合一、网页介绍二、网页集合三、作品演示A电影主题B漫画主题C商城主题D家乡主题E旅游主题F餐饮/美食主题G环境主题H游戏主题I 个人主题K体育主题L博客主题M汽车主题N文化主题P美妆主题Q企业主题R教育主题S其他主题&#x1f…

Docker的私有仓库部署——Harbor

一.Docker原生私有仓库—— Registry 1.1 Registry的简单了解 关于Docker的仓库分为私有库和公有仓库,共有仓库只要在官方注册用户,登录即可使用。但对于仓库的使用,企业还是会有自己的专属镜像,所以私有库的搭建也是很有必要的…

力扣(LeetCode)1780. 判断一个数字是否可以表示成三的幂的和(C++)

进制转换 转换 333 进制,如果每一位非 000 即 111 ,returntruereturn\ truereturn true (数字 000 除外)。 如果任意一位为 222 ,returnfalsereturn\ falsereturn false 。 证明: 对于第 ppp 位, 如果 p0p0p0 &#…

数据结构——树和二叉树最全总结(期末复习必备)

目录 树和二叉树 树的基本术语(均以上图b为例): 遍历二叉树: 线索二叉树: 树的存储结构: 树与二叉树的转换(利用的就是把二叉树和树表示成相同的二叉链表): 森林与二…

KubeSphere 接入外部 Elasticsearch 最佳实践

作者:张坚,科大讯飞开发工程师,云原生爱好者。 大家好,我是张坚。今天来聊聊如何在 KubeSphere 中集成外置的 ES 组件。 KubeSphere 在安装完成时候可以启用日志组件,这样会安装 ES 组件并可以收集所有部署组件的日志…

索引优化学习

背景 最近做查询优化,学到的。字段长度,索引长度联合索引计算是否使用范围查询使用索引 字段长度(varchar) 只谈论varchar:首先我们建表varchar(20) 中的20是字符数。看你的数据库编码 执行:show creat…

支持多种网关类型!米尔基于Zynq-7010/20开发平台工业网关设计应用

随着工业物联网的飞速的发展,5G时代的到来,工业控制系统在生产领域应用越来越广泛,工业物联网为未来工业控制系统灵活性和可扩展性的需求提供了支持。工业物联网使我们的生产数据可以进行规模化集中存储,并利用高速采集、云计算等…