SDL序列课程-第32篇-威胁建模篇-增量模型

admin 2024年11月4日10:31:11评论3 views字数 1487阅读4分57秒阅读模式

增量模型也称为渐增模型,把软件产品作为一些列的增量构件来设计、编码、集成和测试。每个构件由多个相互作用的模块构成,并且能够完成特定的功能。分解时唯一必须遵守的约束条件是,当把新构件集成到现有软件中时,所形成的产品必须是可测试的。

增量模型的特点是引进了增量包的概念,无须等到所有需求都出来,只要某个需求的增量包出来即可进行开发。虽然某个增量包可能还需要进一步适应客户的需求并且更改,但只要这个增量包足够小,其影响对整个项目来说是可以承受的。

SDL序列课程-第32篇-威胁建模篇-增量模型

SDLC 中的增量模型:使用、优势和劣势

什么是增量模型?

增量模型是一个软件开发过程,其中需求被分解为软件开发周期的多个独立模块。增量开发是在分析设计、实施、测试/验证、维护的步骤中完成的。

SDL序列课程-第32篇-威胁建模篇-增量模型

每次迭代都要经过需求、设计、编码和测试阶段。并且系统的每个后续版本都会在之前的版本中添加功能,直到所有设计的功能都已实现。

SDL序列课程-第32篇-威胁建模篇-增量模型

该系统在第一个增量交付时投入生产。第一个增量通常是解决基本要求的核心产品,并在下一个增量中添加补充功能。一旦客户分析了核心产品,就可以制定下一个增量的计划。

增量模块的特征包括

  • 系统开发被分解成许多迷你开发项目

  • 部分系统依次构建,形成最终的整体系统

  • 首先解决最高优先级的要求

  • 一旦开发了需求,该增量的需求就会被冻结

增量阶段 在增量阶段执行的活动
需求分析 收集软件的需求和规范
设计 这个阶段设计了一些高端功能
代码 在此阶段完成软件编码
测试 系统部署后,将进入测试阶段

SDLC中何时使用增量模型?

  • 清楚了解系统要求

  • 当出现对产品提前发布的需求时

  • 当软件工程团队不是很熟练或训练有素时

  • 当涉及高风险特征和目标时

  • 这种方法更多地用于基于 Web 应用程序和产品的公司

增量模型的优缺点

优点 缺点
软件将在软件生命周期内快速生成 它需要一个良好的规划设计
更改需求和范围更灵活且成本更低 由于系统架构可能会导致问题,因此并非所有需求都预先收集到整个软件生命周期
在整个开发阶段都可以进行更改 每个迭代阶段都是刚性的,不相互重叠
与其他模型相比,此模型成本更低 一个单元纠正一个问题,需要所有单元都纠正,耗费大量时间
错误很容易被识别

增量模型的作用

1、开发初期的需求定义只是用来确定软件的基本结构,使得开发初期用户只需要对软件需求进行大概的描述;而对于需求的细节性描述,则可以延迟到增量构件开发时进行,以增量构件为单位逐个地进行需求补充。这种方式能够有效适应用户需求的变更

2、软件系统可以按照增量构件的功能安排开发的优先顺序,并逐个实现和交付使用。不仅有利于用户尽早用上系统,能够更好地适应新的软件环境,而且在以增量方式使用系统的过程中,还能获得对软件系统后续构件的需求经验

3、软件系统是逐渐扩展的,因此开发者可以通过对诸多构件的开发,逐步积累开发经验。实际上,增量式开发还有利于技术复用,前面构件中设计的算法、采用的技术策略、编写的源码等,都可以应用到后面将要创建的增量构件中去

4、增量式开发有利于从总体上降低软件项目的技术风险。个别的构件或许不能使用,但一般不会影响到整个系统的正常工作

5、实际上,在采用增量模型时,具有最高优先权的核心增量构件将会被最先交付,而随着后续构件不断被集成进系统,这个核心构件将会受到最多次数的测试。这意味着软件系统最重要的心脏部分将具有最高的可靠性,这将使得整个软件系统更具健壮性

欢迎转发给有需要的人,微信公众号名称:软件开发安全生命周期。定期分享软件开发生命周期,SDLC、SDL、DevSecOps等相关的知识。致力于分享知识、同时会分享网络安全相关的知识点和技能点

原文始发于微信公众号(软件开发安全生命周期):SDL序列课程-第32篇-威胁建模篇-增量模型

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月4日10:31:11
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   SDL序列课程-第32篇-威胁建模篇-增量模型http://cn-sec.com/archives/3349189.html

发表评论

匿名网友 填写信息