瀑布模型存在的问题是什么

存在的问题有:1、投入大于产出;2、无法根据市场的变化动态地调整产品;3、质量反馈严重滞后;4、价值交付周期长。投入大于产出,花了很长时间但是最终交付的产品与客户的期望偏差很大。需求不是一次性或者一段时间内就可以完全定义清楚的。

瀑布模型存在的问题是什么-Worktile社区

1、投入大于产出

花了很长时间但是最终交付的产品与客户的期望偏差很大。需求不是一次性或者一段时间内就可以完全定义清楚的。需求定义是个不断发现的过程。需求必须在整个研发过程中与客户不断沟通,反复澄清,甚至需要结合业务流程图、产品原型等工具,才能明确客户想要的需求是什么。需求的本质特性决定了即使瀑布模型存在一个专门的需求分析阶段,然而在设计、开发甚至测试阶段中仍旧会出现新的需求。

需求本身具备不确定性,客户也经常不完全清楚自己想要的是什么,只有看到了产品原型或者使用了产品之后,才有可能厘清自己的需求。因此需要持续获得客户对产品的反馈,才能明确产品下一步该做什么需求、不该做什么需求。

因此,瀑布模型试图在名列前茅步就定义好完整的产品需求,这其实是在试图实现一个无法实现的梦想。

2、无法根据市场的变化动态地调整产品

市场不是静态的。尤其是互联网产品,市场的变化非常迅速。而瀑布模型在需求分析阶段结束后冻结需求,之后任何需求的变化都需要走严格的变更流程。因为怕影响交付时间,一般都会抑制需求的变化。但是市场已经有了变化,抑制需求的变化反而不能交付真正适配市场的产品,即便最终按时交付,但是交付的是几个月甚至几年前冻结的需求文档里定义的那个产品,而不是现在市场上真正需要的那一个,反而贻误了新的商业机会。

3、质量反馈严重滞后

瀑布模型里严格区分了需求分析→设计→开发→测试等阶段,每个阶段通常都会耗时几周甚至几个月的时间,导致质量问题的反馈周期过长。例如:在开发阶段发现需求存在问题的时候,通常需求分析阶段结束已经过了好几个月了,对需求问题的修正除了需要走严格的变更评审流程之外,还需要对需求分析和设计阶段的产出物进行相应的调整,最终才能体现在开发阶段的产出物上。更为糟糕的是,测试阶段发现的Bug,有的是开发阶段引入的,有的是设计阶段引入的,有的甚至是需求分析阶段就出现了纰漏和错误。因此,从一个Bug引入的时候到发现它,已经过了至少几个月的时间。通常情况下,采用瀑布模型的项目,在交付前都会有长达几个月的集中修改Bug的阶段。

4、价值交付周期长

在瀑布模式里,一个产品从立项到发布给客户一般需要经过几个月、一年甚至几年的时间。在研发的中间过程中,没有任何可以给客户使用的产品。虽然在客户的要求下,也许有一些文件和报告会提供给客户,但产品的实际进展对客户还是一个黑盒。

于是在这样的背景下,软件工程迎来了第二次浪潮:敏捷软件开发。XP(极限编程)、Scrum等各种敏捷方法出现,在2001年的时候诞生了敏捷宣言。2003年,精益软件大师Mary Poppendieck将精益思想融入到软件工程中,诞生了精益软件开发原则。

随着近几年移动互联网的快速发展,为了抓住市场上稍瞬即逝的商机,满足不断增长的业务需求和用户体验,促使服务提供商对软件产品有了更高的期望和要求:不仅仅是能够短周期内迭代交付,而是持续不断地按需部署到生产环境。由此,DevOps概念和技术在这个背景下诞生。

延伸阅读:

什么是瀑布模型

瀑布模型(Waterfall Model) 是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么较好 “返回”上一个阶段并进行适当的修改,项目开发进程从一个阶段“流动”到下一个阶段,这也是瀑布模型名称的由来。包括软件工程开发、企业项目开发、产品生产以及市场销售等构造瀑布模型。

瀑布模型核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。

瀑布模型是较早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基本框架。其过程是从上一项活动接收该项活动的工作对象作为输入,利用这一输入实施该项活动应完成的内容给出该项活动的工作成果,并作为输出传给下一项活动。同时评审该项活动的实施,若确认,则继续下一项活动;否则返回前面,甚至更前面的活动。对于经常变化的项目而言,瀑布模型毫无价值。

文章标题:瀑布模型存在的问题是什么,发布者:小编,转载请注明出处:https://worktile.com/kb/p/33489

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小编小编认证作者
上一篇 2022年12月27日 下午9:51
下一篇 2022年12月27日 下午9:54

