成功使用看板软件开发所需要知道的一切

通过凯特Eby2018年2月14日(2023年4月17日更新)

看板(发音KAHN-bahn)是一个ob欧宝娱乐app手机下载生产调度这个系统起源于丰田的精益生产系统。在20世纪40年代和50年代初,丰田在日本的工厂开发并引进了这种产品,看板是丰田准时制(JIT)生产的关键要素以及拉式生产系统,ob欧宝娱乐app手机下载旨在增加生产流量,使生产产量与需求相匹配。

虽然看板起源于工厂车间,但您可以轻松地将其应用于知识工作中的任何多阶段生产或开发过程,例如市场营销或法律。ob欧宝娱乐app手机下载在软件领域,团队使用看板来管理开发,并确保及时、定期的产品推出,同时也平滑了工作量。ob欧宝娱乐app手机下载为了实现这些目标,看板利用工具,通过在卡片(物理的或虚拟的)上表示任务,并将它们显示在跟踪开发过程的板上,从而使工作可见。这些工具通过使用基于拉的生产系统来帮助平滑工作流程,从而限制了正在进行的工作量(WIP),并帮助团队成员识别和解决瓶颈。ob欧宝娱乐app手机下载

在软件开发中,看板与管理密切相关敏捷和精益开发方法。与敏捷Scrum框架一样,看板优化了团队合作并管理跨人类系统的工作。事实上,看板可以作为一套工具,帮助团队变得更加敏捷。其好处包括更集中的精力和生产力(因此,提高了效率),减少了浪费(在工作和时间方ob欧宝娱乐app手机下载面),以及更大的灵活性。

软件开发人员看板的关键原则

对于正确的工作,看板是一个非常简单的调度系统,可以学习和实施。以下是它的运作原则:

  • 可视化工作流程:看板的简洁性源于丰田意识到人们比文本或其他交流方式更能理解视觉线索。在看板框架中,每件或每批工作都用一张彩色卡片表示看板卡片,它在代表整个生产或开发工作流程的看板板上移动。ob欧宝娱乐app手机下载
  • 限制正在进行的工作:在板子上使用看板卡片可以很容易地在给定的时刻跟踪生产过程中任何阶段的工作项的数量——当然,前提是你要定期跟踪进度。ob欧宝娱乐app手机下载有太多的在制品会使识别瓶颈变得困难,并且还可能导致焦点的丢失或缺陷和错误的增加。
  • 加强流程:通过限制在制品数量和识别瓶颈,您可以通过工作流优化工作进度),从而减少工作项的处理时间。
  • 把工作:看板的一个决定性特征是它根据实际需求而不是输出目标来决定输出。总的来说,这种方法降低了库存成本,特别是与JIT系统结合使用时。(当然,这种特殊的好处可能不适用于软件开发。)拉动式生产系统也更ob欧宝娱乐app手机下载能响应客户需求,即使在生产无形产品时,通常也能减少浪费。
  • 测量和缩短周期时间:改善流动是一个数据驱动的过程。当减少正在进行的工作量和提高工作项的处理速度是度量和缩短生产周期长度的更大战略努力的一部分时,这些行动是最有效的。ob欧宝娱乐app手机下载这项工作可能需要一些步骤,比如增加资源来消除瓶颈。欧宝体育app官方888
  • 实施反馈循环:由于看板与精益方法相关联,因此持续改进的思想是其哲学的一部分。反馈循环允许团队成员和其他利益相关者将预期结果与实际结果进行比较。根据他们所学到的,他们可以实施改进以减少浪费。
  • 制定明确的政策:清晰有效地沟通政策是看板先驱David Anderson在他的书中确定的看板的核心属性之一看板——技术业务成功的进化变革。实践者说,为了成功地实施看板并利用其潜力进行增量改进,这一原则是必不可少的。策略是指应用于工作流和流程的规则,以确保它们保持高效。例子包括对变更请求和在制品的限制。您可以通过与团队和客户讨论以及将它们写在看板板上来明确制定策略。一些电子工具还允许您设置自动策略。

项目管理指南

您的一站式服务,一切项目管理


准备好从你的项目管理工作中获得更多了吗?访问我们全面的项目管理指南,获取技巧、最佳实践和免费资源,以更有效地管理您的工作。欧宝体育app官方888

查看指南

看板在日本的起源

看板是丰田生产系统(TPS)的一个组成部分。ob欧宝娱乐app手机下载一度被称为JIT制造,TPS是后来被称为精益制造的先驱。该系统由丰田工业工程师大野耐一(Taiichi Ohno)开发,他被公认为“TPS之父”,也是七种废物概念背后的理论家。

