SQUARE需求工程的流程是什么?

  SQUARE是安全质量要求工程。它是由卡内基梅隆大学软件工程研究所(SEI)开发的一个需求工程流程,其重点在于获取和记录安全需求。由于安全需求通常没有得到它们应得的重点,并且由于在软件开发生命周期后期尝试合并安全要求的成本高于预先计划的成本,因此SEI开发了九步过程以确保质量安全需求可以在软件开发生命周期早期收集、归类、排序和验证。

  这九个步骤是:             
  1.在定义上达成一致:有许多安全相关的术语,它们可能是模棱两可或解释多种方式的。因此,团队应该首先创建这些术语的列表,这些术语将在讨论和需求引发会议期间使用。每个术语及其定义应被记录并传达给小组。一些示例可能是访问控制、拒绝服务攻击、完整性、欺骗、SQL注入、漏洞和蠕虫。      

        2.确定安全目标:安全目标是反映业务和利益相关者关于系统安全的高级目标的语句。除了处于比安全需求更高的级别之外,它们往往在解释上更宽泛,并且通常不易测试。随后,每个安全目标导致一个或多个安全要求。安全目标的一个例子可能是“必须维护人事档案的机密性”。       

       3.开发脚手架:应该收集和开发各种系统脚手架,以支持方形流程。这些包括系统架构图、用例和用例图、误用情况图、攻击树等。             

       4.执行风险评估:识别存在的系统威胁并确定它们是如何实现的。此外,如果他们实现了这种攻击的潜在后果。这为后来制定的对策和帮助安全要求的优先次序提供了理论依据。

       5.选择引发技术:确定哪些需求引发技术最适合指定的系统、项目团队和项目环境。   

      6.引出安全要求:引出并记录可测量和可验证的安全要求。             

       7.分类需求:SQUARE将每个安全需求分类为诸如基本系统级别、非基本系统级别、基本软件级别、非基本软件级别、体系结构约束之类的类别     

         8.确定需求的优先级:由于缺乏资源、时间或项目目标的变化,并不是所有的需求都能够实现。项目团队必须基于对每个需求的所有了解,包括相关威胁的风险评估,来评估和区分每个需求的优先级。              
       9..检查需求-最后一步是检查要求,以确保它们是准确的和可验证的。检查步骤的目的是消除需求中的任何模糊性、不一致性或错误假设。 

业务分析设计