003-软件生存周期及其模型是什么?

软件生存周期及其模型是什么span>

软件生存周期(software life cycle)又称为软件生命期,生存期。是指从形成开发软件概念起,所开发的软件使用以后,直到失去使用价值消亡为止的整个过程。 一般来说,整个生存周期包括计划(定义)、开发、运行(维护)三个时期,每一个时期又划分为若干阶段。每个阶段有明确的任务,这样使规模大、结构复杂和管理复杂的软件开发变得容易控制和管理。

一、开发模型

1.1瀑布模型

 

优点:克服瀑布模型的缺点,更好地满足用户的需求并减少由于软件需求不明确带来的项目开发风险。适合预先不能确切定义需求的软件系统的开发。

缺点:不适合大型系统的开发(适合开发小型的、灵活性高的系统)。前提要有一个展示性的产品原型,因此在一定程度上可能会限制开发人员的创新。

实现一个基本原型,让用户对原型进行评价,逐步调整,使其满足用户最终需求;

优点:适合不能确定需求的软件;

缺点:不适合开发大型系统。

1.3螺旋模型

螺旋模型将开发过程分为几个螺旋周期,每个螺旋周期大致和瀑布模型相符合,螺旋模型沿着螺旋线旋转,即在坐标的4个象限上分别表示了4个方面的活动,

制定计划——风险分析——实施开发——客户评估

 

2.1.2测试v模型优缺点

优点:①包含了底层测试(单元测试)和高层测试(系统测试)(底层测试:检验源代码质量的测试,如:单元测试;高层测试:检验整个系统的需要,如:系统测试)

      ②清楚的标识了开发和测试的各个阶段;

      ③自上而下逐步求精,每个阶段分工明确,便于整体项目的把控。

缺点:①自上而下的顺序导致了,测试工作在编码之后,就导致错误不能及时的进行修改;

      ②实际工作中,需求经常变化,导致v模型步骤,反复执行,返工量很大,灵活度较低。

改良:每个步骤都可以进行小的迭代(更新)工作。

2.2 W模型

优点:①开发和测试伴随着整个开发周期,需求和设计同样要测试;

      ②更早的介入测试,可以发现初期的缺陷,修复成本低;

      ③分阶段工作,方便项目整体管理。

缺点:①开发和测试依然是线性的关系,需求的变更和调整,依然不方便;

      ②如果没有文档,根本无法执行w模型;

      ③对于项目组成员的技术要求更高!

定义:开发一个v、测试一个v组合起来的模型(w模型也叫双v模型)

总结:v模型适用于中小企业,w模型适用于中大型企业(因为人员要求高),h模型人员要求非常高,很少有公司使用。

2.3 H模型

测试流程

测试准备:所有测试执行活动的准备;判断是否到测试就绪点;

测试就绪点:测试准入准则,即是否可以开始执行测试的条件;

测试执行:具体的执行测试的程序。

其他流程

  具体开发中的流程,如:设计流程

003-软件生存周期及其模型是什么?

优点:

开发的H模型揭示了软件测试除测试执行外,还有很多工作;

软件测试完全独立,贯穿整个生命周期,且与其他流程并发进行;

测试活动可以尽早准备、尽早执行,具有很强的灵活性;测试可以根据被测物的不同而分层次、分阶段、分次序的执行,同时也是可以被迭代的。

缺点:

管理型要求高:由于模型很灵活,必须要定义清晰的规则和管理制度,否则测试过程将非常难以管理和控制;

技能要求高H模型要求能够很好的定义每个迭代的规模,不能太大也不能太小;

测试就绪点分析困难:测试很多时候,你并不知道测试准备到什么时候是合适的,就绪点在哪里,就绪点的标准是什么,这就对后续的测试执行的启动带来很大困难;

对于整个项目组的人员要求非常高:在很好的规范制度下,大家都能高效的工作,否则容易混乱。例如:你分了一个小的迭代,但是因为人员技能不足,使得无法有效完成,那么整个项目就会受到很大的干扰。

相关资源:安全卫士杀毒软件纯净版系统安全工具类资源CSDN文库

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年4月15日
下一篇 2019年4月15日

相关推荐