敏捷软件开发实践—基于Scrum框架

讲师:潘德有 发布日期:12-31 浏览量:0

课程介绍:

在一些软件开发企业,包括自主开发、为第三方提供服务、离岸外包等,都会面临一系列开发挑战。这包括多变的环境、客户需求不确定(很难全面获得客户需求)、以及新技术等。按照Cynefin 框架和Stacey 矩阵,需求、技术和人是开发团队面临的最大挑战。传统的预测型(瀑布模式)无法在这种环境下完成交付目的。企业开始选择和转型到适应型开发方法中(即敏捷)。

敏捷思维模式(或特定方法,如Scrum),融合了精益中的小批量交付、关注价值、避免浪费、持续改进等做法,并在《敏捷宣言》的指导原则下以应对需求多变、快速且小批量交付、快速使用成果、关注价值等做法,实现当前软件开发业的诉求。本课程重点围绕Scrum框架,融合XP、精益、看板等最佳实践,为项目软件开发团队提供一套完整可行的项目交付方法。

学习收获:

  1. 能够清晰的理解和认识敏捷软件开发中的各类角色,以及干系人的职、权、责;
  2. 能够理解敏捷团队各岗位(如PO、Scrum Master、开发团队等)的职责;
  3. 能够完整的启动、规划、开发、评价、结束一个敏捷项目,或敏捷中的一个发布、冲刺;
  4. 能够全局理解客户、发起人的可变性诉求,能够及时关注并交付软件成果和价值;
  5. 能够按照Scrum框架(或类似敏捷框架),从端到端理解、应用全过程开发方法。

适用对象:

       敏捷项目经理、需求工程师、软件分析师、产品负责人、开发团队、敏捷转型团队、IT/软件开发人员。期望对敏捷项目管理有全面了解的人,包括Scrum、ACP相关人员。

课程时间:

2天,6hours/天,共计12hours

课程大纲

第一天上午9:00-12:00(偏理论)

  1. 敏捷软件开发基本概念
  2. 敏捷转型中的要点说明
  1. 传统软件开发项目特点
  2. 敏捷软件开发生命周期介绍
  1. 敏捷宣言解析
  1. 敏捷四大价值观工作用于
  1. 敏捷12条原则工作应用
  1. 软件混合型方法的采用说明
  2. 敏捷软件开发项目复杂性说明
  3. 敏捷软件开发项目立项
  4. 确定敏捷项目角色
  1. 产品负责人(PO)的角色与职责
    • PO人选、任命与职责要求
    • PO如何代表发起人关注敏捷开发价值
  2. 跨职能开发团队角色与职责
    • 开发团队人员构成要求
    • 开发团队人员选择和组建要求
    • 开发团队人员技能要求
  3. Scrum Master角色与职责
    • 传统项目经理与敏捷教练的区别
    • 如何理解“团队促进者”这个定义
  4. 其他干系人在敏捷中的角色职责
    • 发起人角色
    • 客户和用户角色
    • 职能负责人角色
    • 其他角色

第一天下午13:00-16:00(实际应用)

  1. 确定软件开发项目愿景
  1. 确定软件产品开发愿景
    • 制定并发布软件产品愿景说明书
    • 商业需要与项目目的说明书
  2. 制定与发布产品路线图
    • 产品路线图制定要求
    • 产品路线图更新和复盘说明
  3. 确定软件项目开发版本

案例应用:S公司是一家游戏开发企业,公司决定通过敏捷方法尝试开始一个新项目,在现有的团队中,管理层决定选择一位产品负责人、一个敏捷项目负责人、8个开发团队成员。你是S公司外聘的一个敏捷教练,你应该给他们什么建议?

  1. 收集与梳理敏捷软件需求
  2. 制定产品待办事项列表
  1. 产品待办项(Backlog)格式和要求
  2. 产品负责人在此处所面临的困难和解决方案
  3. 软件开发项目需求说明
    • 功能与非功能需求
    • 过渡需求
    • 项目管理需求
  1. 收集与整理敏捷软件需求
  1. 需求格式制定与说明
    • 需求与用户故事概念
    • 角色建模技术
    • 用户故事如何表达
      1. 如何用卡片表达故事
      2. 用户故事的对话机制
      3. 确认与发布用户故事
      4. 如何从史诗到用户故事
    • 优秀用户故事的特点
      1. INVEST特征
      2. 绘制故事地图
  2. 收集和启发需求的方法
    • 访谈技术
    • 头脑风暴
    • 原型法
    • 联合应用开发
  1. 在产品待办项中确定一次发布
  2. 敏捷软件需求和传统项目需求差异

