敏捷方法与敏捷宣言解读
一、敏捷的定义
“敏捷”(Agile)一词在《牛津平装词典》中被定义为“灵活、快速移动”。在软件开发领域,这一概念反映了各种被归类为敏捷方法的主要目标,即能够灵活、快速地响应需求变化、开发团队人员变动以及软件开发过程中出现的问题。
敏捷方法并非单纯追求“灵活”,而是聚焦于软件开发的首要目的——生产出可运行的软件。在实际开发中,我们常常会为了向高级管理层汇报进度而暂停软件的实际开发,制作精美的 PowerPoint 图表。虽然这种汇报并非完全不必要,但可能并不需要如此华丽的形式来达到相同的目的。敏捷方法强调做对软件开发有用、有成效的事情,并对其他行为提出质疑。
例如,一个用于小型俱乐部会员注册的简单 Web 应用程序,它需要获取会员的姓名和地址,收取 10 英镑费用,并发送确认电子邮件。按照传统思路,可能需要一系列详细的文档,如需求规格说明书、详细设计文档、测试规格说明书、安装手册等。但如果这个系统只是一个临时解决方案,等到功能更强大的主 Web 应用程序开发完成后就会被淘汰,那么很多之前开发的文档可能就会被弃用。
敏捷方法致力于专注软件开发的主要目标,即创建可运行且无缺陷的软件。这与快速编写代码但质量不佳的“黑客式”编程不同。敏捷意味着在当前情况下既有效又足够,具体表现为:
- 有效性 :尽可能生产出可运行、无缺陷的软件。
- 充分性 :在短期和长期内都能满足需求。例如,长期项目所需的文档会比短期项目更多。同时,“充分”也意味着不要过度,为软件添加可能永远不会用到的工程支持通常被认为是不必要的。
超级会员免费看
订阅专栏 解锁全文
211

被折叠的 条评论
为什么被折叠?



