Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >什么是敏捷开发

什么是敏捷开发

作者头像
菲宇
发布于 2019-09-06 02:12:13
发布于 2019-09-06 02:12:13
3.1K0
举报
文章被收录于专栏:菲宇菲宇

0、先来一张导图

1、概念

简单的说,敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。

换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

敏捷最大的特色是迭代式开发。

2、优势

1、敏捷开发属于增量式开发,对于需求范围不明确,需求变更较多的项目而言,可以很大程度上响应及拥抱变化。

2、对于互联网产品而言,市场风向转变很快,需要一种及时快速的交付形式,而敏捷开发则能更好地适用于此。

3、敏捷开发可最大程度体现80/20法则的价值,通过增量迭代,每次都优先交付那能产生80%价值效益的20%功能。能最大化单位成本收益。

3、误区

4、特点

5、核心原则

6、捷开发与瀑布模型开发

瀑布模型开发

敏捷开发

6.1、敏捷开发

  • 客人到餐馆来点菜(新项目)
  • 不确定客户想吃什么的时候,通常选好餐厅后会先看看餐厅的菜单(客户往往提不出具体的需求)
  • 根据图文菜单,客人点了是个菜(根据原型和设计稿,基本确定了需求)
  • 后厨开始准备(项目启动)
  • 配菜、炒菜,先上了两盘,让客人尝了尝味道(先提供可用实例给客户用)
  • 客人说还不错,后厨继续准备后面的菜,陆续上菜(不断迭代,不断测试)
  • 上菜过程中,客人突然发现有个菜的味道太淡了,让后厨加了点盐又端上来了(敏捷的好处,可以不断测试和需求变更)
  • 又上了两盘,不够辣,又拿到后厨加了辣(敏捷的坏处,需求没有提前明确,反复迭代,增加了工作量)
  • 到最后两盘时,客人要求换两个菜,还好没炒(迭代的好处,随时接受需求变更)
  • 客人吃完,很满意(基本满足了全部的要求)

6.2、瀑布模型开发

  • 客人到餐馆来点菜(新项目)
  • 不确定客户想吃什么的时候,通常选好餐厅后会先看看餐厅的菜单(客户往往提不出具体的需求)
  • 根据图文菜单,客人点了十个菜(根据原型和设计稿,基本确定了需求)
  • 后厨开始准备(项目启动)
  • 根据客人的下单配菜,炒菜(基本上不会主动去了解完整需求)
  • 半个小时了,菜还没上桌,客人饿极了(项目启动后很长一段时间客户什么都看不到)
  • 再过了二十分钟,十个菜都一起上来了(项目最终一次交付)
  • 客人说,有几个菜挺好的,但是有个菜味道淡了,有两个不够辣,还有两盘重复了想换掉(我是买单的,我要变需求)
  • 这时候大堂经理来了,说,“味道淡了可以加盐,不辣可以加辣,但是换菜不行,已经炒好的那两盘菜也是要算成本的”(瀑布的坏处,需求变更比较麻烦)
  • 于是,后厨只给客户加了盐,加了辣
  • 客人吃完,不是很满意,下次不来了(没有满足需求)

7、总结

