zoukankan      html  css  js  c++  java
  • 软件开发模型

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

    软件生命周期
      通常分为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] 突出缺点是不适应用户需求的变化,难以调整。

    演化模型

    螺旋模型

    增量模型

    变换模型

  • 相关阅读:
    给你一个网站,你如何测试?
    主键、外键的作用,索引的优点与不足
    LoadRunner分为哪三个模块?请简述各模块的主要功能。
    坚持“5W”规则,明确内容与过程
    1、系统测试的目的是什么? 2、系统测试的类型有哪些?
    生命周期阶段
    软件测试的重要性
    软件测试的主要工作
    软件质量模型:
    语法分析简介
  • 原文地址:https://www.cnblogs.com/wjcx-sqh/p/5929913.html
Copyright © 2011-2022 走看看