杨 颖,徐 超,邓君华,李叶飞,姜丽丽
敏捷开发模式下的SDL实践浅析
杨 颖1,徐 超2,邓君华2,李叶飞1,姜丽丽1
(1. 江苏方天电力技术有限公司,江苏 南京 210000; 2. 国网江苏省电力有限公司电力科学研究院,江苏 南京 210000 )
DevOps理念旨在将Ops(运维)融入到敏捷开发模式之中,经过多年的探索与磨合,形成了一些企业特色的融合模式,但未形成通用方案。随着2017年DevSecOps理念相继出现,促使Sec(安全)也要融入到敏捷开发模式。当前安全融入传统开发模式的典型理论是安全开发生命周期管控(Security Development Lifecycle,下文简称:SDL)。
信息安全;计算机;敏捷开发
敏捷模式下SDL的生根发芽是如何进行的呢?传统的SDL开发流程包括了从可行性分析、需求分析到软件设计,再到编码实现、黑盒测试和白盒测试,最后上线试运行、正式上线,然后移交维护[1]。而对于安全的软件开发,最重要的是在软件开发周期中增加了与软件安全相关的需求说明、确认计划、软件确认[2],在开发周期的每个阶段都需要评估风险、验证措施有效性、确认整改到位。安全的软件开发阶段主要包括:
(1)编写软件安全需求说明书。描述软件系统的安全功能,以及完整的软件安全的总体要求。
(2)编写软件安全确认计划书。根据软件安全需求说明书编写软件安全确认计划。
(3)软件设计和开发。包括软件架构设计、概要设计及详细设计、测试案例、测试计划编写,并根据设计文档进行代码编程。
(4)软件系统与硬件设备集成。
(5)软件与硬件集成测试和修改。保证软件系统与硬件设备兼容并能够满足软件安全需求。……