精华内容
下载资源
问答
  • 你可能熟悉典型的“瀑布模式”的开发过程:从系统需求分析开始,然后着手设计,接着开始前后台开发,最后进行评估并且实施。线性性质是瀑布式开发的主要特点:当这一阶段完成,下一阶段紧接开始,两者配合的几乎...
  • 瀑布模式分析

    2020-04-18 17:18:23
    瀑布模式简介及分析 1.什么是瀑布模式? 瀑布模型将软件生命周期划分为问题定义、可行性分析、需求分析、软件设计、程序编写、软件测试和运行维护等基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布...

    瀑布模式简介及分析

    1.什么是瀑布模式?
    瀑布模型将软件生命周期划分为问题定义、可行性分析、需求分析、软件设计、程序编写、软件测试和运行维护等基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落,故而形象地称为“瀑布模型”。
    其核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。
    在这里插入图片描述
    2.为什么会产生瀑布模式,或者瀑布模式有什么必要性?

    任何行业都要经历一个从无到有的过程。对于软件开发这个行业,在一开始的一片混乱,工作人员工作的无序性,随意性和项目的返工率高等现象都表明这个行业缺少一个标准。而这个标准正是从规范工作,减少错误,加快效率这些方面制定,具体体现在以下几个方面:

    a.阶段间的顺序性和依赖性
    顺序性是指:在瀑布模型软件开发过程中必须等到前一阶段的工作完成以后,才能开始下一阶段的工作。
    依赖性是指:前一阶段的输出文档就是后一阶段的输入文档。因此前一阶段文档的正确性是保证后一阶段工作的前提条件。

    b.推迟实现的观点
    采用瀑布模型会强制研发人员按照阶段步骤进行软件设计,避免了一开始就直接进行详细编码的错误做法。编码处于软件开发的中后期,强调了需求分析和系统设计的重要性,体现了推迟实现的观点。如果坚持阶段性的评审,采用瀑布模型可以避免后期大量返工的现象,还可以减少后期维护工作的人力和费用。

    c.文档驱动推进研发进程
    瀑布模型在每阶段要完成规定的文档。软件开发是许多人共同参加、分工合作的工作,完整而合格的文档是开发人员间联系的媒介,同时是维护时期的重要依据。所以没有完成文档,就被认为没有完成该阶段的工作。

    3.就当时看,瀑布模式有什么优点?

    a.瀑布模型提供了一个标准或者说是框架,使得软件软件开发可以在这个框架下有条不紊的进行,克服了软件开发的随意性。

    b.推迟了编码测试等,强调了需求阶段和设计阶段的重要性,避免出现后期大量返工的现象,减少后期维护工作的人力和费用。

    c.当前一阶段完成后,才开始要去关注下一阶段,以规定的时间点和规定的文档进行评审,以便尽早发现错误和改正错误,可以实现阶段性质量保证。

    d.完整的软件配置文档,便于设计和后期维护。

    4.就现在看,瀑布模式有什么缺点?

    a.从客户角度考虑:只有在整个过程的后期才能见到产品,中间沟通较少,从而增加了客户对开发产品不满意的风险;对于软件需求不明确和变更追加需求的客户很不友好。

    b.从流程角度考虑:线性模式过于刻板,在上一阶段未完成就进入不了下一阶段会导致项目组工作效率的降低。

    c.从工作人员考虑:追求过多的文档导致工作人员很难集中在自己所工作的内容。

    题外:其实就瀑布模式的文档来说,该如何定义它是优点还是缺点呢?按现在的标准,极大增加了工作人员的工作内容,肯定是不好的,但按照当时,通讯工具不够强大时,一个项目组那么多工作人员,大家如何能有条不紊的衔接好工作呢,只能依照阶段性的文档,所以放在当时一定必不可少的一环!而现在,通讯工具强大,多注重工作团队之间还有与客户需求之间的沟通,过多文档反而是个累赘。所以剖析视角看没有绝对的优点也没有绝对的缺点,结合时代和项目组的条件因地制宜才是王道。

    展开全文
  • 项目开发的敏捷模式和瀑布模式

    千次阅读 2020-01-04 12:19:26
    现在很多项目开发都是采用敏捷模式了,相对于瀑布模式,看看下面两张图,敏捷和瀑布的区别一目了然: 瀑布流:带着明显的计划思维,以自我为中心,事先规划好一切,最后验证产品和市场。成功收获不一定更大,失败的...

    现在很多项目开发都是采用敏捷模式了,相对于瀑布模式,看看下面两张图,敏捷和瀑布的区别一目了然:

    • 瀑布流:带着明显的计划思维,以自我为中心,事先规划好一切,最后验证产品和市场。成功收获不一定更大,失败的代价更大。
    • 敏捷流:非常典型的市场思维,以客户为中心,快速迭代产品和市场。成功收获不打折扣甚至中间产品也可以面向市场销售,失败的代价要小得多。

     上面是从总体视角的对比,瀑布流并不是一无是处,其实敏捷流每个迭代的内部,大家看看是不是就是一个小瀑布,你要把需求、设计、开发、测试等等都得做一遍。

    哪个更好?这本是个伪命题,不同场景使用不同的模式。

    • 航天军工类计划性/复杂性很强的项目

    对于此类项目,项目管理总体是瀑布模式,比如001航母和002航母的建造,一定是前一阶段工作验收,后一阶段才好启动,不然人命关天,且返工成本巨大。这类项目价值的产生是在项目最终完成的时候

    但是,就中国航母的发张过程而言,确是典型的敏捷理念。先改造001积累经验,在完全自主设计003;先常规动力,后核动力;先滑跃起飞,后弹射起飞;先蒸汽弹射,后电磁弹射(这是技术发展顺序,实际电磁成熟可能一步到位直接电磁)。

    • 对于面向市场的高竞争和换代快的项目

    对于此类项目,不要以最快速度、最小代价验证产品的市场可行性,阶段性中间产品投入市场产生效益的意义重大,及时成熟产品也要不断升级更新。

    这类项目的中间成果亦有其独立的价值体现。因此,无论开发层面还是产品设计层面,都需要敏捷,快速响应市场变化。

    展开全文
  • 改进产品质量、生产率 提出了软件生命周期的模型 结合人工智能,推进程序自动化 瀑布模式 需求分析→设计→编码→测试→运维 瀑布式过程的优点: 支持结构化开发方法,控制软件开发复杂度 在当时,提供了有效的管理...

    软件是一系列按照特定顺序组织的计算机苏剧和指令,是计算机中的非有型的部分软件包括程序、数据、文档、软件分为系统软件、应用软件和介于这两种软件之间的中间件。

    软件测试

    通过一些手段和方法对设计完成的软件产品进行正确性、功能性、安全性、兼容性等验证的过程

    软件测试工程师

    软件测试工程师指理解产品的功能要求,并对其进行测试,检查软件有没有缺陷(Bug),测试软件是否具有稳定性、安全性、易操作性等并输出相关的总结报告的专业人员。
    软件测试工程师在一家企业中担当的是“质量管理”角色,及时发现软件问题并及时督促更正,确保产品的正常运作。按其级别和职位的不同,分为四类:初级、中级、高级、资深;

    软件测试工程师的必备要素:

    过硬的专业技术;
    五心要求(专心、细心、耐心、责任心、自信心);
    不断的学习总结;
    良好的职业道德;
    软件危机:

    定义:

    落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象

    软件危机表现:

    软件开发进度难以预测
    软件开发成本难以控制
    用户对产品功能难以满足
    软件产品质量无法保证
    软件产品难以维护
    软件缺少适当的文档资料

    软件工程:

    软件工程是研究软件开发、维护和管理的一门工程科学

    软件工程作用:

    建立与软件生产有关的概念、原则、方法、技术和工具
    指导和支持软件系统的生产活动,改进产品质量、生产率
    提出了软件生命周期的模型
    结合人工智能,推进程序自动化

    瀑布模式

    需求分析→设计→编码→测试→运维

    瀑布式过程的优点:

    1. 支持结构化开发方法,控制软件开发复杂度
    2. 在当时,提供了有效的管理模式

    瀑布式过程模型的缺陷:

    1. 不能适用于在开发过程中需求的不断变化
    2. 前期的错误不能及时发现,在开发过程中积累、扩大,造成较高的修复代价
    3. 对于大型系统一次占用大量资源

    V模型:

    需求分析,
    概要设计,
    详细设计,
    编码,
    单元测试,
    集成测试,
    系统测试:完整的测试,
    验收测试

    V模型的特点:

    1. V模型是软件开发瀑布模型的变种,它反映了测试活动与分析和设的关系
    2. 测试是开发之后的一个阶段
    3. 测试的对象就是程序本身
    4. 实际应用中容易导致需求阶段的错误一直到最后系统测试阶段才被发现整个软件产品的过程质量保证完全依赖于开发人员的能力和对工作的责任心,而且上一步的结果必须是充分和正确的,如果任何一个环节出了问题,则必将严重的影响整个工程的质量和预期进度

    白盒测试:可以看见代码的测试

    黑盒测试:看不见代码的测试

    展开全文
  • 从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈;...可在迭代模型中应用瀑布模型,并且它提供了一个模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。
  • 瀑布模型与敏捷开发;1什么是瀑布模型 从系统需求分析开始直到产品发布和维护每个阶段都会产生循环反馈 项目开发进程从一个阶段流动到下一个阶段 项目提供了按阶段划分的检查点 可在迭代模型中应用瀑布模型并且它提供...
  • 敏捷开发和瀑布模式

    2019-07-14 15:33:51
    什么是瀑布模式? 一种由需求文档驱动的开发模式,开发人员严格按照文档进行开发,瀑布开发模式分为几个阶段: 瀑布模式的缺点 需求隔离:每个开发人员只能接触到自己负责的阶段,对用户需求理解不高,...

    什么是敏捷开发?

    敏捷开发=迭代开发+增量开发
    迭代开发:将一个大项目分解成多个小项目,每个小项目都有类似的生命周期。开发者首先发布一个简单的版本,然后再不断的增加功能或者进行改进,这个过程就是不断迭代的过程,每次迭代都有完整的生命周期(包括需求分析、设计、编码、测试、部署评估)。
    增量开发:迭代开发只是将一个大项目分成多个小项目来完成,但是没有规定如何划分项目进行迭代。这时,就要按照增量开发的方式进行迭代,迭代的每个版本都会增加一个用户可以感知的完整功能,就是按照功能进行划分迭代。

    敏捷开发的优点

    1. 及时交付:敏捷开发完成第一个版本就可以先进行交付,而不需要等到完成所有功能再进行交付
    2. 反应迅速,拥抱变化:当前市场需求变化很快,当需求发生变化的时候,敏捷开发可以及时的做出相应,进行改变。
    3. 80/20原则:根据增量开发,可以先完成具有80%价值的20%的功能。

    什么是瀑布模式?

    一种由需求文档驱动的开发模式,开发人员严格按照文档进行开发,瀑布开发模式分为几个阶段:
    在这里插入图片描述

    瀑布模式的缺点

    1. 需求隔离:每个开发人员只能接触到自己负责的阶段,对用户需求理解不高,开发人员像流水线上的工人。
    2. 变更代价大:正如这个开发模式的名字:瀑布 一样,如果开发过程中需求变更,代价极大。
    3. 束缚创造力:由于强调文档驱动,限制了开发人员的创造力
    4. 周期漫长
    展开全文
  • 给大家介绍一种全新的设计方法,只需要五个步骤
  • 瀑布模式:着重文档,把软件开发分为6个阶段 ,一个阶段一个阶段反复确认 很久以后才会看到东西制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的...
  • 瀑布模式 瀑布模型是比较传统一种开发模式,特别是在2B的传统企业,包括ERP,MES,WMS,CRM,OA,IBMS等系统当中可以经常见到他们的影子。现在这种模式仍然流行在一些大的项目...
  • 瀑布开发模式瀑布开发模式有以下显著的特点: 1.严格把软件项目的开发分隔成各个开发阶段:需求分析,要件定义,基本设计,详细设计,编码,单体测试,结合测试,系统测试等。 使用里程碑的方式,严格定义了各...
  • 瀑布模式 瀑布模型是比较传统一种开发模式,特别是在2B的传统企业,包括ERP,MES,WMS,CRM,OA,IBMS等系统当中可以经常见到他们的影子。 瀑布和敏捷不是什么新概念,这里只是个人在团队合作中不得不去思考而做...
  • 在软件开发时,经常面对的第一个项目实现决策是“我们应该使用哪种开发方法?”这是一个引起很多讨论(和激烈辩论)的...最流行的两种基本方法是:瀑布开发和敏捷开发。这两种方法都是可用的、成熟的方法。 现在,说起...
  • 最近和朋友谈起敏捷开发(Agile Model)和瀑布开发(Waterfall Model)模式,很多人认为敏捷开发是未来的项目实施的趋势,瀑布实施太老土已经过时了。另外确实一些跨国企业如索尼,联想也在使用敏捷的方式实施一些...
  • 瀑布开发模式瀑布开发模式有以下显著的特点:1.严格把软件项目的开发分隔成各个开发阶段:需求分析,要件定义,基本设计,详细设计,编码,单体测试,结合测试,系统测试等。使用里程碑的方式,严格定义了各开发...
  • 吐槽-瀑布模式

    2020-07-07 11:19:07
    为什么瀑布模式使用的越来越少? 你去画一幅画,就能完全体会,就画个素描吧。 素描的过程是一个有粗略到清晰的过程。 一个软件的产生也是如此,无法像打印机一个的工作。 如果真的如打印机一样的去做一个项目,...
  • 一、瀑布模型 1.1什么是瀑布模型 1.2特点 1.3优缺点 1.4客户需求 二、快速原型模型 2.1什么是快速原型模型 2.2优缺点 2.3快速原型模型的思想产生、原理及运用方式 2.4类型 2.5开发步骤 三、增量模型 3.1...
  • 回顾软件行业的研发模式,可以发现大致有三个阶段:瀑布式开发、敏捷开发、DevOps。 瀑布式开发 传统的瀑布式开发,也就是从需求到设计,从设计到编码,从编码到测试,从测试到提交大概这样的流程,要求每一个开发...
  • 因为瀑布模式仍然被很大程度在使用着,作为技术开发出身我有较深的体会,相信有针对行的对比分析会有更好的理解。 关于瀑布模式和敏捷开发的基本特征可以参照:...
  • “V”模式开发模型是汽车电子行业在瀑布模型的基础上做了改进,以符合汽车ECU开发需要的模型。 今天来讲讲瀑布模型与“V”模式开发模型的异同。 瀑布模型 瀑布模型产生的历史背景是20世界70年代出现的软件危...
  • 你可能熟悉典型的“瀑布模式”的开发过程:从系统需求分析开始,然后着手设计,接着开始前后台开发,最后进行评估并且实施。线性性质是瀑布式开发的主要特点:当这一阶段完成,下一阶段紧接开始,两者配合的几乎...
  • 软件开发模式 瀑布模型 瀑布模型 是最典型的预见性的方法,严格遵循预先计划的需求分析、设计、编码、测试的步骤顺序进行。步骤成果 作为衡量进度的方法,例如需求规格,设计文档,测试计划和代码审阅等等。 瀑布...
  • 部门推广scrum敏捷开发已经小半年了、团队也从不适应、慢慢地开始变的习惯。之前领导安排我作为我们组的scrum...现在随着大家都开始慢慢习惯scrum的工作模式、我才开始慢慢地从每天1/3的时间、降到每天只要半个多小时花
  • 网址:https://www.tapd.cn/forum/view/36971
  • 瀑布式开发模型: 概念:严格按照计划进行,每一步的输入输出都必须是明确的,按照需求分析、设计、编码、继承、测试、维护的步骤进行。 适用场景:多用于ToB项目,项目初期有着完整可明确的需求,有着明确的要求...
  • 转:瀑布式开发和敏捷开发区别

    千次阅读 2019-02-28 14:03:19
    瀑布开发模式瀑布开发模式有以下显著的特点: 1.严格把软件项目的开发分隔成各个开发阶段:需求分析,要件定义,基本设计,详细设计,编码,单体测试,结合测试,系统测试等。 使用里程碑的方式,严格定义了各...
  • 瀑布模型是由W.W.Royce在1970年最初提出的软件开发模型,瀑布式开发是一种老旧的计算机软件开发方法。瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求分析、设计、编码、集成、测试、维护的步骤顺序进行...
  • cmmi瀑布模型.rar

    2011-04-06 16:13:36
    CMMI快乐之旅-鸟瞰CMMI.ppt CMMI三级、四级和五级对比.doc CMMI快乐之旅-基础知识扫盲.ppt CMMI vs 敏捷.pps

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 24,692
精华内容 9,876
关键字:

瀑布模式