软件工程快速复习

瀑布模型
在这里插入图片描述
开发顺序:可行性分析、需求分析、概要设计、详细设计、编码、测试、维护
特点:开发各个阶段比较清晰,上一项开发活动的输出是这一次开发活动的输入,阶段间具有顺序性和依赖性,开发活动不可逆转,不适应需求的变化,需要文档较多,惧怕需求变更

快速原型模型
首先构造\参照一个原型,在该原型的基础上,逐渐完成整个系统的开发
loop:
快速分析 --> 需求说明 --> 构造原型 --> 运行原型 --> 用户评价修改

适合小型、灵活性高的系统,前提是有一个展示性的产品原型,可能限制创新

螺旋模型
将开发过程分为几个螺旋周期
制定计划 --> 风险分析 --> 开发 --> 客户评估
螺旋模型是一种风险驱动的方法体系,需要有丰富的风险评估经验,多次迭代会增加开发成本

敏捷开发:
敏捷开发以用户需求为核心
项目被划分为多个子项目
功能模块增量交付,快速迭代
很短时间做出核心功能,之后快速迭代、逐步完善

增量模型
把软件看做一系列相互联系的增量,在开发过程各次迭代中,每次完成其中的一个增量,每个模块都是完整可用的

优点:较短时间能向用户提供部分完工的产品,可以分批次提交软件
缺点:灵活性大于瀑布模型,但容易退化为边做边改模型

软件测试

在这里插入图片描述
黑盒测试方法

  • 等价类划分
  • 边界值分析
  • 错误猜测
  • 判定表法
  • 因果图

白盒测试方法

  • 语句覆盖
  • 判定覆盖
  • 条件覆盖
  • 判定条件覆盖
  • 组合覆盖
  • 路径覆盖

猜你喜欢

转载自blog.csdn.net/weixin_39666736/article/details/105583789