一、敏捷的流程简介
敏捷开发的原则是:
1、尽早并持续地交付有价值的软件以满足顾客需求
2、敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势
3、经常发布可用的软件,发布间隔可以从几周到几个月,能短则短
4、业务人员和开发人员在项目开发过程中应该每天共同工作
5、以有进取心的人为项目核心,充分支持信任他们
6、无论团队内外,面对面的交流始终是最有效的沟通方式
7、可用的软件是衡量项目进展的主要指标
8、敏捷流程应能保持可持续的发展。领导、团队和用户应该能按照目前的步调持续合作下去
9、只有不断关注技术和设计,才能越来越敏捷
10、保持简明——尽可能 简化工作量的技艺——极为重要
11、只有能自我管理的团队才能创造优秀的架构、需求和设计
12、时时总结如何提高团队效率,并付诸行动
敏捷的步骤:第一步:找出完成产品需要做的事情——Product Backlog第二步:决定当前的冲刺需要解决的事情——Sprint Backlog团队成员能主导任务的估计和分配,他们的能动性得到极大的发挥。第三步:冲刺
二、敏捷流程的问题和解法
第一步:各个需求和任务之间是有种种复杂的依赖关系的,除了优先级之外,我们还要考虑相互的依赖关系。第二步:把一个任务从产品层级的,描述逐步细化到技术实现层面,是很需要技术能力和交流能力的。第三步:每日例会。
三、敏捷的团队:假设一个团队做得还不错,现在要变成敏捷流程,团队要做以下改变,1、自我管理,2、自我组织、3、多功能型
敏捷流程的经验教训:
1、敏捷宣言表明的是一些优先级,不必当做圣旨或者教条来争论。
2、Scrum Master不是一个官,而是一个没有行政权力的沟通者,就像微软的PM那样。
3、一些项目需要很多暗箱操作和政治角力才能搞定。
4、在复杂的项目里,要让一线团队成员做决定。
5、创业公司的团队其实经常是运行在Scrum的模式中
6、在Scrum计划阶段的估计 不是一个“合同”,领导们不要把它当成一个合同。
7、不要和管理层谈“流程”,他们只关心“结果”
8、早大型团队、跨地区的团队,或者复杂项目中,Scrum并没有非常完美的答案。