由于最近公司需要从0到1的制定研发流程规范,于是对五种常见的研发流程做了对比,并编写了研发全流程规范文档,欢迎盆友们沟通交流~
以下是五种常见模型对比表格:
研发模型名称 | 模型特点 | 适用场景 |
瀑布模型 | 文档驱动,开发过程为一系列有序的活动 | 1.项目需求稳定 2.可按项目计划,分阶段开展研发活动 |
敏捷开发 | 需求进化为核心,采用迭代、循序渐进的方法进行软件开发 | 1.需求变化频繁,使用用户故事作为需求驱动 2.项目要求时间紧急 3.小步快跑的交付产品,需要短周期内(如每天)汇报进度 |
增量模型 | 将待开发的软件系统模块化和组件化,有计划的进行产品改进 | 1.软件产品可以分批次地进行交付 2.待开发的软件系统能够被模块化 3.软件开发人员对应用领域不熟悉,难以一次性地进行系统开发 4.项目管理人员把握全局的水平较高 |
快速原型模型 | 开发真实系统之前,构造一个原型,在该原型图基础上逐渐增量开发或直接舍弃原型图重新开发 | 1.需求可变,如生命期较短的系统 2.需求模糊 3.用户和开发者沟通困难 |
螺旋模型 | “螺旋模型”刚开始规模很小,当项目被定义得更好、更稳定时,逐渐展开 | 强调了其他模型所忽视的风险分析,特别适用于大型复杂系统 |
以下为每种开发模型图形 :
瀑布模型:
敏捷模型:
快速原型图模型:
增量模型:
螺旋模型:
瀑布模型 与 敏捷模型 对比:
我们的项目都是通过前期调研,需求基本确定的项目,有一定的项目计划和工期安排,开发根据客户要求,研发过程中需要一定的文档记录,最终项目验收时需要提交一定的过程文档和测试报告等,根据项目特性,比较适合选用瀑布模型。
根据瀑布模型管理规范我们的研发过程,能较好的把握研发过程中的各里程碑节点,有效控制各阶段的进度和产出成果物。