BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

百度技术沙龙第7期回顾:敏捷开发实战分享(含资料下载)

| 作者 葛明见 关注 0 他的粉丝 发布于 2010年11月2日. 估计阅读时间: 7 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

InfoQ和百度共同举办的第七期百度技术沙龙中,特邀嘉宾百度项目管理部高级工程师宋金永和淘宝搜索广告引擎团队的Scrun Master邹磊与参会者分享了各自的敏捷开发实践经验。本文将简要总结了他们的演讲内容,并提供相关音视频、演讲资料下载。

首先是百度项目管理部高级工程师宋金永给我们分享他们引进敏捷后,结合自身实际做出一系列准备和推进过程中的体验(音视频、演讲资料下载见百度敏捷之旅)。

百度技术团队在开始引进敏捷的时候,大家也在疑惑敏捷会水土不服吗?但其实敏捷是一种思想,主要包括沟通、简单、反馈、勇气等四个要素。敏捷思想的核心精髓是小胜+反思,这和百度的价值观有些类似,即简单,可依赖。另外百度技术开发还有另外一个原则:迅速迭代,越变越美,允许试错等也与之相吻合。所以,整体上来说,百度一贯坚持的文化核心和技术开发原则与敏捷思想的精髓是一致的,水土不服的问题是不存在。

那么在开始正式实施之前,百度技术团队做了哪些准备呢?

简单来说,先是对照敏捷的思想,找出自己的优势,比如项目基本都是迭代开发,也执行了分级;测试实现部分自动化;具备项目管理和开发平台;拥有简单可依赖的文化等。然后再找出自己的不足,比如迭代规划方法不太合理;项目沟通与协作机制有待加强;存在一些低效的流程环节;单元和自动化测试在工具方法上欠缺;强化的组织结构影响团队目标的一致性等。最后,在发现自己的优势和不足后,确定目标,找到最佳突破点。通过以上分析,他们最终找准了自己引进敏捷的目标——提升效率。同时也找到了两个关键切入点,一是充分发挥人的主动性和能动性;第二就是建立自适应方法集和项目管理体系。就这样,最终的结果就是,通过一系列的调研他们把握住了真正需要提升的核心,取得了上级领导的支持,开始了试点并逐步扩大。

那他们又是如何推进敏捷实施的呢?

他们针对业务需求型和技术型项目分别采取了不同的措施:针对业务需求型项目统一团队目标,优化需求管理,提高流程效率的方式;而对技术型的项目则在单元测试、自动化回归等方面做功夫。

当然在执行的时候也碰到了不少问题,但因为事先准备的充分,也都一一被有效的解决掉。最后他对百度引进敏捷后带来的变化进行了总结,第一,引进敏捷之后,原有的SQA团队转型成项目管理结构,形成一个坚强的组织来实现敏捷开发;第二,在产品的研发效率和改进思想上找到一些具体的点,让他们变得更有体系。

在演讲报告的问答环节上,听众对如何建立目标团队一致上和项目部如何才能落实提出了疑问。宋金永做了这样的回答:

百度在建立目标团队一致上有很多做法,其中把相关强职能部门结合成一个事业部的做法最有效果,当然不是所有强职能部门都适合这样,对仍然需要强职能部门分布式团队的产品线,没有具体的一个人负责的时候,就引入一个有效的活动或者方法来完成。另外就是项目部的必须有一个相当的地位,不然太末端的话,项目管理部不可能充分的发挥其职能。

