软件模型(简洁明了)

news2024/9/20 23:21:20

《 软件测试基础持续更新中》

一、软件开发模型

1.1 大爆炸模型

优点:思路简单, 通常可能是开发者的“突发奇 想”

缺点:开发过程是非工程化的,随意性大,结果不可预知

测试:开发任务完成后,修复较困难

1.2 边写边改模型

优点:简单考虑到了软件的需求,产品周期短

缺点:没有计划和文档的编制

测试工作:由于新的版本不断产生,测试工作长期循环

1.3 瀑布模型

优点:

  • 如同瀑布流水,逐级下落——样式
  • 将软件生存周期各活动规定为依线性顺序联接的若干阶段的模型
  • 易理解,阶段明显,强调需求分析,明确测试阶段,提供了一套模板
  • 文档驱动

缺点:

  • 线性严格——成果晚出——风险大
  • 阶段固定——反复&迭代不适合——灵活性差
  • 单次需求——需求变更多——适应性差
  • 测试滞后——缺陷晚查——代价大

 适合场景:

  • 功能、性能明确完整
  • 需求固定,无重大变动

1.4 螺旋模型

每一个螺旋(开发阶段)包括5个步骤:

1. 确定目标,选择方案

2. 评估方案,解决风险

3. 本阶段的开发和测试

4. 计划下一阶段

5. 确定下阶段方法

优点:严格的全过程风险管理;强调各开发阶段的质量;提供机会评估项目是否有价值继续下 去。(发现问题早)

敏捷模型(略)



二、软件测试模型

V模型

局限性:测试滞后

V模型特点:动态测试行为应与开发行为对应,每个测试阶段的基础是对应开发阶段的提交物,并通过低层测试确保源代码正确,通过高层测试保证整个系统满足用户需求

W模型

局限性:

  • 将软件开发看成需求分析、设计和编码等一系列串行的活动 
  • 开发、测试之间保持着线性的前后关系,无法支持迭代的开发模型,无法支持变更调整 
  • 未体现测试流程的完整性

W模型特点:静态测试和动态测试行为伴随整个开发阶段,并与开发行为对应,有助于早期发现缺陷、了解项目难度、评估测试风险,并加快项目进度,降低项目成本

H模型

测试流程应独立于其他流程,且应保持自身的完整性,即测试是一个独立的流程,与其他流程并 发进行,且其本身的测试准备和执行活动是分离的,不同测试活动可按某个次序先后进行,也可 能是重复的,只要测试准备工作完成,就可以开始测试执行

X模型

清晰地体现了单元测试→集成测试→系统测试的过程,该模型还能处理开发中包括交接、频繁重 复的集成等工作,更加贴合实际的项目开发流程。

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

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

相关文章

Docker学习(二十五)构建 Arthas 基础镜像

目录 一、简介二、构建基础镜像2.1 下载 Arthas2.2 编写 Dockerfile2.3 构建镜像2.4 创建容器2.5 测试 一、简介 Arthas 是一款由 阿里巴巴 开发的 线上监控诊断工具。通过全局视角实时查看应用负载、内存、GC、线程等信息,能在不修改代码的情况下,对业…

应用层协议了解

一 HTTP前置知识 这篇博客会有点长,但对我来说非常有意义,这是我从一无所知到理解网络的重大突破,在前两个月我对网络非常恐惧,还十分不理解什么是网络,什么是协议。接下来先介绍几个概念。 1 流量 我们把数据给别人&…

测试开发不用做业务测试吗

在探讨测试开发与业务测试的关系时,许多人可能会有这样的疑问:作为测试开发工程师,是否就意味着不再需要关心业务测试?并不是这样的,测试开发和业务测试是软件测试领域中密不可分的两个方面。 测试开发,通…

Spring Data JPA Criteria查询、部分字段查询

前言 在上一篇SpringBoot集成JPA及基本使用-CSDN博客,里面讲解了通过Spring Data JPA的命名规范实现数据库查询以及自定义SQL语句查询。而在开发中,不定个数的多条件查询是一种很常见的场景,如根据注册起止日期、用户名、用户级别等查询用户…

HTTP网络协议,接口请求的内容类型 content-type(2024-04-27)

1、简介 Content-Type(内容类型),一般是指网页中存在的 Content-Type,用于定义网络文件的类型和网页的编码,决定浏览器将以什么形式、什么编码读取这个文件,这就是经常看到一些 PHP 网页点击的结果却是下载…

【MySQL 5.7安装时候 出现2503报错,解决方案】

