传统瀑布模型
问题1
Analysis -- design – code –test – deploy
无法应对需求的变化 做出来的不是客户想要的
问题2
项目只有准时交付(代价是加班)和延期 不会有提前交付
因为项目估算是一个概率的正态分布 总是有80%的在预期内20%在预期外
由于前期定计划的时候(design) 是分模块的或是需要depending在其他功能或是项目组上
即使你早做好了也没有用 --- 浪费了提前完成的时间
20%在预期外 说明总有人会落后于计划 这是一个概率现象 无法避免 除非你加班
这就导致了项目会被整体拖慢,这就导致了为什么传统的软件开发只有60分和不及格
优点
方便规划成本
迭代开发
优点1
快速应对需求变化,提供客户最想要的功能
优点2
合理安排人员分配
不因为做的快慢有所奖惩 能有效的利用提前完成的时间,对会出现的delay加大投入
对于个人而言需要更多的互助, 不像在瀑布中每个人完成自己的模块就ok
优点3
用户能及早的参与体验 而不是在最后UAT阶段 降低风险
问题1
不方便在前期估算成本/合同等
--- 解决方式 合同中不写具体的如何实现,只写最后达到的目的
问题2 【关键】
跨部门 跨team之间的交流
由于迭代需要多批次的发布,将本来在SIT阶段任务拆分成很多个,急剧地增加了沟通的成本。
--- 解决方式 将不同team的人放在一起组成一个团队(closure function team) 消除跨team之间的沟通成本 但这也是最难实现的 而且我们不只是跨team 还跨国家 跨时区
如果解决不了这个问题 迭代开发可能会弄巧成拙
管理者
工作能力不需要很强(如果一个人能力太强 会轻视周围的人 最后弄的自己很累)
需要有包容心,让别人发挥出最好的水平,更加主动的和别人沟通
分享到:
相关推荐
从瀑布型开发到迭代型开发的转变,是一个在软件工程领域内备受关注的议题,它标志着软件开发模式从线性到循环、从静态到动态、从封闭到开放的重要变革。瀑布型开发,作为传统软件开发的经典模式,其核心特征是以阶段...
其中,从传统的瀑布型开发到迭代型开发的转变,不仅提升了项目的适应性和灵活性,还显著提高了开发效率和质量。 瀑布型开发模型曾是软件开发领域的主流模型。它的特点是在项目开始阶段就严格定义所有的需求和设计,...
为了克服传统瀑布模型的不足,迭代化开发方法被提出并广泛应用于现代软件工程实践中。迭代化开发的基本思想是将整个项目的开发目标划分为多个更小、更易于管理和完成的阶段性目标。每个阶段性目标(即一次迭代)都...
迭代化开发方法与传统的瀑布模型不同,后者通常遵循一个线性的、顺序的流程。迭代模型允许团队在项目的早期快速获得可见成果,并在每次迭代中根据反馈进行调整。这种迭代的过程有助于降低风险,提高软件质量和满足...
CMMI模式通常采用线性、顺序的“瀑布”模型,每个阶段(需求分析、设计、实现、测试和维护)完成后才进入下一个阶段,而迭代开发则主张通过多次迭代,每次构建一个可运行的软件版本,逐步完善和增加功能。...
敏捷开发和瀑布模型是两种截然不同的软件开发方法论,它们反映了不同的开发理念和实践策略。 瀑布模型是一种传统的线性开发方法,其特点体现在以下几个方面: 1. 阶段性依赖:瀑布模型强调从需求分析、设计、编码...
螺旋模型结合了瀑布模型的线性顺序和原型模型的迭代特性,并加入了风险分析;统一过程模型(RUP)包含了软件需求分析阶段。软件项目计划中通常需要制定项目成本、组织结构、风险控制等方面的方案,但并不包括数据库...
在开发过程中,使用版本控制工具(如Git)管理代码,配合持续集成/持续部署(CI/CD)流程,确保代码质量和版本迭代的顺利进行。同时,进行跨平台和跨浏览器的测试,确保在实际环境中能够正常运行。 最后,文件"手机...
瀑布流布局,也被称为Masonry布局,是一种网页布局方式,常用于图片展示,使得页面在有限的空间内可以呈现更多的内容,同时保持良好的...通过不断迭代和优化,我们可以为用户提供更流畅、更具吸引力的瀑布流浏览体验。
迭代软件开发作业流程是软件开发领域中的一种重要方法论,它们可以解决传统瀑布型开发步骤中的问题,如需求或设计中错误、项目风险控制能力较弱、软件项目常常延期完成或开发费用超出预算等问题。迭代化开发的核心...
迭代软件开发流程是一种应对传统瀑布模型中问题的现代软件开发策略。传统的瀑布模型强调文档驱动,按照需求分析、设计、编码、测试和维护等顺序进行,这种线性方式容易导致需求变化带来的返工,项目延期和成本超支,...
2. 没有迭代与反馈,瀑布模型对反馈没有涉及,所以对变化的客户需求非常不容易适应。 3. 管理人员喜欢瀑布模型的原因是把文档理解为开发的速度,可以方便地界定不同阶段的里程碑。 瀑布模型的问题是: 1. 不适合...
与传统的瀑布式开发模型相比较,迭代化开发具有以下特点: 1. 允许变更需求:迭代化开发可以及时地回应需求的变化,保证开发出来的系统真正地解决客户的问题。 2. 逐步集成元素:迭代式方法中,集成可以说是连续...
在IT领域,尤其是在图形用户界面(GUI)的开发中,数据可视化是一项至关重要的任务。...通过不断迭代和优化,可以创造出更加高效、用户友好的数据展示工具,这对于科研、工程和商业分析等领域都有着广泛的应用价值。
迭代软件开发流程是一种新的软件开发方法,它不同于传统的瀑布式开发流程。在传统的瀑布式开发流程中,整个软件开发过程被划分为顺序相接的几个阶段,每个阶段都需要完成全部规定的任务(文档)后才能够进入下一个...
此外,瀑布模型可以通过与迭代模型、敏捷模型等其他模型的结合,形成混合模型。混合模型既保持了瀑布模型阶段清晰、文档化的特点,同时又吸收了其他模型的灵活性和迭代优势,从而更好地适应不断变化的项目需求。 ...
本文来自RationalEdge:一个理想的迭代开发方法模型在很多方面与理想的瀑布开发模型有着根本上的不同。但是,从实际来说,没有一个团队严格的应用了每一种开发方法模型。本文解 简介:本文来自RationalEdge:一个...
瀑布流布局,也被称为Pinterest布局,是Android应用中一种常见的图片展示方式,尤其在社交网络、电商应用等场景中广泛使用。...在实现过程中,不断迭代和优化,才能构建出高效、流畅且用户体验良好的瀑布流应用。