0°

漫画:三分钟了解敏捷开发

内容预览:
  • 始发于微信公众号: 程序员小乐 分享编程技能、互联网技术、生活感悟、...~
  • 一般需要2-6周时间~
  • 每一天,团队成员都会进行Daily meeting,根据情况更新自己的Task状态,...~

始发于微信公众号: 程序员小乐

分享编程技能、互联网技术、生活感悟、打造干货分享平台,将总结的技术、心得、经验分享给大家,这里不只限于技术!还有职场心得、生活感悟、以及面经点击上方 “杨守乐” ,选择“置顶公众号”,第一时间送达!



小灰经过千辛万苦,终于拿到了心仪的offer,

今天小灰上班的第一天……



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



下班后,小灰找到同学大黄来请教……



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发


场景一:小灰在餐厅



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发


漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发




漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



场景二:无奈的项目经理



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



什么是敏捷开发?


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

在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。


简单地来说,敏捷开发并不追求前期完美的设计、完美编码,而是力求在很短的周期内开发出产品的核心功能,尽早发布出可用的版本。然后在后续的生产周期内,按照新需求不断迭代升级,完善产品。


这一切正如某人的名言:



漫画:三分钟了解敏捷开发



是谁这么厉害,提出了敏捷开发思想?是一位名叫Martin Fowler的美国大叔。



漫画:三分钟了解敏捷开发



大叔不但是敏捷开发的创始人之一,还在面向对象开发、设计模式、UML建模领域做出了重要贡献。目前担任ThoughtWorks公司的首席科学家。



漫画:三分钟了解敏捷开发


漫画:三分钟了解敏捷开发



敏捷开发模式的分类


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


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


SCRUM则是一种开发流程框架,也可以说是一种套路。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:冲刺燃尽图,说白了就是记录当前周期的需求完成情况。

Rlease:开发周期完成,项目发布新的可用版本。


漫画:三分钟了解敏捷开发


如上图所示,在项目启动之前,会由团队的产品负责人(Product owner)按照需求优先级来明确出一份Product Backlog,为项目做出整体排期。


随后在每一个小的迭代周期里,团队会根据计划(Sprint Plan Meeting)确定本周期的Sprint Backlog,再细化成一个个Task,分配给团队成员,进行具体开发工作。每一天,团队成员都会进行Daily meeting,根据情况更新自己的Task状态,整个团队更新Sprint burn down chart。


当这一周期的Sprint backlog全部完成,团队会进行Spring review meeting,也就是评审会议。一切顺利的话,会发布出这一版本的Release,并且进行Sprint回顾会议(Sprint Retrospective Meeting)


那么,现实中的Scrum是什么样的情景呢?看看下面的照片就知道了:


漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



漫画:三分钟了解敏捷开发



敏捷开发与Devops


Devops是Development和Operations的合成词,其目标是要加强开发人员、测试人员、运维人员之间的沟通协调。如何实现这一目标呢?需要我们的项目做到持续集成持续交付、持续部署


时下流行的JenkinsBamboo,就是两款优秀的持续集成工具。而Docker容器则为Devops提供了强大而有效的统一环境。



漫画:三分钟了解敏捷开发

关于Devops以及Docker,在以后的文章中会做出更详细的介绍。



漫画:三分钟了解敏捷开发


如何您想进技术群和大牛们交流,关注公众号在后台回复 “加群”,或者 “学习” 即可

来自:程序员小灰

著作权归作者所有。本文已获得授权。

如果您觉得不错,请别忘了分享到您的朋友圈让更多的人看到!! 您的举手之劳,就是对我最好的支持,非常感谢!

每日英文


Concentrate on what you have, instead of wishing for what you don’t have.

珍惜你现在拥有的,而不是期待自己没有的。


乐乐有话说


有人说,如果你很想要一样东西,就放它走。如果它回来找你,那么它永远都是你的。要是它没有回来,那么不用再等了,因为它根本就不是你的。


漫画:三分钟了解敏捷开发


推荐阅读



一位10年Java工作经验的架构师聊Java和工作经验
老程序员总结的40条开发小技巧


看完本文有收获?请转发分享给更多人
关注「杨守乐」,提升编程技能

以上就是:漫画:三分钟了解敏捷开发 的全部内容。

本站部分内容来源于互联网和用户投稿,如有侵权请联系我们删除,谢谢。
Email:[email protected]


0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论