【白话唠敏捷】建立Scrum敏捷管理角色和价值观
wxin55 2024-10-28 20:25 13 浏览 0 评论
本文我会尽量以白话方式了解团队中不同的角色,以及如何改变团队对产品开发的价值观和理念。
一、敏捷角色
通常,产品负责人、开发团队和Scrum主管共同组成Scrum团队,团队成员之间没有谁是领导,大家是伙伴关系。另外,干系人和敏捷导师不是Scrum框架中的部分但至关重要。
产品负责人
产品负责人负责处理客户、业务干系人和开发团队间的认知差距。他是产品以及处理客户需求和优先级的专家,保护开发团队免受业务干扰等。
在Scrum开发中,产品负责人需要:
- 制定产品战略和方向,设定长短期目标
- 将开发出的产品价值最大化
- 提供产品专业知识
- 理解需求,并与开发团队就需求展开讨论
- 对需求进行收集、优先级排序
- 对预算和盈利能力负责
- 决定功能发布时间
- 与团队协作,回答问题做出决策
- 验收完成的工作
优秀的产品负责人要能处事果断,他们深入理解客户需求,每天权衡各方面做出业务决策,他们很务实也能做出取舍,开发团队随时都可以找到他们,他们很有耐心特别是回答开发团队的问题时。
开发团队成员
任何在开发第一线的人员都是开发团队成员,例如秃头码农、UI设计师、测试员......
在Scrum开发中,开发团队需要:
- 直接负责创建可交付物
- 成员确定各自任务和完成任务的方式
- 跨职能工作
- 具备多项技能
- 理想情况下,同时只专注一个产品目标
优秀的开发人员需要具备多项技能,简单的说,除了他们的主要技能和广泛接触到的团队所需的技能外,他们还精通一两项技能,这样的团队开发速度更高,因为他们可以清除单点故障。
Scrum主管
Scrum主管负责为开发团队提供支持,扫清组织层面障碍,并保证所有流程始终秉持敏捷原则。
他与项目经理不同,Scrum主管时服务型领导者,为团队提供支持,不是问责者的角色。
在Scrum开发中,Scrum主管需要:
- 帮助团队和组织遵守Scrum价值观和实践
- 帮助团队扫清障碍,保护开发团队免受外部干扰
- 促进干系人和Scrum团队紧密协作
- 团队内部建立共识
- 保护Scrum团队免受组织层面干扰
优秀的Scrum主管不需要具备项目经理的工作经验,他是敏捷流程专家,引导团队通过反思回顾获得更高的绩效,优秀的Scrum主管还有很强的沟通能力和组织影响力。能在互相冲突的意见中寻求协商解决方法。Scrum主管的影响力不同于权力,影响力来自专业知识、工作年限、魅力、人际关系,不要低估一个有组织级影响力的Scrum主管的价值。
二、敏捷价值观
敏捷价值观是一种能体现每天通力协作,相互支持以及尽己所能实现Scrum团队承诺的方式。
承诺
承诺意味着参与和投入。组织对Scrum团队兑现其承诺充满自信,并会调动Scrum团队的积极性来实现目标,成员间要对彼此负责,承诺的实现需要自觉地努力,需要:
- Scrum团队必须在做出承诺时面对现实,在冲刺阶段更要这样
- Scrum团队必要要对目标做出承诺
- Scrum团队要务实,必须确保每次冲刺都能创造出实实在在的价值
- Scrum团队愿意对结果负责
专注
Scrum团队成员需要坚持营造专注的环境,减少干扰因素提高工作效率,Scrum团队需要:
- 空间上与干扰源分开
- 确保不把时间浪费在与冲刺目标无关活动上
- 只做需要做的事
- 平衡专注工作时间和团队成员交流时间
- 时刻检查你是否保持专注
开放
Scrum团队中没有秘密可言,因为这样团队才能为产品开发的成果负起责任。营造公开透明的环境非常重要,被公开的不仅是工作进度,还有工作中的挑战,需要:
- 确保团队中的每位成员都能访问相同的信息
- 鼓励他们采取开放态度
- 阻止谣言化解内部矛盾
- 始终保持对他人的尊重
尊重
分享每个人的独特性,寻找和欣赏每个人的共性,成员作为有能力却独立的个体能互相尊重,需要:
- 开放积极的工作环境
- 不只是容忍差异,要找出差异。最佳的解决方案一定来自不同意见
- 同等尊重的态度对待每位成员
勇气
每件事都需要勇气,承诺需要勇气,专注需要勇气,开放尊重也需要勇气,面对阻力时首先要有的就是勇气,需要:
- 认识到过去没问题的事现在不一定能行
- 准备好突破现状
- 用尊重迎接质疑
- 拥抱Scrum价值观
三、成功Scrum的特质
专职的团队
每个Scrum团队成员只负责实现团队决定的产品目标,而不会在完成一个产品的开发工作后,为其他团队开始新的产品开发工作,团队会长期保持稳定不变。这样更利于发布预期更加准确、迭代周期短效率高、缺陷少、修复成本低。
跨职能工作
不同于传统项目中,.NET程序员只做.NET工作,测试员只做质量保证工作。跨职能工作可以在同一时间专注于同一产品需求,即让尽可能多的成员尽快完成某个特定需求,从而快速完成某项特性。跨职能工作还能消除单点故障,例如团队成员不在时,另一位成员能接替他的工作任务。
每位成员要做到:
- 不存在头衔一说,技能和贡献才是关键
- 拓展才能
- 他人遇到障碍快速伸出援手
自组织自管理和主人翁意识
自组织团队不必遵守他人的指令,能在团队成员的参与度和解决方案的质量上发挥极大的优势。自组织的开发团队能够:
- 承诺实现自己的冲刺目标
- 估算任务所需工作量
- 专注于沟通
- 协作
- 共同决策形成共识
- 积极参与
自组织增加了开发团队的主人翁意识,积极主动开发出更优质的产品,获得更多成就感和自豪感,更能同甘共苦充满信任。
控制团队规模
理想情况下,敏捷开发团队拥有使其成为跨职能团队且避免单点故障所需的最少人员。从统计数据来看,当Scrum团队有6位开发人员时,开发速度最快,当有4-5位开发人员时成本最低,保持3-9人能帮助团队提高凝聚力避免小团体。当你手头有一个大型项目,请把开发工作分解并交给多个Scrum团队完成,那么问题来了,具体怎么做呢?感兴趣的留言,我会尽量用白话专门写一篇。
相关推荐
- ES6中 Promise的使用场景?(es6promise用法例子)
-
一、介绍Promise,译为承诺,是异步编程的一种解决方案,比传统的解决方案(回调函数)更加合理和更加强大在以往我们如果处理多层异步操作,我们往往会像下面那样编写我们的代码doSomething(f...
- JavaScript 对 Promise 并发的处理方法
-
Promise对象代表一个未来的值,它有三种状态:pending待定,这是Promise的初始状态,它可能成功,也可能失败,前途未卜fulfilled已完成,这是一种成功的状态,此时可以获取...
- Promise的九大方法(promise的实例方法)
-
1、promise.resolv静态方法Promise.resolve(value)可以认为是newPromise方法的语法糖,比如Promise.resolve(42)可以认为是以下代码的语...
- 360前端一面~面试题解析(360前端开发面试题)
-
1.组件库按需加载怎么做的,具体打包配了什么-按需加载实现:借助打包工具(如Webpack的require.context或ES模块动态导入),在使用组件时才引入对应的代码。例如在V...
- 前端面试-Promise 的 finally 怎么实现的?如何在工作中使用?
-
Promise的finally方法是一个非常有用的工具,它无论Promise是成功(fulfilled)还是失败(rejected)都会执行,且不改变Promise的最终结果。它的实现原...
- 最简单手写Promise,30行代码理解Promise核心原理和发布订阅模式
-
看了全网手写Promise的,大部分对于新手还是比较难理解的,其中几个比较难的点:状态还未改变时通过发布订阅模式去收集事件实例化的时候通过调用构造函数里传出来的方法去修改类里面的状态,这个叫Re...
- 前端分享-Promise可以中途取消啦(promise可以取消吗)
-
传统Promise就像一台需要手动组装的设备,每次使用都要重新接线。而Promise.withResolvers的出现,相当于给开发者发了一个智能遥控器,可以随时随地控制异步操作。它解决了三大...
- 手写 Promise(手写输入法 中文)
-
前言都2020年了,Promise大家肯定都在用了,但是估计很多人对其原理还是一知半解,今天就让我们一起实现一个符合PromiseA+规范的Promise。附PromiseA+规范地址...
- 什么是 Promise.allSettled()!新手老手都要会?
-
Promise.allSettled()方法返回一个在所有给定的promise都已经fulfilled或rejected后的promise,并带有一个对象数组,每个对象表示对应的pr...
- 前端面试-关于Promise解析与高频面试题示范
-
Promise是啥,直接上图:Promise就是处理异步函数的API,它可以包裹一个异步函数,在异步函数完成时抛出完成状态,让代码结束远古时无限回掉的窘境。配合async/await语法糖,可...
- 宇宙厂:为什么前端离不开 Promise.withResolvers() ?
-
大家好,很高兴又见面了,我是"高级前端进阶",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发。1.为什么需要Promise.with...
- Promise 新增了一个超实用的 API!
-
在JavaScript的世界里,Promise一直是处理异步操作的神器。而现在,随着ES2025的发布,Promise又迎来了一个超实用的新成员——Promise.try()!这个新方法简...
- 一次搞懂 Promise 异步处理(promise 异步顺序执行)
-
PromisePromise就像这个词的表面意识一样,表示一种承诺、许诺,会在后面给出一个结果,成功或者失败。现在已经成为了主流的异步编程的操作方式,写进了标准里面。状态Promise有且仅有...
- Promise 核心机制详解(promise机制的实现原理)
-
一、Promise的核心状态机Promise本质上是一个状态机,其行为由内部状态严格管控。每个Promise实例在创建时处于Pending(等待)状态,此时异步操作尚未完成。当异步操作成功...
- javascript——Promise(js实现promise)
-
1.PromiseES6开始支持,Promise对象用于一个异步操作的最终完成(包括成功和失败)及结果值的表示。简单说就是处理异步请求的。之所以叫Promise,就是我承诺,如果成功则怎么处理,失败怎...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- ES6中 Promise的使用场景?(es6promise用法例子)
- JavaScript 对 Promise 并发的处理方法
- Promise的九大方法(promise的实例方法)
- 360前端一面~面试题解析(360前端开发面试题)
- 前端面试-Promise 的 finally 怎么实现的?如何在工作中使用?
- 最简单手写Promise,30行代码理解Promise核心原理和发布订阅模式
- 前端分享-Promise可以中途取消啦(promise可以取消吗)
- 手写 Promise(手写输入法 中文)
- 什么是 Promise.allSettled()!新手老手都要会?
- 前端面试-关于Promise解析与高频面试题示范
- 标签列表
-
- hive行转列函数 (63)
- sourcemap文件是什么 (54)
- display none 隐藏后怎么显示 (56)
- 共享锁和排他锁的区别 (51)
- httpservletrequest 获取参数 (64)
- jstl包 (64)
- qsharedmemory (50)
- watch computed (53)
- java中switch (68)
- date.now (55)
- git-bash (56)
- 盒子垂直居中 (68)
- npm是什么命令 (62)
- python中+=代表什么 (70)
- fsimage (51)
- nginx break (61)
- mysql分区表的优缺点 (53)
- centos7切换到图形界面 (55)
- 前端深拷贝 (62)
- kmp模式匹配算法 (57)
- jsjson字符串转json对象 (53)
- jdbc connection (61)
- javascript字符串转换为数字 (54)
- mybatis 使用 (73)
- 安装mysql数据库 (55)