持续测试如何影响安全性
当开发人员在他们的程序中查看安全问题时,他们可以采用几种不同的方法之一。不过,从历史上看,大多数开发人员都专注于一种称为“向右移动”的做法。在安全术语中,向右移动就是在发布后识别错误和弱点,然后进行调整以处理这些问题。然而,随着 DevOps 团队变得更加熟练,右移变得过时了。数据安全的未来现在就是向左移动。
确保左移
如果右移是在识别威胁后对威胁做出反应,那么左移则侧重于在软件上市之前识别这些风险。无论特定系统如何?无论是应用程序还是大型机?专注于编程的左移意味着产品以更少的编码错误和更高质量的代码到达最终用户。这是一种更具成本效益的开发方法,可提高客户数据的安全性。采取主动的数据安全方法变得越来越重要,因为企业正在处理比以往更多的数据流和更敏感的信息。同时,他们还拥有更多关于可能出现问题的信息,并且更有能力预测即将到来的威胁。使用预测分析,公司已经能够降低运营风险,确定产品中可能的目标点,预测用户需求和行为,改进从概念到布局的整个产品开发过程。
左移建模
公司长期依赖右移的一个原因是它是一种简单但可靠的软件开发方法。他们不必去寻找问题;用户举报他们。不幸的是,这也意味着客户更有可能对产品不满意并承担过高的风险。左移消除了风险问题,但提前识别风险更具挑战性,需要先进的建模策略,并且在很大程度上依赖于持续测试。在连续测试系统中,开发专家的任务是创建各种可以近似潜在结果的模型。被称为基于模型的测试 (MBT),有积压的模型吗?通常由用户报告捕获的信息,以及用于代码更新的增量建模。连续测试依靠 MBT来识别问题并实现左移。
尽早并经常行动
MBT 会产生大量信息,而自动化正在以指数方式增加数据量。然而,许多连续测试程序尚未完全自动化,尽管自动化被认为是最佳实践。不过,最有可能的是,越来越多的开发人员将转向自动化,这将促进广泛的左转,并将以前的后期开发问题移至 DevOps 周期的开始。
订单重要吗?
改变开发过程的顺序在某些方面可能看起来不是很重要,但是当针对错误和安全问题的软件测试在过程结束时进行时,每个测试都需要全面,修复可能需要回到开始。另一方面,通过尽早并经常非正式地测试程序,这是持续测试的理念,开发人员在整个过程中获得关键反馈。这使得更正问题代码和识别未来的主要问题变得更加容易,而无需解构整个程序。向左移动不仅仅关乎整体安全。这也是一个部署问题。持续测试本身并不是目标。它支持企业将新代码付诸实践的能力。在定期发布应用程序更新的环境中,持续部署至关重要。开发人员以恒定的周期构建和部署,创建 CA Technologies 的 David Williams 所说的“连续的一切”。今天的开发和部署时间比以往任何时候都短,这就是为什么企业需要进入软件开发的持续一切阶段,但那些已经这样做的人可以证明其好处。特别是,通过从手动连续测试实践转变为自动化变体,DevOps 团队部署程序的速度提高了 80%比在手动阶段。那么,最终结果是更高质量的产品,可以更快地适应任何性能问题的产品,以及可以在客户中使用的产品?双手更快。客户可能不理解左移的语言,但他们知道那是他们想要的。不过,对于开发人员而言,左移是一项挑战,但也有其自身的优势。是的,这意味着重新组织 DevOps 流程,但一旦系统到位,它确实比右移模式更快、更划算。尽管目前在持续测试和自动化采用方面存在滞后,但一旦到位,DevOps 专业人员将在他们的项目成果中看到明显的不同。下一个边界在左边。