2.7.3 Scrum 团队

  • 理想的环境
  • 团队章程
  • 如何组建 Scrum 团队
  • 产品待办事项列表
  • 用户故事
  • 敏捷开发流程

理想的环境

  • 5-9人
  • 100%
  • 跨职能
  • 在一起
  • 自组织

自组织

  • 目标
  • 授权
  • 沟通
  • 可视化
  • 辅导
  • 奖励

要我做 => 我想做,我要做,我要做好

团队章程

  • 团队价值观:速度与工作时间
  • 工作协议:例如:“就绪”定义,“完成”定义
  • 基础规则:例如:会议规则
  • 团队规范:迟到、冲突
  • 坦诚、高效沟通
  • 包容
  • 相互帮助
  • 简洁、反馈、尊重

如何组建 Scrum 团队

  • 先确定 scrum master 人选,再由 SM 组建其他团队成员
  • SM 应该由熟悉 scrum 流程和敏捷原理的人担当
  • 根据项目的需要决定团队中要拥有哪些技能
  • 团队中没有 team lead 这样的强势领导
  • 选取能力较强的人作为团队成员
  • 崇尚全栈工程师

产品待办事项列表

用户故事

  • 三个要素
  • 3C 原则
  • 拆分原则
  • 拆分关键点

三个要素

  • 角色:站在用户角度描述需求的一种方式,谁要使用这个功能
  • 活动:从操作场景描述,需要完成什么样的功能
  • 商业价值:为什么要这个功能,带来什么样的价值

典型描述句式:中文:作为一个 XXX <客户角色>,我需要 XXX <功能>,带来 XXX 好处<商业价值>

英文:As a , I want to , so that

3C 原则

  • 卡片(Card):卡片上可能会写上故事的简短描述,规则和完成标准
  • 交谈(Conversation):用户故事背后的细节来源于和客户或产品负责人的交流沟通
  • 确认(Confirmation):通过验收测试确认用户故事被正确完成

拆分原则

  • I:Independent,可独立交付给客户
  • N:Negotiable,便于与客户交流
  • V:Valuable,对客户有价值
  • E:Estimate,能估计出工作量
  • S:Small,分解到最底层的用户故事粒度尽量小,至少在一个迭代中能完成
  • T:Testable,可测试

拆分关键点

  • 周期控制在 1·5 个工作日,一般在 1 个工作日
  • 识别关键路径上的 Story,并做风险管理,避免影响项目进度
  • Story 下 Task 分解由模块负责人组织开发一起分解并做工作量评估
  • 每个 Story 要有负责人,一般由工作量较多的人负责,可以由研发认领

敏捷开发流程

  • PO 和开发团队对产品业务目标达成共识
  • PO 负责建立并维护产品待办需求列表,并排优先级
  • PO 在每轮迭代前,先 review 需求列表,并筛选高优先级需求进入本轮迭代开发内
  • 开发团队细化、拆分本轮迭代需求,并按照需求优先级,依次在本轮迭代内完成
  • 开发团队每日站会同步更新开发进展,并持续集成,使开发任务进展透明可见。站会时团队成员应自个解释进展,而非 SM 代替解释
  • PO 对每轮迭代(比如:2周)交付的可工作的软件进行现场验收和反馈
  • Sprint 回顾会
  • 回到第三步,开启下一轮

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

