敏捷管理
敏捷管理
01敏捷开发是一种以人为核心、迭代、循序渐进的开发方法,在敏捷开发中,项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征 。
敏捷项目管理简化了繁琐的流程和文档管理,主张团队内部的面对面沟通和交流。以 Scrum 为代表,简单、持续集成、不断交付、价值优先、拥抱变化的原则在面对时刻变化的市场经济和不断发展的技术时变得十分友好。
01敏捷宣言
敏捷宣言:
我们一直在实践中探寻更好的软件开发方法,身体力行的同时也帮助他人,由此我们建立了如下价值观:
个体与互动 重于 流程和工具
工作的软件 重于 详尽的文档
客户协作 重于 合同谈判
响应变化 重于 遵循计划
也就是说,尽管右项有其价值,我们更重视左项的价值。
02敏捷12原则
我们遵循以下选择:
第一,我们最重要的目标,是通过及早和持续不断地交付有价值的软件使客户满意。
第二,欣然面对需求变化,即使在开发后期也一样。为了客户的竞争优势,敏捷过程掌控变化。
第三,经常地交付可工作的软件,相隔几星期或一两个月,倾向于采取较短的周期。
第四,业务人员和开发人员必须相互合作,项目中的每一天都不例外。
第五,激发个体的斗志,以他们为核心搭建项目。提供所需的环境和支援,辅以信任,从而达成目标。
第六,不论团队内外,传递信息效果最好效率也最高的方式是面对面的交谈。
第七,可工作的软件是进度的首要度量标准。
第八,敏捷过程倡导可持续开发。责任人、开发人员和用户要能够共同维持其步调稳定延续。
第九,坚持不懈地追求技术卓越和良好设计,敏捷能力由此增强。
第十,以简洁为本,它是极力减少不必要工作量的艺术。
第十一,最好的架构、需求和设计出自自组织团队。
第十二,团队定期地反思如何能提高成效,并依此调整自身的行为表现。
03敏捷核心实践和原则
包括但不限于以下:
-
在迭代中尽早演示交付的价值
-
用户故事反映商业价值和优先级
-
客户持续改进
-
所有需求的验收测试
-
回顾
-
可持续的节奏或速度
-
沟通
-
高度可视化
敏捷不包含什么
-
预先的设计和需求收集
-
项目完工预测
-
死亡行军项目:项目团队为弥补估算差距无偿加班
-
强迫使用工具,例如任务管理工具
-
自上而下管理和控制
-
大量文件,特别的状态报告,软件架构图,软件需求规格说明书,测试计划
敏捷益处
-
强调协同合作,团队授权,频繁过程演示
-
轻量级,依靠白板,概要卡片和便利性工具
-
吸引开发者的开发重点
-
更快的上市时间和高优先级特征驱动开发生命周期
-
关注,拉而不是推
-
容易理解
-
满足客户的需要
04敏捷的优点
第一,拥抱变化,敏捷开发高适应性,更加灵活。
第二,充分利用开发的个人优势,调动开发者的工作热情,增加产出
第三,管理需求的优先级,更好地响应客户需求
第四,改进项目的可见性,最小化风险 (短的迭代),快速应对市场
第五,以人为本,改进团队精神
第六,简化开发流程,增强软件质量