但总的来说,在现在管理项目过程中,并没有严格的按照完全的敏捷或者完全的瀑布模式,都是各自掺杂了其他的方式。在实际项目过程中,过于强调模式并没有意义,重要的是能不能预防问题的发生,在问题发生之后能不能用最小的成本解决,模式更多起一个参考作用

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019年09月02日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
没有人喜欢,但却不得不选择的敏捷开发
敏捷开发是一种从1990年开始逐渐引起人们广泛关注的新型软件开发方式,它是具有应对快速变化的需求的软件开发能力。相对于非敏捷开发,它是一种以用户需求为核心,持续迭代,循序渐进的开发方式。敏捷绝非某一种特定的开发方法,它只是一种应对快速变化的需求的一种软件开发能力。所以敏捷开发并不在意需求是否变更,即便是在项目开发的后期,敏捷开发依然乐于接受需求的变更。这一点对于取得客户的满意度来说,无疑是非常具有竞争力的。
三哥
2018/12/06
6350
没有人喜欢,但却不得不选择的敏捷开发
​CODING 敏捷实战系列课第一讲:正本清源——敏捷的为什么
我们可以思考一下,敏捷这一概念究竟存在了多久?如果追溯历史,我个人认为可能真的可以回归到远古的时代。进化论里的一个经典推断就是:物竞天择,适者生存。那么“唯一不变的是变化”就是指怎样去更好的响应各种无法预测的变化。
腾讯云 CODING
2020/05/07
4670
​CODING 敏捷实战系列课第一讲:正本清源——敏捷的为什么
(二十一)敏捷项目管理和传统项目管理有何区别?
敏捷项目管理VS传统项目管理
砖家认证
2020/01/15
5.2K0
(二十一)敏捷项目管理和传统项目管理有何区别?
敏捷开发团队不可或缺的项目管理工具
很多软件企业随着业务发展,出现了诸多研发问题,如产品交付延期,研发加班,产品故障率高,测试压力大,客户满意度低。这些问题更多是提升研发效能不得当所致。软件研发是一个复杂的系统工程,效能提高也就需要系统化端到端地思考,需要从多方面入手。研发流程优化,做好每个环节,做好环节与环节的衔接,助力提效。在敏捷和精益的推动下,很多软件研发项目只是望文生义,只学到了“速度”,提出了快速迭代,快速交付,忽略了做好每个环节才是提效的根本。
初级项目管理学习者
2022/07/28
4710
瀑布式开发、迭代开发、敏捷开发、XP与SCRUM的区别
传统的瀑布式开发,也就是从需求到设计,从设计到编码,从编码到测试,从测试到上线大概这样的流程,希望每一个开发阶段都要做全做好。特别是前期阶段,设计的越完美,上线后的成本损失就越少。
jack.yang
2025/04/05
1560
四个 AI 工程师,实现了童年的中二梦想
大家小的时候一定玩过家家游戏,类似于我们现在熟悉的角色扮演(误),大家都很喜欢扮演售货员、厨师,因为这些工作有鲜明的角色特征和明确的流程。
HyperAI超神经
2019/11/30
5130
单独谈一谈敏捷开发
传统软件开发模式开发流程冗长、适应性差的特点使得它根本无法在现代软件开发上被广泛使用,于是,人们又提出了一种强调快速、灵活的敏捷软件开发方法。
PM吃瓜
2020/07/23
5060
单独谈一谈敏捷开发
敏捷开发和瀑布式开发模式有何区别(瀑布,敏捷 devops)
1、瀑布模型是由W.W.Royce在1970年最初提出的软件开发模型, 瀑布式开发是一种老旧的计算机软件开发方法。 瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求分析、设计、编码、集成、测试、维护的步骤顺序进行。 步骤成果作为衡量进度的方法,例如需求规格,设计文档,测试计划和代码审阅等等。
全栈程序员站长
2022/07/29
1.3K0
瀑布开发与敏捷开发的区别
敏捷开发,首先把客户最关注的软件原型先做出来,交付或者上线,在实际场景中去修改弥补需求中的不足,快速修改,再次发布版本。再次上线或者交付。通过一些敏捷实践方式,细化story,可以提供更小的迭代。如此循环,直到用户(客户)满意。适用于需求不明确的项目、创新性的项目或者需要抢占市场的项目。
风君子
2020/05/20
4K0
瀑布开发与敏捷开发的区别
软件工程模型
你在工作中, 软件的开发流程是怎样的? 你是否想过, 除了你当前使用的流程, 还存在其他怎样的流程? 现在的流程有哪些问题, 又能够如何解决? 别说, 前辈们已经给出了一些项目流程的模型, 既软件工程
烟草的香味
2021/05/17
4340
软件工程模型
正本清源——敏捷的为什么
我们可以思考一下,敏捷这一概念究竟存在了多久?如果追溯历史,我个人认为可能真的可以回归到远古的时代。进化论里的一个经典推断就是:物竞天择,适者生存。那么“唯一不变的是变化”就是指怎样去更好的响应各种无法预测的变化。
腾讯云 CODING
2020/04/27
3540
正本清源——敏捷的为什么
海底捞、京东的无人餐厅来了,AI替代人类的时代开始了?
导读:《就业大崩溃》一书中提到,在未来,厨师和服务人员是最有可能消失的职业,他们的工作将很快被AI替代。现在来看,距离这个预言的实现已经不远了。
IT阅读排行榜
2018/12/17
8910
海底捞、京东的无人餐厅来了,AI替代人类的时代开始了?
软件工程中的开发模型
今天分享的是我在学习《软件工程之美》时候记录的最新的笔记,关于软件项目开发中的开发模型。
阿杜
2019/03/15
6930
DevOps、瀑布模型与敏捷开发:关系解析与对软件交付工程师的影响
在软件开发的世界中,DevOps、瀑布模型和敏捷开发是常用的三种方法论,它们各自有着独特的优点和适用场景。这篇文章将探讨这三种方法论之间的关系,以及它们对软件交付工程师的影响。我们将通过具体的技术和案例来进行分析。
GeekLiHua
2025/01/21
1010
敏捷软件开发简述
前言:由于我读了邹欣老师的《构建之法:现代软件工程(第二版)》,因此对敏捷软件开发有了比较大的兴趣。于是我在网上找了一些论文,比如Requirements Engineering and Agile Software Development、A decade of agile methodologies: Towards explaining agile software development。在读了这些论文之后,对敏捷软件开发有了大致的了解。这篇博文主要是简单介绍敏捷软件开发,重点集中在主要的敏捷开发方法和它的优势,同时也作为一个备忘录,来记录我在这个过程中收获到的重要的知识。
庞小明
2018/09/19
1.5K0
敏捷软件开发简述
软件开发流变史:从瀑布开发到敏捷开发再到DevOps
作为在20世纪70年代、80年代盛极一时的软件开发模型,瀑布模型通过制定计划、需求分析、软件设计、程序编写、软件测试、运行维护等6个流程将整个软件生命周期衔接起来。这6个流程有着严格的先后次序之分,只有当前面的流程结束之后,下一个流程才能开始运转。这种自上而下的流程像极了瀑布的下落,因此得名瀑布模型。
敏捷开发
2020/09/07
1.5K0
软件开发流变史:从瀑布开发到敏捷开发再到DevOps
敏捷开发那些事
这篇学习笔记来自《软件工程之美》的第05、06(上)、06(下)三篇文章,主要内容总结如下。
阿杜
2019/03/15
1.1K0
敏捷开发那些事
敏捷开发流程之Scrum:3个角色、5个会议、12原则
本文主要从Scrum的定义和目的、敏捷宣言、Scrum中的人员角色、Scrum开发流程、敏捷的12原则等几方面帮助大家理解Scrum敏捷开发的全过程。
宜信技术学院
2020/01/07
12.9K0
敏捷开发流程之Scrum:3个角色、5个会议、12原则
瀑布vs敏捷
一般来说,敏捷开发强调快速迭代,灵活开发,而传统软件工程强调严格周密,步步为营,那两者的具体区别究竟在哪?下面具体分析一下两种软件开发方法的区别。
PM吃瓜
2020/07/23
5680
敏捷开发实践(一)--谈谈我对敏捷开发的理解
随着敏捷开发越来越流行,人人都在谈敏捷,人人也都在学习scrum等敏捷开发方法。。。当然,自己也是敏捷开发的实施者和受益者。
程序猿小亮
2021/01/29
1.4K0
推荐阅读
相关推荐
没有人喜欢,但却不得不选择的敏捷开发
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档