KATA 源自日文,就是“型”或者“形”的意思。所以Improvement KATA就是指实施敏捷时所采用的一种自我改进模型。

在武术中,Kata 是一种为了让弟子练习增强记忆和完善武术动作的经过编排的动作模板,这种持续练习直到建立习惯的方法,现在的应用范围已经超越了武术领域,延伸到了商业领域。特别的是在丰田汽车不断实践改进优化下,这种技术被命名为“改进Kata”,并记录在商业书籍《丰田Kata》中。

一、自我改进模型 Kata 是什么

Kata 是一种自我改进模型,指的是团队领导和成员通过按照既定的模型不断练习培养和引导提升解决问题的能力。随着时间的推移,这些实践会成为习惯并固化。这是《丰田 Kata 》一书中介绍的一系列实践,这些实践可以将工作分解为更小、更直接的任务,来实现一个大的较复杂的业务目标。 Kata 模型旨在以更具创造性、更有针对性的、更有意义的方式解决问题。它尝试用四部分模型来实现到这一点:

  1. 了解方向或挑战
  2. 掌握当前情况
  3. 定义目标或目的
  4. 持续迭代地向目标移动,了解需要克服的障碍

当前往目的地的路线不明确时,这些技术特别有用,因为实验可以帮助我们更好地了解问题并找到独特的解决方案。Kata 模型并不复杂,每个部分都由简单的练习事项构成,它使这个模式更易于操作和教学。

二、Kata 模型的好处

现在的科技环境变化的非常快,这带来了比以往任何时候都更复杂的挑战。Kata 模型是一种科学的、以目标为导向的工作方法,使个人和团队能够有效地应对这些挑战,掌握这项技术可以提供除结构化操作方法之外的许多好处。包括:

1.使团队朝着共同目标努力

当团队对成功有着相同的定义和理解时,就会有更多的协作、更少的困惑和更高的生产力。这是因为他们了解如何才能为目标做出贡献,让团队成员对自己的工作有更强的主人翁意识,加强他们对总体愿景的承诺,并鼓励积极主动的决策,优先实现最终目标。

2.不断尝试并积累成果

当我们知道目标是什么,但实现路径不清晰时,迈出第一步往往是最大的挑战。然而,将实验作为一种常规实践可以帮助缓解不确定性,并作为通往最终目的地的工具。关于如何达成目标我们可以做出假设,并通过实验来确定假设是否正确。如果不是正确的路径或方法,那么纠正错误对我们来说也没有什么坏处。同时,我们对正确的方向有了更多的理解。实验其实就是不断地学习、改进并解决问题。

3.减少资源浪费

专注于小的、可持续的改进可以最大限度地减少时间和精力的浪费,尤其是对目标没有贡献的任务事项。例如,当在回顾待办事项列表的任务时,可以问问自己:这些任务会让我更接近下一个里程碑和总体目标吗?也可以想得再深入一点:考虑到这一阶段中的剩余时间,是否有能力解决问题并处理手头的其他任务,还是应该推迟某些任务?

这种策略很有用,可以避免在阻塞任务和手头工作上来回切换而浪费更多时间。

除此以外,Kata 模型也减少了开发人员、管理者和团队资源的浪费。例如,开发人员不应该专注于构建中非必要的功能。就像以里程碑为导向的流程可以确保他们有目的地进行构建,同样,遵循Kata 模型原则的管理者或技术领导者在解决阻碍团队进步的问题。最后,通过保持持续的沟通、高效的反馈循环和持续交付。

三、实施 Kata 模型的步骤

Kata 模型的核心是协调我们认为会发生的事情和实际发生的事情,并且从差异之中积累经验。虽然这看起来很简单,但挑战在于并非所有人都天生具备该能力。将 Kata 模型练习应用到工作流程中需要持续地实践和练习。

1.找到北极星指标

第一步需要清楚地了解业务方向或挑战,有助于为规划和假设实验阶段提供信息。如果难以确定业务的北极星指标是什么,请考虑团队如何为组织的更大目标做出贡献,或者如何利用团队的优势将愿景变为现实。

2.确定现状

在开始朝着“北极星指标”工作之前,需要花点时间记录团队当前的工作流程,根据适当的指标检查团队的工作情况,并评估团队现有的知识基础。请诚实地说明目前的团队状况,这样才能朝着最终目标迈出有意义的一步。

3.选择下一个目标

一旦对当前的系统和流程有了清晰的了解,就可以确定下一个目标达成所需要的条件,或者确定在下一次迭代之后希望到达的位置。并且,下一个目标应该是一个单一的、实质性的变化,可以在几周/迭代中实现,让你更接近你的北极星。

4.进行假设实验,直到达成目标

现在你已经对下一个目标有了想法,形成一个关于如何到达的假设,想出了从哪里开始和尝试的想法,不要害怕失败!

5.以最快的方式实现目标

