敏捷:开发优秀软件的方法

奉行敏捷开发的公司能够体验到按照一个包容、高效的既定流程召集整个团队所蕴含的强大力量。而让敏捷具有如此强大力量的是多种因素的综合作用。团队开发软件的好坏会决定您的业务在市场上的成败,因此请确保各部分的效果总和优于敏捷带来的总体效果。

什么是敏捷软件开发?

敏捷软件开发是一系列方法,让您可以快速、频繁地为客户交付价值。它提倡由高度协作的跨职能团队完成精心规划的小规模迭代。瀑布式流程一直都采用按顺序开发,发布周期长,而敏捷方法提供了替代方案。

敏捷开发适用于任何规模的企业,任何规模的团队,以及大多数项目。也就是说,采用敏捷开发的企业一定要从文化上做好变革的准备,并且加大内部培训力度。


为什么敏捷如此重要

更高的透明度
从利益相关方到执行工作的各个环节的团队成员,每个人都参与其中,并且清楚现在正在做什么以及还需要做什么。

更高的可预测性
清楚确定工作的优先级,迭代时间紧凑,一般为 1-2 周。在持续交付期间,频繁发布新功能,并且具备更高的可预测性。

更强的灵活性
根据反馈或新的业务需求而需要更改优先级时,可以立即在任务列表中插入和重新排列消息。

关注业务价值
利益相关方确定构建功能的顺序,并向团队说明对业务最重要的内容。

关注用户
用户消息旨在满足实际用户的需求。设计和开发的每项功都能提供增值。

关注质量
所有工作都分解成可管理的单元,因此更加注重频繁构建、测试和审查。能够更容易、更快速地找到和修复缺陷,因此质量得到改善。


“现在敏捷开发是新型软件开发的默认方法。”

Al Hilwa
项目总监, Application Development Software, IDC

IDC Market Analysis Perspective: Worldwide Application Development Software, 2016.

您在考虑采用敏捷开发吗? 这里是一些需要注意的事项

虽然全世界正在从传统的瀑布式方法转为敏捷软件开发,但要成功采用敏捷开发,需要改变工作心态,并意识到一些常见的陷阱。开始之前,请回答以下问题:

您的团队准备好了吗?

敏捷开发是一个需要大量协作的过程。它不是一个自上而下的强制性工作流程,而是渗透到各个层次。向人们传达这一理念,让大家明白由此带给企业和个人的益处,并且向大家保证这绝不是一个盲目的跟风之举。努力做到敏捷开发,可以推动创新、提高灵活性和缩短开发周期。

您想凭一己之力实现敏捷开发?

如果是,请赶快停下。找一找您的团队中熟悉敏捷开发工作流而且乐于参与其中的人。在基层实施敏捷开发,而且对于实施之后可能对其他团队、管理层和业务伙伴造成的阻力做好充分的准备,予以解决。理想情况下,可以聘请一位顾问帮助入门,然后按正确的方向继续前进。这将有助于降低风险并增加采用时间。


准备好培训了吗?大家如何参与其中?

您需要制定一个团队培训计划。缺少必要的流程可能会导致执行不力。敏捷开发是一套方法,团队要想获得成功就必须学习和遵守。比简单培训更重要的是,让您的团队在实践中学习。让他们从事实际的项目,脚踏实地了解和加强敏捷开发的优势。

所有人都准备好接受流程和工具的变更了吗?

您目前使用哪些产品管理工具,它们适用于敏捷开发吗?您准备好实施测试驱动开发 (TDD)、持续集成 (CI) 和持续部署 (CD) 了吗?您设置设计和 UX 团队了吗?企业越大,您就需要汇集更多的热情和智慧。采用敏捷开发是非常值得去做的,但只有执行得好,变化才能渗透整个企业。

所有人都愿意接受改变吗?

毫无疑问,采用敏捷开发将带来颠覆性的影响,也会出现错误。大家会试着通过争论解决问题,团队希望进行充分准备和计划,技术债务的累积在所难免,任务将会分配给个人。一天的工作结束时,只要您的团队不放弃实现敏捷开发,您就可以战胜困难并找到前进的方向。

?

召开站立会议和迭代规划会议,使用我们的产品管理工具Pivotal Tracker讨论、跟踪和故事并排定优先级

?

使用结对编程,帮助确保提供质量更好的代码

?

编写代码,然后通过持续集成/持续交付工具,例如 Concourse,进行测试和交付

?

将所有内容部署到 VMware Tanzu Application Service

只要看一下 VMware 员工的一天,您就会注意到我们所有的流程,无论大小,都是以人为本。在小团队中工作的员工有能力实现最佳表现,并持续交付最优成果。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年1月26日
下一篇 2022年1月26日

相关推荐