软件工程之美学习笔记四 03 | 瀑布模型:像工厂流水线一样把软件开发分层化

一 瀑布模式的六个阶段

软件工程之美学习笔记四 03 | 瀑布模型:像工厂流水线一样把软件开发分层化

二 瀑布模式的优缺点

软件工程之美学习笔记四 03 | 瀑布模型:像工厂流水线一样把软件开发分层化

三 为什么学瀑布模型

因为不管什么软件项目,不管采用什么开发模式,有四种活动是必不可少的…那就是需求、设计、编码和测试。而这四项活动,都是起源自瀑布模型,也是瀑布模型中核心的部分。

四 老板驱动的流程

笔者在和中国一些企业的软件开发者交流的时候,听闻不少人提到开发流程事实上是由行政领导主导,或者由公司的老板驱动,我们姑且把它命名为老板驱动的流程。” 领导“有极大权力, 极小责任”的驱动方式

五 感想

在我们企业,由于软件开发以外包为主,由于合同的原因,往往在项目外包前就已经基于需求做出了工作量的预算,以便有明确的合同价格,所以,难以推行敏捷或者迭代的工作方法,往往采用瀑布模式进行开发。但同时,又存在“老板驱动的流程” 也就是 领导“有极大权力, 极小责任”,需求变更随时随地,用户验收又不好好进行,导致项目质量和工期都难以把握。我觉得比较好的解决方法,有两个,1,是建立自开发团队,2是和外包团队签长期合作合同。这样就可以用敏捷迭代的方法来面对需求变更了。当然,这里也会带来工作量核算等等问题。

另外,老师提到瀑布里夹敏捷,我觉得这是大型项目常用的方法。比如对于大型系统的架构设计和落地,我觉得采用瀑布方法比较好,架构就如地基,如果需求不明,设计上经常要修改,自然会影响项目质量和进度。我觉得还是以造房子为例,越是地基和框架,越要少改,尽量一次成型。