了解常用测试模型 -- 瀑布模型、螺旋模型、增量与迭代、敏捷开发

目录

瀑布模型

开发流程

开发特征

优缺点

适用场景

螺旋模型

开发流程

开发特征

优缺点

适用场景

增量与迭代开发

什么是增量开发?什么是迭代开发?

敏捷开发

什么是敏捷开发四原则(敏捷宣言)?

什么是 scrum 框架?

scrum 框架中的三大角色分别是什么?

scrum 框架的基本工作流程


瀑布模型

                                                  

开发流程

问题定义 => 可行性研究 => 需求分析 => 计划 => 设计 => 编码 => 测试 => 上线运维


开发特征

  • 线性顺序开发


优缺点

  • 优点

    • 通过早期计划及需求调查等工作,在每个开发阶段都有明确的阶段性目标

  • 缺点

    • 由于项目的测试在最后阶段,发现问题时项目已经基本完成,此时则需要重新回溯至问题阶段排查问题,这可能导致许多前期工作变成无用功,增加了开发风险

    • 需求明确后就不再更改,不能适应需求变化的情况。

    • 由于是线性顺序开发,开发中获得的经验教训无法反哺本项目


适用场景

  • 小型项目开发


螺旋模型

                                                  

开发流程

  • 循环执行如下步骤:

    1. 客户需求沟通

    2. 方案计划及目标拟定

    3. 风险分析

    4. 计划实施、编码、测试

    5. 成果评估


开发特征

  • 渐进式迭代开发


优缺点

  • 优点

    • 全过程风险分析管理,每个阶段都进行质量及风险验证

    • 阶段性总结经验教训,可以反哺本项目

    • 阶段性对项目可行性进行评估,控制沉没成本

  • 缺点

    • 严格的计划和进度控制,风险的识别、分析、控制,这些都使得投入的人力财力大大增加,对管理水平提出了更高的要求


适用场景

  • 适用于规模庞大、复杂度高、风险大的项目


增量与迭代开发

                                                  

什么是增量开发?什么是迭代开发?

  • 增量开发是在项目基础上不断根据需求进行扩展优点是显著降低项目风险,结合需求持续构建

  • 迭代开发是指原项目满足基本需求后就上线,后续才在原基础上不断细化迭代,做到迅速投产,逐步优化


敏捷开发

                                                  

什么是敏捷开发四原则(敏捷宣言)?

四原则包括:

  • 个体与交互重于过程和工具

  • 可用的软件重于完备的文档

  • 客户协作重于合同谈判

  • 响应变化重于遵循计划


什么是 scrum 框架?

  • 敏捷开发是一种思想,而scrum框架就是这种思想的具体实现,是一种基于持续学习和需求多变的启发式框架


scrum 框架中的三大角色分别是什么?

  • scrum 框架通常具备三大角色:

    • product owner(产品经理人):简单理解,产品经理人面向需求,主要负责整合客户需求,并传达给项目经理。

    • scrum master(项目经理):简单理解,项目经理面向行动,主要负责研发团队的调度安排,进度计划的把控。

    • team(研发团队):简单理解,进行具体工作的一大帮人。


scrum 框架的基本工作流程

  • 基本流程

    • product backlog/产品需求

    • sprint backlog/计划安排

    • Sprint/具体实施

    • daily scrum meeting/每日例会

    • Sprint Review/迭代评审

    • Sprint Retrospective/迭代回顾总结


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/457835.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Pytorch从零开始实战21

Pytorch从零开始实战——Pix2Pix理论与实战 本系列来源于365天深度学习训练营 原作者K同学 文章目录 Pytorch从零开始实战——Pix2Pix理论与实战内容介绍数据集加载模型实现开始训练总结 内容介绍 Pix2Pix是一种用于用于图像翻译的通用框架,即图像到图像的转换。…

手撕HashMap底层源码 (JDK1.7版本的HashMap)

day27 集合框架 标绿已经学习底层,深入底层主要是研究实现类底层 手撕HashMap底层源码 JDK1.7版本的HashMap 切换版本 原因:jdk1.7和jdk1.8的HashMap不同(头插法/尾插法) 首先如果没有jdkjre1.7,就安装jdkjre1.7&am…

mysql数据库备份学习笔记

数据库备份 方法1 物理备份:xtrabackup 方法2 逻辑备份 mysqldump 参考备份与恢复的方法: 【MySql】Mysql之备份与恢复_mysql数据库备份与还原-CSDN博客 可以借鉴的物理备份: 思路是 先做一次全量备份,然后每天做一次增量备份…

从大模型到Agentscope——进阶: 容错机制与构建多模态应用

文章目录 容错机制与构建多模态应用高鲁棒的容错机制鲁棒性的挑战可访问性错误规则可解错误&模型可解错误不可解错误 设计理念:多模态 容错机制与构建多模态应用 高鲁棒的容错机制 鲁棒性的挑战 可访问性错误 默认重新调用三次并把报错给打印出来 规则可解错误…

嵌入式单片机学习思路感想分享

今天看到了一个提问,原话如下: 曾经干了8年单片机工程师,对工程师从入门,到入行,再到普通,再到高级,整个路径还算清晰,比如什么阶段,会碰到什么瓶颈,怎么突破,我都经历过。 这个同学,有个典型的问题,就是学得太多且杂了,估计稍微复杂点的项目,做不出来。 现在…

长期护理保险可改善老年人心理健康 | CHARLS CLHLS CFPS 公共数据库周报(3.6)...

欢迎报名2024年“真实世界临床研究”课程! 本周郑老师开讲:“真实世界临床研究”培训班,3月16-17日两天,欢迎报名! CHARLS公共数据库‍ CHARLS数据库简介中国健康与养老追踪调查(China Health and Retirement Longitud…

.NET高级面试指南专题十八【 外观模式模式介绍,提供了简化的接口,隐藏系统的复杂性】

介绍: 外观模式是一种结构设计模式,它提供了一个统一的接口,用于访问子系统中的一组接口。外观模式定义了一个高层接口,使得子系统更容易使用。 原理: 外观类(Facade Class):提供了一…

电脑芯片维修费用、价格方面的处理方法有哪些?

电脑使用时间长了,难免会出现这样或那样的问题。 笔者整理了一些关于电脑芯片维修费用和价格的参考资料,以及简单的处理方法,供大家了解和学习: 1、笔记本电脑芯片维修: 首先检查电脑系统是否完好。 如果是系统软故障…

【Qt】常用控件或属性(1)

需要云服务器等云产品来学习Linux可以移步/-->腾讯云<--/官网&#xff0c;轻量型云服务器低至112元/年&#xff0c;新用户首次下单享超低折扣。 目录 一、QWidget属性一览 二、控件button、属性enabled(可用状态) 三、属性geometry(修改位置和尺寸) 1、QRect类型的结…

数字化转型导师坚鹏:金融机构数字化运营

金融机构数字化运营 课程背景&#xff1a; 很多金融机构存在以下问题&#xff1a; 不清楚数字化运营对金融机构发展有什么影响&#xff1f; 不知道如何提升金融机构数字化运营能力&#xff1f; 不知道金融机构如何开展数字化运营工作&#xff1f; 课程特色&#xff1a;…

Vue2 引入自己下载的SVG图像的方式

Vue2 引入下载的SVG图像的方式 Step 1&#xff1a;安装依赖 npm i svg-sprite-loader --saveStep 2&#xff1a;创建文件路径 // index.js import Vue from vue import SvgIcon from /components/SvgIcon// svg component// register globally Vue.component(svg-icon, Svg…

PHP序列化基础知识储备

一、序列化与反序列化 1、概念 PHP中的序列化是指将复杂的数据类型转换为可存储或可传输的字符串&#xff0c;而反序列化则是将这些字符串重新转换回原来的数据类型。 序列化通常使用 serialize() 函数完成&#xff0c;它可以将数组、对象、字符串等复杂数据类型压缩到一个字…

在Linux/Ubuntu/Debian中使用7z压缩和解压文件

要在 Ubuntu 上使用 7-Zip 创建 7z 存档文件&#xff0c;你可以使用“7z”命令行工具。 操作方法如下&#xff1a; 安装 p7zip&#xff1a; 如果你尚未在 Ubuntu 系统上安装 p7zip&#xff08;7-Zip 的命令行版本&#xff09;&#xff0c;你可以使用以下命令安装它&#xff1a;…

数据结构:堆

堆的概念 1.堆是一个完全二叉树 2.小堆(任何一个父亲<孩子),大堆(任何一个父亲>孩子) 堆的结构 物理结构:数组 逻辑结构:二叉树 #pragma once #include<assert.h> #include<iostream> typedef int HPDataType; typedef struct Heap {HPDataType* _a;int…

手写Mybatis自动填充插件

目录 一、Mybatis插件简介&#x1f959;二、工程创建及前期准备工作&#x1f96b;实现代码配置文件 三、插件核心代码实现&#x1f357;四、测试&#x1f953; 一、Mybatis插件简介&#x1f959; Mybatis插件运行原理及自定义插件_简述mybatis的插件运行原理,以及如何编写一个…

Java8 Stream流详解

文章目录 概念和特点基本流程常见操作过滤&#xff08;filter&#xff09;映射&#xff08;map&#xff09;收集&#xff08;collect&#xff09;归约&#xff08;reduce&#xff09;扁平映射&#xff08;flatMap&#xff09; java案例详解注意事项 概念和特点 Java中的Stream是…

Qt 线程池 QThreadPool

一.Qt 线程池 QThreadPool介绍 Qt线程池是一种管理多个线程的并发编程模型&#xff0c;通过使用线程池可以提高性能、控制并发度、提供任务队列和简化线程管理。 在Qt中&#xff0c;线程池的使用主要涉及以下几个步骤&#xff1a; 创建任务类&#xff1a;需要定义一个任务类&am…

PGA高端项目:FPGA基于GS2971+GS2972架构的SDI视频收发,提供3套工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐本博已有的 SDI 编解码方案本方案的SDI接收图像缩放应用本方案的SDI接收纯verilog图像缩放纯verilog多路视频拼接应用本方案的SDI接收HLS图像缩放HLS多路视频拼接应用本方案的SDI接收OSD动态字符叠加输出应用本方案的SDI接收HLS多路视频融…

AJAX 03 XMLHttpRequest、Promise、封装简易版 axios

AJAX 学习 AJAX 3 原理01 XMLHttpRequest① XHR 定义② XHR & axios 关系③ 使用 XHR④ XHR查询参数案例&#xff1a;地区查询&#xff08;URLSearchParams&#xff09;⑤ XHR数据提交 POST 02 PromisePromise 使用Promise - 三种状态案例&#xff1a;使用Promise XHR 获取…

sqllab第二十一关通关笔记

知识点&#xff1a; 错误注入 最大长度为32超过需要利用截取函数分段读取cookie注入base64加密会保留符号的原始属性 通过admin admin进行登录发现和第二十关显示的内容一样&#xff0c;猜测应该还是cookie注入&#xff1b; 直接截取带有cookie的数据包&#xff0c;发现uname…