之后是在淘宝广告搜索引擎团队的邹磊和我们分享了Scrum在他们团队中的实施情况,以及作为一名Scrum Master在整个Scrum实施过程中的困惑和思考。(音视频、演讲资料下载见SCRUM在淘宝搜索广告引擎团队的实施

淘宝广告搜索引擎团队的业务特点非常适合Scrum的开发模式,在演讲的一开始邹磊就向我们介绍了他们团队业务的特点:

支持的业务多;需求变化频繁;产品发布频繁;对产品的稳定性和性能要求高等。

针对他们业务的特点结合Scrum模式,他们团队分成四个部分:产品经理、开发团队、测试团队和PE团队。开发流程分为四个阶段:需求、设计、开发和上线。

在需求阶段,产品经理提出具体需求,根据优先级进入需求池;开发团队确认项目经理统筹安排,结合产品经理、开发和测试团队进行需求和功能的罗列,三方通力合作,进行功能列表的review,做出设计计划,并邮件通知全体。进入设计阶段,项目经理建立项目twiki,设计人员开始进行迭代review,达成一致后,项目经理组织全体人员进行review,随时把出现的情况通知到相关负责人。一切妥当之后,设计人员开始开发阶段,对项目进行人日估算,包括开发、code review、开发测试、开发人员内部集成测试等,调动资源,确认项目时间。上线前一周,项目经理通知PE团队,做好上线前的准备,进行风险评估、冒烟测试等工作,确保产品完成上线。

整个实施的过程可以说是痛并快乐着,刚刚开始的时候,各个环节都不同的存在着这样或那样的问题,晨会、项目计划会、code review、设计、项目总结会都不同程度的存在着不和谐。不断的发现问题不断的解决问题,痛苦与快乐交织并存。

最后,邹磊提出了他作为Scrum Master在工作中的困惑:

目前他70%的时间在做开发,不知业内是不是其他Scrum Master也这样做;还有SCRUM讲究主动性,由团队成员领取任务,但是将最合适的任务分配给最合适的人,是不是就是最佳的方式?另外就是无法估出复杂项目的准确人日,给团队带来负面的影响的困扰等。

在最后的互动环节里,有人问道Scrum Master的技术操作和背景以及项目如果是两地合作的话应该怎样处理的问题,邹磊一一做出了详细的回答:

在我们的部门里ScrumMaster的开发任务是偏重的,了解很多Scrum Master都存在这样的问题。Scrum Master不一定是部门里技术背景最强的,但是必须要对产品线有充分的了解,以及对团队人员的熟悉,否则会影响对整个开发时间的统筹。

至于两地合作项目问题,他们自己就是在杭州和北京并行,许多项目就是两个地方的技术力量合作完成的。这就牵扯的项目经理责任制,解决办法就是会议和邮件。他个人偏向邮件,通过邮件把进度点公布给相关人员,尤其是领导们知道,更有利于自己开发的进展,也有利于大家对进度的把握。

此次会后,有些参会者在博客上发表的自己的感受,比如来自“绿城社区”的一篇博客:作者感觉这样的活动丰富了自己的周末生活,文中写道:“而最吸引我的,是沙龙中的Open Space环节,极富互动性!”。可以看出作者对OpenSpace的互动环节由衷的喜爱。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

缺乏地道的Scrum实施 by Zhu Kerry

看了百度和淘宝的敏捷实施,都是在原来开发模式中融入了一些敏捷的元素,也许土洋结合是对的,但没有真正按照Scrum的框架去实施,还不能真正得到Scrum的真谛。还是希望看到地地道道的Scrum实施经验的分享。

Re: 缺乏地道的Scrum实施 by chin jacob

Scrum是教义?不完全遵守和信仰,就得不到真主的护佑?不解。

Re: 缺乏地道的Scrum实施 by Keqiang Zhang

结合自身实际的敏捷就是好的敏捷。敏捷的流派也很多。没有必要追求“地地道道的Scrum”。
死扣Srcrum,那就是教条主义。
况且Scrum本身就有教条的部分。
赞百度和淘宝的做法,谢分享。

Re: 缺乏地道的Scrum实施 by 峻申 吴

老实说,scrum这种东西不太适合中国国情。要想在这个神奇的国度使用,你必须做剪裁,做整合。不能死板的去做的。但是这样做的话,就违背了scrum创始人的初衷。所以我的建议是根据公司具体情况来实施,但是不要说自己是敏捷的。因为现在国内任何一家IT公司都没资格说自己在实施敏捷。敏捷不仅仅只是scrum。不要犯当年言必称敏捷是XP的错误

Re: 缺乏地道的Scrum实施 by Zhu Kerry

在许多公司,的确吸收了一些敏捷做法,形成自己“混合式的流程”,也运行得不错。但是,这不能说明混合式的流程是最有效的,也不能说明就不存在一个更大的改善空间。Scrum 已经是一个框架,许多具体实践是可以由每个公司决定的。如果框架都不遵守,怎么知道Scrum能带来多大的效益?这么能对其他公司有更好的借鉴作用?Scrum不等于敏捷,但其他方法(XP/BDD/Crystal)操作性会更差些。

Re: 缺乏地道的Scrum实施 by Zhu Kerry

框架已经是挺灵活的,怎么是教条呢?如果某些具体地方不对(如周期太短、不重视设计等),也应该指出来,然后有理/有节地对它进行改进,形成改良的Scrum. 但也没看到这部分内容,只是一些很正常的做法,缺乏创新,没多大价值。

Re: 缺乏地道的Scrum实施 by Keqiang Zhang

Mary Poppendieck(以下简称Mary):Scrum中的一些东西是值得借鉴的,但另外一些东西我却并不认同。比如,用迭代的方式来构建软件并不断通过反馈进行调整,这一点是正确的。但是Scrum中定义的角色我却并不认同。它故意把开发人员与业务人员以及公司其他人员分离开来。我认为我们应该从更大的团队,更广泛的角度来看待软件开发,开发人员是一个大团队的一部分,而不是分离出来的单独团队。
------我完全赞同Mary的看法。之前就质疑过Scrum中的角色设定。

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

7 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT