敏捷开发学习笔记:总结

我好像还没有完全践行过敏捷开发。不过这段时间一通学习下来,结合以往的一些经历,认为敏捷的精髓在于多职能团队和迭代思想。


1、多职能团队

意味着团队成员参与了整个项目的绝大部分工作:任务领用、需求分析、设计及开发、测试、评审。

比如,需求分析,以往都是由一个所谓系统分析员来写;而在敏捷里,是由产品经理在计划会上讲故事,然后由各人报所需工时,任务领用,然后进行开发。这里看上去似乎没有所谓需求分析,有的话,也是由产品经理整理,但极有可能,产品经理也不写这个东西,他只是整理了“产品功能列表”,及相关的用户故事,并没有一份所谓的《需求分析》。如果我们需要有这份东西的话,那应该是由大家后来共同撰写,补上去的。

这样一来,传统项目中,系统分析师撰写需求分析的时候,大家闲着,写出来后塞给大家,大家也不怎么看,完全鸡肋;而敏捷中,大家都参与其中,一方面,加快了进度。另一方面,由于参与,所以对整个项目都很了解,工作态度也积极主动得多。如果要让一个人对一样东西感兴趣,最有效的手段莫过于让他参与。

全体团队成员参与计划会,是敏捷的基础。


2、迭代

scrum声称拥抱变化,但是有前提的,在一个迭代过程中,拒绝变化。

所谓的迭代,是可以工作的版本。所有模块,在迭代周期内,都必须完成。完成就是完成,不完成就是不完成,所谓完成了99.9%都不算,都不能进入该迭代。在下一轮迭代中重新排计划。


3、每日立会

似乎每日立会是敏捷开发的标杆性动作?只要我们每天站着开几分钟会,就立刻敏捷起来。

其实,据我观察,每日立会似乎就是一个汇报会,每个项目组成员都向项目经理(scrum master)进行汇报,主要是汇报昨天做了啥,今天准备做啥,然后项目经理会问一下,有啥困难没有。

其实,汇报的内容没有错,但汇报对象、以及汇报重点搞错了。立会并不是大家向项目经理汇报,而是向全体项目成员介绍自己的工作,重点在于今天要做什么,以及遇到了什么困难,目的是看能不能得到协助,以及避免做重复性的工作。比如自己想做个共用的功能,也许已经有人在做了。

而每日立会的基础,是全体成员都参加了开发任务的计划会,所有模块大家都很清楚,因此立会上才互相听得懂。


4、开发流程

1)产品经理整理需求,列出待开发的产品功能清单,并进行优先级排序。

优先级分为重要、紧急、普通等级别。紧急是客户马上要的,而重要的是基础,比如有些紧急的任务的前置条件是重要任务,所以优先级别上,重要》紧急》普通。


2)召开迭代计划会,产品经理讲解用户故事,项目成员估算,进入迭代任务


3)迭代期限到,完成的功能进入交付版本,未完成的重新进入待开发功能清单;召开评审会、反思会


我有个疑问,这里面由产品功能清单 -》 迭代任务,如果说需求分析部分是产品功能清单,那概要设计部分在哪里?整个系统的架构、技术选型这些要在哪个环节进行处理?


版权声明:本文为博主原屙文章,喜欢你就担走。

转载于:https://www.cnblogs.com/leftfist/p/4764264.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值