瀑布模型详解
详解 模型 瀑布
2023-06-13 09:15:27 时间
waterfall开发模式大家都耳熟能详,而我要是问,你能解释一下么,有哪些具体内容呢?
你是不是就愣了一下, 对!就因为太熟悉了,反而灯下黑。
而且,对瀑布的深刻理解有助于对敏捷的理解。
瀑布模型(Waterfall Model)是Royce在1970年提出的,他把大型软件开发分为:分析与编程,象工厂流水线一样把软件开发过程分成各种工序,并且每个工序可以根据软件产品的规模、参与人员的多少进一步细分成更细的工序。该模型非常符合软件工程学的分层设计思路,所以成为软件开发企业使用最多的开发模型。
在Royce的原始设计中,瀑布模型包含一下6个阶段:
- System and software requirements: captured in a product requirements document
- Analysis: resulting in models, schema, and business rules
- Design: resulting in the software architecture
- Coding: the development, proving, and integration of software
- Testing: the systematic discovery and debugging of defects
- Operations: the installation, migration, support, and maintenance of complete systems
Thus the waterfall model maintains that one should move to a phase only when its preceding phase is reviewed and verified.
瀑布模型的创意来自于制造业和建筑业, 在开发阶段任何的改变都会带来高昂的成本。
瀑布模型的特点:
1、强调文档,前一个阶段的输出就是下一个阶段的输入,文档是个阶段衔接的唯一信息。所以很多开发人员好象是在开发文档,而不是开发软件,因为要到开发的后期,才可以看到软件的“模样”。
2、 没有迭代与反馈。瀑布模型对反馈没有涉及,所以对变化的客户需求非常不容易适应,瀑布就意味着没有回头路。一方面市场带动需求变化,另一方面初期客户对需求描述不清楚。
而后期的需求更改成本是开始的10倍基数。
所以瀑布模型的管理框架:
- 线性工序,上一阶段的输出是下一阶段输入
- 文档驱动
- 下一阶段有缺陷,必须回到上一阶段
相关文章
- 基于Amos路径分析的模型拟合参数详解[通俗易懂]
- densenet网络结构详解_网络dea模型
- 最短路径问题—Floyd算法详解[通俗易懂]
- 详解Kubernetes网络模型
- 达观王文广:一文详解BERT模型实现NER命名实体抽取
- 干货教程 | MongoDB 熟练到精通(一):模型设计基础知识详解
- 【Linux修炼】5.vim详解【工具篇】
- 详解:7大经典回归模型
- Python len()函数详解:获取字符串长度或字节数
- 图解UNIX的I/O模型详解程序员
- shell脚本监控网站状态详解程序员
- Linux查看系统当前字符集详解程序员
- 微信公众号token验证失败解决方法之php详解手机开发
- 逻辑思维训练500题(带答案)详解程序员
- Java 内存模型 JMM 浅析详解编程语言
- 将Python源代码导出成HTML文件并带语法高亮详解编程语言
- Spark入门实战系列–3.Spark编程模型(下)–IDEA搭建及实战详解大数据
- Spark入门实战系列–6.SparkSQL(上)–SparkSQL简介详解大数据
- LDA主题模型介绍详解大数据
- MongoDB优越性详解大数据
- Kafka 生产者消费者java示例代码详解编程语言
- Java内存模型和JVM内存管理详解编程语言
- 深入理解Java内存模型详解编程语言
- XLSTransformer生成excel文件详解编程语言
- CSS基础 – 弹性盒子模型 – flex布局详解编程语言
- 理解ThreadPoolExecutor线程池的corePoolSize、maximumPoolSize和poolSize详解编程语言
- Java多线程14:生产者/消费者模型详解编程语言
- Dubbo线程模型详解编程语言
- Linux软件的安装位置详解(linux软件位置)
- 千亿级模型在离线一致性保障方案详解
- Linux线程管理必备:解析互斥量与条件变量的详解