速度是必要的,即使这意味着我们可能走捷径和接受不完美。因为我们要尽早的确认该方法的可行性,或者发现该方法下会遇到哪些不可预见的挑战需要解决。即使失败也是我们的不可多得的学习机会。

6.不断打磨优化

在验证可行性之后,不断复盘改进。

四、Kata 模型的示例

假设我们想基于一个想法构建新的产品或服务,但不确定是否会起作用。这个时候,与其试图完美地构建每一步并逐步扩展直到其功能完成,不如尝试选择一个能够提供一些价值的简单目标,这个目标可以使我们更接近所设想的系统。这个过程可能有很多未知的东西,但我们可以从挑战中学到很多东西,并尝试不同的想法,最终找到一个可行的方法。一旦完成第一步,就可以重新评估现在的位置,选择下一个目标进行迭代,并持续反思改进。

再比如,如果我们是在维护一个需要改进的内部系统,可以选择一个准备解决的问题,并集思广益地想出一些解决方法。需要尝试不同的方法,并尽快实践,从而获得反馈。一旦问题得到解决,我们就可以转向下一个问题。

五、Kata 模型和精益方法的区别

Kata 和精益方法在很多方面都有差异,但又相互辅助产生作用。精益是指导实施过程的方法,而 Kata 是指导实践的技术。因此,当丰田将 Kata 引入他们的精益生产系统时,Kata 成为了一种主流的商业实践方法。当将这些概念结合到统一的方法中时,可以获得更好的实践结果。

Kata 和精益原则都侧重于实现更快的进步,但在方法上略有不同。 Kata 是一套可以在个人层面实践的方法,专注于通过实验不断改进和学习。这对于解决不确定性的问题非常有用,同时会在快速重复地练习中学习和培养技能。它有助于拥抱未知,并教导人们不要害怕挑战和障碍。

精益原则,如精益投资组合管理,帮助组织和团队改进工作流程,从而以最小的资源获得最大的价值。一旦建立了一个改进流程,那么接下来的重点就是是优化这个流程,使其尽可能快速高效。

六、如何使用 Kata 模型

Kata 模型是团队可以用来强化精益原则的方法。虽然这两种方法专注于不同的东西,但它们最初都来自丰田,可以很好地一起使用。例如,精益理念在于消除浪费性的活动,以便团队可以交付最大的价值。Kata 模型通过假设实验最大限度地减少浪费来支持这一目标。如果一种方法没有产生预期的结果,那么可以将它从流程中删除。

Kata 模型以目标为导向并鼓励在进入下一个事项之前完成前一事项,这个流程会不断完善,直到它实现预期结果,从而实现更高的组织效率,这是精益理念的另一个关键点。最重要的是,Kata 模型提供了可以在当前状态下使用的工具方法,以实现精益的未来状态。将较大的目标分解为更小的任务事项意味着所有流程和工作都可以有针对性地进行优化。最终整个系统就能够产生最大的价值。

总结

Kata 模型是一个支持精益目标的优秀的工具方法。当员工和团队采用以目标为导向的方法时,他们可以轻松推动渐进式的变革,最大限度地利用有限的资源,同时减少浪费。Kata 模型和精益可以一起帮助组织提高效率,并发展创新文化。

延伸阅读:敏捷开发指南

Scrum 开发指南: Scrum 框架详解  |  Scrum 四个会议及正确召开方式  |  正确的计划和执行Sprint的方式  |  做好迭代计划的4大关键点 |  做好这4点让每日站会更适配敏捷团队  |  开好迭代评审会的3个关键步骤  |  为什么要召开迭代回顾会  | Scrum 3大角色及其岗位的具体职责  |  Scrum三大工件在敏捷开发中的作用  |  2022年14个最佳 Scrum 敏捷项目管理软件  |  更多

Kanban 敏捷指南: 使用看板(Kanban)管理方法的5大好处  |  看板 VS Scrum:如何选择? |  看板和 Scrum 的混合模式适合在哪些场景使用  |  更多

规模化敏捷: 规模化敏捷的价值及五大规模化敏捷框架  |  规模化敏捷之 Spotify 模型  |  规模化敏捷框架之LeSS框架  |  SAFe 规模化敏捷框架  |  Scrum@Scale 模型  |  敏捷项目组合管理  |  OKR与敏捷开发  |  更多

产品管理: 如何构建合格的产品路线图  |  如何成为一个优秀的产品经理  |  敏捷路线图的重要性以及构建  |  如何构建简单有效的产品需求文档  |  利用 NPS 确定功能优先级  |  每个产品经理都需要了解的产品分析技能  |  更多

