敏捷开发时代:软件安全测试需更灵活

安全
我们生活在一个软件定义的世界中。任何努力保持竞争优势或市场先机的企业,都必须在某种程度上重新整合其软件。这会导致快速的开发方法,如敏捷开发和开发运维,促进持续的产品改进。但是,这些新的开发方法能够使测试最小化,反过来又可能破坏性能和安全性。

我们生活在一个软件定义的世界中。软件几乎接触到方方面面。任何努力保持竞争优势或市场先机的企业,都必须在某种程度上重新整合其软件。这会导致快速的开发方法,如敏捷开发和开发运维,促进持续的产品改进。但是,这些新的开发方法能够使测试最小化,反过来又可能破坏性能和安全性。

[[197085]]

为保持竞争优势,企业必须提供高质量的应用体验。此外,安全是必须的而不是“有安全性也不错”。因而,持续的测试方法已经日益重要,其动态性就像新的开发过程一样。幸运的是,企业越来越明白这种不断增长的需要,并且重新思考整个过程。

推动测试升级

软件开发的新步伐给测试人员带来一个非常确切的问题,那就是测试者在没有规划好明确路线图的情况下必须快速响应。如果产品的开发团队被招集起来按照最新的时间表进行产品更新,直至发布日期再次更改,这往往会导致执行不力,因为解决方案存在未知的漏洞和缺陷。

但是,即使消费者的期望促进更快的开发步伐,也会提出质量问题。终端用户期望快速、稳定和安全。及早测试和经常测试已经慢慢占据了开发者的思想,而易于使用和功能的重要性也继续增长。还有一个问题,即新应用和设备如何使用。软件无处不在,糟糕的开发方法可能导致大问题,其范围涉及从自动制造问题到个人信息的失窃等诸多方面。新一波技术所产生的复杂性要求更为严格的评估周期。

培育改变的文化

随着开发越来越快,企业和客户需要在思想观念方面有所转变。促进更快开发的文化还需要倡导灵活的测试方法。

这要从测试方法和培训开始。开发者、测试人员和版本管理员需要认可和实施一种连续性的测试观念。更具体地说,这些人员需要在此过程中得到培训,在一个快速开发周期中进行测试时,还要有可用工具。跨队的交流也很重要,尤其是在质保经理和开发者之间的交流更为重要。在完成此步骤后,代码将更加稳定,而漏洞的解决速度也会更快。适当的工具可以模拟真实的情况,提供共享的测试数据环境,并且总保持可用性,还能够与主要的代码库框架相集成。

在成功实施后,持续的测试和培训可以防止漏洞和性能问题的产生,同时又可以使开发人员在将来更好的找到问题。确认可疑活动和采取什么行动也会变得更为容易。企业应当避免利用有限规模的测试环境,如内部开发攻击,或者是众包探测,否则就会带来一种错误的安全感。

最后,在并非为满足紧迫的时间表而进行的测试中,关键的问题是不“走捷径”。 迭代开发确实意味着在问题出现时并不能解决。我们还希望进一步扩展,以求在下一个软件版本中包括另一种特性。这就需要在增加新特性和测试已有特性之间寻求平衡。适当的方法有助于减少缺陷、响应时间,以及因业绩不佳对品牌造成的负面影响。开发者、测试者、版本管理员如果及早测试,并且在将其贯穿整个过程,就有能力增加稳定性和安全性。

责任编辑:赵宁宁 来源: TechTarget中国
相关推荐

2009-05-18 09:12:00

ASON自动交换光网络

2023-06-06 19:24:06

KubernetesSpark

2009-03-10 13:18:56

2011-02-23 09:48:00

Python.NET

2011-02-22 10:00:38

.NETc#IronPython

2009-06-03 09:08:20

ScalaJava类型

2022-02-28 08:00:00

软件开发敏捷方法技术

2023-11-27 08:21:49

Camera2API,

2015-05-04 14:12:43

2011-01-12 14:01:04

互联网

2017-03-17 08:15:17

敏捷软件开发软件开发

2013-07-22 14:10:46

2020-09-14 09:33:02

网络

2015-03-18 10:54:32

2020-10-28 15:17:08

Go服务超时net

2017-02-14 15:37:32

KappaLambda

2015-10-10 10:01:39

VMware数据中心

2023-12-05 10:25:24

Python类型注解

2013-08-16 15:14:46

华为

2022-04-29 13:23:20

敏捷开发软件
点赞
收藏

51CTO技术栈公众号