打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
瀑布模型 RUP模型

RUP模型


理解

如果认为这个解释难以理解,可以这样想:
我们开发一个产品,如果不太复杂,会采用瀑布模型,简单的说就是先定义需求,然后构建框架,然后写代码,然后测试,最后发布一个产品。
这样,几个月过去了,直到最后一天发布时,大家才能见到一个产品。
这样的方式有明显的缺点,假如我们对用户的需求判断的不是很准确时——这是很常见的问题,一点也不少见——你工作了几个月甚至是几年,当你把产品拿给客户看时,客户往往会大吃一惊,这就是我要的东西吗?

方法

迭代的方式就有所不同,假如这个产品要求6个月交货,我在第一个月就会拿出一个产品来,当然,这个产品会很不完善,会有很多功能还没有添加进去,bug很多,还不稳定,但客户看了以后,会提出更详细的修改意见,这样,你就知道自己距离客户的需求有多远,我回家以后,再花一个月,在上个月所作的需求分析、框架设计、代码、测试等等的基础上,进一步改进,又拿出一个更完善的产品来,给客户看,让他们提意见。
就这样,我的产品在功能上、质量上都能够逐渐逼近客户的要求,不会出现我花了大量心血后,直到最后发布之时才发现根本不是客户要的东西的情况。

优势

这样的方法很不错,但他也有自己的缺陷,那就是周期长、成本很高。在应付大项目、高风险项目——就比如是航天飞机的控制系统时,迭代的成本比项目失败的风险成本低得多,用这种方式明显有优势。
如果你是给自己的单位开发一个小MIS,自己也比较清楚需求,工期上也不过花上个把月的时间,用迭代就有点杀鸡用了牛刀,那还是瀑布模型更管用,即使是做得不对,顶多再花一个月重来,没什么了不起。

基本算法



有些国外的教材,如《C++ Primer》第四版的中文版,会把iterative翻译成迭代。

在java中Iterative 仅用于遍历集合,本身并不提供盛装对象的能力。如果需要创建Iterative对象,则必须有一个被迭代的集合。没有集合的Iterative仿佛无本之木,没有存在的价值。
  
  iterative是反复的意思,所以,有时候,迭代也会指循环执行,反复执行的意思。
利用迭代算法解决问题,需要做好以下三个方面的工作:

确定变量

在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
几种常见的软件开发模型
螺旋模型、瀑布模型、迭代模型特点
谈软件生命周期模型及其选择
特征工程与数据预处理的四个高级技巧
软件生命周期[转载]
软件开发过程模型,软件过程模型,软件开发过程几种模型对比
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服