常见的开发模型和测试模型

news2024/9/30 15:30:54
  1. 软件的生命周期

软件开发阶段的生命周期

需求分析->计划->设计->编码->测试->运维

软件测试阶段的生命周期

需求分期->测试计划->测试设计与开发->执行测试->测试评估

  1. 开发模型

  1. 瀑布模型

可以看到,这个模型和我们上面的软件开发生命周期很相似

采用的是线性的结构,所以错误发现的越晚,项目的成本开销就增加的越多

缺点:可运行的产品很迟才能被看到,测试又比较置后,所以往往会失去及早修正错误的机会

优点:非常适用于需求比较固定的小项目开发

  1. 螺旋模型

乍一看很吓人,但是我们只要慢慢研究是可以理解的

从需求分析开始,沿着线一直往后走,其实就是瀑布模型,只是在相应的部分添加了风险分析和原型,

这里我把他拉直,读者可以和瀑布模型进行对比,从而更好地记忆螺旋模型

优点:多次进行风险评估,从而可以更好的接收变化

缺点:团队是需要花费资金去招聘风险分析师的,所以增大了开发成本

适用于:软件规模较大,并且变化可能性较大的项目

  1. 增量模型

将项目进行模块化,使每一个模块都可以独立开发和独立上线,供用户使用

优点:可以较快的将项目交付给用户使用

适用于:需求明确,各个功能直接可以明确划分模块

  1. 迭代模型

迭代功能就是将功能不断完善,比如我们现在要开发一款聊天软件,第一次迭代,我们就想把聊天室的基础功能实现,然后发布.完成之后,再进行第二次迭代,比如推出朋友圈功能之类的,然后发布,继续迭代

优点:可以最快速的交付产品,并且可以不断完善

适用类型:需求不是特别明确,后期可以根据需求迭代

  1. 敏捷模型

在说敏捷模型之前,我们先来读一下敏捷模型宣言:

总结一下:就是说团队的沟通大于开发工具和开发流程,最终的目标就是得到可交付的软件

特点:轻流程 轻文档 重目标 重产出

敏捷模型有三个重要的角色和五个重要的会议

角色:产品经理,项目经理,研发团队

会议:需求发布会议,迭代计划会议,每日会议,演示会议,回顾会议

具体流程如上

产品经理先整理用户需求,然后开需求发布会议,确定本次迭代的需求,然后开迭代计划会议,把需求拆分成一个个的任务,确定工时,最后明确负责人.然后每天项目经理开展每日例会,主要处理三个问题:1.昨天做了什么?2.今天打算做什么?3.在开发过程中,遇到了什么问题.在每日例会结束后开演示会议,对产品进行演示,最后开总结回顾会议

  1. 测试模型

  1. V模型

V模型是将测试后置的一种模型,测试的标准是前面对用的阶段,比如软件单元测试是根据软件详细设计来完成的

  1. W模型

W模型是V模型的升级版,在软件开发初期,测试工作就已经介入了,有利于更早的发现和解决问题,但是如果前面的需求发生变化,W模型并不能很好的进行变化,是一种重流程的模型,不太支持敏捷模型

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[LeetCode周赛复盘] 第 334 场周赛20230226

[LeetCode周赛复盘] 第 334 场周赛20230226 一、本周周赛总结二、 [Easy] 6369. 左右元素和的差值1. 题目描述2. 思路分析3. 代码实现三、[Medium] 6368. 找出字符串的可整除数组1. 题目描述2. 思路分析3. 代码实现四、[Medium] 6367. 求出最多标记下标1. 题目描述2. 思路分析3…

软件测试面试项目问答怎么回答才能让面试官认可?

四、项目4.1 简单介绍下最近做过的项目根据自己的项目整理完成,要点:1)项目背景、业务、需求、核心业务的流程2)项目架构,B/S还是C/5,数据库用的什么? 中间件用的什么?后台什么语言开发的&…

vue3+rust个人博客建站日记1-框架开发环境配置。

背景 阅读了陈皓老师《左耳听风》栏目后,更觉个人知识体系停留在“知道”的阶段,真正动起手来,处处制肘。故决定重新上路,按照《左耳听风》的路线,锻炼一下自己。 个人博客建站,主要是为了熟悉一门前端与…

springboot+vue结合,后端学习前端(三)(前端拦截器+后端拦截器)未登录访问其他页面,直接进入登陆界面

前端拦截器后端拦截器处理#号问题使用 History 模式前端部署到后端项目里(tomcat版本由8.5.23需要提高到9.0.56了)默认的错误页面后端登录拦截器LoginController添加sessionLoginInterceptor拦截器配置到项目里Vuex 与前端登录拦截器下载 Vuex引入Vuex修…

我继续问了ChatGPT关于SAP顾问职业发展前景的问题,大家感受一下

目录 SAP 顾问 跟其他IT工作收入情况相比是怎么样的? 如何成为SAP FICO 优秀的顾问 要想成为SAP FICO 优秀的顾问 ,需要ABA开发技能吗 SAP 顾问中哪个类型收入最多? 中国的ERP软件能够取代SAP吗? SAP 顾问 跟其他IT工作收入情…

java+springboot+vue高校学生医疗保险管理系统

