软件开发模型

   找工作做网上的在线笔试经常会遇到关于软件测试的问题,那么只好一点一点来学习总结了,毕竟软件开发和测试不分家,都是需要掌握的,么么哒~ ,那就先了解下关于软件生命周期的问题 …

软件生命周期
  通常分为3大阶段,每个阶段又分为若干子阶段,即:3个阶段、8个子阶段
 - [1]. 计划阶段:问题定义、可行性研究;
 - [2]. 开发阶段:
     初期:需求分析、总体设计、详细设计;
     后期:编码、测试;
 - [3]. 运行阶段:软件维护。


瀑布模型

Waterfall Model 是一个项目开发架构,提供了软件开发的基本框架。由温斯顿·罗伊斯(Winston Royce)于1970年提出,是最早出现的软件开发模型。该模型强调系统开发应有完整之周期,且必须完整的经历周期中的每一个开发阶段,又称之为”系统发展生命周期(System Development Life Cycle, SDLC)”。- 百度百科
核心思想:按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。
  各项活动严格按照线性方式进行,当前活动接受上一项活动的工作结果,实施完成所需的工作内容。当前活动的工作结果需要进行验证,如果验证通过,则该结果作为下一项活动的输入,继续进行下一项活动,否则,返回到前面,甚至更前面的活动修改。

              瀑布模型

   按照瀑布模型的阶段划分,软件测试可分为:[1] 单元测试、[2] 集成测试、[3] 系统测试 。

特点
 - [1] 项目从开始到结束按照一定的顺序执行。
 - [2] 文档驱动的,各个阶段不连续也不交叉。
 - [3] 将软件生命周期的各项活动规定为依据固定顺序连接的阶段性工作。是一种线性模型
优点
 - [1] 提供一个模板,为分析、设计、编码、测试和支持等提供一个共同的指导。
 - [2] 为项目提供了按阶段划分的检查点,当前一阶段完成后,只需关注后续阶段。
 - [3] 支持结构化软件开发,促进软件开发工程化,控制软件开发的复杂性。
 - [4] 可在迭代模型中应用瀑布模型。
缺点
  瀑布模型强调文档的作用,要求每个阶段都要仔细验证。但是,这种模型的线性过程太理想化,已不再适合现代的软件开发模式,几乎被业界抛弃,其主要问题在于:
 - [1] 各个阶段的划分完全固定,自由度低,缺乏灵活性,阶段之间产生大量的文档,工作量大。
 - [2] 模型线性,用户只有等到整个过程的末期才能见到开发结果,开发风险大。
 - [3] 早起的错误可能要到开发后期的测试阶段才会发现,进而导致严重后果。
 - [4] 突出缺点是不适应用户需求的变化,难以调整。

演化模型

螺旋模型

增量模型

变换模型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值