2017-10-18 09:27:06 CHS007chs 阅读数 6393
  • SCRUM敏捷开发视频教程

    SCRUM敏捷开发视频教程,该课程为你分享SCRUM敏捷开发,理解敏捷的本质,认识中国IT行业对敏捷的挑战,学会让敏捷落地的实用招数。 嘉宾介绍:张传波 1. 创新工场创业课程(敏捷课程)讲师 2.软件研发管理佳实践顾问(曾任华为某团队研发顾问) 3. 中国敏捷联盟《ADBOK》(敏捷开发知识体系)项目组成员 二十年软件开发、软件设计、需求分析、项目管理、部门管理、公司管理及过程改进等经验,亲历“无数”项目,涉猎建筑、通讯、互联网、电力、金融、制造业、政府等领域,熟悉软件生命周期的全部过程

    10435 人正在学习 去看看 CSDN讲师

敏捷开发是一种过程控制论,通俗的说,就是一种做事情的方法。

(1)它适用于软件,因为软件可以改,要是硬件,改起来就没那么方便了。

(2)它适用于客户不知道自己要啥的情况,需要和客户沟通、合作、倾听反馈,持续改进。

(3)它适用于竞争激烈的市场。

(4)它适用于一个地方办公的小团队,这样能使敏捷中主要沟通方式“Face to Face”是可行的。

敏捷开发是一套工具集

比如:

(1)站会:三个问题,简洁有效的小团队沟通方式

(2)看板:直观反映工作进度,反映流程遵守情况,反映流程缺陷。

(3)演示、计划、反思会:适合于小团队的协作和优化反馈方式。

(4)用户故事:站在用户的角度讲需求。

(5)持续集成:随时高质量交付的基础,有利于应对变化剧烈的市场。

 

敏捷开发是一种企业管理方式

比如:

(1)一线员工可以同时是架构师、Scrum Master、开发工程师、测试工程师,发挥了他的主观能动性,有利于创新和效率。

(2)敏捷不专注于敏捷团队中个人的绩效考核,而更多的侧重于整个团队的绩效,更好的避免KPI驱动模式。

(3)把大项目拆分成小项目去做(每个Sprint都是一个迭代,需要输出一个高质量的版本,相当于完成一个小项目),把bug的生存期控制在一个迭代以内,降低了风险,以减少了后期改bug的工作量。

(4)把数十人的大team分成几个敏捷团队,这几个敏捷团队的Scrum Master/PO再组成一个更高一级的敏捷团队,利用站会、反思、看板等等敏捷元素,可以避免数十邮件也不能解决一个小问题,大家互相踢皮球,沟通不畅的大企业病。

(5)老板可以是最大的PO,他给下面的高管讲idea(User Story),定期检查Demo,把控产品用户体验,负责和外界沟通合作。

 

最后欢迎大家访问我的个人网站:1024s

​​​​​​​

2019-04-12 22:52:55 y_279611480 阅读数 561
  • SCRUM敏捷开发视频教程

    SCRUM敏捷开发视频教程,该课程为你分享SCRUM敏捷开发,理解敏捷的本质,认识中国IT行业对敏捷的挑战,学会让敏捷落地的实用招数。 嘉宾介绍:张传波 1. 创新工场创业课程(敏捷课程)讲师 2.软件研发管理佳实践顾问(曾任华为某团队研发顾问) 3. 中国敏捷联盟《ADBOK》(敏捷开发知识体系)项目组成员 二十年软件开发、软件设计、需求分析、项目管理、部门管理、公司管理及过程改进等经验,亲历“无数”项目,涉猎建筑、通讯、互联网、电力、金融、制造业、政府等领域,熟悉软件生命周期的全部过程

    10435 人正在学习 去看看 CSDN讲师

SCRUM 是什么?

Scrum是敏捷开发中的名词。

敏捷开发是什么?

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

