网站大量收购闲置独家精品文档,联系QQ:2885784924

京东云鼎探DevOps之路-基础服务部总监 何雨.docxVIP

京东云鼎探DevOps之路-基础服务部总监 何雨.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
京东“云鼎”探索DevOps之路DevOps是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。 它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。通过上面的定义我们仍然不明白什么是DevOps?为什么要用DevOps?DevOps有什么好处?等等一系列的疑问。那么我们就来逐一分析。在进入DevOps实践之前,先带大家先回顾一下软件工程的发展历史。因为我们在工作、学习、生活中所面临的诸多问题,其实只要回头看一看,就会发现我们的前辈早已用他们的智慧解决了类似的问题。我们要做的就是纵观历史,从中寻找到答案。OK,我们用下面的简图来描述软件工程发展的历史:20世纪60年代:软件危机(Software Crisis) —落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题。历史背景:20世纪60年代以前,计算机软件是通过机器代码或者汇编语言编写的,其只能在特定的计算机上运行,可移植性,易用性都非常差。当时软件基本上是个人设计、使用、操作、维护、自给自足的私人化的软件生产方式的,其规模比较小,文档资料通常也不存在。到了60年代中期,大容量、高速度计算机的出现,使计算机的应用范围迅速扩大,软件开发急剧增长。高级语言开始出现;操作系统的发展引起了计算机应用方式的变化;大量数据处理导致第一代数据库管理系统的诞生。软件系统的规模越来越大,复杂程度也越来越高,软件可靠性问题也越来越突出。原来的个人设计、个人使用的方式不再能满足要求,迫切需要改变软件生产方式,提高软件生产率,及时软件危机开始爆发。20世纪70年代:历史背景:1968 年北大西洋公约组织的计算机科学家在联邦德国召开国际会议,第一次讨论软件危机问题,并正式提出“软件工程”一词,从此一门新兴的工程学科—软件工程学—为研究和克服软件危机应运而生。软件工程学主要研究软件生产的客观规律性,建立与系统化软件生产有关的概念、原则、方法、技术和工具,指导和支持软件系统的生产活动,以期达到降低软件生产成本、改进软件产品质量、提高软件生产率水平的目标。软件工程学从硬件工程和其他人类工程中吸收了许多成功的经验,明确提出了软件生命周期的模型,发展了许多软件开发与维护阶段适用的技术和方法,并应用于软件工程实践,取得良好的效果。在软件开发过程中人们开始研制和使用软件工具,用以辅助进行软件项目管理与技术生产,人们还将软件生命周期各阶段使用的软件工具有机地集合成为一个整体,形成能够连续支持软件开发与维护全过程的集成化软件支援环境,以期从管理和技术两方面解决软件危机问题。著名的瀑布模型、结构化程序设计方法也因此孕育而生。20世纪80年代:螺旋模型是在瀑布模型和原型模型基础上诞生的。所以我们必须先了解瀑布模型与原型模型的优缺点。才能知道为什么会诞生螺旋模型。在瀑布模型中,软件开发的各个阶段严格按照线性方式进行,当前阶段接受上一阶段的工作结果,实施完成所需的工作内容。当前活动的工作结果需要进行验证,如果验证通过,则该结果作为下一阶段的输入,进入下一阶段,否则返回修改。瀑布模型强调文档驱动的,并要求每个阶段都要仔细验证。但是,这种模型的线性过程太理想化,其主要问题在于:?(1)?各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量;??(2)?由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发的风险;(3)?早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。?原型模型的第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型使其满足客户的要求,开发人员可以确定客户的真正需求是什么;第二步则在第一步的基础上开发客户满意的软件产品。显然,快速原型方法可以克服瀑布模型的缺点,减少由于软件需求不明确带来的开发风险,具有显著的效果。?与建造大厦相同,软件也是一步一步建造起来的。在增量模型中,软件被作为一系列的增量构件来设计、实现、集成和测试,每一个构件是由多种相互作用的模块所形成的提供特定功能的代码片段构成.螺旋模型沿着螺线进行若干次迭代:???(1)?制定计划:确定软件目标,选定实施方案,弄清项目开发的限制条件;??(2)?风险分析:分析评估所选方案,考虑如何识别和消除风险;???(3)?实施工程:实施软件开发和验证;???(4)?客户评估:评价开发工作,提出修正建议,制定下一步计划。?20世纪90年代:随着螺旋模型的快速发展,为了更好的控制整个软件开发流程和风险。诞生了一系列的管理软件开发过程管理方法。比较著名的就是RUP和CMM。RUP

文档评论(0)

152****5013 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档