敏捷开发是以用户的需求为核心,通过不断迭代、小步快跑、循序渐进的方法进行软件产品的研发,在迭代研发过程中的产品都需要经过测试,具备可视化、可集成和可运行使用的特征。
在团队方面,敏捷开发倡导团队协作,强调个体的互动高于整体的流程和工具。在产品开发和项目实施的过程中,正式的开发流程或标准化的书面计划并非是重要的,人与人直接的面对面沟通和交互是保证产品质量的关键,尤其是跨团队、部门之间的沟通与协作。敏捷管理方法的核心观点包括:
- 注重人的价值:在敏捷管理方法中认为团队和人是项目取得成功的重要因素,更加注重团队间人与人的沟通协作,发挥个人的能力和特长。
- 弱化文档的流通:通过 项目管理工具和协作工具,简化文档在工作中占据的工作量,文档只在设计,开发,编码和测试过程中起辅助作用。
- 注重与客户的沟通:在敏捷管理中,研发团队与客户之间的关系不是需求和被需求的关系,注重相互的协作共赢,双方持续协调来项目的需求并不断迭代改进。
- 快速响应变化:敏捷管理鼓励团队在开发过程中引入并接受变化,在项目开发过程能够良好地应对变更过程。
在整个项目过程中,业务人员需要每天与开发人员对齐进度,密切联系。提供反馈并回答研发人员的问题。但是不同团队之间一定存在协作和沟通带来的分歧,因此敏捷组织就需要不断思考如何使团队之间运行的更加高效,然后在团队内部进行相应的流程调整。在团队授权方面,敏捷开发倡导组建小型、共享、并且具有一定自主度的团队。通过看板共享项目信息能够使得团队成员自由、且高效的实现信息获取。敏捷组织应该给予团队每一个成员他们所需的资源和支持,并且给予他们充分的信任。因为团队成员是项目成功的关键,敏捷开发相信每个团队个体都有能力做出合理的决定来完成他们的工作。
伴随着时代和科技的发展,敏捷团队的协同形式也在不断发生着变化,目前敏捷开发不仅限于共处一地的线下团队,也有许多分散在全国、乃至全世界的分布式团队。这意味着团队成员并非在彼此面前,需要通过网络连接彼此间的工作。这样的敏捷团队形式对人员协作和团队授权有更高的要求。敏捷开发采用迭代和增量开发策略,保证了产品稳定的开发速度和节奏,避免了最终错误的交付带来的不必要的浪费和返工。为了达到迭代和增量开发的效果,这不得不要求团队将项目分解成更小的部分,帮助团队成员需要明确自身负责任务和一定时期内相应的阶段性目标。
因此,相对于其他行业而言,在软件研发行业及在敏捷开发项目中,自我管理和自我组织的团队也非常重要。这种团队强调的是每个成员的自发性,而这与传统意义上的管理是有很大不同的。因此敏捷方法,也会被人们说成是是反管理(Anti-Management)。此外,管理还有另外一个目的,那就是为团队服务。管理必须为团队提供支持,必须设法为团队清扫障碍,促使团队迅速成长让团队充满创造力,最终开发出优秀的产品。这是敏捷团队与普通团队相比最大的不同之处。
许多普通的团队很大程度就是指一帮在一起工作的人,他们彼此之间并没有太多的沟通,也并不视彼此为一体,很多时候我们会误把这样的一个团队当作是一个敏捷团队,但实际上它并不是一个真正意义上的敏捷团队,因为这样的团队并没有形成共同的工作理念和文化,而是各自在做各自的工作。
所以,自组织团队的第一个要素就是必须有一个敏捷团队,许多项目团队在现实的生产过程中也采用了这种组织方式,并取得了成功。比如Google和微软等公司,以及一些开源软件也是采用自组织团队的方式进行开发与设计的。在敏捷团队中,自组织团队也备受推崇。团队一旦成为自组织的,那么新的思想、方法、创意会源源不断的产生,当然也可能是产生新的文化,新的组织结构,随着涌现的不断发生,企业的创新能力获得了提升。
自组织理论强调系统自发形成结构,没有过多的来自外界的强行干预,于是这种自发性使得团队具有了产生根本性变革的动力。自组织团队中规则一旦建立起来,每个行为主体都自觉的按照这些规则行事,通过自下而上的自组织,原先的无序状态被秩序所取代,团队会变得更有活力也更愿意主动去推进工作和项目。
在自组织团队中,管理者是团队中重要的角色应该是一个服务者的角色,要当好一个服务者需要具备特定的才能。因为并不是每一个人都可以当好一个为团队服务的领导者。有些人喜欢发号施令,而不想给团队成员提供服务。有些人服务很到位,却缺乏领导的权威。所以,要将服务与领导这两个角色很好地结合起来需要一定的能力。第一,管理者需要具备绝对的真诚与可信。管理者需要针对团队成员提出的问题,给与充分、彻底的解答。第二,管理者还需具备远见卓识,需要对团队目标、项目目标以及企业长期目标和愿景都具有非常清楚的认识,并带领团队实现目标,进入一种新的有序的状态。值得注意的是,在这个过程里必须要尽可能地减少中央控制,尽量减少人为的设定指令,鼓励并推进要团队成员之间、团队成员与外部团队之间自动自发的去完成工作,只有这样自组织过程才可以持续进行 。
因此 敏捷项目管理在追求高效开发和高质量产品的同时,也需要始终保持着以人为中心,注重沟通和团队协作的原则。敏捷方法和传统方法相比较更加适合随着需求的变化,能够有效管控风险并降低成本。在实行敏捷管理的同时,也需要在敏捷团队中积极推行团队自组织,团队一旦成为自组织的,那么新的思想、方法、创意会源源不断的产生,当然也可能是产生新的文化,新的结构,随着涌现的不断发生,团队的创新能力获得了提升,得以更好地应对激烈的市场竞争。