看板作为一种制造通信系统被引入,以促进JIT生产。这个想法起源于20世纪40年代丰田对超市的研究,在那里,顾客只购买他们当时需要的东西,超市只储存它预计会销售的东西。这种方法优化了超市和顾客之间的产品流动,使库存与ob欧宝娱乐app手机下载需求相匹配,从而降低了库存成本。这一实践使丰田将生产链中的下游工序视为其上游工序的“客户”;ob欧宝娱乐app手机下载也就是说,它们推动了对生产中间产品的上游工艺的需求。ob欧宝娱乐app手机下载对于丰田的制造业来说,这意味着将库存与材料消耗相匹配。

看板系统的早期迭代包括将物理看板卡传递给上游的工作团队,以表明下游的制造能力已经开放。该卡表示对已知数量的中间产品的需求。ob欧宝娱乐app手机下载例如,如果在生产中使用的一箱材料被清空,则将一张看板卡传递到仓库,该看板卡详细说明了补ob欧宝娱乐app手机下载充该箱所需材料的类型和数量。仓库将补充库存,然后将看板卡传递给供应商,供应商将请求新的材料库存。

丰田的看板系统有六条规则。尽管看板在过去的几十年里不断发展,但JIT生产的概念仍然是看板模型的核心。ob欧宝娱乐app手机下载客户流程(即下游流程)按照看板卡上规定的精确数量绘制项目。同样,上游过程生产中间产品的精确数量也要在看板卡上指定。ob欧宝娱乐app手机下载没有看板卡,物品就不能生产或移动,而看板卡总是附在物品上。有缺陷的产品永远不会被转移到下游,所以,理论上,最终产品总是没有缺陷的。ob欧宝娱乐app手机下载看板卡的数量增加了系统对变化或问题的敏感性。

看板在软件开发中的历史

软件从业者在世纪之交开始利用看板的好处进行软件开发,他们关于这些实验的文章引起了广泛的关注。David Anderson在他2010年的书中描述了最早的用法之一看板从2004年到2007年,微软和Corbis的项目从看板式的拉式系统发展到我们今天熟悉的卡片系统。

2009年,Don Reinertsen和Corey Ladas的书促进了这种方法的普及。Reinertsen将看板的采用描述为第二代精益产品开发方法的一部分,Ladas认为看板是Scrum软件开发方法的改进。ob欧宝娱乐app手机下载

在他们2011年的书中个人看板Jim Benson和Tonianne DeMaria Barry将看板概念应用到个人和小团体的生产过程中。ob欧宝娱乐app手机下载迈克洞穴的从内部看看板在2014年解释了看板的作用以及它与之前的开发模型的关系。克劳斯·利奥波德和齐格弗里德·卡尔特内克的看板变革领导2015年从管理变更的角度探讨了看板。将看板应用于知识工作的其他贡献者包括Net objective的Alan Shalloway,精益和敏捷顾问Karl Scotland,以及2010年Brickell关键奖得主Alisson Vale和David Joyce。

正如制造业中的看板一样,软件开发中的看板——以及其他知识工作应用中的看板——寻求管理和改进产品交付系统。ob欧宝娱乐app手机下载重点仍然是JIT交付和控制正在进行的工作量。工作项被可视化为看板板上的看板卡片。董事会必须保持最新状态,这需要实时沟通能力和完全透明。

如果您遵循这些需求,跨工作流的团队成员可以在任何给定的时间点看到特定工作项的进度。这种可见性使工作人员能够平衡需求和能力,并系统地解决工作流程中的瓶颈。最终,看板的视觉特性使我们很容易确定工作堆积在哪里。

如何将看板的价值应用到软件过程中

对于一些团队来说,看板可能看起来仅仅是任务沟通的一种方法。虽然看板系统确实做到了这一点,但看板是一种精益方法,因此持续改进的任务,在日语中被称为改善这是其价值观的核心。精益软件开发思想领袖Mary和Tom Poppendieck认为,有效的软件开发,尽管实际上与精益和丰田生产系统不同,但与那些管理哲学共享相同的原则。ob欧宝娱乐app手机下载看板工作流改进过程的三大原则:

  1. 从你现在正在做的事情开始:看板并不是从零开始规定一个最佳的工作流程;相反,它改进了现有的工作流。知道看板不需要彻底的改变可以使系统更容易被一些团队采用。
  2. 通过渐进式变革追求改进:精益方法的核心是持续改进。要意识到,持续改进并不是抛弃整个工作流程,重新开始,而是确定可以减少浪费的特定领域之一。在进化过程中,每次只针对一个目标。
  3. 鼓励各个层面的领导行为:在丰田,高层管理人员意识到,改善的灵感来自那些最接近工作流程的人:车间工人自己。这有助于使整个组织的员工能够改进工作实践。当然,软件开发团队没有车间,但是为了改进过程而授权那些最接近工作的人的原则仍然存在。

