1、敏捷项目管理的14个问题2020敏捷宣言01敏捷宣言01个体交互高于过程工具02可运行程序高于文档03客户合作高于合同谈判04响应变化高于遵循计划敏捷的核心思想02敏捷的核心思想以人为本,拥抱变更敏捷的12个原则03敏捷的12个原则针对人的01针对计划的02针对产品的03敏捷的12个原则针对人的项目由有激情,可信的人合作完成0204每隔一段时间,团队成员应该进行自我反思和调整在整个项目开发周期中,业务人员应该与开发人员一起工作03在团队中面对面沟通效率最高01敏捷的12个原则针对计划的1即使在开发后期也应该接受变更2工作的软件是衡量进度的首要标准3敏捷开发过程应保持稳定的开发节奏4不做过度的设
2、计和预测敏捷的12个原则针对产品的1应该尽早向客户交付有价值的程序2交付的频率应该越高越好3最好的架构和设计来源于自组织的团队4不断关注新的技术和设计愿景声明与产品路线图04愿景声明确定项目(产品)目标 能够位企业带来何种利益目标客户是谁,特征如何客户所关心的/项目所能满足的需求为何已存在的竞品与竞品的差异/自身的竞争力制作前提 了解企业的战略目标考虑产品愿景与战略目标之间的关系带来利润/扶持其它战略项目产品路线图作用 展示产品/项目的基本特性,及其时间安排开启和发布时间创建过程 识别产品的需求归纳整理产品的主题和特性根据产品的特性,估算其优先级并排序(打分)安排项目实施的时间规划用户故事05
3、用户故事01定义类别02创建03估算(优先级排序)04LOGO用户故事定义对某个产品需求的简单描述定义对某个产品需求的简单描述用户故事类别(一般)用户故事02史诗故事01类别(一般)用户故事02史诗故事01用户故事创建需求分析描述用户故事评价用户故事(INVEST)创建需求分析描述用户故事评价用户故事(INVEST)创建需求分析识别项目关系人识别客户(使用产品的人)识别需要完成的任务创建描述用户故事谁(客户)希望完成(功能/需求描述)以便(商业价值描述)创建评价用户故事(INVEST)0103独立的(Independent)可协商的(negotiate)有价值的(valuable)020405
4、06可估算的(estimate)小型的(small)可测试的(testable)用户故事估算(优先级排序)ABC影响因素估算方式优先级影响因素客户要求 经济原因经济回报开发成本新技术的试探应该高优先级依赖关系风险因素风险识别,进度,成本,技术高风险,高价值优先高风险,低价值延后估算(优先级排序)估算方式由PO选取商业价值高的用户故事01开发成员同时给出工作量估算02优先级u价值/工作量估算(优先级排序)SprintBacklog的创建06SprintBacklog的创建01要素意外情况的备注02SprintBacklog的创建要素用户故事LOGO用户故事任务负责人预估工作量完成情况冲刺评审07
5、冲刺评审参与人员0204优势由PO向项目干系人展示当次冲刺完成的产品及其功能03会议关键01冲刺评审参与人员PO01项目干系人02用户代表03冲刺评审会议关键PO应该毫无掩饰地向项目干系人展示产品地所有功能演示的环境必须与生产环境一致会议的关注点在演示上,无需太多文档会议中需要收集干系人的反馈,作为项目变更的依据冲刺评审优势通过演示展示当前项目的实际进展01尽早向用户反馈,从而获得更真实的需求02敏捷工程实践08结对编程由两个人完成代码的编写,一人负责实施,一人从旁监督提醒优势 及早发现编码中存在的缺陷提升代码质量促使团队在知识层面上更容易达成共识持续集成 开发人员经常性地构建他们的工作,每天
6、至少集成一次能够更直接地反应当前的项目进度能够及时发现集成后的缺陷并可以立即修复避免缺陷在最终集成时的堆积优势集成耗时因该尽可能短需要有完备的自动化测试工具以及测试用例修复失败的构建是开发人员最优先的任务集成结果应该向所有成员公开关键 以测试作为编程的中心,要求在编写代码前必须完成测试用例,并且围绕用例进行编码TDD还要求测试必须可自动化完成 优势 保证代码质量 提高代码可读性 关键 测试用例需要设计完备,同时不能有依赖关系 测试用例代码与开发代码都需要简洁测试驱动开发敏捷度量09敏捷度量功能特性易用性终端用户企业管理难度投资人回报率风险团队技术开发敏捷实践10敏捷实践315全天的工作定义产品
7、愿景以及产品路线图为发布做准备4展示工作和集成反馈2计划发布与冲刺Scrum的角色11Scrum的角色项目负责人P O负责分析项目的商业价值,决定该项目应该完成的工作,并对其进行排序,制作并维护p r o d u c t b a c k l o g敏捷主管S M激发团队活力,推动每日的工作,促进项目成员间的正常交流,并扫除敏捷过程中的障碍开发团队负责每日的开发生产工作,是冲刺的执行主体项目干系人除了以上三个角色外,还包括客户,用户,主管等敏捷教练传授敏捷方法的人,并不直接参与到项目执行中Scrum的工件12Scrum的工件01一个记录了产品特性 的列表,并按照特性的 商业价值进行排序Produ
8、c t B ac k l og02当前冲刺中需要完成的任务Sp r i nt B ac k l og03每次冲刺结束后可发 布的产品Produc t I nc re m e nt04当前冲刺过程中剩余 的工作时间B ur ndown C h ar t05 看板Scrum的仪式13Scrum的仪式冲刺计划会议PO,SM以及开发人员决定当此冲刺应该处理的任务以及冲刺结束后发布的产品每日例会一个简单的会议,由SM主持,开发人员汇报当前的工作情况,遇到的障碍以及之后的计划冲刺评审由PO向项目干系人展示当此冲刺的产品及其功能,并收集相关反馈冲刺回顾由PO,SM以及开发人员讨论回顾当次冲刺存在的缺陷,以及
9、可能的解决方法产品backlog细化 ProductBacklog的创建14ProductBacklog的创建要素ProductBacklog的创建要素特性用户故事u商业价值u工作量u优先级u完成情况特性关于冲刺15定义u指一次迭代,该迭代中产生的产品还能通过验收关于冲刺主要工作01020304创建产品可交付的功能产品负责人与开发人员需要对任务进行细化,开发和测试SM需要做的是识别阻碍,并将其解决每 日 冲 刺 工 作(每 日 例 会)冲 刺 回 顾 冲 刺 评 审 冲 刺 计 划 会 议冲刺回顾16冲刺回顾PO,SM以及团队成员回顾和总结当次冲刺存在的缺陷与不足,并提出改进的意见参与人员会议
10、关键优势冲刺回顾参与人员SM(主持人)1PO2开发人员3可能还会有项目干系人4冲刺回顾会议关键活跃会议气氛,让团队成员能够积极参与进来01讨论需要时刻关注重点,不应该分散02冲刺回顾优势01刺激和鼓舞开发人员的士气02挖掘优秀的开发经验和方法03避免犯相同的错误04改进团队气氛敏捷的核心价值观17敏捷的核心价值观愿意承担任务 并承诺完成承 诺尊重每个人的背景和经验尊 重把精力集中在工作和任务中专 注项目的一切都对项目内成员公开开 放0105020304有勇气做出承诺,并接受他人尊重勇 气敏捷管理与敏捷转型18敏捷管理与敏捷转型管理转型敏捷管理与敏捷转型管理概念管理计划管理开发过程管理验证管理发
11、布管理生命周期管理概念管理需求分析以及高层的架构设计,会产生product backlog 冲刺计划以及进一步的系统设计计划管理开发过程管理冲刺/迭代过程管理敏捷管理与敏捷转型转型例子核心包括全部的计划,开发,验证以及发布版本敏捷02包括部分计划,全部的开发与验证过程项目敏捷01在上述基础上增加了对产品概念以及产品声明周期的管理产品敏捷03三个阶段核心敏捷转型的成功关键是团队意识的转变以及团队技能的提升,通过三步走的方式,实现人员技能,工程能力,流程,工具等方面的积累在风险可控的情况下达到全面敏捷的转型敏捷开发主要框架19敏捷开发主要框架n ASDn FDDn TDDn AUPn XPASD是迭代开发的一种,每次迭代包括推测,协作以及学习三个阶段,共同推进项目的进程FDD是轻量级的敏捷开发方式,融合了多种行业认可的最佳实践,能够快速地向客户展现有价值的软件 AUP是简化版的RUP,包括7个方面:建模,开发,测试,发布,配置管理,项目管理,环境管理XP是一种近螺旋式的开发过程,通过将项目分解为多个小周期,积极沟通反馈,从而调整开发过程,让客户了解项目进度感谢聆听