“关键清单”,指的是一个切中要害的敏捷行动项参考列表,能为敏捷实践者在行动时提供参考,避免在错综复杂的真实场景中,遗漏重要的步骤。好比出门前常念的口诀:“身手钥钱”,让你不会因为匆忙,而忘记重要的东西。
对于敏捷教练、企业实践敏捷的团队成员和管理者来说,虽然学习了大量的敏捷实践的相关知识,但在具体落地敏捷实践时,会因为复杂场景突发情况的干扰,遗漏一些关键的行动项。
ThoughtWorks敏捷实践关键清单,可以为使用者列出具有ThoughtWorks特色的敏捷管理和技术实践的关键行动项,提醒使用者在进行敏捷实践时,不要遗漏切中要害的行动,并鼓励团队根据自身情况进行清单的定制化和改进。
不同于汗牛充栋的敏捷实践经典文献,或散落各处的敏捷实践博客,“ThoughtWorks敏捷实践关键清单”并不追求大而全,而只为敏捷实践者,提供切中要害且短小精悍的行动项清单,让敏捷实践者即使在复杂场景中,也不会遗漏关键的行动项。
“关键清单”的灵感,来自《清单革命》一书。该书提醒我们,对于敏捷转型这样一个复杂甚至是混沌的工作,光凭人的直觉和经验已然无法驾驭其复杂度。“求大求全”的各种材料,虽然能部分解决“无知之错”(即由于缺乏知识而导致失误),但无法解决“无能之错”(即已经具备相关的知识,但由于疏忽导致失误),而且往往最终会面临无人问津的境地。而我们真正需要的,是在掌握了相关知识后,能有一个极简、有效、切中要害的执行清单、核查清单和沟通清单,来帮助我们面对复杂和混沌,做出正确的行动,避免犯“无能之错”。
当然,“关键清单”并不能替代“大而全”的书籍材料。“关键清单”假设使用者已经具备了相关的基础知识,所以会有意省略一些显而易见的行动项。要想使用好“关键清单”,需要先学习相关的敏捷实践的价值观、原则和方法。
为便于查找,本文所列“关键清单”按照敏捷开发团队工作的时间先后排序,并包含清单名称和相应的价值。某个“关键清单”的详情页面,可以点击相应的超链接来访问。目前先提供其中几个“关键清单”的详情页面,其他详情页面会陆续推出。
下面的关键清单,基于我本人作为敏捷教练,从2014年至今这5年,在ThoughtWorks辅导10余家国内金融头部企业的实践经验而编写。其中汇聚了大量ThoughtWorks同事、社区中的敏捷实践者、所服务的客户的智慧,在此表示深深的谢意。其中必有疏漏不当之处,肯请给我反馈,我会及时修正。
时点1:当获得原始需求时
- “用户问题还是解决方案”关键清单:分辨原始需求是用户问题还是解决方案,以发现真正的用户问题
- “电梯演讲”关键清单:描述产品的价值假设
- “用户画像”关键清单:描述产品的用户特点
- “用户目标”关键清单:描述产品如何让用户成为Better Me,以吸引用户
- “用户问题定义“关键清单:描述所识别出的用户问题
时点2:当形成问题定义时
- “用户体验地图”关键清单:识别用户体验中的痛点
- “纸面原型”关键清单:快速验证用户交互界面的可用性
- “用户故事地图”关键清单:识别用户故事,以便进行软件开发
- “用户故事拆分”关键清单:将大故事拆小,以便提升价值流动效率
- “用户故事验收条件”关键清单:编写用户故事验收条件,以便减少返工
时点3:当产生用户故事时
- “故事梳理工作坊”关键清单:为下一个迭代的用户故事编写验收条件,以便提升迭代计划会的效率
- “迭代计划会”关键清单:本迭代的目标?团队承诺在本迭代完成哪些用户故事?如何才算完成?
- “每日站会”关键清单:同步用户故事的进展和风险
- “价值流式开发管理”关键清单:不设置迭代周期,而使用看板更灵活地管理价值流动
- “分支策略”关键清单:尽早、频繁、小批地解决代码冲突
- “持续集成”关键清单:尽早、频繁、小批地解决软件集成问题
- “暗部署”关键清单:将“部署”与“发布”分离,尽早、频繁、小批地解决部署中出现的问题
- “敏捷度量”关键清单:制定全局度量指标,以评估过程改进的成效
- “领域驱动设计工作坊”关键清单:让开发人员和领域专家就业务领域知识和通用语言达成共识,并识别核心域,以便让软件代码与业务概念对齐
- “用户故事开卡”关键清单:在代码编写前消除对需求的误解,大幅降低变更的成本
时点4:当为用户故事编写首行代码时
- “用户故事验卡“关键清单:在代码编写完成后立即检验,能大幅降低返工的成本
- “自动化单元测试”关键清单:自动化单元测试的运行无须依赖测试环境,成本最低,速度最快
- “集体代码回顾”关键清单:多双眼睛,多道检查;及时纠偏,又快又好;知识分享,消除瓶颈,对齐约定
时点5:当用户故事通过测试而待部署时
- “迭代评审会”关键清单:为用户展示已完成的用户故事,获取其反馈,以便持续改进
- “迭代回顾会”关键清单:发现改进点,形成行动项,进行持续过程改进
- “最大痛点改进工作坊”关键清单:尽早、频繁、小批地识别“价值最大、质量最差”的最大痛点,并将其拆解,迭代地解决
- “改进形”关键清单:教练一对一地帮助学员制定频繁和小批的改进计划,并及时回顾,循环往复,以提升学员能力
时点6:当用户故事部署上线时
- “验尸报告工作坊”关键清单:尽早、频繁、小批地针对线上事故,回顾没有限制住的“小裂纹”,以便改进过程与系统,提升系统的稳定性