简单的说的话:

  1. 它只是一种开发思想,而不是开发技术;
  2. 其次,需要明白,通过敏捷开发的项目,包含的诸多子项目,都会带有,已经测试结束,具备了集合和可运行的特征;
  3. 敏捷开发,初始,并不追求完美的设计以及编码,而是,尽可能快的先开发出产品的核心功能,以及发布可用版本。之后,才会在多余的生产周期内,根据需求,不断的完善升级与迭代产品。

eg:对于Java全栈式开发工程师来讲,拿到需求,了解之后,第一件事,并不是先去完善后台代码,而是迅速的先将需求页面(网站),先实现。而后,才开始根据需求一步步实现功能。

以人为核心是什么意思?

一句话概括来讲的话,便是:

不似瀑布开发的思想,往往开发完后,写了一堆的开发文档进行开发、
而是,尽量的少写开发文档,只写一些必要性的文档,因为敏捷开发注重的是人与人面对面之间的交流。所以说它是以人为核心。

迭代 是什么意思?

类似与 单体开发 与 微服务、分布式开发的区别。
一个是,将所有的功能实现后,方可测试与后续操作。
另一个是,将所有的功能分为一个个服务或小功能,完成一个便可开发,测试,上线一个小功能。慢慢的完成总体。

循序渐进自然,也可由上明白。

SCRUM 与 敏捷开发思想有什么关系?

Scrum是敏捷开发之后的方法的一种。

敏捷开发的模式分类(摘抄至互联网):

敏捷开发的实现主要包括 SCRUM、XP(极限编程)、Crystal Methods、FDD(特性驱动开发)等等。其中 SCRUM 与 XP 最为流行。

同样是敏捷开发,
XP 极限编程 更侧重于实践,并力求把实践做到极限。这一实践可以是测试先行,也可以是结对编程(eg:多人协调开发)等,关键要看具体的应用场景。

SCRUM 则是一种开发流程框架。
SCRUM 框架中包含三个角色,三个工件,四个会议,听起来很复杂,其目的是为了有效地完成每一次迭代周期的工作。

SCRUM 的工作流程(摘抄至互联网)

学习 Scrum 之前,我们先要了解几个基本术语:

Sprint:冲刺周期,通俗的讲就是实现一个“小目标”的周期。一般需要 2-6 周时间。
User Story:用户的外在业务需求。拿银行系统来举例的话,一个 Story 可以是用户的存款行为,或者是查询余额等等。也就是所谓的小目标本身。
Task:由 User Story 拆分成的具体开发任务。
Backlog:需求列表,可以看成是小目标的清单。分为 Sprint Backlog 和 Product Backlog。
Daily meeting:每天的站会,用于监控项目进度。有些公司直接称其为 Scrum。
Sprint Review meeting: 冲刺评审会议,让团队成员们演示成果。
Sprint burn down:冲刺燃尽图,说白了就是记录当前周期的需求完成情况。
Release:开发周期完成,项目发布新的可用版本。

开发模型:
流程图

流程:

  1. 由产品的负责人,按照需求的优先级,优先取出一部分Backlog(需求清单)。
  2. 在每个Sprint(冲刺周期),开发团队根据计划,确定好每个周期的需求清单(Backlog)。既,在每段时间内需要完成的工作任务是什么。
  3. 对团队成员进行任务的分配开发。每天,团队都会开启Daily meeting(每天的站会)【既,明白自己之前完成了什么】。
    而后团队成员调整自己的Task状态【既,每个小任务的完成时间又该控制在什么时间内】,整个团队便更新自己的Sprint burn down(冲刺燃尽图)。
  4. 当这份Backlog(需求清单)完成之后,便会开启团队的Sprint Review meeting:(冲刺评审会议)。没问题的话,便会发布出发此阶段产品的发型版本(Release),且进行Sprint review meeting(回顾会议)

