【软件测试】软件生命周期及模型

软件生命周期



前言

本章节主要完成对软件生命周期的基本的描述。


一、基础知识和定义

软件生命周期(SDLC,Systems Development Life Cycle)是软件开始研制到最终废弃不用所经历的各个阶段。

二、相关的主要软件生命周期模型

1.瀑布型生命周期模型

瀑布型生命周期模型的阶段一般分为如下的阶段,规定了它们自上而下,相互衔接的固定次序、如同瀑布流水、主机逐级下落、具有顺序性和依赖性。每个阶段规定文档并需进行评审:
在这里插入图片描述
特点:自上而下、有顺序性
缺点:测试介入比较晚、回溯成本比较高、测试周期比较长

2.V模型

RAD(Rap Application Development)快速应用开发模型是软件开发过程中一个重要模型,由于其模型构图形似字母V,所以又称软件开发的V模型,它通过开发和测试同时进行的方式来缩短开发周期、提开发效率。
在这里插入图片描述

  • 单元测试用例:是和详细设计一起出现的,在研发人员做详细设计的时候,相应的测试人员,也就把测试用例写了出来。
  • 集成测试用例:根据概要设计中模块功能及接口等实现方法编写出来
  • 系统测试用例:根据需求说明书编写出来。
    特点:测试人员介入时间较早,一般适用到软件周期较长的工程和项目

3.敏捷开发模型

以人为核心、迭代、循序渐进的开发方式。强调以人为本、专注于交付对客户有价值的软件。是一个用于开发和维持复杂产品的框架。就是把一个大项目分为多个互相联系,但也可独立运行的小项目,并分别完成,在此过程中软件一致处于可使用状态。
在这里插入图片描述

通过人与人之间的沟通实现需求分析,特点就是快,口头沟通的方式进行。
缺点:后续人员更替的时候对无法通过文档对项目进行了解

三、软件生命周期的各个阶段

1.问题定义及规划

主要确定软件的开发目的及可行性,制定项目总体开发计划。

2.需求分析

在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析,明确客户需求,输出需求规格说明书最终版(原型图)SRS,提交评审。

3.设计

把需求分析得到的结果转换为软件结构和数据结构,形成系统架构。

  • 概要设计:主要是架构的实现,指搭建架构、表述各模块功能、模块接口连接和数据传递的实现等事务。
  • 详细设计:对概要设计中表述的各个模块进行深入分析等,其中需要包含数据库设计说明。

4.编码

按照详细设计好的模块功能表,编程人员编写出计算机可执行的程序代码

5.软件测试

在软件设计完成后,要进行严密的测试,从而发现在整个设计过程中存在问题并加以纠正。测试的方法包含白盒测试和黑盒测试两种。建立严格的测试计划并按照测试计划进行。

a.单元测试

一般由开发来完成。主要是测试程序代码,为的是确保各单元模块被正确编译。所指的单元根据系统的颗粒度的不同,所指的范围也有一定的差别。比如单元可以指系统的某个模块、类、函数或者方法进行测试。

b.集成测试

单元测试后将各个单元组成一个完整的体系、测试软件单元之间的接口是否正确,数据是否能正常传递。比如登录后的跳转是否能正常完成,就是测试的登录功能和主页面的显示功能是否能正常传递登录信号。

c.系统测试

把软件系统搭建起来,按照软件规格说明书中所要求,测试软件其性能功能是否和用户的需求相吻合,在系统运行中是否存在漏洞等。

d.验收测试

主要是在用户拿到软甲的时候,在使用现场,会根据之前的需求,以及规格说明书来做相应的测试,以确定软件达到符合的效果。

6.运行和维护

软件维护时软件生命周期中持续时间最长的阶段,在软件开发完成并投入使用后,由于多方面的原因,软件不能持续适应用户的需求,要延续软件的使用寿命,就需要对软件进行维护,软件的维护主要包括纠错性维护和改进型维护两个方面

  • 31
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值