美文网首页IT修真院_JAVA
什么是敏捷开发流程?

什么是敏捷开发流程?

作者: Pwr | 来源:发表于2018-01-29 19:25 被阅读32次

大家好,我是IT修真院成都分院第8期的JAVA学员,一枚正直纯洁善良的java程序员。 今天给大家分享一下,修真院官网Java任务10,深度思考中的知识点————什么是敏捷开发流程?

1.背景介绍

为什么需要敏捷开发?

在很久以前,软件项目的开发都是以年来计算的,这代表什么意思呢 ?需求设计了半年多,方案设计做了半年多,开发了三年多,

测试了半年多,修改Bug用了半年多。总计花了很长很长的时间,然后上线后发现有很多需求已经不存在了,同时又出现了很多新的需求。

这是困扰软件开发项目的最大的问题,越大的项目,参与的人越多,风险越大。文档越规范,维护起来的难度就越高,导致项目中遇到的问题越来越多。

2.知识剖析

什么是敏捷开发?

敏捷开发(AgileDevelopment)是一种以人为核心、迭代、循序渐进的开发方法。

怎么理解呢?首先,我们要理解它不是一门技术,它是一种开发方法,也就是一种软件开发的流程,它会指导我们用规定的环节去

  一步一步完成项目的开发;而这种开发方式的主要驱动核心是人;它采用的是迭代式开发;

什么是迭代?

迭代是指把一个复杂且开发周期很长的开发任务,分解为很多小周期可完成的任务,这样的一个周期就是一次迭代的过程;

  同时每一次迭代都可以生产或开发出一个可以交付的软件产品。

为什么说是以人为核心?

以前大多是瀑布开发模型,它是以文档为驱动的,为什么呢?因为在瀑布的整个开发过程中,要写大量的文档,把需求文档写出来后,开发人员都是根据文档进行开发的,

  一切以文档为依据;而敏捷开发它只写有必要的文档,或尽量少写文档,敏捷开发注重的是人与人之间,面对面的交流,所以它强调以人为核心。

老大强调的理念就是:产品和开发必须是一个Team,大家只是分工不同,角色不同,并不是两个对立的团队,出了问题,不要说这

  是产品设计出来,这是开发团队实现不了的。这是一个开发小组所有人的责任,这个后果是所有的人都需要承担的。

  如果我们认真的区分这是什么问题,那么也只是为了避免下次出现同样的情况,而用户只会知道是一个公司出了一款垃圾产品,没有

  人关心到底是产品还是开发的锅。

这是做敏捷开发的大前提。或者不仅仅是产品和开发,责任共担,One Team这个理念是贯穿始终的。

  产品和开发必须是一个Team还体现在需求分期上,实际上,需求分期如果没做好,敏捷开发只能流于形式。

在敏捷开发中职责明确,每个人要负责的事情必须清晰无误,谁该做哪些事情,必须要提前讲清楚。

最为后端,项目进入真正的开发阶段后,开发组的成员就应该是主动去控制项目的进度,和风险,以及主动去测试项目中存在的问题,

在这个阶段,除了一些需求不明,或者是发生变动的情况出现,不应该去打扰产品经理。不要让产品经理做开发团队的保姆。

开发组的成员的目标就是做好项目的进度控制,

有风险就及时反馈给Leader,确保自己理解的需求是明确无误的,确保自己的

测试是完整和严谨的,确认自己写出来的代码是可以维护的。一定要理解清楚,一旦PM通过Story讲解,将需求交付给开发组成

员,那么开发组成员就应该主动而独立的为这件事情负责。当项目完工以后,开发组成员应该交叉去做CodeReview,

并且给出性能测试报告,以及组织Demo。

敏捷开发包括了哪些内容?

1.需求规划和分期

2. 需求评审

3. 需求讲解

4. 方案评审

5. 每日晨会

6. 性能测试

7. CodeReview

8. Demo

9. 测试阶段

10.线上Bug修改流程

3.常见问题

4.解决方案

5.编码实战

6.扩展思考

敏捷开发与传统开发方法的比较:

1、优势:

敏捷开发的高适应性,以人为本的特性,和轻量型的开发方法即以测试为驱动取代了以文档为驱动,这三个主要的特点,

也就是敏捷开发相对与传统开发方式的主要有点。因为他更加的灵活并且更加充分的利用了每个开发者的优势,调动了每个人的工作热情。

2、劣势:

与传统开发方式相比,敏捷开发的最主要的劣势在于敏捷开发欢迎新的需求,而在每次新的需求产生时都可能引起整个系统的大幅度的修改。

因为开发者在开发上一个版本的时候,完全没有考虑以后的优化将要如何进行。这样的开发方式实际的软件开发过程中,并不一定总是有效的。

而另一个方面,敏捷开发因为缺乏很多在敏捷开发中被认为“不重要”的文档,这样在一个大型项目比如一个操作系统开发的时候,

由于其项目周期很长,所以很难保证开发的人员不更换,而没有文档就会造成在交接的过程中出现很大的困难。

7.参考文献

https://www.zhihu.com/question/39757751/answer/82927612?group_id=685376196313116672

https://www.cnblogs.com/yt96/p/5983265.html

PPT:PPT

视频:


undefined_腾讯视频

感谢大家观看!

今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

技能树.IT修真院

“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧~

我的邀请码:17701057,或者你可以直接点击此链接:http://www.jnshu.com/login/1/17701057

相关文章

  • 什么是敏捷开发流程

    这个词猛一听起来感觉很高大上,其实现在已经是主流的团队开发流程 了。一. 先说一下官方的定义: 敏捷不是指某一种具...

  • 什么是敏捷开发流程?

    大家好,我是IT修真院成都分院第8期的JAVA学员,一枚正直纯洁善良的java程序员。 今天给大家分享一下,修真院...

  • 五分钟理解瀑布开发、敏捷开发和Devops

    瀑布开发、敏捷开发、Devops概述 无论是瀑布式开发、敏捷开发还是DevOps,整个流程都分为设计、开发、测试和...

  • 浅谈敏捷开发

    章节 什么是敏捷开发(What) 为什么使用敏捷开发 (Why) 如何使用敏捷开发 (How) 采用敏捷开发的产品...

  • 敏捷开发简介

    敏捷开发十二原则 敏捷是一种指导思想或开发方式,但是它没有明确告诉我们到底采用什么样的流程进行开发,而具体的开发方...

  • 关于SAFe流程中PI Planning的认知迭代

    目前,在软件开发工程领域,敏捷开发流程已经逐步取代瀑布开发流程成为主流。敏捷开发流程的最大特点是以两个星期为一个开...

  • 初学者的软件测试入门基础知识之软件测试流程

    软件测试流程 敏捷测试流程 我所待的都是互联网公司,每个月都会迭代所以就先介绍一个敏捷开发。敏捷开发的最大特点是高...

  • learun信息化系统快速开发框架━工作流程组件Web业务平台

    learun工作流程组件介绍 learun敏捷开发框架工作流程组件是以learun敏捷开发框架为支撑,根据我们多年...

  • 敏捷开发流程

    敏捷宣言 敏捷宣言十二原则 我们最重要的目标,是通过持续不断地及早交付有价值的软件使客户满意。欣然面对需求变化,即...

  • 敏捷开发流程

    什么是敏捷开发? 以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发! 核心:用户的需求进化 方法:迭代...

网友评论

    本文标题:什么是敏捷开发流程?

    本文链接:https://www.haomeiwen.com/subject/apdfzxtx.html