这三个原则依次建立在九项价值观的基础上。看板的价值区分了仅仅将看板作为沟通方法的团队和将其作为精益进化技术的团队。

看板的第一个价值是透明度-在工作流程的可见性、决策制定和客户对工作流程运作方式的洞察方面。其中前两个是可视化工作流的组成部分,而第三个使流程能够更好地针对客户的特定需求进行定制。相关值为客户关注,因为开发过程最终寻求满足客户,并且了解哪些工作流过程正在为客户创造价值是很重要的。

如果没有。则无法更改工作流理解以及在采用看板和应用改善之前对开发工作流的评估。而且,当变革被认为是必要的时候,它必须建立在协议和尊重的基础上,否则就有分裂和破坏的风险。最终,看板的改变必须是和谐的,协作关注开发过程中所有涉众的过程。

看板的另一个价值是平衡,这可以被认为是管理正在进行的工作的结果,以便保持焦点,如果不是增加的话。借用大野耐一书中的一句话丰田生产体系:超越大规ob欧宝娱乐app手机下载模生产,团队“停止开始,开始完成”,并创建一个让客户和员工都满意的可预测结果的工作。无论最终的产品是一辆汽车还是一个软件应用程序,都是如此。ob欧宝娱乐app手机下载

最后,一种草根领导——授权过程中的参与者负责和发起改进——仍然是改善和看板过程的一个重要方面。

看板对软件开发有何好处

我们已经涵盖了很多理论,但你可能有兴趣知道看板能为你做什么。以下是该系统为典型的开发团队提供的好处:

  • 计划的灵活性:通过减少在制品并专注于完成已经在进行的项目,而不是开始新的项目,开发人员可以专注于手头的任务。如果ob欧宝娱乐app手机下载产品负责人(决定发布的产品应该是什么样子的人)通过审查和确定优先级来维护待办事ob欧宝娱乐app手机下载项用户故事这样重要的项目就会放在最上面,开发团队的工作就不会中断。当容量打开时,系统只是从积压的任务中提取任务,这使得优先级排序更容易。在看板中,在Scrum中看到的固定长度的迭代(称为sprint)似乎是多余的,因为任务是按照连续的顺序完成和交付的。也就是说,产品负责人也ob欧宝娱乐app手机下载不应该让开发人员对待办事项优先级一无所知。通常情况下,对待办事项项的估计取决于其他工作。重新确定优先级可能会影响这些依赖关系并使估计不准确。
  • 缩短周期时间:周期时间,也就是一个工作单元在整个工作流程中所花费的时间,是看板团队的一个关键指标。虽然缩短周期时间本身有明显的好处,但优化周期时间也可以提高交货预测的准确性。

通常,拥有重叠技能集的团队成员将缩短周期时间。根据团队的规模,只有一个或几个拥有特定技能的人可能会产生瓶颈并延长周期时间。为了解决这个问题,专家可以培训团队成员,让他们掌握短缺的技能——这不仅可以消除瓶颈,还可以让开发人员团队成员更灵活地在需要的地方投入工作。开发人员也可能承担非传统的任务,比如测试。在看板系统中,维持工作流程是每个人的责任。

  • 更少的瓶颈:除了团队拥有重叠技能集的情况外,看板还认识到多任务处理是生产力杀手。ob欧宝娱乐app手机下载这就是为什么该系统寻求最小化正在进行的工作。这些限制使团队成员能够全身心地投入到完成一项任务中。限制正在进行的工作也可以更容易地发现瓶颈和备份,特别是考虑到看板系统的视觉特性。但是限制正在进行的工作并不一定是不必要的复杂。例如,设置一次在代码评审阶段不超过两个工作项的限制,可以帮助开发人员将注意力集中在评审其他人的代码这一没有吸引力的任务上。从长远来看,这种策略可以提高产品的整体质量。ob欧宝娱乐app手机下载
  • 视觉指标:虽然看板为系统设计过程提供了透明度,但它并不是看板唯一有利于可视化管理的方面。跟踪几个直接的数据点可以为看板系统产生重要的见解。通常用于报告这些点的两个工具是控制图和累积流程图。
    • 控制图:控制图只是一个跟踪器,记录任务(或问题)何时执行,每个任务需要多长时间,以及处理时间的平均值和滚动平均值。所有这些数据点都在同一个轴上,所以很容易发现周期时间的偏差。平均周期时间的减少是开发效率提高的一个指标。


      控制图

    • 累积流程图:中问题的累积总数做,做,完成随着时间的推移。堆积如山的问题要做阶段是堵塞或减速的一个很好的指标。团队可以使用这些信息来识别问题。

      累积流程图

  • 持续交付:持续交付是频繁地向客户发布工作的实践——经常是每天甚至每小时。由于看板起源于JIT,因此它非常适合于价值的持续交付。此外,将产品快速推向市场对于任何开发团ob欧宝娱乐app手机下载队来说都是不可否认的竞争优势。

看板还有其他优点。在优先级快速而频繁变化的项目中,Scrum可能会出现问题。另一方面,看板允许频繁的优先级变更。通过平衡需求和吞吐量,看板仍然以客户为中心。而且,正如我们之前提到的,它不需要组织重组来实现,而是专注于对现有流程的小增量改进。

作为一种精益方法,看板有助于减少浪费和消除不能增加价值的活动。一个平稳运行的看板系统可以缩短交货时间,提高生产效率。ob欧宝娱乐app手机下载

此外,看板减轻了非敏捷开发实践的启停性质,就像古老的瀑布法。一些看板的支持者建议在看板系统中加入空闲时间,这可以让人们停下来思考,并在需要的时候能够蜂拥到瓶颈处。这些优势可以帮助形成一个高度成熟的组织,能够始终如一地满足其交付目标。此外,与看板相关的改善激励授权提高了员工满意度。

看板和卡片提供视觉线索

看板还有彩色的看板卡片是传统看板系统的标志性元素。在日语中,看板这个词大致翻译为“视觉卡片”,尽管英语术语可能与“队列限制器”最接近。简单地说,看板是一块带有部分(通常是列)的公告板或白板,代表工作流中不同的顺序子过程。然而,软件工具简化创建、共享和维护看板的过程。

每一列代表一个价值流(为客户创造价值所采取的步骤)。一块简单的板子可能只包含三个部分:做,做,完成。当然,根据工作流程和开发团队的规模和结构,您可以使它们变得更加复杂。在更高的层次上,对于跨越多个团队或工作流的过程,看板可以支持整个部门甚至组织。

简单看板标签

开发团队的典型看板可能包含以下几列:目标、故事队列、细化和验收、开发、测试、部署、完成。另一个可能包括产品待办事项、需求、设计、开发ob欧宝娱乐app手机下载、测试、部署和完成。

彩色看板卡——物理看板上的记事卡或即时贴——每个都代表一个工作项。卡片从左到右移动,跟踪工作项在工作流中完成的进度。卡片还可以提供关于工作项的信息,例如简要描述、成本和持续时间的估计,以及正在处理它的工作人员。高优先级的项目可能会被标记成这样,或者被赋予特殊的颜色,它们可能会被添加到看板板上的平行加速栏中。

看板的价值在于它如何可视化工作和优化流程。它实时地传达了软件开发团队的能力,并使识别障碍变得容易。一个维护良好的电路板可以被认为是关于开发团队工作的信息的单一存储库。

虚拟电路板提供了许多优势:它们使工作进度可追溯,它们简化了信息记录,并且它们更容易从不同的位置访问。您还可以将截图、工作日志、邮件等信息剪贴到虚拟板卡上。

使用看板来跟踪工作进度的一个关键因素是对正在进行的工作施加限制。根据工作流程和开发团队的不同,在制品数量限制可以作为每个阶段中卡片数量的限制,或者在任何给定时间对工作流程中卡片总数的限制。确定在制品限制可能很棘手。虽然可以使用任意数字或根据您的团队能力经验衡量一个适当的数字,但您也可以使用公式来计算极限。看看这篇文章Evan Leybourn在敏捷总监网站上的文章。

软件开发团队如何使用看板

对于一个软件开发团队来说,看板的功能和它在传统生产线上的功能是一样的——唯一的区别是,后者仍然使用物理板和卡片,而前者很少见到。

精益管理的概念应用于软件开发比应用于物理制造过程更棘手,主要是因为对于一个主要是静态和数字化的过程来说,将浪费概念化是多么困难。

