敏捷开发:程序员你不能一个人在战斗

【独家特稿】在2010年4月24日的Qcon 2010技术大会上,演讲嘉宾就敏捷开发进行了主题演讲。当中有部分嘉宾提到在中国大家都理解Agile,但对于Scrum这一方法在中国还无法全面贯彻。这也暴露了当前我国开发界在管理理念和技术水平上的欠缺。也向您推荐《初探敏捷开发》专题以便于您更好的理解敏捷开发的精髓。

成都创新互联专注于咸丰网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供咸丰营销型网站建设,咸丰网站制作、咸丰网页设计、咸丰网站官网定制、微信平台小程序开发服务,打造咸丰网络公司原创品牌,更为您提供咸丰网站排名全网营销落地服务。

[[10404]]

2010年Qcon技术大会现场(摄)

觉得还是有必要先为大家介绍一下Scrum,Scrum是一种迭代式增量软件开发过程,通常用于敏捷软件开发。Scrum在英语的意思是橄榄球里的争球。虽然Scrum是为管理软件开发项目而开发的,它同样可以用于运行软件维护团队,或者作为计划管理方法:Scrum of Scrums。

Scrum是一个包括了一系列实践和预定义角色的过程骨架。Scrum中的主要角色包括同项目经理类似的Scrum主管角色负责维护过程和任务,产品负责人代表利益所有者,开发团队包括了所有开发人员。

在每一次冲刺(一个15到30 天周期 ,长度由开发团队决定),开发团队创建可用的(可以随时推出)软件的一个增量。每一个冲刺所要实现的特性来自产品订单(product backlog), 产品订单是按照优先级排列的要完成的工作的概要的需求。那些订单项会被加入一次冲刺由冲刺计划会议决定。 在会议中,产品负责人告诉开发团队他需要完成产品订单中的哪些订单项。开发团队决定在下一次冲刺中他们能够承诺完成多少订单项。 在冲刺的过程中,没有人能够变更冲刺订单(sprint backlog),这意味着在一个冲刺中需求是被冻结的。

管理Scrum过程有很多实施方法,从白板上的即时贴到软件包。Scrum***的好处是它非常容易学习,而且应用Scrum不需要太多的投入。

敏捷开发我们欠缺在哪里?

知道Scrum的含义后,我们首先应该了解到东方人较西方人,***的区别在于内敛的性格。这种性格造成我们对于承担责任有种天生的抵触,在Scrum中这恰恰是不负责任的表现。谁都不为项目负责,***导致Scrum敏捷开发的失败。可以说单打独斗并不能成为英雄,而只会成为“堂吉诃德”式的人物。

[[10405]]

单打独斗,只能出现错误

其次沟通能力上的欠缺,使我们很愿意单打独斗,而不是以一个整体去战斗。自然代码的迭代,文档的编写都没法完成。甚至我们与用户都愿意沟通,到***用户是什么样的需求都不了解。

在这里我们记者和来自某手机杀毒厂商的吴先生展开过讨论。记者提出对于用户的需求,很多开发团队并不是很了解,对敏捷开发的方法运用也很不合理。吴先生表示他们公司已经在采用相关敏捷开发方法,每3个星期都会和用户进行协商。把这个阶段完成的产品交给用户测试,提出新的需求和改进意见后,再进行下一步开发。基本上在完成开发后,用户对于需求的完成情况非常满意。而以前为期4个月的开发周期,没有用户参与,******的项目得不到用户的认可,认为这并不是他们需要的产品。

这样的对比让我们了解到,中国的开发团队并不是不希望采用敏捷方法。只是在接受度上还存在问题。另外,中国开发团队在人员技术差距上比美国要明显,这个方面中国要比美国在世界上排名高十位左右。不均衡的技术水平,肯定会造成短板,整个团队的开发效率不统一,敏捷也就大受打击。在记者对话敏捷专家麦天志先生时,也谈到了中国敏捷开发现状及发展之路。

管理方法不科学,也是大家诟病的地方。之前记者在与著名MVP高阳老师讨论Scrum时,高老师也谈到,目前很多开发企业还处在小作坊阶段,并没有一个很好的企业文化和管理制度。这些东西虽说和技术无关,但是人心不齐,不患寡而患不均的思潮,必然影响开发效率。这样的企业,用以前常用的瀑布模型等做开发,甚至好过使用敏捷开发,用强制力来统一整个团队。

所以,在敏捷开发过程中,特别是Scrum方法中,程序员绝对不能一个人在战斗,不管你是架构师还是初级程序员。你需要的是大家一同完成项目进度,完成自己的职责,尽可能的找出迭代方法。这才是敏捷开发中需要的好程序员。

延伸阅读

Scrum用到的术语:

角色

产品负责人 负责维护产品订单的人,代表利益相关者的利益。Scrum主管 为Scrum过程负责的人,确保scrum的正确使用并使得Scrum的收益***化。开发团队 由负责自我管理开发产品的人组成的跨职能团队。Scrum团队产品负责人,Scrum主管和开发团队。

工件

冲刺燃尽图 在冲刺长度上显示每天进展的图。产品订单 按照优先级排序的高层需求。冲刺订单要在冲刺中完成的任务的清单。

其他

冲刺 一个时间周期(通常在2周到1个月之间),开发团队会在此期间内完成所承诺的一组订单项的开发。

【编辑推荐】

  1. 敏捷开发中的成效评估模型
  2. Visual Studio 2010敏捷利剑:详解Scrum
  3. 浅谈敏捷开发思想中的简单***原则
  4. 敏捷开发中的Scrum流程和术语
  5. 敏捷开发中的架构设计

当前名称:敏捷开发:程序员你不能一个人在战斗
标题链接:http://www.shufengxianlan.com/qtweb/news2/296352.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联