正确执行敏捷并非易事,如果能遵循本文的建议,相信它可以帮助你更容易地做到。本文最初发表于 medium.com(《The Agile
Developer’s Survival Guide for 2020》),由 InfoQ 翻译并分享。service.mypm.net
我想说,敏捷就像是青少年的性行为,他们口口声声说做过,但却没人真正知道它到底是什么。pmp.mypm.net
不过,更严重的是,我们的行业(即软件开发行业)通常都会走敏捷的路线,这意味着开发团队通常采用诸如 SCRUM
之类的方法,在此过程中,他们会花费很少的时间来尝试交付微小但又很简洁的代码,简化对特定项目的改进。blog.mypm.net
一些团队通过遵循认证人员的建议来实现这一点,而另一些团队则只是从书中获取他们认为有用的内容,并希望这能有所帮助。在我看来,无论哪种方式,都是好的,只要你不是盲目地遵循一套规则而没有真正理解它们的目的,它仍然比瀑布(顺便说一句,它在某些行业仍有一席之地)之类的其他替代方案要好得多。项目管理者联盟
作为这种方法论的一部分,需要遵循一些仪式(即会议,尤其是现在的会议,通常是虚拟会议),需要使用工具,一般来说,你并不是一个人在工作,这意味着还需要遵循一些团队合作的礼节,这一点并不是每个人都能真正意识到的。pmp.mypm.net
因此,为了给你(敏捷开发人员)一个在敏捷丛林中健康生存的机会,如果你愿意接受的话,特别是现在 COVID-19
肆虐,虚拟网络正在兴起,我将向你展示我的建议清单(绝对不是由于多年来与不遵循这些原则的人打交道而产生的挫折!),作为敏捷开发团队的一员,这些建议可以指导你如何进行敏捷开发。bbs.mypm.net
1、为了不影响生活,请不要使用团队“站立”通话service.mypm.net
团队站立通话(stand-up calls)通常持续不了 15
分钟,具体取决于团队的情况,这个数字可能会有所不同,但是请考虑一下:通话被称为“站立”通话是有原因的,开发人员应该在站着的时候完成通话,这样每个人都会抓紧时间尽快完成他们的部分。项目管理者联盟
这些会议常用的脚本流程是依次发言(是的,团队中的每个人都应该发言),说出你前一天做了什么,今天打算做什么,如果有的话,提出你遇到的任何阻碍因素。在这里,你影响了同事们的生活。这不是在讲笑话,而且最重要的是,即使在你项目的范围内,也不能离题地谈论你所遇到的特定问题。转自项目管理者联盟
仅在必要时才使用这种方法召开会议,即使这样,会议也需要快速进行,并且不要使团队偏离他们应该做的事情。因此,如果你发现每天的站立会议慢慢地从 30
分钟变成了 1 小时,那么就可以打电话给负责的人,并请他们将自己问题转到另一个更有针对性的电话会议上讨论。转自项目管理者联盟
2、参加 Sprint 计划会议项目管理者联盟
Sprint
是团队集中精力去达成某个(通常)小目标的一小段时间。因此,当你在为这段时间以及你和你的团队将要做的工作类型做计划时,确保整个团队都致力于实现这一目标是很重要的。项目管理者联盟
这就是为什么通常鼓励整个团队都参加这些会议的原因。通过让每个人都审查要完成的工作,可能会出现一些有趣的问题,而这些问题反过来可能会彻底改变正在审查的工作。但是,这只有在相关人员都关注这一点的情况下才能实现,即使你不是将要实施该工作的人,甚至你的角色不适合来处理该工作,也可能会从不同的角度提出问题,从而解开障碍,因为这些障碍并不是每个人都能看到的,有些人可能对这项任务已经存在偏见了。项目管理者联盟文章
这与争论开发人员是否应该负责测试他们自己的工作(请注意,他们不应该这样做)一样。拥有局外人的视角是审查和测试某个特性的关键,这同样也适用于规划未来的工作。项目管理者联盟
因此,当你和你的团队正在审查未来的工作时,在没有提到你时,请不要关闭你的大脑。当别人正在说时,请不要在另一个标签上开始浏览互联网。在场、到场并努力去理解正在审查的任务,可能十次中有九次,你不会提出任何相关的问题,但有一次,你提出的问题可能会改变用户故事的一切。项目管理者联盟
3、注意 Sprint 的剩余时间training.mypm.net
通常, Sprint 的时长是 2
周,尽管有些团队可能会稍微调整这个数字。这里的重点是,你应该始终确切地知道你还剩多少天可以交付你在计划会议上承诺的工作。项目管理者联盟
反过来说,你不能在 Sprint
的最后一天完成任务,这是不理想的。你说这不是你的责任,甚至说你的经理应该能预见到这一点,而且他应该采取一些措施来缓解这个问题。项目管理培训
作为一个管理者,让我来告诉你,这并不完全正确。是的,在某些情况下,需要对团队进行微观管理,即使在某些情况下,仅与几个团队成员一起进行管理可能会对所有人和整个团队都是有益的。但是,有足够经验的团队应该能在没有任何人执行微观管理的情况下进行工作(这需要双方花费大量时间和精力),并且能够按时交付承诺的工作。项目管理者联盟
而且,如果遇到困难或挫折(当然,在现实世界的项目中总会遇到这种情况),你应该了解得更多,并在出现问题时举手(也就是说点什么)。不要等到 Sprint
结束时才把这些问题提出来,然后为自己辩解说你认为自己可以解决这些问题。把这些问题提出来,让你的经理知道,然后一起决定如何最好地进行下去。项目管理者联盟
这不是一个与敏捷相关的问题,更像是一个软件开发的问题,但是考虑到 Sprint
所涉及的时间窗口很小,因此在这种情况下这样做会产生更大的影响,因为这样犯错的余地很小。项目管理者联盟
4、你并不是一个人在工作中项目管理者联盟文章
考虑如下情形:training.mypm.net
Sprint 最后一天的开发者:准备好了!我今天已经完成了所有任务,呜呜,我以为我会让团队失望呢。QA
团队成员在等着测试你的功能:我对你来说是个笑话吗?!bbs.mypm.net
在单个 Sprint 中,你通常需要完成其他人需要的工作,无论是前端开发人员需要与之交互的后端代码,还是 QA 团队成员需要验证的
UI,你需要把你的工作看作是更大背景的一部分。项目管理者联盟
|