对于一个数字化的工作流程,几乎没有浪费的材料和移动。然而,还有其他类型的浪费:缺陷、生产过剩、等待和不必要的加工。ob欧宝娱乐app手机下载通过对转移到下游过程的工作项进行质量检查,确定待办事项的优先级,并将团队的能力与正在进行的工作的允许数量相匹配,看板系统可以帮助减轻质量问题、延迟和多余的工作。这将导致更清晰地关注重要的、客户重视的工作项,以及更有效的开发线。虽然看板被认为是一个敏捷系统,但看板板和卡片也可以帮助瀑布开发模型中的调度。

传统看板的价值和原则在应用于软件开发时保持不变。看板仍然关注现有工作流程的逐步改进,以及促进团队自我指导的授权。(事实上,看板更容易应用于软件开发,而不是制造业,因为它可能需要改变物理工作过程。)可视化工作流管理技术有助于快速、准确地做出关于工作内容以及如何和何时工作的决策。而且,透明度、以客户为中心、尊重、平衡、理解、协议、协作、流程和领导的价值仍然是看板软件开发的核心。

看板生态系统的另一个好处是过程本身的自然副产品:最小化风险。ob欧宝娱乐app手机下载因为看板需要清晰和早期的沟通——因为每个人都需要知道他们在开发过程的每个阶段都在做什么——它有一个受欢迎的优势,即迫使团队尽早讨论风险。

看板如何帮助评审和反馈过程

虽然看板是作为一种沟通和调度的组合工具来实现的,在一开始几乎不需要对工作流程进行系统的更改,但该系统可以用于反馈和审查。这些步骤可以改变工作实践,甚至最终改变工作流的结构。

以W. Edwards Deming的渊博知识体系为例,这种哲学认为管理通过平衡构成系统组件的相互关联的过程和人员来承担优化的责任。创建一个渊博的知识体系有四个先决条件:

  • 了解系统。
  • 了解系统中的变化。
  • 有一个如何在系统上行动的理论。
  • 了解人类的心理。

理解系统需要从系统组件的孤立视角转向对系统如何达到其最终目标的整体理解。正如John Seddon和Peter Senge所证明的,这是系统思考的一个关键原则。这种对系统的理解包括理解组织试图实现其目标的途径,以及系统组件之间和之上的边界和约束。

看板,其本质是显示工作过程中各个成员适合的位置,不仅有助于发展对系统的理解,而且通过创建共同目标的使命感和责任感,加强了对系统目标的承诺。它提高了人们对系统及其结果的认同。

软件开发中对看板的一个常见批评是,它暗示了知识工作的一致性,而这种一致性实际上并不存在。在制造业中,过程结果的可变性是一个禁忌,但是在软件开发中,工作项通常具有更多的可变性。然而,在制造业和知识型工作中,交货时间的一致性和一致性仍然至关重要。看板通过减少正在进行的工作量,减少变化的连锁反应,重新分配人力资源以平滑不平衡,以及在不微观管理单个工作项目的交付时间的情况下管理平均交付时间,减轻了知识工作中变化的影响。欧宝体育app官方888

看板的视觉特性也简化了反馈和评审过程,比如PDSA(计划、执行、研究、行动),部分原因是看板使浪费更容易发现。这种能力反过来又为改进提供了基础。在精益思维:在你的公司里消除浪费,创造财富作者是詹姆斯·p·沃马克和丹尼尔·t·琼斯(他也写了。改变世界的机器),作者阐明了精益思维的五个原则:价值、价值流、流、拉和完美。当Womack和Jones在1996年用制造过程描述这些原则时,创造客户想要的价值、最小化正在进行的工作和消除缺陷的重要性也与软件开发过程相关。

约束理论是一种管理技术,可用于维护跨系统的工作节奏和流程(开发人员Eliyahu Goldratt的Drum-Buffer-Rope方法)。在这种技术中,鼓是最慢的工作流程步骤,并限制了交付率。节奏就像鼓点一样。为了防止上游工序移动过快,使工作进展缓慢,他们的步伐被一根绳子限制住了。在连续过程之间保持的空间是缓冲区,它是围绕工作流子过程构建的时间,特别是鼓,以解释知识工作中固有的可变性。

虽然看板系统并不默认包含Scrum的冲刺回顾(参与者在为期两周的冲刺中讨论进展情况),但许多使用看板的软件开发团队在他们的时间表中建立了定期的检查点。这些例子包括季度战略审查、月度运营审查、月度风险审查、两周服务交付审查或每周补充会议。许多看板团队也采用了Scrum的日常会议实践,在Scrum中称为“每日会议”每日站立会议

