TDD

实践测试驱动开发

作为一个有理想、有追求的程序员,你成天被各种名词包围着,你对其中一个叫做敏捷的东西特别感兴趣,因为它特别强调人的作用,这听着都让做程序员的你感到舒服。为了让自己早日敏捷起来,你从众多的敏捷实践中选择了一个叫做测试驱动开发(Test Driven Development,TDD)的作为你的起始点。 Read more

技术债

并非所有技术债都应该偿还

有些时候,无需偿还技术债。这也是源自于财务债的类比。通常来说,那就是所有财务债最终都会被偿还,尽管我们都知道,实际上并非一直如此!

有些情况是无需偿还技术债的。我将介绍其中三种:行将就木的产品、一次性原型和短命产品。
Read more

让敏捷团队学会协作的三个要素

本文将探讨敏捷团队协作相关的话题,无论你是谁,是公司经理、联合会成员、后勤人员、咨询人员,还是政府官员,都无法仅仅依靠自己来实现所有的目标。你需要下属、同事、上级、供应商或客户的帮助。

然而,事实证明,相互合作不是一件容易的事情。通过设计可以使装配流水线上的机器人相互配合得天衣无缝。但对于人来说却不行,因为每个人都有自己的想法,况且人不是机器,人都有情感——高兴或愤怒、自信或无安全感、友好或妒忌。对任何事情我们都有自己的判断标准,是公平还是偏颇,是对还是错。

Read more

项目管理无力 敏捷开发出招

在实际的项目实施中,尽管旁边常常站着解决项目问题的专家,但当项目经理被不自觉地卷入到项目的各种问题中时,项目管理的各种方法也变得苍白无力。此时,敏捷开发往往成为项目经理的制胜法宝。 Read more

scrumcn602120522

在Sprint中间改变目标

我曾经应聘过一个SCRUM Master的职位,面试官问我这样一个问题:“在一个Sprint进行中,如果用户想改变某个正在这个Sprint中实现的User Story,你觉得应不应该改变它?”SCRUM的规定在我脑海中明明白白的印着:“在Sprint里不许改变任何任务,团队在第一天承诺一系列工作,然后期望它们在整个Sprint保持不变。” Read more

Scrum解析:当西方遇上东方

敏捷的基本观点是以变化的观点看待世界(体现在敏捷宣言中的响应变化)和以人为中心(体现在敏捷宣言中的个体与互动和与客户合作)。Scrum是一个管理框架,流和可能性的艺术。它是东西方思想碰撞与结合的产物。它的三个哲学基础是:
来自中国的王阳明的知行合一学说。
来自日本的野中郁次郎的场理论。
来自美国的Jim Coplien等的模式(源于道德经)。 Read more

团队冲突管理

团队协作由人组成, 有人的地方就有争执. 值得说明的是,冲突不全是坏事,它能暴露组织中存在的问题,促进问题的公开讨论,增强企业活力,刺激良性竞争.从某种意义上讲,冲突是企业创新的重要源泉.在大多数情况下, 一起工作的人都足够成熟, 会按制自己, 他们试图在一起和平工作, 并且一般来说会努力,愉快, 高效地完成项目. 在两个或更多的成员对同一个主题极为感兴趣的情况下, 最容易出现争执. 例如项目的两个开发人员都坚持用不同的方法开发应用软件,因则争论不休. 一般说来, 两方都是好员工, 只是都强烈地主张采用各自的工作方法. Read more

在精益创业中使用回顾来支持学习

精益创业中运用的“构建-评估-学习”反馈循环,其目标在于帮助企业家掌握其客户的需求。而敏捷回顾则是一种反思和学习,并对需要进行的改变达成一致的方法。以下的例子描述了在精益创业中,如果使用敏捷回顾来支持学习并采取行动的。 Read more

技术优先VS业务优先

技术优先VS业务优先——本文是两种不同计划方式的效率和效能对比

注:下图中同一颜色的卡片表示具有类似的技术特征的story,比如含有布局类似的页面等。 Read more

持续交付对大型产品管用吗?

最近我有幸听了Martin Fowler关于“持续集成与持续交付”的演讲,Martin分享了很棒的见解–如何通过尽早交付和持续反馈来帮助团队使客户满意?

在过去5年的一大半时间里,我都在帮助大型产品公司的团队向敏捷转型。这段经历使我一直很困惑,我们给客户的建议是否真的可行? Read more