开发模式选择

开发模式选择

1.1 瀑布开发模式

常见的瀑布开发模式流程:需求->需求说明书->立项->团队组建->系统分析设计->系统架构->编码->测试->上线->迭代
瀑布开发模式的3个阶段
(1)优点

  • 阶段清晰。从计划到开发最后到上线运行,三个阶段非常清晰。
  • 时间顺序。每个阶段顺序必须是从上到下,严格按照时间先后进行。
  • 环环相扣。在每一个阶段都必须有产出物然后才能进入到下一个阶段进行。
  • 黑盒模式。每个阶段都有各自的角色和分工,各自只关心自己的任务。比如需求阶段开发人员无需关注。

(2)缺点

  • 需求隔离。由于各阶段的人员只能接触到自己工作范围内的东西,所以对客户需求的理解程度高低不等,开发人员更像是定义为流水线上的工人。
  • 变更代价大。既然叫做瀑布,就意味着不应该走回头路。否则如果出现返工,付出的代价会很大。需求变更,编码人员会很强的抵触情绪。
  • 束缚创造性。由于强调文档管理,所以管理人员会比较喜欢,但是他束缚了开发人员的创造性。
  • 周期漫长。整个开发持续的生命周期很长,需求和设计的时间会耗费特别多,有时候会占用三分之一甚至更多时间,这样整个周期就会变长,大都在半年到一年左右的时间,所以更适合需求相对稳定的大项目。

1.2 敏捷开发模式

互联网行业的软件开发特点:专注、口碑、极致、快(雷BOSS七字诀)。

敏捷开发模式的流程:最简产品需求->细粒度任务->最小产品开发->周迭代/月迭代->(持续)集成->(持续)发布->最终交付
敏捷开发模式流程

(1)优点

  • 风险低。开发的阶段性成果会在开发过程中尽早的进行审查,项目的风险会降低;
  • 适用于需求不明确情况。因为需求不明确,所以需要在不断迭代的过程中来逐步理清需求。
  • 灵活性较高。几乎可以在任何时间进行需求变更;
  • 频繁沟通。敏捷鼓励开发人员与业务用户之间进行多频次的沟通,业务用户的不合理需求以及开发人员的错误理解都会在这些频繁的沟通中进行不断审查和更新,敏捷的协作通常要高得多,通常能开发出更高质量的产品;
  • 适用于快速变化的项目。特别是面向前端业务人员的CRM项目更容易根据业务的变化而变化。

(2)缺点

  • 最终交付的内容无法预测。预期和实际完成的内容经常会有很大差异;
  • 敏捷需要高水平的协作以及开发人员和用户之间的定期沟通。业务和IT人员在沟通前需要做大量的准备工作,但很多情况下业务的沟通时间无法保证;
  • 当存在乙方供应商的情况,敏捷会面临更大的挑战性。客户通常希望尽早了解他们的项目投入,预估项目时间和成本难度较高;
  • 在敏捷项目中,最大的问题可能是业务部门永远不希望有最终的截止时间。

(3)特点

  • 多样化的辅助工具,如salefore、ci/cd、xmind等
  • 每日例/站会
  • 任务看板
  • 团队高度协作
  • 分工明细
    敏捷开发模式任务看板

1.3 对比

两种开发模式对比

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值