定义敏捷、Scrum和看板

在这个复杂的,不断发展的世界敏捷方法在美国,很难了解每一项工作的具体内容。那么,什么是敏捷,Scrum和看板如何适应敏捷?

敏捷是一系列软件开发方法,所有这些方法都是为了满足不断变化的客户需求而设计的迭代开发方法。经典的敏捷开发项目是在一系列迭代(冲刺)中进行的,在每个迭代的开始都有商定的增量目标。敏捷项目没有固定的范围;相反,他们的需求是由用户故事(用户想要的特性或功能的描述)引导的,因此,需求是不断更新的。

Scrum是一种特定的敏捷方法,它基于一组需求的优先级,并在固定的时间内努力满足它们。在许多这样的sprint中,软件开发团队将按照需求列表进行工作。对于某些产品,需求ob欧宝娱乐app手机下载列表是不断更新的,因此Scrum项目实际上可能没有可预见的结束。

看板不是一种方法论,也不是像Scrum那样的结构化过程框架:它实际上是一套旨在改进现有工作流的沟通和调度工具和原则。因此,如果使用Scrum的团队必须根据Scrum框架进行设置——组建Scrum团队、创建和维护待办事项、执行和审查sprint等——那么团队可以在其他开发方法和框架(包括XP、Scrum、水晶、瀑布、RUP、DSDM和FDD)之上使用看板,只需投资一些看板工具,并为如何执行工作设置规则。

从定义上讲,Scrum是一种敏捷方法,但是关于看板是否是敏捷尚有争议。有一些相似之处。看板与敏捷方法一样是迭代的,但它并不特定于软件(与敏捷方法一样)。在看板被用于敏捷开发项目之前,敏捷方法背后的思想就已经固化了。一些开发人员认为看板不是敏捷,因为它是一组过程改进工具,与敏捷无关提高敏捷性。而且,正如Charles Bradley在ScrumCrazy博客中所指出的,看板最初是为制造业设计的,一个与创造性软件设计完全不同的领域。同时,其他人认为看板是敏捷的,因为它满足了敏捷宣言背后的全部12条原则

不管你站在争论的哪一边,大多数专家都同意看板在敏捷迭代交付模型难以解决的领域工作得很好,比如在日常的IT操作中,以及在修复bug和对现有系统进行增强的团队中。在这里,看板流程所产生的价值是批量工作所不能产生的。

Scrum和看板之间有更明确的区别。以下是两者在各个方面的比较:

  • 节奏和释放方法:Scrum迭代以固定长度的间隔进行,称为sprint。在每个sprint结束时,经过项目所有者的批准,将发布一个新的版本。看板通过将项目所有者优先考虑的问题从待办事项列表中拉出来,持续地交付迭代。
  • 指标:Scrum的关键指标是速度,即每次迭代交付的故事点的数量。看板的关键指标是平均周期时间,也就是处理一项任务平均需要多长时间。
  • 改变哲学:在Scrum中,不能在sprint中进行更改。在看板中,可以随时通过改变待办事项上工作项的顺序来进行更改。
  • 任务大小:看板任务可能比Scrum中的任务更加多变。
  • 定期评估:定期评估是通过sprint评审和sprint回顾构建到Scrum中的,但它们并不是看板的一部分。然而,这并不是说它们从未被纳入看板。
  • 角色:所有Scrum项目都有一组明确定义的角色,比如服务请求经理、Scrum管理员和服务交付经理。看板项目,因为它们可能覆盖在现有的开发框架上,所以没有一组一致的定义角色。

    看板中这种看似缺乏控制的情况有时会受到质疑,但相反的观点是,看板系统本身创造了一个高效而有责任心的团队。而且,因为看板在处理相对可重复的问题时很有效,所以它不需要过度的控制。
  • 成本:Scrum和看板之间的另一个区别因素是成本。Scrum有着固定的框架,定期的会议,以及在sprint间隔上的时间损失,它花费了大量的时间在那些只支持实际软件开发过程的工作上。另一方面,看板的支持功能更少,专注于完成任务,所以它倾向于在相同的时间内完成更多的事情。根据作家谢尔盖·拉蒂克的说法,Scrum的冲刺启动会议和回顾会议,以及日常会议和冲刺过渡,意味着Scrum中30%到40%的时间用于支持该过程。

要了解XP、Scrum和看板的真实实现,请查看Henrik Kniberg的文章从战壕中学习:用看板管理大型项目这就解释了他的团队是如何为瑞典警方实现一个软件系统的。

