关于敏捷宣言的解读

举报
floraff 发表于 2021/12/03 10:14:18 2021/12/03
【摘要】 敏捷软件开发宣言简称敏捷宣言,包括价值观和原则两项内容。敏捷软件开发宣言被视为敏捷软件开发的指导思想。

什么是敏捷软件开发宣言

2001年2月,在美国犹他州瓦萨奇山雪鸟滑雪胜地,17位软件开发领域的大师共同发布了《敏捷软件开发宣言》(Manifesto for Agile Software Development)。大师们包括来自于极限编程、ScrumDSDM、自适应软件开发、水晶方法、特征驱动开发、实效编程的代表们,还包括了希望找到文档驱动、重型软件开发过程的替代品的一些推动者。

敏捷软件开发宣言被视为敏捷软件开发的指导思想。

敏捷软件开发宣言的内容

敏捷软件开发宣言简称敏捷宣言,包括价值观和原则两项内容。

价值观

我们一直在实践中探寻更好的软件开发方法,身体力行的同时也帮助他人。由此我们建立了如下价值观:

个体和互动 高于 流程和工具

工作的软件 高于 详尽的文档

客户合作 高于 合同谈判

响应变化 高于 遵循计划

也就是说,尽管右项有其价值,我们更重视左项的价值。

敏捷宣言遵循的原则

  1. 我们最重要的目标,是通过持续不断地及早交付有价值的软件使客户满意。
  2. 欣然面对需求变化,即使在开发后期也一样。为了客户的竞争优势,敏捷过程掌控变化。
  3. 经常地交付可工作的软件,相隔几星期或一两个月,倾向于采取较短的周期。
  4. 业务人员和开发人员必须相互合作,项目中的每一天都不例外。
  5. 激发个体的斗志,以他们为核心搭建项目。提供所需的环境和支援,辅以信任,从而达成目标。
  6. 不论团队内外,传递信息效果最好效率也最高的方式是面对面的交谈。
  7. 可工作的软件是进度的首要度量标准。
  8. 敏捷过程倡导可持续开发。责任人、开发人员和用户要能够共同维持其步调稳定延续。
  9. 坚持不懈地追求技术卓越和良好设计,敏捷能力由此增强。
  10. 以简洁为本,它是极力减少不必要工作量的艺术。
  11. 最好的架构、需求和设计出自自组织团队。
  12. 团队定期地反思如何能提高成效,并依此调整自身的举止表现。

敏捷软件开发宣言的理解

宣言的第一句:我们一直在实践中探寻更好的软件开发方法身体力行的同时也帮助他人。其中有四个关键词:

  • 实践:所谓实践出真知,宣言是从实践中得出的,具有可参考和可落地的指导意义。
  • 软件开发方法:敏捷宣言是从软件开发实践中得出的,主要用来指导软件开发,其他领域的推行要因地制宜。
  • 身体力行:敏捷要先从自身做起,以自己为中心去影响其他人。
  • 帮助他人:将敏捷的价值观和方法论分享给更多需要的人,普惠大众。

接下来是四句价值观,每个价值观都遵循相应的敏捷原则。

要重视个体的意愿和能力的提高,同时要重视团队内和团队间的沟通、合作,构建自组织团队,定期反思、持续提高和改进。

遵循的敏捷原则

理解

业务人员和开发人员必须相互合作,项目中的每一天都不例外

强调跨团队的交互合作

激发个体的斗志,以他们为核心搭建项目。提供所需的环境和支援,辅以信任,从而达成目标。

强调个体的重要性,决定员工表现的两个核心要素是能力和意愿,给予信任和支持、激发斗志都能够极大提升意愿。

不论团队内外,传递信息效果最好效率也最高的方式是面对面的交谈。

沟通的有效性比较为:见面沟通>语音沟通>文字沟通。面对面的沟通可以有肢体语言和情绪的辅助,提升有效性。

最好的架构、需求和设计出自自组织团队。

根据J. Richard Hackman的授权矩阵(),自组织团队接近自管理和自规划型团队,自组织解放了知识工作者的创造力和主观能动性,最有可能做出最好的架构和设计。

团队定期地反思如何能提高成效,并依此调整自身的举止表现。

通过定期反思和调整,实现团队和个体的持续改进

坚持不懈地追求技术卓越和良好设计,敏捷能力由此增强。

提高团队和个人能力的必经之路。只有能力提高,才能在有意愿的情况下胜任工作。

软件开发的目标和进度衡量标准都是交付可工作的软件,给客户带来价值。让客户满意,因此我们要小步快跑,频繁交付、及早获得反馈。

遵循的敏捷原则

理解

我们最重要的目标,是通过持续不断地及早交付有价值的软件使客户满意。

关键词:目标、持续不断、及早交付、有价值、客户满意。

经常地交付可工作的软件,相隔几星期或一两个月,倾向于采取较短的周期。

关键词:经常地交付、可工作、短周期

可工作的软件是进度的首要度量标准。

关键词:可工作

以简洁为本,它是极力减少不必要工作量的艺术。

关键词:简洁、减少不必要的工作量。体现了精益思想中的减少浪费。

作为软件开发方,我们和客户之间从来不是对立面,不是零和博弈,而应该建立的是双赢的关系,只有为客户创造有价值的产品,团队的付出和劳动才是有价值的,所以在项目过程中我们要做的是客户合作,而不是单纯依赖于最初的一纸合同去谈判。

遵循的敏捷原则

理解

业务人员和开发人员必须相互合作,项目中的每一天都不例外。

业务人员代表的是客户需求,我们要与业务人员合作,进而和客户合作,高质量的完成任务,为客户带去价值,实现双赢。

我们最重要的目标,是通过持续不断地及早交付有价值的软件使客户满意。

项目的目标是客户满意,通过交付有价值的软件,给客户带来收益,实现双赢。

遵循的敏捷原则

理解

欣然面对需求变化,即使在开发后期也一样。为了客户的竞争优势,敏捷过程掌控变化。

整个开发过程我们都是围绕客户的目标去进行项目的规划,当市场环境和客户的需求有变更时,我们应该做的是及时响应和调整,而不是遵循原始计划,在敏捷中,计划也是分层次的,从愿景、产品路线图、版本计划、迭代计划到每日计划渐进明细,不是一蹴而就。


最后一句:尽管右项有其价值,我们更重视左项的价值。工具流程、文档、合同和计划对于项目很重要,不可或缺,但是相对来说,个体交互、可以工作的软件、客户合作和及时响应需求变化的价值更大。

注:J. Richard Hackman的授权矩阵

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。