写在最后,PS:此文内容,部分摘抄至互联网,如若,原文博主介意,可私聊。谢谢。
自然,此文并不完善,欢迎各位点评。

2019-05-21 18:56:52 StringBuff 阅读数 234
  • SCRUM敏捷开发视频教程

    SCRUM敏捷开发视频教程,该课程为你分享SCRUM敏捷开发,理解敏捷的本质,认识中国IT行业对敏捷的挑战,学会让敏捷落地的实用招数。 嘉宾介绍:张传波 1. 创新工场创业课程(敏捷课程)讲师 2.软件研发管理佳实践顾问(曾任华为某团队研发顾问) 3. 中国敏捷联盟《ADBOK》(敏捷开发知识体系)项目组成员 二十年软件开发、软件设计、需求分析、项目管理、部门管理、公司管理及过程改进等经验,亲历“无数”项目,涉猎建筑、通讯、互联网、电力、金融、制造业、政府等领域,熟悉软件生命周期的全部过程

    10435 人正在学习 去看看 CSDN讲师

一、敏捷开发

“敏捷”是一种思想,与”瀑布“式(即传统开发模式)相比,敏捷开发有如下宣言

  • 个体和互动高于流程和工具:意思是敏捷开发中每个人都可以提出自己的见解,而不必按照”流程“逐个向上级反应。目的是为了降低”沟通的成本
  • 工作的软件高于详尽的文档:指你正在开发的软件,即使没有文档,你也可以开发(传统式开发中文档是高于开发的,没有”需求文档”,是不可以随便进行开发的)。不能停滞不前。
  • 客户合作高于合同谈判:指和客户之间的即使沟通,对于客户临时提出的要求来说,即使和合同文件上描述的不一致,我们也是要按照客户的要求做下去的

  • 响应变化高于遵循计划:在”敏捷“中,变化是无处不在的。所以我们不能按部就班,要积极的响应变化,最终实现“可交付的增量”这一目标。

敏捷十二原则

  1. 工作的软件是首要进度度量标准

  2. 敏捷过程提倡持续的开发速度。责任人、开发者和用户应该能够保持一个长期的、恒定的开发速度

  3. 不断地关注优秀的技能和好的设计会增强敏捷能力

  4. 简单----尽最大可能减少不必要的工作----是根本的

  5. 最好的构架、需求和设计出自与自组织的团队

  6. 每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后相应地对自己的行为进行调整

二、Scrum

定义:Scrum 是一个用于开发和维持复杂产品的框架 ,是一个增量的、迭代的开发过程 Scrum起源于软件开发项目,但它适用于任何复杂的或是创新性的项目。