关于Scrum、看板和传统瀑布式开发方式在这些关键领域的比较,请看下面的图表:

元素

Scrum

看板

瀑布

节奏

重复固定长度的工作周期,称为“冲刺”

连续流

阶段和里程碑的顺序实现

发布方法

冲刺结束

持续交付

项目结束

关键指标

速度

周期时间

交货时间

改变哲学

灵活,不可能在冲刺期间发生

灵活,随时

不灵活,项目的所有方面都是在开始时定义的,除非通过特殊措施,否则不会改变

角色

明确定义的

因团队而异

明确定义的

任务大小和优先级

可变的,工作积压可以在sprint开始之前重新确定优先级

统一,工作积压可以在任何时候重新确定优先级

在项目初始阶段定义

反馈过程

冲刺结束

按团队设置

项目结束

软件开发中看板的改进

自2007年敏捷大会以来,软件开发中的看板已经走过了漫长的道路,David Anderson在会上介绍了一种名为“持续工程看板系统”(KSSE)的看板软件开发方法。早期的方法侧重于限制在制品,使开发团队能够自己指导工作流,并使用可视化看板板来识别开发过程流中的停滞点。会议结束后,Anderson建立了一个看板开发邮件列表,其中主持了一些关于软件开发中看板的早期对话,今天,Anderson被认为是看板软件开发的先驱。

由于看板可以在其他开发过程之上分层,因此已经开发了许多更类似于开发方法的混合方法。其中之一是Scrumban顾名思义,它将Scrum的固定长度迭代和特定角色与看板的工作进度限制和周期时间限制结合在一起。Scrum最初被设计为一个从Scrum过渡到看板的过程,但现在它被开发团队使用,他们需要Scrum提供的结构化开发方法,但也看到了限制正在进行的工作和使用平均周期时间作为性能指标的价值。看到看板和Scrum:充分利用两者由Henrik Kniberg和Mattias Skarin撰写,这表明看板对完成的关注可以使Scrum受益。

Change Vision Inc.首席执行官Kenji Hiranabe描述了另一种看板的细化看板纳米。在看板纳米中,开发团队被分成更小的子团队(通常像一对开发人员一样小),他们一起工作。当较大的团队有一个以用户故事为特征的看板时,每个较小的团队都有一个纳米看板,将用户故事分解为组成任务。纳米看板允许在处理用户故事时增加粒度级别,同时确保主项目看板不会混乱。

在软件开发中实现看板的重要提示

正在考虑将您的软件开发团队转变为看板?以下是帮助你成功的一些关键步骤和建议:

  • 问自己为什么要引入看板:讨论你希望从看板实现中得到什么。你打算在现有的过程开发框架上分层看板吗?如果是这样,它会给你的开发过程带来什么?或者,您是否计划单独使用看板,用于更具可重复性的开发任务?
  • 划分开发过程:您的开发过程需要分成几个部分,这样您就可以跟踪工作的位置。首先,你必须确定看板过程管理的工作流程的范围。根据典型开发任务的性质,流程可以简单地分为待做、正在做和已完成的类别,或者分为具有开发、测试和部署的特定步骤的更复杂的工作流。您还可以创建水平泳道,以使用其他标准来描述工作项,例如工作项类型或服务类别。
  • 创建看板板并为看板系统设置规则:使用新细分的开发过程来设置看板。与团队成员和利益相关者会面,就在制品限制达成一致,并建立有关优先级和释放机制的政策。教导团队董事会和系统如何工作,并在董事会前设立每日站立会议,讨论和更新工作项目的进度。
  • 找到瓶颈:仔细地、定期地检查看板,可以很快地发现存在系统瓶颈的地方。寻找工作项目堆积的地方。
  • 优化工作流程:通过添加资源或移除系统约束来消除瓶颈是优化开发工作流的一种简单欧宝体育app官方888方法。您可能还想研究每个工作项类别的需求,并根据是否可以容忍延迟的风险概况来分配资源。欧宝体育app官方888其他的改进,比如增加注意力和优先完成任务,往往伴随着看板领域而来。用精益思维的原则教育开发团队,这样他们就知道什么是浪费,浪费是如何影响过程结果的,以及他们可以做些什么。
  • 绘制价值创造网络:价值创造网络是开发人员将知识、信息和创造力结合起来创造价值的一组途径。在软件开发中,这个复杂的网络比在制造业中绘制价值流要困难得多。价值创造网络只能粗略地可视化,但即使是网络的基本表示,也可以显示切换和排队时间,从而推动朝着优化方向努力。例如,冗余或瓶颈在逻辑上可能变得明显。记住,不同类型的工作项的价值创造网络不可能是相同的。

