经过软件行业几十年的发展,软件系统变得越来越复杂,传统的软件工程理论 使“软件危机”越来越严重。过长的开发周期、超出预算的开发成本、令人担忧的 软件质量、频繁流动的开发人员、官僚的体系制度、迅速变化的市场环境等因素, 让繁冗、笨重的软件开发过程越来越不能适应现实的需要,软件项目的失败率很高。 敏捷开发就是在这种背景下应运而生的。敏捷(Agile)是一种关注价值、消除浪费、 以人为核心、迭代、循序渐进的开发方法。