吐血推荐:敏捷远程开发团队6大高产秘笈
- 作者:
- 2019年11月01日
- 敏捷开发
几年前,我特别重视定期与软件开发人员开会交流。然而,在几次会议之后,我意识到长时间的会议并不适合他们,反而打扰了他们正在进行的编码工作。但是我需要他们和我保持同步——这是成功开发的粘合剂。很快,我了解了敏捷式会议,我们开始在谷歌的Hangout中进行虚拟会议,效果很不错。
随着世界各地的组织都在尝试精益,敏捷开发和远程开发团队——两种不同的精益方法成为相辅相成的组合,它能实现全球各地的人们一起合作,以一种精简、高效的方式完成软件开发。
这种方式的优势:
✔ 更快的生产周期
✔ 并发编程
✔ 能够持续部署更少的障碍
✔ 工作倦怠的机会更少
然而,敏捷开发和远程团队有时也会有一些挑战:
◆ 在远程团队成员之间建立融洽的关系
◆ 跨时区协调
◆ 当两个团队只在短时间内在线时,如何安排会议
◆ 不同开发文化之间的协作
为了缓解这种冲突的情况,组织需要一种混合的敏捷开发方法,专门针对简化和支持远程软件开发。以下是我的实战经验分享:
分布式敏捷团队的6大高产秘笈
有意义的自动化
持续的流程审查是实现生产力的关键。首先确保在具体事实基础上回顾你的开发流程,并寻求解决方案以使流程尽可能有效和简化。投资于一个伞形应用程序,它无需为不同的流程使用不同的应用程序,从而通过没有重复的流程来更快、更有效地执行任务。
在持续时间较长的项目或管理远程团队时,创建持续集成的文化特别有价值。
自动化可以通过多种方式节省时间:它可以快速跟踪整个交付和报告过程,赋予参与人员一种责任感,并且100%可以实现,这都要归功于最新的技术进步。例如,Jira是计划和构建优秀产品的团队的首选跟踪器。许多团队选择Jira来捕获和组织问题、分配工作以及跟踪团队活动。无论团队位于何处,它都能完成任务。
用户故事:让我们来看看德国汽车巨头奥迪是如何在日常业务中使用Jira的。
奥迪的办公室遍布全球,但其主要研发中心均设在德国,拥有6000多名员工。他们在2007年开始使用Jira来进行问题跟踪和知识管理,今天,它们被用来支持所有的团队和他们的项目——无论哪个部门。在道路测试设施中,测试人员在测试驱动期间将汽车软件bug记录到Jira中。在赛道之外,团队使用Confluence来存储文档、部门协议、会议记录和政策,以帮助公司保持高效和透明。
工具提示:
用于文档存储库和文件共享的Google驱动器。
版本控制来监视和推送代码。(Bamboo,BitBucket)
Slack for real-time, power conversations——快速回顾,改变和决定。
敏捷很简单——把时间花在实际工作上
成功的咒语很简单,真的——少说多做。许多敏捷团队对开发模型本身非常着迷。敏捷模型是用来提高生产力的,如果我们不够敏捷,不能利用敏捷为团队带来好处,那么敏捷就是失败的。
例如,对于远程团队,距离可能成为他们在遇到挑战或障碍时回避改进解决方案的理由。这可能会对整个团队产生反作用。制定一个时间表,确保你的团队每周或每天完成他们份内的工作,尽可能让团队成员对决策执行的参与度与对决策制定的参与度相当。
你们开会的时间应该有利于团队成员所在的相应时区,可以通过全程关注所有成员的参与度来优化会议持续的时间。你也可以考虑轮流开会,这样各个时区的团队都不会对会议时间感到负担。研究这些会议如何影响生产力,并相应地减少或增加频率。一旦项目结束,确保最终结果在团队之间共享,并强调每个团队参与的价值。
用户故事:在采用新的业务实践方面,Amazon一直是潮流的引领者,它对Scrum的广泛应用值得一提。Scrum促进了分散的自由决策权,旨在让团队以一种精简的、无需繁文缛节的方式创建、交付和运行高质量的软件。Scrum的实现是在Amazon的底层进行的,它允许团队响应需求,并在发现障碍时及时处理。
“day day up”
本质上,敏捷性允许在发布和评估原型时为短期开发项目做更详尽的规划,对于长期计划则更为笼统。
敏捷就是快速执行和快速发布。没有完美的余地。这是正确的。因此,你每天所做的工作决定了你将交付什么。完成每天的目标或小的可交付成果对团队来说是一个巨大的激励,并且创造了一种不断接近最终目标的感觉。
工具提示:
– Basecamp 3: Basecamp从一开始就是我们的客户沟通工具。新版本不仅仅是消息发布通道——Basecamp 3通过它的to-dos特性帮助我们的团队轻松地自动化日常任务。
一切为了冲刺(sprint)
虽然有一个时间表是好的,但是不要让会议占用了团队的工作时间。
短小精悍是通关诀窍。保持冲刺(sprint)的短小能够提高生产力,也更有利于团队快速发布。毕竟,这不仅仅是关于发布和生产力的问题,还包括团队的思维方式,正是这种思维方式使他们永远不会停滞不前,从而真正实现敏捷。由于冲刺(sprint)时间较短,因此规划更为现实,因为规划是基于当前统计数据做出的。
工具提示:
Jira等工具与Slack集成后,可以将Jira中重要事件的通知自动推送到Slack通道中。这使得团队成员可以实时更新sprint进度,而不必等待响应和停滞进度。
建立一个可靠的项目路线图
罗马不是一天建成的,需要时间、精力和大量的头脑风暴!同样,你需要制定项目路线图,因为这是与敏捷团队沟通的行动计划,无论他们身在何处,产品或解决方案将依此随着时间的推移而发展。
远程分布式团队意味着不同的时间框架,这使得规划成为一项挑战,因为你无法随时跟他们讨论细节。在这种情况下如滚动波计划之类的方法可能会让事半功倍,即详细计划在时间轴上离你最近的事情以及重要的远景。在多个敏捷团队之间共享,这样的计划将为团队的日常工作提供关键的环境,并响应竞争格局的变化。你所要做的就是把它分解成几个月、几个星期和几天。每天应该定义当天可交付的成果,因为每天交付的东西对于最终目标至关重要。
用户故事:敏捷的工作生态系统促进了分布式的团队文化,这一点在当今的行业中很少得到体现。以微软为例,它已经成功地在企业范围内使用了敏捷模型。
但是,当它开始时,它也有瓶颈,这些瓶颈实际上对质量和进度产生了负面影响。但是,他们使用第三方框架(例如SAFe),将敏捷应用于企业项目解决了他们的问题。他们从规划和架构开始,着手构建功能,最后才与代码打交道。遥测技术被用来跟踪系统工作,并实现自动化测试。通过敏捷软件开发,微软成功地将其发布周期从几个月缩短到几周,并能够更快地响应客户的需求。
测量。更改。发布。
不要只是部署,测量。通常,我们最意想不到的事情总会发生。这时候,你需要改变策略,或其中的某一个环节。敏捷意味着你应该能够在任何需要的时候做到这一点。这就是敏捷带来变化的原因。
根据数据和度量标准构建下一个路线图。
对于敏捷和精益流程,基本指标是提前期、周期时间、团队速度和开/关率。这些度量标准有助于规划并帮助你做出有关流程改进的明智决策。当这些指标中的任何一个不在你期望的范围内或朝着令人担忧的方向发展时,不要猜测原因,让你的团队参与进来,公开进行讨论,共同解决问题。
结论
敏捷对于软件开发来说非常好用,因为它关注于自我管理的团队,自治,以及对优先待办事项的可见性。扩展敏捷性的过程似乎很简单:如果它在一个部门有效,那么你只需将它应用到所有的团队和部门,即可构建敏捷的公司生态系统。记住,即使对于分布式团队来说,远程并不是问题——由于大量可用的通信平台,如Slack、Jira或Skype,世界变得更小了。鼓励密切的沟通是在分布式团队中维护敏捷流程的关键。
第一时间获取面向IT决策者的独家深度资讯,敬请关注IT经理网微信号:ctociocom
除非注明,本站文章均为原创或编译,未经许可严禁转载。
相关文章: