持续交付将在以下方面为您提供帮助:
尽可能快地交付软件,尽可能早地将有价值的新功能运用于生产
提高软件质量,系统正常运行时间和稳定性
降低发布风险,避免同时在测试和生产环境部署失败
减少浪费,提高开发和交付过程的效率
使您的软件始终处于生产就绪状态,以便您可以随时部署
03 预备步骤
为了达到目的,您首先需要有以下基础:
自动化测试等开发实践
软件架构和组件设计,可帮助做更频繁的发布,而不影响用户,包括功能标志
工具如源代码管理,持续集成,配置管理和应用发布自动化软件
自动化和脚本化,使您能够以有限的人为干预重复构建,打包,测试,部署和监控软件
组织,文化和业务流程的变化,以支持持续交付
听到持续交付这个词,有些人的第一个担忧就是这是否意味着软件质量标准将会下滑,否则团队需要走捷径才能实现软件的频繁发布。
事实恰恰相反,为了支持持续交付而采取的措施和体系几乎肯定会提高软件发布的质量,并且在软件版本出错时将给予您额外的安全防护。
您的软件仍然会经历与现在相同的严格测试阶段,可能包括手动质量检查测试阶段。持续交付只是让您的软件以最严格和最有效的方式在您设计的流程中流转,从开发到最后的生产。
3.1、持续交付的关键构建模块:自动化
尽管在持续交付流程中采取手动步骤是非常有效和现实的,但自动化是加快交付步伐和缩短周期时间的关键。
毕竟,即使拥有再丰富资源的团队,手工构建,打包,编译,测试和部署软件也是不可行的,尤其是在软件很大或者复杂的情况下。
因此,最重要的目标应该是使开发者和生产环境之间的大部分路径自动化。 以下是您应该专注于自动化工作的一些主要领域。
3.2、自动化构建和打包
需要实现自动化的第一件事就是将开发人员的源代码转换为部署就绪制品的这个过程。虽然大多数软件开发人员使用诸如 Make,Ant,Maven,NuGet,npm 等工具来管理其构建和打包,但是许多团队在制作好准备发布的制品之前仍需要执行一些手动步骤。
这些步骤是实现持续交付的重大障碍的代表。 例如,如果
最后的话
最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!
资料预览
给大家整理的视频资料:
给大家整理的电子书资料:
如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!