Good Practice in Agile

敏捷开发是一种提倡拥抱变化, 控制风险的一种方法论。本文将讲述在实施敏捷团队时的一些Good Practice。

识别团队中的Bad Smell

文档

“hey, 帮我写个文档被, 以后我好回顾, 以后来人就按照这个文档操作, 省的你一遍一遍说”.

碰到这种情况一定说, NO. 当面沟通最有效, 我已经交给你了, 再来新人, 你教. 如果认为有必要写文档, 谁提倡谁写.
这种方式, 除了拒绝文档这种低效率的沟通方式, 还要拒绝团队为”只提意见,不主动实践”的人提供土壤。

我们拒绝文档,提倡高效沟通。试想一下,刚进项目的时候,客户的人做我旁边,找我问技术问题竟然发邮件。

站会

"xxx没来, 等等他吧, 我希望听听他的工作. "

依然say no. 我们不能为了站会而站会. 站会不等人, 准备或者提前开始, 团队快速catch up, 然后迅速开始一天的工作.
不用担心有人缺席站会会有影响, 如果有人非常需要跟缺席人的沟通, 自己会去找他, 反之依然.

沟通

“hey, 我发现一个小bug, 能不能现在修一下, 很简单, 估计也就10分钟”.

拒绝. 请JIRA建卡, 或者story上添comments , 简单描述bug, Owner在需要时自己去take卡

此时要培养的习惯

  • 优先级的概念
  • 再小的任务也有effort, 当前工作被打断, 再拾回也是effort
  • 任务的简单与否, 会耗费多长时间, 一般由熟悉本任务的Dev决定, 其他人替Dev做预估都是非常不专业的表现. 一定要培养沟通习惯, 专业的事情, 找专业的人沟通,由专业的人评估。

让每个环节更有效率

站会

go through 每天大家做的事情.

站会时只讲三件事儿, 时间控制在5分钟内(10个人)

  1. 我昨天做了什么
  2. 我今天要做什么
  3. 碰见什么问题,需要谁或者什么帮助.

站会主持者需要及时识别站会中的bad smell

  • 站会时进行细节讨论
  • 讲述story中, 不需要每个人都知道的细节
  • 把站会当开会, 当中宣布一些显而易见事情. 这种事情邮件就可以做到, 不需要大家每个人, 把聆听宣讲当做优先级最高的事情.

提高站会效率的手段

  • 准备一个token, 只有拿token的人才能说话
  • 站会时计时5分钟, 然后告诉大家我们需要5分钟内结束站会. 会后记录使用时间, 在团队养成习惯后可以不用追踪时间
  • 展会前将站会内容按照Yestoday, Todo, Question分类, 写在卡片上, 站会时按照卡片上的讲
  • 及时打断不必要的讨论
  • 及时打断问对方要承诺式的对话. (例如, xxx你今天能不能完成 xxx? 然后也渴望的眼神看着对方)

Continuous Integration / Continuous Deliver

CI/CD没有你想象那么难, CI/CD会带来持续的效率增长. 越早引入成本越低,反之成本越高。无论多困难困难,都建议排在最高优先级。

CI最小集合

  • build script ( maven, gradle, rake, gulp.js …)
  • git repository
  • Jenkins Job

CI能保证的内容

  • project 能够在一个干净的机器上build, 避免本地依赖
  • 每个人都可以使用build script构建相同的开发环境(mvn idea:idea / gradle idea)
  • 构建结果能够发布, 客户可以时刻拿到QA过的更新

CI标准集

  • run check style
  • run unit test
  • build package
  • run functional test

Continue deliver标准集合

  • 将构建结果自动化发布
  • 自动化更新到终端(eclipse plugin开发,自动更新到update site)

结对编程

有些客户对结对编程并不理解,虽然不进行100%的full time结对,有些场景结对编程会带来很好的效果。坚持下来后,这种结对方式也赢得了客户的认可。

需要结对编程的信号

  • 传递知识, 包括带新人
  • story涉及两个人做的内容, 可以double check
  • 需要帮助的时候

不适合做结对的情况

  • spike
  • 需求不清晰的Story

如何结对

  • 先就story沟通思路
  • 一个人写测试, 一个人写实现

Code Review

每天必不可少的环节,并且需要坚持每天进行。

目的

  • catch up 今天的工作,
  • 分享代码技巧
  • check代码, 保持良好的代码风格

步骤

  • 先讲做了什么, 如果条件允许, 先做showcase
  • 按照解决思路讲解代码
  • 重构(当天发现的问题, 当天重构), 站会时需要有人专门记录refactor建议

关注点

  • 别人在做什么, 如果以后碰到相关问题, 知道要怎么做, 或者找谁问.
  • 了解别人解决问题的思路
  • 关注代码的bad smell

Retrospective meeting

一个安全的环境, 大家讨论团队中遇见的问题.可以采用如下方式:

  • Well/Less Well/Question or Suggestion
  • Star Fish (Start/Stop/More/Less/Keep)

个人推荐采用Star Fish, 每个象限都是action, 会让回顾会议更容易产生action, 效率更高。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 151,688评论 1 330
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 64,559评论 1 273
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 101,749评论 0 226
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 42,581评论 0 191
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 50,741评论 3 271
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 39,684评论 1 192
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,122评论 2 292
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 29,847评论 0 182
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 33,441评论 0 228
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 29,939评论 2 232
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,333评论 1 242
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 27,783评论 2 236
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,275评论 3 220
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,830评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,444评论 0 180
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 34,553评论 2 249
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 34,618评论 2 249

推荐阅读更多精彩内容

  • 阅读Tips: 本文是我根据这么多年来的实际开发、技术管理经验的一些总结,完整阅读需要30分钟,已经整理成简书专题...
    hirainchen阅读 8,153评论 12 118
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,471评论 25 707
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,050评论 18 139
  • 每一个时代的到来,就将淘汰一批无法与时俱进的人,同时,也会创造一批走在前沿的幸运者。这是一个全新互联网思维的时代,...
    时代牛人网阅读 286评论 1 0
  • 直营团队管理如何布局和破局 正资源: 1,有10个人,还有2个实习生名额 2,费用方面分行支持 3,考核方案自定 ...
    聂博阅读 133评论 0 0