DevOps和敏捷相结合 改进软件质量

日期:2015-9-25作者:Jason Tee翻译:崔婧雯 来源:TechTarget中国 英文

DevOps   敏捷方法   

【TechTarget中国原创】

随着DevOps趋势的愈演愈烈,软件开发、部署和管理的传统分工正日益模糊。当然,要想达到能够为现代软件团队创建出无缝的集成环境的目标,尚有很大的进步空间。这包括使用工具启动最佳实践,将DevOps和敏捷方式,比如持续集成等整合在一起,并且使团队更为包容,这些都会促进软件质量的改进。Server Side采访了一些该领域工作的专业人士,了解了DevOps的现状, 以及未来。

DevOps一直是以人为本

这似乎是大家的共识。Denim Group的CTO,Dan Cornell,谈到每个团队成员扩展视野的需求。“DevOps实际上是打破了开发人员和运维人员之间的壁垒。比如,对于开发人员而言,理解如下观念至关重要:“我是开发人员,我有自己的一些考虑。你在运维团队,你所考虑的方面可能和我不同。但是如果我能够更加了解你的工作,如果我能够更为深入得理解你所需的工具和设备,我就能够找出这些东西,从而帮助到你们。””

这些都是关注于人类的需求,也正是为什么DevOps难以定义的原因。并不是只存在一种正确的完成事情的方式,因为每个团队和团队成员都有所不同。Clayton Coleman,Red Hat的OpenShift的首席工程师,认为一系列方法的合并能够创建出DevOps环境。“将大家团结在一起是DevOps的精髓所在,并且有很多不同的方式可以达到这一目的。这会涉及到流程,技术和企业架构的变化。”当检视某个DevOps团队的日常行为时,流程显而易见会起到作用。

改变流程促进软件质量的改进

与DevOps相伴的一个变化是向持续集成的演进。软件开发和部署的速度是其中一个驱动因素,使得开发和运维的合并不是空谈而成为必需。Jeremy Eder,RedHat的主管软件工程师,讲述了在此领域他的性能团队是如何做的。“我们已经真正地从性能角度拥抱了持续集成。这意味着编写出能够防止版本性能和扩展问题的测试,而不仅仅只有针对功能和特性的测试。这些是我们内部完成的事情,在自动化方面的进展让我很是激动,因为这使得我们对交付的软件更加有信心,这也正是CI最初的意义。”

保证软件每个迭代里的高质量绝对有助于让团队里的每个人工作得更加轻松。不管是开发还是运维团队都需要处理预料之外的故障。

较新的平台能减轻采用DevOps的痛苦

当然,这并不意味着团队的每个人都会自动接收DevOps的理念。Coleman讲述了Red Hat通过OpenShift平台来加速每个人的思维转化。“我们尝试尽量减轻每个开发人员转型的痛苦,来开始构建Web或者移动应用或者微服务架构——使用工具使得可以仅仅按一个按钮就可以在企业或者公有云环境上部署真正的软件。另一方面,我们使得运维人员非常容易就能将变更同步更新到成千上外的应用程序里。我们将以前非常困难的事情变得极其容易。”

事实胜于雄辩:当大家从各自困难且费时的工作所带来的压力和沮丧中解脱出来的时候,他们会更加密切得互相合作。对于涉及到的所有人而言,使得向DevOps的转型都成为顺畅无痛苦的过程,鼓励引入促进软件质量改进的新实践。

DevOpSec会是下一步么?

将DevOps合并到单一的组织里是很自然的事情,但这并不是改革的终点。Cornell提醒大家注意生态系统里经常被忽视的一部分。“我认为需要打破安全人员和开发人员和运维人员之间的壁垒。对于安全团队而言,需要理解更多有关软件如何开发的知识,因为这三组人员所考虑的东西不一样,并且他们被认可的方式也不同。只有当这三组人员共同工作,让所有人的工作都能够顺利完成时,总体花费才会下降。”

当前,这些都还没有发生。“太多团队在开发周期里根本就不考虑安全性。比如,许多团队需要开始检视他们如何做输入校验,以及当信息在系统间传输时如何完成输出的编码。他们确实需要真正理解授权和认证的精髓,这样才能解决这两大安全性关注点,并且在开发时集成到应用程序之中。这样一定能够帮助他们避免引入严重的安全问题。”