欢迎转载、使用、重新发布,但务必保留文章署名 郑子铭 (包含链接: http://www.cnblogs.com/MingsonZheng/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。

如有任何疑问,请与我联系 (MingsonZheng@outlook.com) 。

.NET 云原生架构师训练营(模块二 基础巩固 Scrum 团队)--学习笔记的更多相关文章

  1. .NET 云原生架构师训练营(设计原则与模式)--学习笔记

    在复杂系统的架构设计中引入设计原则与模式,能够极大降低复杂系统开发.和维护的成本 目录 几个问题 为什么要学习设计模式 优良架构设计的具体指标 理解复杂系统 面向对象思想(指导复杂系统的分析.设计.实 ...

  2. .NET 云原生架构师训练营(权限系统 代码重构)--学习笔记

    目录 模块拆分 代码重构 模块拆分 代码重构 AuthenticationController PermissionController IAuthorizationMiddlewareResultH ...

  3. .NET 云原生架构师训练营(KestrelServer源码分析)--学习笔记

    目录 目标 源码 目标 理解 KestrelServer 如何接收网络请求,网络请求如何转换成 http request context(C# 可识别) 源码 https://github.com/d ...

  4. .NET 云原生架构师训练营(模块一 架构师与云原生)--学习笔记

    目录 什么是软件架构 软件架构的基本思路 单体向分布式演进.云原生.技术中台 1.1 什么是软件架构 1.1.1 什么是架构? Software architecture = {Elements, F ...

  5. .NET 云原生架构师训练营(建立系统观)--学习笔记

    目录 目标 ASP .NET Core 什么是系统 什么是系统思维 系统分解 什么是复杂系统 作业 目标 通过整体定义去认识系统 通过分解去简化对系统的认识 ASP .NET Core ASP .NE ...

  6. .NET 云原生架构师训练营(权限系统 RGCA 架构设计)--学习笔记

    目录 项目核心内容 实战目标 RGCA 四步架构法 项目核心内容 无代码埋点实现对所有 API Action 访问控制管理 对 EF Core 实体新增.删除.字段级读写控制管理 与 Identity ...

  7. .NET 云原生架构师训练营(模块二 基础巩固 敏捷开发)--学习笔记

    2.7.1 敏捷开发 敏捷介绍 敏捷的起源 敏捷软件开发宣言 敏捷开发十二原则 生命周期对比 敏捷开发的特点 敏捷的发展 敏捷的核心 敏捷的起源 2001年,17个老头子在一起一边滑雪,一边讨论工作, ...

  8. .NET 云原生架构师训练营(模块二 基础巩固 MongoDB 介绍和基础)--学习笔记

    2.5.1 MongoDB -- 介绍 mysql vs mongo 快速开始 mysql vs mongo 对比 mysql mongo 数据存储 table 二维表结构,需要预先定义结构 json ...

  9. .NET 云原生架构师训练营(模块二 基础巩固 MongoDB 问答系统)--学习笔记

    2.5.6 MongoDB -- 问答系统 MongoDB 数据库设计 API 实现概述 MongoDB 数据库设计 设计优化 内嵌(mongo)还是引用(mysql) 数据一致性 范式:将数据分散到 ...

随机推荐

  1. 学习笔记——JS语言精粹

    JS作用域是基于词法作用域的顶级对象. JS是一门弱类型语言,强类型能在编译时检测错误. JS是唯一一门所有浏览器都能识别的语言. 块注释对于被注释的代码是不安全的,例如/*  var rm=/a*/ ...

  2. java.net.BindException:Problem binding to [hostname:8088]地址已在使用

    异常提示端口号被占用 查找被占用的端口 netstat -tln netstat -tln | grep 8083 netstat -tln ## 查看端口使用情况,而netstat -tln | g ...

  3. Flutter AS设备连接显示loading解决方案

    看了网上很多解决方案,基本都是要杀dart进程后,删除lockfile 文件,然后运行检查命令flutter doctor. 这个方式有一定的意义,但是确实不一定解决这个问题. 今天就遇到了这样的问题 ...

  4. pandas的学习8-pandas-plot出图

    import pandas as pd import numpy as np import matplotlib.pyplot as plt ''' 这次我们讲如何将数据可视化. 首先import我们 ...

  5. SVN 使用教程 命令 visual studio 使用SVN

    首先推荐大家一个应该是国内外最好的SVN仓库,不限私有,不限成员:https://svnbucket.com/ SVN官网 https://tortoisesvn.net/downloads.html ...

  6. JVM 经典垃圾收集器 —— CMS 收集器

    本文部分摘自<深入理解 Java 虚拟机第三版> 概述 CMS(Concurrent Mark Sweep)收集器是一种以获取最短回收停顿时间为目标的收集器.由于大部分 Java 应用主要 ...

  7. javaScript编写9*9口诀

    学习html+css+javaScript<!DOCTYPE html> <html> <head> <title>chaoba</title&g ...

  8. java开发手册之哨兵语句

    if(条件判断1){ return; } if(条件判断2){ return; } //do  another things 注意事项:一定要避免多个if else 判断 带来逻辑混乱 可读性变差

  9. 对于home主页的切换处理

    经过测试,发现,在home首页的时候,滑动到某一个位置的时候,如果再点击tabbar中的"购物车"."分类"或者"我的"的时候,再点击到首页 ...

  10. 如何解决 ajax跨域被阻止 CORS 头缺少 'Access-Control-Allow-Origin'的问题?

    已拦截跨源请求:同源策略禁止读取位于 http://192.168.1.72:8080/securityMonitor_TV/service/getTest 的远程资源. (原因:CORS 头缺少 ' ...