看板:在制品(work-in-progress, WIP)必须被限制
WIP上限和拉动式生产
 
1. Scrum与看板简述
Scrum:组织拆分,工作拆分,开发时间拆分,优化发布计划,过程优化
看板:流程可视化,限制WIP,度量生产周期
 
2. Scrum和看板的关系
Scrum和看板都是过程工具
Scrum和看板只是给了一些明确的约束和指导,比如,Scrum的约束是固定时长的迭代和跨功能团队,看板的约束是要有可见的看板,队列大小要有约束
敏捷方法也被称作轻量级方法
 
3. Scrum规定了角色
Scrum规定了三种角色:PO/Team/SM,看板没规定任何角色
 
4. Scrum规定了固定时长的迭代
Scrum的迭代混合了三种活动:计划/过程改进/发布
 
5. Scrum按迭代限制WIP,看板按流程状态限制WIP
 
6. Scrum与看板都是经验主义,需要自省/反馈/调整
 
7. Scrum在迭代期间内拒绝变化
看板的原则是“一件出去,一件进来”,响应时间等于手头事情的处理时间
Scrum的平均响应实践等于sprint长度的一半
 
8. 关于任务规模
     Scrum团队只承诺一个迭代内能完成的任务,如果任务太大会进行拆分
     看板对任务规模没有明确规定必须要在某个时间段做完
 
9. Scrum规定了估算和生产率,看板没有规定估算
     有的团队跳过估算,把每个任务拆分得大小接近,统计每周完成的特性数
     有的团队把任务打包成MMF(最小适销特性),度量每个MMF的生产周期,建立SLA(服务品质承诺)
 
10. 跨产品的团队如何使用backlog
    可以把产品backlog当作团队backlog看待     
    可以通过泳道来区分多个产品
 
---------------------------------------
scrum与看板,看了本书之后确实比以前更清楚(自认为)
 
1. scrum更侧重团队的组织与工作任务拆分(实施),看板更侧重于任务流的可视化(呈现)
2. 看板让团队的工作更透明,更多的细致工作需要scrum来落实实施(三会,各种角色,估算,sprint)
3. 两者都是过程工具,和设计模式一样是前人经验,应用到团队中需要取其精华去其糟粕,摸索适合本团队的方法
4. 团队通常会将scrum和看板结合使用
 
书中出现的几个关键字,
 
WIP:work-in-progress,在制品,WIP必须被限制是kanban的主要思想之一
泳道:最开始是在UML中出现,叫swimlane也有人叫partition,除了纵向的按照状态定义的列,还可以使用横向的泳道区分,比如区分一个团队中的多个产品
T恤法:用来做估算,小/中/大,定性不定量
 
Scrum
 
我们不是靠一个庞大的团队,花大量时间造出庞然大物;而是用小团队在短时间内
做出小块的东西来,在有规律的集成中组装出全貌。
 
二、看板开发方式简介 
 
相同点
 
 
不同点
 
 
 
 
Scrum看板开发方式
要求定时迭代没指定定时限迭代,可以分开计划、发布、过程改进,可以事件驱动而不是限定时限
团队在每个迭代承诺一定数目的工作承诺不是必须的
以速度(Velocity)作为计划和过程改进的度量数据使用开发周期作为计划和过程改进的度量数据
指定跨功能团队没有指定跨功能团队,也容许专门团队
工作任务细分,可于一个迭代中完成没有指定工作任务大小
指定使用燃烧图没有指定任何图表
间接限制开发中工作(每个迭代)设定开发中工作的限制(每个工作流程状态)
规定估算过程没有指定任何估算方式
在迭代中不能加入新工作任务只要生产力容许,可以随时加工作任务
由单一团队负责 Sprint Backlog多个团队和团员分享看板
指定三个角色(产品负责人/ScrumMaster/团队)没有指定任何团队角色
Scrum board 在每个迭代后重设看板反映持久开发情况
规定优先化的 product backlog优先级是非必须的

Scrum 与  XP

不同点:Scrum 非常突出Self-Orgnization(管理 ),XP 注重强有力的工程实践 约束 。在具体的应用中可以将两者结合,在管理模式上启用Scrum, 而在实践中,创造一个适合自己项目组的XP(“start with Scrum and then invent your own version of XP.”)

以下为转载:

区别之一 : 迭代长度的不同

XP的一个Sprint的迭代长度大致为1~2周, 而Scrum的迭代长度一般为 2~ 4周.

区别之二 : 在迭代中, 是否允许修改需求

XP在一个迭代中,如果一个User Story(用户素材, 也就是一个需求)还没有实现, 则可以考虑用另外的需求将其替换, 替换的原则是需求实现的时间量是相等的。 而Scrum是不允许这样做 的,一旦迭代开工会完毕, 任何需求都不允许添加进来,并有Scrum Master严格把关,不允许开发团队收到干扰

区别之三 : 在迭代中,User Story是否严格按照优先级别来实现

XP是务必要遵守优先级别的。 但Scrum在这点做得很灵活, 可以不按照优先级别来做,Scrum这样处理的理由是: 如果优先问题的解决者,由于其它事情耽搁,不能认领任务,那么整个进度就耽误了。 另外一个原因是,如果按优先级排序的User Story #6和#10,虽然#6优先级高,但是如果#6的实现要依赖于#10,则不得不优先做#10.

区别之四 :软件的实施过程中,是否采用严格的工程方法,保证进度或者质量

Scrum没有 对软件的整个实施过程开出养个工程实践的处方, 要求开发者自觉保证 .

但XP 对整个流程方法定义非常严格,规定需要采用TDD, 自动测试, 结对编程,简单设计,重构等约束团队的行为 。因此,原作者认为, 这点上,XP的做法值得认同的,但是却把敏捷带入了一个让人困惑的矛盾, 因为xp的理念,结合敏捷模式,表达给团队的信息是“你是一个完全自我管理的组织, 但你必须要实现TDD, 结对编程, ...等等”

不难发现,这四个区别显见的是: Scrum非常突出Self-Orgnization, XP注重强有力的工程实践约束

在管理模式上启用Scrum, 而在实践中,创造一个适合自己项目组的XP(“start with Scrum and then invent your own version of XP.”)

05-11 20:35