速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

物理墙和虚拟墙之争

  • 2013-03-27
  • 本文字数:1227 字

    阅读完需:约 4 分钟

在敏捷开发中,故事墙作为 information radiator,在支撑整个软件团队的日常开发,可视化开发进度和开发中出现的问题,起到非常重要的作用。团队的开发状态和进度,在任何时刻,你只需要抬一抬头,就可以一目了然:当前谁在开发什么任务,是否有闲置的资源,开发和测试的工作分配是否合理,是否有过量的 Bug 等待修复,不一而足。

虚拟的电子故事墙也应运而生,比如 Mingle 和 TFS,还有一些开源的产品经过改造后,也可以极度模拟实际的物理墙界面,并更加容易创建和编辑并删除。尤其在保存开发过程历史方面,比起物理墙有着得天独厚的好处。物理墙基本上只关注当前迭代的进程,在每次进入新的迭代,物理墙更新,上一迭代的故事卡片被回收或者遗弃,难以定位和回顾。虚拟墙因为信息化的本质,更容易搜索和存档,保留快照。此外,电子故事墙在统计和制作图表方面的功能,更是物理墙无法企及的。电子墙可以随着故事卡的挪动,动态算出当前状态下的各种数据,并渲染对应的实时更新的图表,为团队和客户提供数据和可视化方面的决策支持。更重要的,虚拟墙天生支持分布式开发,因为地区甚至时区有差异的团队,如果需要共用一个故事墙时,唯一的选择只能是虚拟墙,每一方团队都能看到时刻最新的故事墙状态。

如何解决好两者之间的关系,在 ThoughtWorks 内部以及客户的现场,我们都遇到了类似的问题。一般来说,团队自身或者开发者们更喜欢物理墙多一点,感受直观,把注意力和时间都聚焦在故事卡对应的任务本身,而不是被动地吸引在虚拟墙软件自身以及如何学习使用并挪动虚拟墙上的电子卡上(你会看见在站会时,每一位开发人员在挪动电子卡时会有多么奇怪而有趣的事情发生),对他们是更重要的事情。而对于团队的 PM 或者 stakeholder 们来说,虚拟墙可以远程打开,开发状态一目了然,更不用提统计和图表所提供的支持。

很多团队会选择两者都采用,但不得不问到以谁为主以及如何同步的问题。以谁为主还是比较好解决,物理墙面向开发团队,虚拟墙面向管理者和 stakeholder 们。所以最大的问题在于如何保持两者之间的数据同步。说白了就是,物理墙上的故事卡挪动,要及时在虚拟墙上反映出来,尤其虚拟墙软件对于故事卡的每一步挪动都会记录相应的数据变化,从而为精细的图表和统计提供数据,这样物理墙和虚拟墙之间的故事卡数据同步显得尤为重要。但现实情况和经验表明,数据同步做得很不如人意,开发者的关注点在物理墙,往往容易忘记及时更新虚拟墙上的故事卡,他们甚至对于这样一件重复的事情感到愤怒。而如果由 PM 每天下班前对两个故事墙做同步,又显得无聊之极。

怎么办?我更相信鱼和熊掌不可兼得,对于一个团队,如果既要享受物理墙带来的可视化和信息辐射的好处,又需要虚拟墙带来的强大的编辑、统计以及图表功能,就不得不去承担因为同步二者的故事卡数据所带来的辛苦甚至是痛苦。选择团队的开发人员来各自负责同步两个墙之间的数据,还是由 PM 每天找一个正确的时间来同步,都是由团队自己来决定,至少我们是这么做的。你还有其他的办法吗?

2013-03-27 00:274199
用户头像

发布了 127 篇内容, 共 43.6 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

再获信通院权威认证,优等生华为云GaussDB数据库凭什么?

华为云开发者联盟

数据库 opengauss 华为云 GaussDB 信通院

讨论:低代码集成OA/ERP/MES系统,或将是企业应用生态的重要一环?

优秀

低代码

在线JSON转GraphQL工具

入门小站

工具

Linux系统学习攻略《Linux一学就会》:Linux系统启动原理及故障排除

侠盗安全

Linux linux运维 运维工程师 云计算架构师 linux电子书

java开发之Java ORM 框架推荐

@零度

Java Java ORM ​ObjectiveSQL

什么是 Java Marker Interface(标记接口)

汪子熙

Java jdk volatile 28天写作 12月日更

基于SSM+Shiro+Bootstrap实现用户权限管理系统

Bug终结者

Java bootstrap ssm shiro

架构实战营-毕业总结

李焕之

如何利用测试自动化,实现 DevOps?

SoFlu软件机器人

Android C++系列:Linux Socket编程(一)预备知识

轻口味

android 28天写作 12月日更

Redis(二):内存模型及回收算法

IT巅峰技术

Java redis 架构师 分布式缓存 redis分布式

前端开发MySQL 数据库之数据引擎

@零度

MySQL 前端

Linux之pwd命令

入门小站

Linux

智慧园区综合管理平台解决方案,智慧平安社区搭建

电微13828808271

京东白条数据架构进化之路:要在数据的不确定性中探索架构的稳定性

SphereEx

数据库 开源 架构 ShardingSphere 京东白条

运营商行业软件开发| 内容合集

鲸品堂

通信 运营商 技术专题合集

Linux之mkdir命令

入门小站

Linux

我还是很怀念谷歌

张老蔫

28天写作

云原生应用管理,像管理手机APP一样管理企业应用

北京好雨科技有限公司

PaaS #Kubernetes# 应用管理

Dubbo 框架学习笔记二

风翱

dubbo 12月日更

大数据开发之Spark和Flink的对比(转载)

@零度

大数据 flink spark

权威认可!腾讯云TDSQL通过信通院数据库服务商运维运营服务能力评估

腾讯云数据库

tdsql 国产数据库

区块链电子合同应用平台开发,区块链电子合同解决方案

电微13828808271

架构训练营毕业设计-电商秒杀系统

李焕之

使用Git将本地项目添加至Git仓库

Bug终结者

Java 实用工具 gitee git version

MySQL性能优化:EXPLAIN 执行计划与join

秋水

MySQL性能优化 执行计划 内容合集 签约计划第二季

TDSQL | 云原生时代的数据库技术革命

腾讯云数据库

tdsql 国产数据库

TDSQL在核心交易系统领域的联合解决方案

腾讯云数据库

tdsql 国产数据库

详细解读MySQL高性能优化

秋水

MySQL性能优化 内容合集 签约计划第二季

【SpringCloud技术专题】「Gateway网关系列」(2)微服务网关服务的Gateway功能配置指南分析

洛神灬殇

api 网关 SpringCloud Gateway netty 12月日更 服务网关

TDSQL | ‘‘微盟式’’SaaS,让商业变得更智慧

腾讯云数据库

tdsql 国产数据库

物理墙和虚拟墙之争_研发效能_张凯峰_InfoQ精选文章