Cornell指出尽管现代框架通常认为校验是重要的,其实编码才是必须完整实现的真正避免某类漏洞的控制点。这在移动开发领域尤其重要,该领域总是一直涌现新的安全危险。还有一点很确定:DevOps不是终极目标。它会为合作,持续改进以及在软件周期里改进软件质量开启一段更伟大的旅程。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

评论
查看更多评论

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

SOA实施>更多

  • 持续DevOps文档:是必需的

    文档和管控的流程仍旧是防止企业陷入困境,保证员工不丢掉工作的有效方式,让文档和管控成为进展缓慢的同义词是因为一些历史原因。软件版本引入的相同的自动化也适用于文档领域。

  • 避开软件容器:如何探索DevOps

    Bert Jan Schrijver,荷兰JPoint Java软件工匠,也是JavaOne大会的演讲者,他回答了SearchSoftwareQuality的有关DevOps的问题,并且回答了为什么有时应该忽略传统习惯。

  • DevOps和敏捷相结合 改进软件质量

    DevOps实际上是打破了开发人员和运维人员之间的壁垒。在运维团队,你所考虑的方面可能与开发团队不同。但如果我们能更加了解相互的工作,将会更为深入得理解所需的工具和设备。

  • AppDynamics引入应用集成平台

    AppDynamics的微服务架构应用集成平台(AIP)旨在对跨不同应用环境的应用进行统一监控,此前这一过程需要各种应用及架构相关的管理工具才能做到。

相关推荐

  • 对于orchestration而言 ALM和DevOps至关重要

    为了确保开发和运营能够持续同步演进,开发者需要理解DevOps与orchestration之间的差异,对自己的开发和运营策略进行重新思考,并且对重要的新兴趋势保持警觉。

  • 开发运维一体化(DevOps):协作是成功的保障

    如今的IT部门存在一个矛盾:敏捷开发者希望可以快速部署常规软件,而运维团队则优先考虑稳定性。开发和运维不同的成功指标使得每个团队都有自己独立的目标

  • 中国市场DevOps应用趋势分析

    为了解决开发人员与运维之间的协作问题,从而提升工作效率,DevOps方法论应运而生。几年的发展,DevOps现在国内市场的应用情况如何?如何才能取得DevOps实施的成功?

  • 持续DevOps文档:是必需的

    文档和管控的流程仍旧是防止企业陷入困境,保证员工不丢掉工作的有效方式,让文档和管控成为进展缓慢的同义词是因为一些历史原因。软件版本引入的相同的自动化也适用于文档领域。

技术手册>更多

  • Ajax:Web开发的未来

    Ajax全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),结合了Java技术、XML以及JavaScript等编程技术,是指一种创建交互式网页应用的网页开发技术。Ajax技术是目前在浏览器中通过JavaScript脚本可以使用的所有技术的集合。Ajax以一种崭新的方式来使用所有的这些技术,使得古老的B/S方式的Web开发焕发了新的活力。

  • 特别报道:BPM和SaaS

    现在大家都在谈论软件即服务,业务流程专业人士也不例外。在这份特别报告中,我们将调查BPM和SaaS的结合情况,这二者的结合提供了令人侧目的利益和意味深长的挑战。第一部分中,我们将探索BPM和SaaS结合过程中仍存在的问题和风险。第二部分中就如何成功结合两者提供一些专家建议。同时也包括:最新更新的流行建模工具、业务流程建模语言等内容,精彩不容错过!

  • SOA实现与交付指南

    随着SOA渐成IT潮流, 越来越多的SOA项目启动了。有些项目彻底失败了,有些项目则勉强成功了。为什么有些项目成功了,有些去失败了,最大的问题出在哪里?如何吸取这些失败项目的教训,并形成自己规划SOA路线图所需的远见与策略。同样的,我们又要如何判断SOA项目是否已经成功实现?这些将是未来SOA项目成功实现的关键。下面让我们来看看个中因由。

  • 预测分析指导手册

    电影《预见未来》中主演尼古拉斯·凯奇具有预测未来的能力。他能预见未来几秒中将会发生在他自己身上的事情,从而可以避开凶祸,改变自己的命运。如果我们在工作中也能有这样的一种能力,岂不快哉!但从某种意义上讲,预测分析技术就可以帮助我们做到这点。

TechTarget

最新资源
  • 安全
  • 存储
  • CIO
  • 数据库
  • 服务器
  • 云计算