医保管理系统是对与职工健康息息相关的档案进行的系统化、自动化的管理,主要是对职工办理的医疗保险的管理,本系统能够很好的适应社会的需求,最大化的为城镇职工提供服务。医疗保险是国家社会保障体系的重要组成部分,也是社会保险…

【Linux】零成本在家搭建自己的私人服务器解决方案

我这个人自小时候以来就特喜欢永久且免费的东西,也因此被骗过(花巨款买了永久超级会员最后就十几天)。 长大后骨子里也是喜欢永久且免费的东西,所以我不买服务器,用GitHubPage或者GiteePage搭建自己的静态私人博客&…

Python控制CANoe使能TestCase

前面介绍了多种CANoe配置下的dbc文件添加,常见的配置我们能够常用的就是testcase的使能和环境变量的设置,针对于环境变量的问题,我们下次再进行详聊,今天主要聊一下测试脚本的使能。在做这块之前,我们第一步就需要了解我们的测试脚本的层级是都包含有哪些? 一、测试脚本结…

Mysql 数据库版本升级V1.0

序号版本描述修改审查11.0mysql升级描述:甲方安全审计,发现数据库漏洞,或者定期排查数据库漏洞环境: linux系统准备:第一步下载mysql 安装包https://downloads.mysql.com/archives/community/https://dev.mysql.com/do…

【华为OD机试模拟题】用 C++ 实现 - 新员工座位安排系统(2023.Q1)

最近更新的博客 【华为OD机试模拟题】用 C++ 实现 - 去重求和(2023.Q1) 文章目录 最近更新的博客使用说明新员工座位安排系统题目输入输出示例一输入输出示例二输入输出Code使用说明 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。 …

产业链金风控基本逻辑

产业链金风控基本逻辑 产业链金融平台作为一个助贷平台,很大程度上是为银行等金融机构进 行引流,贷款的审批本质上还是依赖金融机构的风控。那么,产业链金融 平台是否还有必要建设自己的风控模型呢?笔者给出的答案是肯定的。 一方面&#x…

《高性能MySQL》——MySQL基准测试(笔记)

文章目录二、MySQL基准测试2.1 为什么需要基准测试2.2 基准测试的策略2.2.1 测试何种指标2.3 基准测试方法2.3.1设计和规划基准测试2.3.2 基准测试应该运行多长时间2.3.3 获取系统性能和状态2.3.4 获得准确的测试结果2.3.5 运行基准测试并分析结果2.3.6 绘图的重要性2.4 基准测…

量化学习(一)数据获取

试验环境 windows10 AnacondaPyCharm(小白参考文章:https://coderx.com.cn/?p14) VM中安装MySQL5.7(设置utf8及相应配置优化) 关于复权 小白参考文章:https://zhuanlan.zhihu.com/p/469820288 数据来源 AK…

轻量级网络模型ShuffleNet V2

在学习ShuffleNet V2内容前需要简单了解卷积神经网络和MobileNet,以及Shuffnet V1的相关内容,大家可以出门左转,去看我之前的几篇博客MobileNet发展脉络(V1-V2-V3),轻量级网络模型ShuffleNet V1🆗&#xff…

Python—for循环

(1)for 循环: for循环格式: for 零时变量 in 可迭代对象:   重复执行的代码1   重复执行的代码2   … 代码实例: str_data 12345 # for 提取容器里面的所有数据输出 循环做某个事情# 循环的运行次数和字符串…

【RabbitMQ笔记07】消息队列RabbitMQ七种模式之Publisher Confirms发布确认模式

这篇文章,主要接收消息队列RabbitMQ七种模式之Publisher Confirms发布确认模式。 目录 一、消息队列 1.1、发布确认模式 1.2、案例代码 (1)引入依赖 (2)编写生产者【消息确认--单条确认】 (3&#xf…

Log4j2基本使用

文章目录1. Log4j2入门2. Log4j2配置3. Log4j2异步日志4. Log4j2的性能Apache Log4j 2是对Log4j的升级版,参考了logback的一些优秀的设计,并且修复了一些问题,因此带 来了一些重大的提升,主要有: 异常处理&#xff0c…

ubuntu/linux系统知识(36)linux网卡命名规则

文章目录背景命名规范系统默认命名规则优势背景 很久以前Linux 操作系统的网卡设备的传统命名方式是 eth0、eth1、eth2等,属于biosdevname 命名规范。 服务器通常有多块网卡,有板载集成的,同时也有插在PCIe插槽的。Linux系统的命名原来是et…

基于SpringCloud的可靠消息最终一致性01:定理、解决方案和框架

在互联网发展的早期,单体架构是主流的开发模式。因为访问的用户不多,所以整个系统的结构比较简单,就像一口竖井,从上到下,一通到底,如下图所示: 图一:单体应用 随着业务复杂度的不断提升,以及用户需求的不断增加,原来单个的业务系统已经不堪重负了。就好像一个窗口前…

redis数据结构的底层实现

文章目录一.引言二.redis的特点三.Redis的数据结构a.字符串b.hashc.listd.sete.zset(有序集合)一.引言 redis是一个开源的使用C语言编写、支持网络、可基于内存亦可持久化的日志型、key-value的NoSQL数据库。 通常使用redis作为缓存中间件来降低数据库的压力,除此…