APP下载

看板模型在敏捷软件开发流程中的应用

2019-09-10蒋梦云

计算机与网络 2019年12期
关键词:开发人员卡片可视化

蒋梦云

看板(Kanban)一词来自日本,源于精益生产实践。看板使得项目管理最大的可视化,但是看板更可以将研发的过程进行管理,记录下用户故事研发过程中的细节和历程。

1.软件开发中看板的用途

(1)最大限度的可视化,同时解决团队沟通障碍。通过Kanban,项目团队可以清楚了解已经完成的情况,正在做的以及后续将有可能需要做的用户故事。

(2)对于项目经理而言,最担心的就是项目进度不可控,不知道每位开发人员具体的工作进度;有了Kanban,所有工作进度都能清晰的展示在看板墙上。

(3)对于开发经理而言,最担心的就是资源分配不合理,忙的人忙死,闲的人闲死,有了Kanban,可以合理的分配开发资源和任务。

(4)对于开發人员而言,最担心的就是绩效考核不公平;在开发工程中的绩效,不能清晰地反应在考核中,每个开发人员对其他人的工作也不了解。有了Kanban,可以明白地知道项目组各个人员的任务量,对开发的内容,也能清晰地沟通。

2.看板模型流程

2.1划分阶段

①待开发:还没做的,一般称为Backlog,这部分由产品经理(PM)协同开发经理来定义,主要的来源是客户的新需求或者市场线上反馈的bug;

②开发中:正在进行的任务,一般这个部分都是详细编码的过程;如果存在架构设计、前端UI、具体编码的分工,也可以再具体的划分;

③待测试:已经完成的开发功能,这部分由开发人员移动,下面一步就交由测试人员;

④测试中:测试部分,表明当前测试人员正在进行的工作;

⑤已完成:已完成,等待上线。

每个项目可以根据自己的需求建立自己Kanban。上面这个并不是唯一的。

2.2定义卡片模型

在待开发中放置了许多小卡片,它们在Kanban中被称为在制品(Work In Process,WIP)。对于产品经理而言,WIP是需求,而对于开发人员与部署人员而言,WIP却是任务。对于卡片模型来说,我们可以定义如下内容:

Task类型:用户故事(User story)bug分为一类;重构、搭建测试环境这样的不直接产生业务价值的任务分为一类,还有一些项目运营中的一般事务分为另一类;这3类任务用不同颜色的卡片,放到状态墙上统一管理。

Task ID:是某个Task的唯一标识;

Task描述:就是这个Task要做什么;

Task预估时间:一般根据项目组的平均开发时间来预估每一个Task的开发时间,根据这个时间,可以评估出在一个迭代周期中所有Task需要完成的时间。通常据此时间来排列Task中的优先级;

Task优先级:由产品拥有者来决定,或者由开发经理决定;

Task所有者:完成这个Task的负责人。

2.3利用泳道来优化流程

具有泳道特性的看板,在移动状态时需要参照以下流程:

①当一个用户从“Backlog”移到“用户故事”列时,需要将用户故事涉及的多方成员的工作进行任务拆分,拆分成一个个的任务。

②成员针对任务进行工作,当所有成员的任务完成后,将完成的用户移到测试验证列中。

③如果测试发现问题,则将相关的bug报给对应任务的人。

④看板实践核心实践的重要性和原则。

通过看板建立团队稳定的任务节奏,实现始终如一的可靠交付,这能够帮助团队与客户、依赖的相关部门、供应商、价值流下游合作伙伴建立信任关系。而信任关系对每一方都是非常重要的。

可视化工作流程,所有的Task的进度会全部显示Kanban上,每一个人都可以一目了然了解进度和流程。

限制WIP中的Tasks数量,一般情况下,这个数量是等于Team中的developer数量。

缩短开发周期,这个其实可以理解为发现问题,解决问题,从而找到更科学的方法提高开发效率。

拉动生产,看板很好地展示下游环节的当前状态,根据已完成工作确定前一环节可以投入多少资源,而不是前面环节使劲投入,不管后面环节是否能应对。

3.结束语

减少浪费是敏捷软件项目的核心之一,利用Kanban,项目开发中的各个关系人可以很方便地了解项目进行的状态,在使用中可以增加沟通的效率,提高对项目价值的认知度,进一步的减少不必要的浪费。

猜你喜欢

开发人员卡片可视化
数据可视化设计在美妆类APP中的应用
思维可视化
卡片排一排
健忘卡片
复变函数级数展开的可视化实验教学
复变函数级数展开的可视化实验教学
复变函数共形映射的可视化实验教学
复变函数共形映射的可视化实验教学
Semtech发布LoRa Basics 以加速物联网应用
水往高处流