在敏捷产品开发过程中,用户故事可能不足以保证实施的安全性。这里阐述一些更有效提高安全性的办法。
越来越多的公司采用敏捷模式开发和维护软件系统。敏捷需求管理方法主要基于开发特性。敏捷开发团队经常会发现,对于开发安全产品来说,使用用户故事来定义某个产品的具体安全特性是不够的。你可能需要另外的机制和实践,才能达到安全要求。
在敏捷产品开发中,提高安全性的一些建议如下:
- 时刻关注安全性完成的定义(DoD)。
- 用验收标准来验证满足了安全性需求。
- 在产品评审过程中,请利益相关者攻击产品安全性。
- 用回顾反省的方法调整你的安全策略。
- 群聚解决安全问题。
我认为,在进行敏捷产品开发时,探索漏洞和安全性的风险研讨会还是有意义的。不仅是在项目初期,你必须把团队成员和利益相关者集中在一起开会,在后续开发过程中,你也要经常组织他们一起交流,以探讨会发生什么问题,并且决定如何处理问题。我建议,记录DoD风险研讨会里做出的决定,作为软件交付前必须达到的标准。把DoD写在团队的公告板上,并且确保每位成员在产品开发过程中,都能够始终关注安全性。
可以借助验收标准在如何验证具体用户故事的安全性上达成共识。验收标准不仅有助于阐明需求,也有助于讨论并得出需要多少安全性措施及其种类。提前定义标准,不但有利于团队开发出满足安全需求的软件,还有助于在软件发布前测试出软件是否满足安全需求。
在产品评审或者所谓的演示阶段,开发团队会向大家展示产品,并且收集反馈信息。利益相关者不仅有机会操作该软件产品,但也给他们提供了机会来破坏系统安全性;同时像罪犯或欺诈性者那样操作软件,从而观察软件系统如何响应。然后,利益相关者可以一起决定为保证系统安全需要做哪些事情。
敏捷回顾帮助团队思考他们的工作方式,并持续提高他们的水平。在回顾中,通过使用“五个为什么”,可以发现主要的或者重复出现的安全问题。这样,有助于找到导致安全问题的根本原因,以防以后再次出现类似问题。回顾还有助于精准调整团队应对安全问题的处理方式。当周边环境有些因素改变,导致出现安全问题的风险增加时,团队可以调整他们的工作方式以适应这些变化。
当安全被破坏时,需要快速且有效的行动来解决问题,并且阻止更大的破坏。群聚,是一种让团队集中精力解决某个问题的方法。来自不同领域的人一起工作,达成共识,提出定位和解决问题的方法,并将升级后的软件投入运行。开发团队可能需要一些利益相关者,比如产品经理、程序或项目经理,相关实施人员的共同参与,以便开展迅速且有效的行动。
识别、分析并解决安全问题的速度和效率很重要。敏捷工作方式,比如用Scrum或者Kanban,可以帮助团队通过快速地开发和发布有效的解决方案来处理安全问题。我认为DevOps会加速问题的解决,因为这样的方式会缩短敏捷产品前端到后端的开发周期。当开发和实施人员密切合作时,被实施团队发现或者报告给实施团队的问题,可以被迅速的解决。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
“以建应变”:敏捷+DevOps驱动数字化转型
数字化转型由软件驱动。如今在数字化转型中,交付软件实际上处于每一个业务的核心,这一软件趋势也正好与CA Technologies一直强调的应用经济相一致。
-
开发运维一体化(DevOps):协作是成功的保障
如今的IT部门存在一个矛盾:敏捷开发者希望可以快速部署常规软件,而运维团队则优先考虑稳定性。开发和运维不同的成功指标使得每个团队都有自己独立的目标
-
CA Technologies预测:2016年五大科技趋势
2015年已经过去,回顾过去一年,云计算势头一如既往;容器技术——Docker吸引了众多开发者的眼球;物联网的发展也越来越强劲。在新一年来临之际,有将有哪些新的趋势?
-
CA Technologies CEO呼吁企业领导者善用软件的颠覆力量
CA Technologies首席执行官 Mike Gregoire日前在CA World ’15上发表了主题演讲,聚焦业务领域对创新速度的更高要求,呼吁企业将软件作为一项基本组织化原则,以在快速变化的世界里保持优势地位。