敏捷宣言与12项原则
2001年2月11日至13日,17位软件开发人员作为极限编程、Scrum 、自适应软件开发、动态系统开发( DSDM )等逐渐显露头角的开发方法的代表, 聚集在犹他州瓦萨奇山脉的雪鸟滑雪度假村的小屋里,讨论他们对于软件的各种想法和不同开发方法的共性。经过为期三天的讨论,他们在价值观和原则层面上达成共识,选择了 Agile 一词并为其赋予了特殊的意义,制定并发布了软件行业历史上最为重要的文件之一:敏捷宣言。
参会者将自己命名为“敏捷联盟( The Agile Alliance )”,希望能够帮助软件行业中的其他人以新的、更敏捷的方式思考软件开发、方法和组织。而“敏捷宣言”则被展示在一个网站上( https://agilemanifesto.org/ ) ,到目前已被翻译成了60多种语言,并作为一种信仰被推广至全球以及非软件行业。
敏捷软件开发宣言
我们一直在实践中探寻更好的软件开发方法,身体力行的同时也帮助他人。由此我们建立了如下价值观:
个体和互动 高于 流程和工具 工作的软件 高于 详尽的文档 客户合作 高于 合同谈判 响应变化 高于 遵循计划
也就是说,尽管右项有一定的价值,我们更重视左项的价值。
敏捷宣言遵循的原则
我们遵循以下原则:
我们最重要的目标,是通过持续不断地及早交付有价值的软件使客户满意。
欣然面对需求变化,即使在开发后期也一样。为了客户的竞争优势,敏捷过程掌控变化。
经常地交付可工作的软件,相隔几星期或一两个月,倾向于采取较短的周期。
业务人员和开发人员必须相互合作,项目中的每一天都不例外。
激发个体的斗志,以他们为核心搭建项目。提供所需的环境和支援,辅以信任,从而达成目标。
不论团队内外,传递信息效果最好效率也最高的方式是面对面的交谈。
可工作的软件是进度的首要度量标准。
敏捷过程倡导可持续开发。责任人、开发人员和用户要能够共同维持其步调稳定延续。
坚持不懈地追求技术卓越和良好设计,敏捷能力由此增强。
以简洁为本,它是极力减少不必要工作量的艺术。
最好的架构、需求和设计出自自组织团队。
团队定期地反思如何能提高成效,并依此调整自身的举止表现。