敏捷开发实践经验分享

前言:本文主要从笔者四年的敏捷开发实践经验出发,讲解“敏捷开发是什么?”“怎么做到敏捷开发”两个问题,同时分享一些个人觉得比较实用的IT项目开发的小方法。

敏捷开发是什么

以上是百度百科对敏捷开发给出的解释,而笔者在工作中回答“敏捷开发是什么”这个问题,首先都会回答——“是一套工程实践方法”。

像太极拳在历史演化的过程中衍生了许多门派一样,江湖上就敏捷开发也产生了许多的实践体系,包括Scrum、XP、Lean等等。不过这些流派所遵守的思想都基本一致。

敏捷开发是什么-核心思想

敏捷开发往往是与传统的软件开发过程做对比的,我们可以看看敏捷开发宣言:

一句总结笔者所认为的敏捷开发的核心思想——快速迭代,持续可视

敏捷开发怎么做

敏捷开发怎么做——Scrum

我们以敏捷开发中的一个经典流派Scrum为例,不同于传统的软件开发,Scrum是先初步定下迭代周期,根据需求优先级和工作量,决定一个迭代要完成的功能 。关于Scrum对于每个过程结点的具体要求 有机会再写篇文章,这里只讲解其中几个经典的方法。

敏捷开发怎么做——用户故事(需求表示方法)

  • 格式:作为一个<角色>,我想要<活动>,以便于<商业价值>

      eg: 作为一个“网站管理员” ,我想要“统计每天有多少人访问了我的网站” ,以便于“我的赞助商了解我的网站会给他们带来什么收益”

  • 好处:
  1. 支持机会主义设计
  2. 鼓励延迟细节
  3. 可以快速编写

敏捷开发怎么做——测试驱动开发

即先编写测试案例,再进行项目的代码开发。

  • 好处:
  1. 替代需求文档
  2. 尽早地发现错误
  3. 指导代码编写

敏捷开发怎么做——Backlog(任务板)

让团队里的所有人都能清楚地了解到项目具体进度。

  

敏捷开发怎么做——每日站立会

  • 让每个人都知道其他人正在做什么
  • 设定方向和焦点
  • 识别障碍
  • 不超过十五分钟

敏捷开发怎么做——DevOps

我们知道,敏捷开发体系中的一个核心要求就是软件的快速迭代,开发人员所完成的代码 会频繁的在开发环境、测试环境、生产环境上进行部署。应用的交付频率将大幅度的提高,传统手工部署已经不能满足这样快节奏的交付。

这时候,建立一套支撑持续集成、持续部署的DevOps流程,就显得尤为重要了。

未完待续……

猜你喜欢

转载自blog.csdn.net/chenxy02/article/details/113119600