深入探索DevOps与软件架构演进
1. 软件交付的变革
在过去几年,软件交付周期日益加快,同时应用部署变得愈发复杂,这增加了软件开发人员、质量保证(QA)团队和IT运维人员等在发布周期中的工作量。为应对快速变化的软件系统,2009年引入了DevOps概念,旨在让整个软件交付流程更快速、更稳健。
1.1 瀑布模型与静态交付
20世纪90年代,软件以静态方式交付,如使用软盘或CD - ROM。软件开发生命周期(SDLC)每个周期通常需要数年,因为重新交付应用程序到市场并非易事。当时主要的软件开发方法之一是瀑布模型,它由多个阶段组成,一旦一个阶段开始,就很难返回上一个阶段。例如,在进入实施阶段后,若要返回设计阶段修复技术扩展性问题,会影响整体进度和成本,新设计往往会被推迟到下一个发布周期。瀑布方法需要与开发、物流、营销和经销商等各个部门精确协调,有时需要数年时间和巨大的努力。
1.2 敏捷与数字交付
几年后,随着互联网的广泛使用,软件交付方式从物理交付转变为数字交付,如在线下载。许多软件公司试图缩短SDLC流程以击败竞争对手。开发者开始采用增量、迭代或敏捷模型等新方法,希望缩短产品上市时间。如果发现新的漏洞,这些方法可以通过电子交付方式为客户提供补丁,例如从Windows 98开始,微软Windows更新就采用了这种方式。在敏捷或数字模型中,开发者编写相对小的模块,每个模块交付给QA团队,而开发者继续开发新模块。当所需模块或功能准备好后就会发布。该模型使SDLC周期和软件交付更快且易于调整,周期从几周至几个月不等,必要时可快速做出更改。但这种模型下,应用软件交付通常是二进制文件,如EXE程序,需安装在客户的PC上,且基础设施(如服务器或
超级会员免费看
订阅专栏 解锁全文
1061

被折叠的 条评论
为什么被折叠?