相关推荐

  • LPP编程什么意思

    LPP编程是指线性规划编程,一种用于求解资源最优分配问题的数学方法。它通过建立目标函数和约束条件来找出最佳解决方案。1、它主要用于解决资源分配的最优化问题,例如在生产计划、物流配送、财务管理等领域的应用。这种编程方法依赖于线性关系的建模,通过对这些线性方程的求解,可以发现成本最小化或利润最大化的策略…

    2024年4月26日
    3400
  • 网络的带宽和信道的带宽有什么区别与联系

    区别是:1、表示的对象不同2、计算的方法不同3、单位不同4、作用不同。信道带宽表示信道能够达到的最大数据速率;信道包括模拟信道和数字信道。信号带宽表示信号频谱图可以观察到一个信号所包含的频率成分。 1、表示的对象不同 信道带宽表示信道能够达到的最大数据速率;信道包括模拟信道和数字信道。在模拟信道,带…

    2023年2月15日
    1.6K00
  • 男孩学编程可以做什么兼职

    男孩学习编程后能够开展的兼职工作主要包括1、网页设计与开发、2、软件开发、3、移动应用开发、4、游戏开发、5、数据库管理等领域。特别是在软件开发方面,编程技能能够使他们不只是限于基本的代码实现,更能参与到软件项目的规划、设计以至于最终的部署与维护中去。具备编程技能的学生可以通过为小型企业或初创公司提…

    2024年4月27日
    3400
  • 编程语言2和3是什么

    编程语言2是C++,编程语言3是Python。重点在于,Python以其易学易用和广泛的应用场景成为了编程新手和许多领域专家的首选。 Python是一种高层次的、解释型的编程语言,其设计哲学强调代码可读性以及简洁和明了的语法,特别是使用空白字符来区分代码块。这使得Python成为初学者学习编程的理想…

    2024年4月27日
    2700
  • LAMP 堆栈的用途是什么

    LAMP 堆栈的主要用途是用于后端或服务器端开发。LAMP 堆栈是开发人员用来构建网站和 Web 应用程序的四种不同软件技术的捆绑包。LAMP 是操作系统 Linux、Web 服务器 Apache、数据库服务器 MySQL 和编程语言 PHP 的首字母缩写。 一、LAMP 堆栈的用途是什么 LAMP…

    2022年11月10日
    56500
  • 数控编程一般学什么内容

    数控编程一般涵盖的内容包括数控机床原理、编程基础、工艺过程设计、数控程序编写和校验、模拟仿真、工具和刀具的选择、加工参数的确定、数控系统操作和维护。 数控编程的教学通常以实践性强的操作演练为核心,重点在于培养学生处理实际加工问题的能力。例如,在学习工艺过程设计时,学生不仅要了解如何选择合适的加工路径…

    2024年4月28日
    3400
  • 什么编程思维

    编程思维通常包括1、逻辑思维、2、抽象思维、3、系统思维、4、算法思维。 这些思维方式帮助程序员高效地解决问题。以逻辑思维为例,它是编程中最基本的思维模式,要求程序员能够清晰、合理地进行推理、判断和分析。在编程实践中,无论是理解问题、设计算法还是编写代码,逻辑思维都扮演着至关重要的角色。例如,在调试…

    2024年5月1日
    700
  • ecu用什么编程

    ECU(Engine Control Unit)通常使用C或C++编程语言来开发。 其中C语言因其接近硬件的特性和高效率而被广泛应用于底层的硬件操作和实时系统开发中。在ECU开发中,C语言提供了直接、有效地控制硬件的能力,使得开发人员能够精确地管理内存使用和系统行为,这对于实时性和可靠性要求极高的汽…

    2024年5月1日
    1100
  • oa系统仓库管理

    标题:OA系统在仓库管理中的应用 核心观点:OA系统在仓库管理中的应用优化流程,提高效率1、通过整合信息资源,减少人为错误2、实现库存实时监控3、自动化办公流程,加强数据分析。特别对于库存实时监控,OA系统可以对在库物品进行精确跟踪,监控库存水平,自动更新库存状态,节省人工盘点时间并减少延误。 正文…

    2024年1月15日
    29900
  • p编程是学些什么东西

    对于想要了解P编程语言,主要学习的内容包括1、并发编程原理,2、异步通信模式,3、状态机设计,4、正确性验证。其中,并发编程原理是P语言中非常核心的一个部分。它涉及如何在程序中同时运行多个进程或线程,并且保证程序的稳定运行。P语言通过引入了一种名为”actors“的概念来管理并发。每个actor都是…

    2024年4月27日
    2700

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部