鲁峰's profile站在岁月的岸边,向自己过往的生活打个水漂BlogListsNetwork Tools Help

Blog


    25 September

    [转]敏捷教练,从A到Z

    转自http://www.infoq.com/cn/articles/agile-coach-a-to-z

    敏捷方法学带来了新的角色——“敏捷教练”,它不常见于传统方法学中,甚或不曾为之提及。已驾轻就熟的实践者,可能会视之为浑然天成,羚羊挂角、无迹可寻;而初窥门径的新手则会心生疑云:“敏捷教练为何如此重要?‘部门经理’、‘团队领导’、‘技术领导’,他们的问题何在?Monster.com为此提供54个职位,又是何故?”
    “奇文共欣赏,疑义相与析”,当是吾等本色。且与笔者同游于本文中,或可领会敏捷教练之所思、所行,更要知其意义所在。

    A 即 Advice(建议):“我曾见别人做过。我觉得你们这样做效果更好。”

    以传统方式工作的经理会明确指导团队该怎么做,而不是帮助他们找到属于自己的道路。敏捷教练虽然常常以顾问的角色出现,但她不会做太多导向工作,而是在需要的时候出现,帮助团队避开已为人知的陷阱,或是引导他们走向佳境(参见引导导师)。

    B 即 Balance(平衡):“别把好东西丢掉。”

    有时候团队会忙得自顾不暇,以至于又回到老路上来。教练会寻找良机,跟团队一起工作,去发现、尝试可能为团队带来巨大利益的新做法。他还会确保那些依然为团队带来收益的实践不会被随手抛弃,为人遗落,他常常会把它们跟新方法合并。

    C 即 Celebration(庆功):“嘿,上个迭代你们干的太棒了!”

    团队常常会低估成功和肯定式探询的力量。迭代一步步向结果推进,形成节奏,帮助大家意识到何时达成目标(参见反馈)。但是人们常常会忘记迭代中的庆功。整个团队在项目结束以后,或是某些重大里程碑完成后庆功(参见感染力),会极大鼓舞士气。敏捷教练每天会跟团队一起庆祝每个小小的胜利。

    D 即 Daring(勇敢):“跟你们说,我豁出去了,是这样的……”

    引入变化就有相应的风险,敏捷教练需要承担责任,寻找途径,以最小的风险带来最大的价值。在团队中,他往往是第一个破冰而行的,激励团队,给每个人带来安全感,让他们有勇气提出建议,即使不敢尝试不同的工作方式。

    E 即 Encouragement(鼓励):“加油!这玩意很NB!”

    有些敏捷实践看上去很直白,可如果没有理解它们背后的原理和带来的影响,实施起来就会很容易出问题。简单试上一段时间以后,人们往往会感觉到哪些东西从前效果更好,现在用的实践存在哪些限制(参见提问)。敏捷教练会为人们提供支持和鼓励,帮助他们度过尝试新实践的不适应期,有时也会帮他们解决掉实践中比较难以实施的部分。

    F 即 Feedback(反馈) :“你有没有发现团队……?”

    所有的敏捷方法学都提倡快速反馈。敏捷教练在团队工作的方方面面都会强调反馈机制的重要性——从团队协作,到过程,再到实践。定期的反馈可以帮助团队更有效地适应所处的特殊环境。

    G 即 Guidance(引导) :“看上去我们有三种选择,我觉得前两种可能更好,你们觉得呢?”

    敏捷狂热者的工作方式跟敏捷教练不同。狂热者习惯使用命令和控制的方式,而敏捷教练只是加以引导,帮助每个人自我学习。他引导团队避开已知的陷阱,但他也明白失败是成功之母。

    H 即 Humility(谦虚):“实际上,活儿是大家干的,不是我。”

    敏捷教练会为团队提供指导,帮助他们完成工作。当他们犯错误的时候,她要勇于承担责任,团队取得成功后,她要保证适当的人得到奖赏。傲慢自大的教练在团队中没有容身之地。

    I 即 Infectious(感染力):“你得过来看看这个!”

    敏捷教练会给团队带来激情和活力,用自己为榜样,鼓舞人们燃起对工作的激情。他理解团队愿意接受多少变化,也知道自己展示热情的分寸,不会被人跟敏捷狂热者混为一谈。他也一直在寻找恰当的时机与大家分享他的能量与热情。

    J 即 Jiggle(摇摆):“这样调整一下,再那样调整一下。”

    很多事情要想做好不只一种方式,即便团队跟上次采用同样的实践也是如此。敏捷教练帮助团队在以往经验和认识的基础上调整实践,使他们更好地适应团队与环境。

    K 即 Knowledge(知识) :“你读过这本书/这篇论文/这个邮件列表了么?”

    敏捷方面的知识浩如烟海:敏捷实践、敏捷原则、实施方法与面临的挑战,等等等等。敏捷教练对这整套资源很熟悉,可以引导大家去看相关的书籍、论文或是博客,查找跟他们遇到的问题相关的资源。

    L 即 Listening(聆听) :“你说你想要做……”

    敏捷教练需要倾听团队的看法,从而了解他们当前的状态、他们的好恶。有时候也会把她听到的东西反馈给团队。她认真听取每个人的意见,掌握他们的需求与担忧,并据此调整她工作的优先级和相关活动。有时她也会把这些意见跟别人分享,也会鼓励人们为自己辩护。

    M 即 Mentor(导师) : 让自己成为多余的人

    敏捷教练的终极目标是打造自给自足的团队,他们可以对实践过程进行自我调整。为了达到这个目的,他需要找到适当的人,对其进行指导,提供支持,这些人的角色看起来很像教练。

    N 即 Naysayers(怀疑论者):“我不信”

    每个团队可能都有某些人彻头彻尾的站到敏捷教练的对立面去,而且也没有什么说得过去的理由。敏捷教练要能经得住这种刁难,去理解他们的需要,理解他们为什么会感到威胁(参见聆听, 提问敏感)。她会跟他们一起工作,让他们感到自己的意见受到重视,满足他们的需要,让他们释放掉压力。不情不愿的家伙需要得到鼓励,这也是教练的工作。

    O 即 Obligated(担当):“团队中的一部分”

    敏捷教练需要证明他的建议是完全为了团队利益(参见透明),如果他能够作为团队的一部分,跟团队一起工作,能够体验到一项决策的后续影响,这对他的工作将很有帮助。

    P 即 Principles(原则):“不要只看到现象,还要看清本质。”

    穿透实践的执行过程,洞彻其背后原则,是为敏捷教练应为之事。脱离原则的实践会变成无本之木,收效甚微,而脱离了实践的原则更是寸步难行(参见引导)。敏捷教练会帮助团队体验一系列实践,帮助他们理解这些实践所带来的价值,帮助他们适应这些实践对团队对组织带来的效果,由此掌握原则。

    Q 即 Questioning(提问) :“你看到了什么?感觉如何?”

    提问问题可以帮助我们厘清状况,到底是顺风顺水,还是步履维艰(参见怀疑论者)。敏捷教练常常问问题,将事实与个人看法分开,对现状有更好的认识。如果不问问题,就轻易做出决定,长期来看对团队会有不良影响。

    R 即 Retrospectives(回顾) :“我们学到了什么?哪些东西我们会继续坚持?哪些东西应该另起炉灶?”

    回顾是一个很关键的实践,敏捷教练用它来帮助团队认识到自己的成果。项目回顾可以给新项目提供之前积聚的智慧,而中间阶段或是固定频率的回顾可以帮助团队快速响应不断变化的环境,保证工作效率并不断提升。在回顾中着重突出那些已经实施了的变化,或者至少指出那些时时重复出现的问题,都可让教练和团队共同受益。(参见聆听)。

    S 即 Sensitive(敏感) :“我在想他们是不是已经准备好……”

    最优秀的敏捷教练会尊重团队所在的组织文化和工作环境(参见聆听热心)。她不会命令他们改变工作方式;她会首先观察形势,然后才提出建议。

    T 即 Transparency(透明):“我希望你可以这样试试看,因为我觉得这有助于你……”

    诚实可以建立敏捷教练与团队之间的信任。他会解释做事的理由,让大家晓得尝试新事物可以带来什么好处。通过解释当前的状况及其与过去的经验或学习到的教训之间的相似之处,人们会觉得可以安心接受他的建议。有时候,让大家知道他没有暗地里做什么事情,或是有什么隐藏的动机,这也是很重要的。

    U 即 Unlock(释放潜能):“我没想到这团队还能办到这些!”

    因为所处环境的限制,团队常常都有很多潜力爆发不出来。通过认真观察和对当前流程的尊重,敏捷教练可以帮助团队识别并消除系统的限制,释放团队的潜力。

    V 即 Vocabulary(词汇):“YAGNI?Burn up?Muda?”

    每套方法学都有相伴的词汇。敏捷教练了解这些词汇、缩写、特殊单词的含义,把它们跟团队的思想体系相匹配。当新的模型与现有模型有所冲突时,这样做尤其有用,而且可能需要实验式教学(参见禅意)。

    W 即 Welcoming(接纳):“你们觉得我们应该怎么做?”

    倘若敏捷教练做得很成功,团队就会提出新的思想,真正加以执行。敏捷教练应该欢迎并支持个人的提议,保护它们不会像过去那样饱受批评。

    X 即 Xenodochial(友好):“对陌生人友好”

    大多数敏捷教练都会不停转换团队,需要适应不同的环境。他们不但要被不同的人接受,而且需要确保他们的一言一行不会让人产生排斥心理(参见敏感)。每个人都有自己的想法和动机——教练必须能够意识到这一点,知道每个人都有未发挥出来的可能。

    Y 即 Yarn(讲故事):“从前啊……”

    在不同的文化中传播知识,讲故事是很有效的途径,敏捷教练也常用它来散播知识和想法。有些故事讲述了以前的种种经验教训,有些可能只是作为隐喻来阐述概念。

    Z 即 Zen(禅意):“你必须找到自己的路”

    事非经过不知难。有些道理必须要亲身体验以后才能明白。与其苦口婆心,不如想办法打造安全的环境,纵使人们犯错,也至少不会有严重的后果。敏捷教练可以使用苏格拉底式的问答方式,帮助人们找到针对自己问题的最佳解决方法。

    方法论!=教条

    又让我头痛起名这件事了。看了infoq上的两篇文章,《何时应该打破规则?》《敏捷?Scrum?吹皱一池春水,干卿何事!》,都在阐述一些方法论的本质。

    何时应该打破规则?》讲述了开发中是不是有可以暂时不用考虑规则的情况,以及这样做会带来什么后果:

    咱们考虑这样一种状况:如果可以暂时不遵守某些实践,就能马上得到一些短期的交付。在这种状况下,团队会很容易欠下一些很严重的技术债务,甚至有可能大大影响系统的质量。
    ……
    还有其他的状况:系统已经糟糕到一定地步,不允许再发生任何技术债务,软件再有任何差池,都将会导致财务上的损失(甚至更差)。经验告诉我,这些损失是很容易发生的,一旦出现,结果很可能更具破坏性。光说“赶紧交付吧,宝贝儿”会造成灾难性后果,而且是完全不负责任的做法。

    尽管这样,文章的主旨还是:要将“质量第一”牢记心中。

    傻瓜才会盲目遵从规则。我们的脑子足可以分辨规则何时有用,何时不行。我们有责任不断判断规则是否有用。

    我们的职业自豪感才是解决问题的根本。这种自豪感既冰冷残酷,又炽热夺目。它不会让我们因为恐惧而将规则摒弃一边,如果这么做,也是因为职业自豪感让我们发现:某些规则会让我们交付垃圾软件。

    我觉得最经典的还是这最后一段,“职业自豪感”很了不起的词。

     

    另一篇《敏捷?Scrum?吹皱一池春水,干卿何事!》中针对处于敏捷风暴的国内那些所谓的一次学术给予和冲击:

    很多人都只是片面的关注具体实践,而不是它背后的哲学。如果你只是一味的采用实践,对这套体系的哲学理念置之不理,还想有多好的成效,那可能吗?
    ……
    我觉得要学会怎么实践敏捷,最起码要花上几个月的时间。你得进入团队,用敏捷的方式工作,你需要查看所有的因素是怎么配合到一起的。这要经过几个月的练习才行。

    学过唯物主义认识论的人,或者说,能够有清晰缜密的思维逻辑的人应该都清楚,我们是先要认识世界,然后才能谈得上改造世界。换句话说,是先认识到问题所在,然后对症下药量体裁衣去 解决问题。假如,我们能够有一个统一的认识:为客户交付高质量的软件,能够适应客户不断变化的需求,在成本和收益之间达到最佳的平衡,消除潜在的或是明显 的浪费,能够让客户收获最大的ROI(Return of Investment);那么问题就很明显了——为了达到这样的目的,我们需要采取什么样的手段?

    作者同时提出了几个问题来说明上面这些东西,同时又是以一句经典对白结束的文章:

    我不要敏捷
    我要致力于消除软件开发中的一切浪费

    12 September

    杂记

    「又一篇杂记,就当是N久没有更新后的出关之笔吧……」

    【国歌】
    前天去看了残奥会的乒乓球比赛,由于工作人员的安排问题,只看了中国唯一没有夺金的那场比赛。不过,最大的收获是唱了四回国歌。好像自从高中毕业再也没有升旗仪式了。即便有,大多时候也是“升国旗,奏国歌”,而小时候的记忆里是“升国旗,唱国歌”。时光啊~~

    【镜头】
    还是比赛场上的事,看到人家一个个“大炮”……钱啊~~

    【强子对撞机】
    不记得从什么时候开始,就再也没看过新闻类节目或是网页。无意间听说法国那边搞了个这么个玩意,什么不好玩,玩宇宙起源。想当上帝还早了点。嘬啊~~

    【从培训想到的】
    一个通知如下:“本周五下午X点正在XXX听专题讲座,请大家出席。报告的内容是:如何做一个积极进取的员工。”且不说这是公司某领导来主讲,咱就说这报告内容,听上去总有那么点不舒服。培训也有培训的技巧,题目和内容的描述引吸听众是必不可少的。如果说成“和大家探讨如何为自己做好个人发展规划”会不会比现在的效果好一些。这就是咨询的技巧。学问啊~~