Scrum三个角色

  • 产品负责人(Product Owner

  • Scrum Master

  • 开发团队

Scrum三个工件

  • 产品BacklogProduct Backlog):迭代计划

  • SprintBacklog

  • 产品增量(Increment

Scrum的5个活动

  • 产品Backlog梳理会议( Product Backlog Refinement
  • Sprint计划会议(Sprint Planning Meeting
  • 每日站会(Daily Scrum Meeting
  • Sprint评审会议(Sprint Review Meeting
  • Sprint回顾会议(Sprint Retrospective Meeting

Scrum5个价值

  • 承诺 愿意对目标做出承诺
  • 专注把你的心思和能力都用到你承诺的工作上去
  • 开放– Scrum 把项目中的一切开放给每个人看
  • 尊重每个人都有他独特的背景和经验
  • 勇气有勇气做出承诺,履行承诺,接受别人的尊重

 

2014-06-28 09:20:27 zhangman117 阅读数 352
  • SCRUM敏捷开发视频教程

    SCRUM敏捷开发视频教程,该课程为你分享SCRUM敏捷开发,理解敏捷的本质,认识中国IT行业对敏捷的挑战,学会让敏捷落地的实用招数。 嘉宾介绍:张传波 1. 创新工场创业课程(敏捷课程)讲师 2.软件研发管理佳实践顾问(曾任华为某团队研发顾问) 3. 中国敏捷联盟《ADBOK》(敏捷开发知识体系)项目组成员 二十年软件开发、软件设计、需求分析、项目管理、部门管理、公司管理及过程改进等经验,亲历“无数”项目,涉猎建筑、通讯、互联网、电力、金融、制造业、政府等领域,熟悉软件生命周期的全部过程

    10435 人正在学习 去看看 CSDN讲师
Agile敏捷开发
       Scrum是一种迭代式增量软件开发过程,通常用于敏捷软件开发。Scrum在英语的意思是橄榄球里的争球。虽然Scrum是为管理软件开发项目而开发的,它同样可以用于运行软件维护团队,或者作为计划管理方法:Scrum of Scrums
       TDD是测试驱动开发(Test-driven development)方法主要是先写测试程序,然后再编码使其通过测试。测试驱动开发的目的是取得快速反馈并使用“illustrate the main line”方法来构建程序。

今天听了敏捷的培训,总结如下:
一:TDD,1:测试先行。2:测试叠加Red-Green-Red-Green。
二:CI,1:用Maven可以做到集成测试,每提交一行代码,集成测试会自动触发,编译有问题会直接通过jira报出来。2:Mercurial先更新所有代码然后才能提交。
三:结对编程。一起搞效率高?
四:Member主导,让Member告诉你什么时间,做什么事情,一周之内的计划是什么。敏捷强调一团和气,自我管理,自我计划,自我总结,自我。。。。。
五:PO Product Owner,是开发团队的需求方,最后由PO来确认是否完成工作了。

 

****************************************

郑州就维  www.zzjiuwei.com


2018-08-22 08:15:51 X1021333506 阅读数 3255
  • SCRUM敏捷开发视频教程

    SCRUM敏捷开发视频教程,该课程为你分享SCRUM敏捷开发,理解敏捷的本质,认识中国IT行业对敏捷的挑战,学会让敏捷落地的实用招数。 嘉宾介绍:张传波 1. 创新工场创业课程(敏捷课程)讲师 2.软件研发管理佳实践顾问(曾任华为某团队研发顾问) 3. 中国敏捷联盟《ADBOK》(敏捷开发知识体系)项目组成员 二十年软件开发、软件设计、需求分析、项目管理、部门管理、公司管理及过程改进等经验,亲历“无数”项目,涉猎建筑、通讯、互联网、电力、金融、制造业、政府等领域,熟悉软件生命周期的全部过程

    10435 人正在学习 去看看 CSDN讲师

大家好,我是IT修真院武汉分院第15期学员,一枚正直善良的JAVA程序员。

今天给大家分享一下,java项目中需要使用的敏捷开发流程

 


1.背景介绍

 

在很久以前,软件项目的开发都是以年来计算的,这代表什么意思呢 ?需求设计了半年多,方案设计做了半年多,开发了三年多, 测试了半年多,修改Bug用了半年多。总计花了很长很长的时间,然后上线后发现有很多需求已经不存在了,同时又出现了很多新的需求。 这是困扰软件开发项目的最大的问题,越大的项目,参与的人越多,风险越大。文档越规范,维护起来的难度就越高,导致项目中遇到的问题越来越多。

 


2.知识剖析

 

敏捷开发(AgileDevelopment)是一种以人为核心、迭代、循序渐进的开发方法。怎么理解呢?首先,我们要理解它不是一门技术,它是一种开发方法,也就是一种软件开发的流程,它会指导我们用规定的环节去 一步一步完成项目的开发;而这种开发方式的主要驱动核心是人;它采用的是迭代式开发;

 


3.常见问题

提问一:什么是迭代?

提问二:为什么说是以人为核心?

提问三:敏捷开发包括了哪些内容?


4.解决方案

 

回答一

迭代是指把一个复杂且开发周期很长的开发任务,分解为很多小周期可完成的任务,这样的一个周期就是一次迭代的过程; 同时每一次迭代都可以生产或开发出一个可以交付的软件产品。


回答二


以前大多是瀑布开发模型,它是以文档为驱动的,为什么呢?因为在瀑布的整个开发过程中,要写大量的文档,把需求文档写出来后,开发人员都是根据文档进行开发的, 一切以文档为依据;而敏捷开发它只写有必要的文档,或尽量少写文档,敏捷开发注重的是人与人之间,面对面的交流,所以它强调以人为核心。

老大强调的理念就是:产品和开发必须是一个Team,大家只是分工不同,角色不同,并不是两个对立的团队,出了问题,不要说这 是产品设计出来,这是开发团队实现不了的。这是一个开发小组所有人的责任,这个后果是所有的人都需要承担的。 如果我们认真的区分这是什么问题,那么也只是为了避免下次出现同样的情况,而用户只会知道是一个公司出了一款垃圾产品,没有 人关心到底是产品还是开发的锅。

这是做敏捷开发的大前提。或者不仅仅是产品和开发,责任共担,One Team这个理念是贯穿始终的。 产品和开发必须是一个Team还体现在需求分期上,实际上,需求分期如果没做好,敏捷开发只能流于形式。

在敏捷开发中职责明确,每个人要负责的事情必须清晰无误,谁该做哪些事情,必须要提前讲清楚。做为后端,项目进入真正的开发阶段后,开发组的成员就应该是主动去控制项目的进度,和风险,以及主动去测试项目中存在的问题, 在这个阶段,除了一些需求不明,或者是发生变动的情况出现,不应该去打扰产品经理。不要让产品经理做开发团队的保姆。 开发组的成员的目标就是做好项目的进度控制。

有风险就及时反馈给Leader,确保自己理解的需求是明确无误的,确保自己的 测试是完整和严谨的,确认自己写出来的代码是可以维护的。一定要理解清楚,一旦PM通过Story讲解,将需求交付给开发组成 员,那么开发组成员就应该主动而独立的为这件事情负责。当项目完工以后,开发组成员应该交叉去做CodeReview, 并且给出性能测试报告,以及组织Demo。

 

回答三

1:需求讲解
2:定义接口文档
3:方案设计
4:禅道拆分
5:方案评审
6:开发阶段
7:阶段测试
8:性能测试和Coderevivew
9:压力测试
10:Demo
11:发布测试环境,集成测试
12:发布线上环境同时停止开发环境和测试环境
13:线上监控

 


5.编码实战

 


6.扩展思考

 

敏捷开发与传统开发方法的优劣?

优势:敏捷开发的高适应性,以人为本的特性,和轻量型的开发方法即以测试为驱动取代了以文档为驱动,这三个主要的特点, 也就是敏捷开发相对与传统开发方式的主要有点。因为他更加的灵活并且更加充分的利用了每个开发者的优势,调动了每个人的工作热情。

劣势:与传统开发方式相比,敏捷开发的最主要的劣势在于敏捷开发欢迎新的需求,而在每次新的需求产生时都可能引起整个系统的大幅度的修改。 因为开发者在开发上一个版本的时候,完全没有考虑以后的优化将要如何进行。这样的开发方式实际的软件开发过程中,并不一定总是有效的。 而另一个方面,敏捷开发因为缺乏很多在敏捷开发中被认为“不重要”的文档,这样在一个大型项目比如一个操作系统开发的时候, 由于其项目周期很长,所以很难保证开发的人员不更换,而没有文档就会造成在交接的过程中出现很大的困难。

 


7.参考文献

 

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


参考二:https://www.cnblogs.com/yt96/p/5983265.html

 


8.更多讨论

今天的分享就到这里啦,欢迎大家提问和探讨!

被误解的敏捷开发

阅读数 615

敏捷开发流程介绍

阅读数 177

没有更多推荐了,返回首页