`

软件开发团队主管容易犯的十个错误

 
阅读更多

本文是Roy Osherove在Skills Matter的一次发言,他介绍了团队领导经常会犯的十个错误,并提出了一些解决方案。

  Roy首先提出几个团队领袖可能遇到的一些问题:

我如何说服我的团队做某件事情?我该拿团队里的那个专门搞事的家伙怎么办?我该如何做一个团队领袖呢?我们为什么无法远离无谓的争吵(编者注: fighting fires 译为“救火”更合适 )呢?我会不会失去朋友呢?…
  他说这些问题其实缠绕他多年,接下来他也逐一做出解答。他正在写一本叫《开发团队领袖手记》的书,里面也涵盖这些方面的内容。

  下面就来说说这十个错误:

  #1 没有认识到团队的成熟度

  这点是首要注意的地方,因为后面谈到的问题都是提及团队的成熟度。Roy说,可以从3个层面来评价一个灵活团队的成熟度。

混乱学习自我引导
  混乱

  一个混乱的团队就是哪都觉得很忙。可能他们总是在救火,或一直都被要求在非常有限的时间做太多的事情。但其实结果都一样:混乱。没有人有任何时 间变得有条理,没有人有任何时间学习新的知识,因为他们一直都在忙这忙那。如果你问我的话,这个团队明显成熟度不高。因为所有人,要么耗尽精力,要么感到 沮丧,因为缺乏机会学习,而最终好的人都会离开。但是,Roy说这种混乱其实非常常见,而我也很赞同。如果你是在这么一个混乱的团队里当领袖,秘诀就是要 正确的行动起来,你必须自信和强势。

  当船快要沉的时候,你需要的是一个发号施令的领袖,而不是开会。

  一个混乱的团队里的领袖,必须坚定立场,而且可能必须要和领导层说清楚,整个团队并不能把他们要求的所有的事情都完成。这是一个艰难的角色。他必须坚定的做出一些艰难的决定。

  管理要做得对、做得好是一件很艰难的工作。

  但为什么作为一个团队领袖,你必须自己做出这些艰难的决定,而不是和团队商讨呢?答案很简单,因为没有足够的时间。通过你自己做出这些执行上的 决定,你让你的团队得到一些喘息的余地,可能也就是这些余地让他们把手上的事做完。当然,可能有些你做的决定是错的。这没关系,人生就是这样。但这是为了 更重要的正确的事情,也就是让你的团队有成长到另一个层次的空间,一个不断学习的团队。

  学习

  这个层面的成熟度是团队自我管理的升华,但是团队成员还是有需要得到指导的。一个团队领袖必须持续不断的为他的团队成员带来一些挑战和质疑,甚至可能是功课。目标就是让团队里的成员每周都有进步,开始学会解决自己遇到的问题。

  所以,你要怎么做?

  作为一个学习成长的团队里的领袖,你要让团队里的成员学会解决自己遇到的问题,然而成长为自我引导的团队。如果某一个人带着一个问题来找你,你应该鼓励他们自己想办法解决,并问“你会怎么来处理这个问题?”来强迫他们思考。

  自我引导

  成熟的第三个层次就是自我引导型的团队。这是我们所有人都想去到的地方。在这样的团队里面,领袖更像是一个导师。他不需要像在一个混乱的团队里 那样为团队做各种执行方面的决定或告诉人们该做什么。但即使是在一个自我引导的团队里,团队领袖还是需要最少50%的时间在团队上面。

  所以,第一个错误就是不能正确认识到你的团队是在什么成熟度,也因此不能够正确的领导你的团队。如果你当他们是自我引导型的团队在运作,但其实他们事实上还是在混乱的状态,那么不久你就会在一条河上像没有桨似的乱窜。

  #2 害怕授权

  如果你常常习惯自己一手包办,可能要你下放责任给其它人是比较不容易接受的,尤其是你觉得其它人并不能把事情做好的时候。

  如果每个人都对目前手上做的事情都感到很舒服,没什么挑战的时候,就是你做的不对的时候了。

  当你要授权的时候,你必须做到责权对等。这些外加的责任,会把他们拉出那个安全区,这是一件很好的事情。适时挑战一下你的团队和拉他们出安全区才可以让他们成长。

  #3 害怕参与

  这一般来说是沟通不够有效,但Roy谈得更深入。

  #4 安抚

  公共要素(Bus Factor)——这是什么?公共要素指的是开发过程中的一些共同因素。这其实说的就是某些个体掌握太多信息。我看到太多地方有这种情况,无论是好的还是 坏的项目。所以我觉得这很正常。但Roy提到的是你不应该因为他们掌握了大量重要的项目信息就只安抚这些个体。你对待一个公共要素为1 (也就是说他一个人如果被公车撞了的话,项目就倒了)的人应该和别的任何一个人一样。我非常喜欢在人身上定义一个公共要素的主意,因为它让我想起了六度分离理论。

  #5 疏远

  这个应该是说由于太多的会议或邮件等烦杂事情要处理,导致基本上和整个团队实际的工作脱节了,最终疏远了。这个和六度分离理论没有关系。

  #6 太理想化

  不确定我是否同意这个术语,但Roy的意思是认为所有人都能清楚明白你说的意思,但实际上你并没有把自己的观点阐明。我想这点的关键是说当你和 一群人相处,尤其是对一个灵活的团队来说,假定他们拥有和你同样的知识水平和理解力是不正确的。你应该用最合适的方式去沟通,而不能做太多的假设。

  #7 责备

  如果你认为某个人是垃圾,那你就会有意无意的以这个为借口,不让他参与到团队的事务上来。这世界上总有这样的垃圾人物,但你所要做的是了解他们的短处,并把他们提升到整个团队的水平,而不是疏远他们,因为这样就意味着一直背负这些沉重的包袱。

  #8 忽略影响行为因素的力量

  你必须认识到那些会作用到个人身上的行为因素的力量和知道它们是如何影响个人的。主要有这么三种行为因素:

个人群体外界环境
  所有这些因素都会影响到一个团队是否能够成功。所以你必须找到有没有什么因素正在影响团队的敏捷度。其中一个外界环境的因素可能是硬件设备不足够支撑你所需。比如说你没有预算添置一台持续集成的服务器,那你几乎永远无法变得敏捷起来。

  #9 害怕太独断

  很明显这在英国和挪威是很普遍的,但在丹麦不适用。我敢打赌你不知道。但这据称是真的。独断,就是坚定自己的立场并拒绝任何你感觉不能接受的事 情。如果你是在一个处于混乱状态下的一个团队里面,那你必须非常独断。在一个处于混乱状态下的一个团队里面,惧怕独断是致命的。

  #10 不重视承诺

  这里说的是模糊其词。Roy说你应该任何时候都对项目期限负责。当你对团队谈论的时候,确保他们也告诉你每个任务的具体完成时间。很明显,让他 们作出承诺,他们会更有激情的完成任务。Roy的建议是当你开会结束的时候,并问每一个人他们下一步要做的事情是什么,确保他们的回复是什么时候前做完什 么事情。但是,任何人都只应该承诺他控制范围内可以完成的事情。承诺一些要别人替你完成的事情是没有意义的。还有,一但你发现你无法按时交货时,让整个团 队的人都知道,他们可能有办法帮忙并让你及时完成任务。
分享到:
评论

相关推荐

    最最实用的软件系统开发团队绩效考核制度

    通过这样的绩效考核制度,软件开发团队能够建立一个积极向上的工作环境,激发员工潜能,提高整体业绩,实现团队和个人的共同成长。同时,文档“最最实用的软件系统开发团队绩效考核制度.doc”可能会详细阐述以上内容...

    敏捷软件开发:原则、模式与实践

    Scrum以其角色(产品负责人、开发团队、Scrum主管)、事件(冲刺、评审、回顾、每日Scrum)和工件(产品待办事项列表、冲刺待办事项列表、增量)为核心,强调团队的自我组织和持续改进。Kanban则注重可视化工作流程...

    minjiekaifa.rar_agile_敏捷_敏捷开发_敏捷软件开发

    《敏捷软件开发:原则、模式与实践》是敏捷开发领域的一部经典著作,它深入探讨了敏捷开发的理念、方法和工具,旨在帮助软件开发团队提高效率、灵活性和产品质量。本书的核心在于强调快速响应变化,通过迭代和增量的...

    软件开发文档编写指南

    ### 软件开发文档编写指南 #### 一、项目开发计划 ...通过上述三个阶段的文档编写,软件开发项目得以系统化、规范化地推进,每个阶段的文档都为下一阶段的工作提供了明确的指导和依据,确保了软件开发的质量和效率。

    软件开发规范

    软件开发规范是指导开发团队进行有序、高效、高质量软件开发的一套规则和标准。它涵盖了软件生命周期的各个阶段,从项目的初期评估到最终的交付和维护。下面将详细阐述软件开发的各个步骤以及相关的命名和文档规范。...

    软件测试主管工作总结.pdf

    2. IT领域:由于测试主管的工作性质属于IT行业,这段时间的工作总结很可能包含了软件开发、维护以及测试等流程的实施和监督。 3. 软件测试流程:作为软件测试主管,其工作总结中必然涉及对测试流程的管理和优化,...

    软件开发类员工考核标准.pdf

    软件开发类员工的考核主要涵盖三个方面:任务完成情况、工作质量、工作效率。这些标准旨在全面评估员工的专业能力和工作态度,以促进项目的顺利进行和团队的整体效能。 **1. 任务完成情况(20%权重)** 任务完成...

    软件开发方案书完整版.docx

    《软件开发方案书》详述了企业进行软件开发的整个过程,从项目描述到开发方案,再到保密约定和费用明细,以及后期的维护方式。以下是关键知识点的详细解析: 1. **项目描述**: 项目的核心是对接企业现有系统的...

    软件开发简历模板.docx

    8. **自我评价**:简洁地概述你的优点和特质,强调你的职业态度和团队合作精神,这些在软件开发团队中至关重要。 9. **简历格式**:保持简历整洁、专业,避免使用过于花哨的字体和颜色。使用标准A4纸和常用字体,如...

    软件测试课件Ch1-软件开发过.pptx

    软件测试是软件开发过程中不可或缺的一部分,它主要负责确保软件的质量,发现并修复潜在的问题,以提供可靠且满足用户需求的产品。在21世纪,随着互联网行业的快速发展,软件测试工程师成为了IT行业中的热门职业。...

    计算机软件开发文档编写指南.doc

    以上内容构成了软件开发过程中的核心文档,它们不仅指导开发团队的工作,也是项目管理、质量控制和验收的重要依据。通过规范化的文档编写,可以保证软件开发的质量,降低风险,提高团队协作效率,确保最终产品的符合...

    企业程序主管.docx

    在现代企业中,程序主管是一个至关重要的角色,他们负责管理和优化企业的软件开发流程,确保技术团队高效地完成项目,同时满足业务需求。本文将深入探讨企业程序主管的职责、工作内容以及他们在组织中的作用。 首先...

    【软件测试】: 软件测试的测试阶段总结:需求阶段、设计编码阶段、测试阶段、用户测试阶段.doc

    "软件测试的测试阶段总结" 软件测试是软件开发过程中的重要组成部分,旨在确保软件产品的质量和可靠性。...同时,软件测试也可以帮助项目团队提高软件开发的效率和质量,降低软件开发的成本和风险。

    软件缺陷分类标准.pdf

    软件缺陷管理是软件开发过程中的重要环节,它涉及到软件的质量保证和持续改进。软件缺陷分类标准是用来系统化、规范化地识别和...通过这样的分类体系,软件开发团队可以更加有序地管理和修复缺陷,从而提升软件质量。

    微软研发----致胜策略

    本书通过介绍一系列策略,旨在帮助软件开发团队提高生产力,减少人力浪费,同时保证软件的质量。 #### 微软的软件开发模式 本书以微软的实际经验为基础,介绍了微软软件开发中的三种关键角色: 1. **项目经理**:...

    软件测试讲义 第一天

    软件测试是软件开发过程中的关键环节,旨在发现并修复程序中的错误,确保软件产品的质量。它的产生源于程序规模的迅速扩大和用户需求的多样性,需要在程序员和用户之间找到合适的平衡点。自1979年Glenford Myers在...

    软件发布确认表.doc

    《软件发布确认表》是软件开发过程中的一个重要文档,它标志着软件开发的最后阶段,即将软件产品交付给用户或发布到市场。这份表格通常包含了软件的详细信息、审批流程以及相关人员的责任确认,确保软件的质量和稳定...

Global site tag (gtag.js) - Google Analytics