软件开发中的 Kata 模型是什么,和精益有什么关系?相关推荐

  1. 统治软件开发中的著名定律

    文| https://www.timsommer.be/famous-laws-of-software-development/ 翻译| 码农翻身 和其他领域一样,在软件开发的世界中也有一些有趣而著名 ...

  2. 软件开发中常见知识总结

    最近在准备软件开发的笔试面试,复(yu)习(xi)了一些在软件开发中的常见知识.为了给自己攒点RP,故与大家分享一二. 软件开发需要准备的比较多,主要分为编程语言,数据结构和算法,计算机网络,计算机操 ...

  3. 软件开发中的瀑布模型

    软件开发的流程 软件开发的流程有很多种模型,这里讲的一种软件开发的流程是瀑布模型     瀑布模型是将软件生存周期的各项活动规定为固定顺序的若干阶段工作,最终得到软件产品. 他的核心思想是按工序将问题 ...

  4. 建模语言UML在软件开发中的应用

      建模语言 UML 在软件开发中的应用 摘要:UML( Unified Modeling Language)是建立系统模型和分析业务处理流程强有力的工具,它能够帮助软件开发人员从不同角度描述系统,使 ...

  5. 软件开发中的详细设计

    传统软件开发中的详细设计: 模块内的数据结构进行设计.比如模块中类.结构体的设计 对数据结构进行物体设计.比如数据库表的设计,文件存储的设计,文件存储目录的设计 每个模块进行详细算法设计.比如每个方法 ...

  6. 软件开发中会使用到的图

    文章目录 软件开发中会用到的图 一.背景 二.图为了解决什么问题 三.不同流程中适合运用的图 四.实际的运用 五.结语 软件工程中的各种图 软件工程用的15种图 数据关系流图怎么画?这款软件教你轻松绘 ...

  7. 人工智能技术在软件开发中的应用

    人工智能技术的不断发展和成熟,使得它在软件开发中的应用越来越广泛.人工智能技术的应用可以帮助软件开发人员提高效率.降低成本.增强软件的功能性和可靠性.在本文中,我们将探讨人工智能技术在软件开发中的应用 ...

  8. 在软件开发中实施人工智能和敏捷管理的9种方法

    来源:mush博客 自1956年年成立以来,人工智能已经彻底改变了企业决策和部署资源的方式. 几十年来,人工智能通过帮助各行各业的企业蓬勃发展,证明了其价值.从汽车制造厂的机器人到预测货币和库存变动到 ...

  9. 测试第二节重点(什么是需求?测试用例,什么是Bug?软件开发的5个模型,软件测试)

    ******为重点考点 一丶什么是需求? 1.需求的来源 (1)盈利 ①商业app(淘宝.美团.拼多多..)----->用户需求 ②EPR办公软件之类----->甲方提需求 (2)提高工作 ...

最新文章

  1. 配置高可用的Hadoop平台
  2. Linux pwn入门教程——CTF比赛
  3. 【iCore4 双核心板_FPGA】例程七:状态机实验——状态机使用
  4. access创建窗体特别慢_64位Access运行速度很慢的解决办法
  5. Android 日夜间切换Demo
  6. (译)利用ASP.NET加密和解密Web.config中连接字符串
  7. 一页纸项目管理模板_项目管理职场必备读物!这一次全部送给你!
  8. 1607: 字符棱形
  9. c语言中scanf输入判断,无法判断某一个输入的字符?scanf()
  10. Codeforces-462C. A Twisty Movement
  11. 【天锐绿盾】之常见问题处理:控制台登录提示采集服务器空间不足,修改数据保存时间
  12. java + concat_Java中concat()方法和加号(+)运算符之间的区别
  13. RS422接线 z-tek RS232 TO RS485/RS422
  14. nvidia卸载程序失败_Adobe软件卸载与常见问题解决方案
  15. 橡胶软接头的安装及使用说明
  16. 教你把mov格式的视频转换mp4
  17. 数据安全态势感知解决方案汇总
  18. 【STM32 .Net MF开发板学习-12】跳动的音符(PWM合成)
  19. [长期更新]相似单词对比
  20. Acrobat Reader XI启动后自动关闭的分析

热门文章

  1. 微信小程序能用php框架吗,WeiPhp框架在微信小程序后台开发的优势与使用方法
  2. 手机刷机是什么意思?快速了解手机刷机基本概念
  3. 杂篇-01-Unity中创建Mesh时遇到的问题
  4. 小复习1 Python求解一元二次方程解(自定义函数)
  5. Android 性能优化(62)---存检测、卡顿优化、耗电优化、APK瘦身——详解篇
  6. 车联网---V2X介绍、V2X现有的两大通信标准DSRC和LTE V2X
  7. 华为Atlas 500智能小站如何使能边缘计算?
  8. 【题目】一根长度为M厘米的木棍上有n只蚂蚁,每只蚂蚁要么朝左爬,要么朝右爬,速度为每秒1厘米。当两只蚂蚁对撞时,二者同时掉头(掉头时间忽略不计)。给出每只蚂蚁的初始位置和朝向,计算T秒后每只蚂蚁的位置
  9. 瑞星2005升级问题汇总
  10. 基于AT89C51单片机的抢答器的设计(数码管:四位一体共阳)