在DevOps中如何选择看板和Scrum

在进行过程中,您可能不确定哪个框架适合您的团队。在决定是看板还是Scrum时,你可以问自己以下几个关键问题

  • 你的开发团队刚刚开始使用敏捷吗?如果是这样,选择看板,它可以覆盖在你现有的开发框架之上,以简化团队向敏捷过程的过渡。看板也比其他一些流行的敏捷框架简单得多。与Scrum的9条、XP的13条和Rational统一过程(RUP)的120条相比,它有3条基本规则。

不管采用哪种敏捷方法,在考虑替代框架之前,让新框架不间断地运行一段时间。有一段调整期,在这段时间里,好处可能并不明显。此外,一次做出太多的改变会阻碍团队成员的发展重点和成熟度。

  • 你的团队对敏捷有经验吗?如果你有一个熟悉敏捷框架的团队,并且工作得相当好,那么使用看板工具可以帮助你识别潜在的精益改进领域。看板和卡片是最明显的选择;至少,它们将促进工作项在敏捷框架中的流动。看板板可以用于在sprint期间可视化工作,或者您可以简单地取消sprint,使用看板板来建立持续交付。看板指标,比如周期时间,对其他敏捷设置也有价值。
  • 敏捷对你的团队有用吗?如果敏捷框架不适合你的团队,或者你需要大规模的改变,那就使用Scrum。由此产生的对开发框架的调整可能只是您正在寻找的快速启动。
  • 任务优先级对开发者来说重要吗?如果团队开发工作的性质涉及不同工作项的不同程度的优先级,看板是一个更好的选择,因为您可以通过重新安排待办事项或将工作项放入优先级泳道来重新确定优先级。由于项目所有者决定优先级,这种策略不会干扰开发人员的工作——只要重新确定优先级不是不合逻辑的。对于可以分批处理的工作,Scrum是更好的选择,因为sprint可以很好地处理类似工作项的分批处理。
  • 您是否正在寻找一种更灵活的敏捷评估方法?如果是这样,请选择看板,它在评估看板任务时使用绝对值。(Scrum使用故事点的相对价值系统。)在Scrum使用相对值来计算冲刺速度的地方,看板将工作项分解成大小大致相等的“块”,并通过计算每单位时间内完成的单元数量来测量速度。因此,如果你正在处理的任务可以被分解成类似的组成项,看板是一个更好的选择。(出于同样的原因,Scrum更适合于高可变性的任务。)虽然看板并没有完全消除评估,但它确实为灵活性提供了更多的空间。
  • 还不确定?如果您在看板和Scrum之间犹豫不决,请记住,组织类型、组织文化、典型的工作性质和开发团队的动态也有助于确定哪个是最适合的。而且,如果这还不够,请记住,在Scrum和看板之间做出选择并不是一个非此即彼的决定。Scrumban结合了两者的特性。

话虽如此,或许明智的做法是在结尾处提出警告:看板本身并不是一个开发框架。一些批评者说,将看板应用于软件开发过程是一个错误——甚至看板开发的先驱David Anderson也同意他们的观点。

请记住,看板来自制造业,而Scrum是为创造性的产品设计而设计的。ob欧宝娱乐app手机下载这种观点认为,看板在定义清晰、可重复的过程中工作得很好——而不是那些你可能在软件开发中看到的过程。

借鉴Cynefin的决策框架,看板适用于通过良好实践最好解决的复杂工作,而像Scrum这样的正式开发框架则适用于参与者通过实验、失败和反馈来学习的复杂工作。如果不关注商业价值和用户如何使用软件,看板本身并不能满足软件开发的所有要求。Scrum是关于软件开发的,而看板是关于管理变更的。

用智能表改进软件开发中的看板部署

通过设计一个灵活的平台来满足你的团队的需求,并随着需求的变化而适应,从而使你的员工能够超越自己。

Smartsheet平台可以轻松地从任何地方计划、捕获、管理和报告工作,帮助您的团队更有效地完成更多工作。报告关键指标,并通过汇总报告、仪表板和自动工作流实时了解工作情况,以保持团队的联系和信息。

当团队对要完成的工作有了清晰的认识时,就不知道他们在同样的时间内能完成多少工作。今天就免费试用Smartsheet吧。

了解为什么超过90%的财富100强公司信任Smartsheet来完成工作。

免费试用Smartsheet