MySQL5.7 安装遇 2503问题如何解决 1.能正常安装就点这里2.出现2503问题就看这2.1先看问题2.1.1在官网下载好安装包后,首先先确认安装包是否完整,排除安装包损坏的问题2.1.2 安装时候出现这个2503问题 2.2上解决方案2.2.1 打开任务管理器2.2.2 解决 1.能…

python按时间分割日志

背景介绍 现在的项目都是RotatingFileHandler,指定每个文件大小,指定日志文件的份数。有一个缺点就是要看某一天的日志,需要把这一天之前的最后一份日志和这一天之后的第一份日志都拷贝下来,很多不是自己想要的内容。 需求 想要一个按时间,最好能按天分割日志。查看Pyth…

C语言入门课程学习笔记3

C语言入门课程学习笔记3 第12课 - if 语句编程练习第13课 - switch 多分支选择语句第14课 - 程序中的循环结构第15课 - while 语句编程练习第16课 - do...while 与 for第17课 - break 与 continue 本文学习自狄泰软件学院 唐佐林老师的 C语言入门课程,图片全部来源于…

解锁文件管理新境界:自定义命名与大写扩展名,让文件井然有序

在数字化时代,文件管理成为我们日常生活和工作中不可或缺的一部分。然而,面对杂乱无章的文件名和扩展名,我们时常感到无从下手。如何轻松掌握文件管理,让您的文件井然有序呢?今天,就让我们一起探索自定义命…

Innodb底层原理与Mysql日志机制到底怎么个事???

在学完Innodb底层原理与Mysql日志机制,自己进行总结,画了一张脑图,思路清晰许多 希望对大家也能有点帮助

大模型微调:技术迭代与实践指南

在人工智能领域,大模型(LLM)的微调是一个关键过程,它使模型能够适应特定的任务和数据集。微调是深度学习中用于改进预训练模型性能的重要技术。通过在特定任务的数据集上继续训练,模型的权重被更新以更好地适应该任务。…

MySQL-查询数据-练习

练习 1.创建一个查询,显示收入超过 12,000 的雇员的名字和薪水。 select LAST_NAME,SALARY from employees where SALARY > 12000;2.创建一个查询,显示雇员号为 176 的雇员的名字和部门号。 select LAST_NAME,DEPARTMENT_ID from employees where …

【win10相关】更新后出现未连接到互联网的问题及解决

问题背景 在win10更新完系统之后,第二天电脑开机后,发现无法上网,尝试打开百度,但是出现以下图片: 经过检查,发现手机是可以上网的,说明网络本身并没有问题,对防火墙进行了一些设置…

MySQL 之 主从复制

1. 主配置文件(win下是my.ini,linux下是my.cnf) #mysql 服务ID,保证整个集群环境中唯一 server-id1 #mysql binlog 日志的存储路径和文件名 log-bin/var/lib/mysql/mysqlbin #错误日志,默认已经开启 #log-err #mysql的安装目录 #basedir #mys…

基于Springboot的甘肃旅游服务平台(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的甘肃旅游服务平台(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构…

连接oracle时出现ORA-12541:TNS:无监听程序的错误

遇到个问题,有一台windows serve 的服务器,这台服务器(只部署了oracle)忽然监听出问题了,提示 一、问题检查步骤: 1.winR--->cmd--->输入 lsnrctl status 查看监听的状态 如果监听器未运行&#…

实用指南:如何在CMD中运行Java程序并快速修复错误

引言 Java,在企业级开发到教育学习的不同场合,这门历史悠久的编程语言一直占据着举足轻重的地位。编程过程中的报错和异常处理是每个开发者必须面对的挑战。不管是经验丰富的开发人员还是编码新手,理解和解决这些错误总是能带来提高。 本文旨…

开发总结-Controller层

Controller层一定要try catch一下,不然里面报的错可能导致程序报错。 catch中就表示有错误就 Return ResultUtils.err(e.getMessage()) 必填项校验 在实体属性中添加注解 NotNull : 用在基本类 型上 不能为null 但可以为空字符串 NotEmpty : 用在集合类上 不能为…

MySQL数据库基础(数据库的基本操作、常用的数据类型、表的相关操作)

前言 今天我们将介绍数据库的基本操作、常用的数据类型、表的相关操作 一、数据库的基本操作 1.1 显示当前的数据库 操作代码 show databases;1.2 创建数据库 基本语法: 1. //创建数据库 create database examble;2. create database if not exists exist exa…

PostgreSQL大版本如何升级?

📢📢📢📣📣📣 哈喽!大家好,我是【IT邦德】,江湖人称jeames007,10余年DBA及大数据工作经验 一位上进心十足的【大数据领域博主】!😜&am…