案例应用:S公司根据软件开发要求,决定先梳理出一部分开发内容,在定义“用户故事”时,团队通过“卡片”展示每个故事的特点,并在故事卡的背面记录了每个故事的测试和验收条件,你能否按照这个要求,也梳理出当前项目的“故事卡”?

第二天上午9:00-12:00(实际应用)

  1. 定义与规划冲刺(迭代)
  2. 冲刺规划会议
  1. 什么是冲刺(迭代)规划会议
  2. 参与者职责说明
  3. 发布单次冲刺要求
  1. 需求优先级梳理
  1. MoSCoW原则的使用
  2. 时间盒子概念
  3. 决策技术的应用
  4. 投票原则
  1. 冲刺工作量估算和速率
  1. 用户故事常见工作量估算单位
  2. 故事点和理想日
  3. 冲刺待办项估算要点
    • 团队估算
    • 估算的准确度和精确度
    • 估算的相对性
  4. 冲刺速率
    • 什么是速率
    • 预测和确定冲刺速率
  1. 冲刺(迭代)规划注意事项
  1. 迭代燃尽图和燃起图的使用
  2. 单次冲刺发布与开工仪式

案例应用:在S公司刚批准的新软件开发项目中,对于已经创建在案的“需求”,产品负责人分析了他们的优先级,在需求优先级定义的过程中,大家都参与了讨论。你现在有20个用户故事,现在如何给出他们的优先级?

  1. 冲刺(单次迭代)过程
  2. 开发团队
  1. 跨职能要求(T型特征团队)
  2. 分工协作
  1. 单次冲刺工作量确认
  1. 探测
  2. 第0次冲刺和第1次冲刺
  1. 任务分解与冲刺
  1. 将用户故事拆分为任务
  2. 创建任务看板和执行
  3. 解决问题与“停车场图”使用
  4. 每日工时单提交
  5. 基于流程的敏捷和基于迭代的敏捷
  1. 团队协作
  1. 每日站立会议
    • 会议参与者
    • 会议时长说明
    • 会议内容要求
  2. 关注技术债务

第二天下午13:00-16:00(实际应用)

  1. 工作绩效报告发布
  1. 信息发射源的概念
  2. 使用看板推动任务执行
  3. 迭代燃尽图和燃起图检测过程

案例应用:K公司的团队在展示燃尽图时,发现截止到第5天的进展情况突然出现直线下降,你是否能够用燃尽图很好的展示项目单次迭代的绩效呢?

  1. 冲刺(迭代)评审与回顾
  2. 评审
  1. 评审会议的安排
  2. 评审的主要目的
  3. 评审的参与者
  4. 评审与部署、发布
  1. 变更
  1. 过程管理中的变更问题
  2. 产品评审结果变更问题
  1. 回顾
  1. 什么时候举行回顾会议
  2. 回顾的目的和意义
  3. 如何做到持续改进

案例应用:K公司针对新产品开发项目中的需求,进行了定义和说明,但是怎么样才能够“即满足客户诉求,也满足执行诉求”,看看团队如何开展基于价值和优先级的交付策略,如何切合产品功能和属性,并阶梯式交付,怎么样理解“迭代与增量”的思维模式。谁对价值和交付负责,谁来推动目标的落地。

  1. 大规模敏捷特点
  2. 基于Scrum的单一交付模式
  3. 大规模敏捷开发特点
  4. 最终产品发布与上市
  5. 基于短迭代短交付的上市原理
  6. 及时获取和分析产品价值
  7. 评估产品投资回报情况

案例应用:针对敏捷开发过程的全过程管理,新产品按照迭代开发和交付,并实时交付价值,满足市场需求,获得投资者和客户的认可。如何判断是否得到回报和收益?



分享
联系客服
返回顶部