什么是敏捷?
简而言之,敏捷是一种新的软件开发的思想,通过迭代、结对编程、测试驱动等实践逐步完善对软件的开发,最终形成稳定的系统。与传统的软件开发相比,敏捷强调人与人之间的沟通,而不是通过文档。这儿可以用Kent Beck、Martin Fowler等16位业内权威的软件人士在几年前所做的一个敏捷宣言来解释:
- 个体和交互胜过过程和工具
- 可工作软件胜过面面俱到的文档
- 客户合作胜过合同谈判
- 相应变化胜过遵循计划
从中我们可以看出直接的沟通和交流在敏捷中所起到的重要作用。在传统的方法中,我们强调经验的积累,通过大量的文档和合同等来记录这些东西,其实在实际的工作中,这些辛苦积累下来的东西得到的后期应用很少,因为这些记录通常是烦琐的,不人性化的。即使文档再好,但没有起到实际的作用,也是做无用之功。而在敏捷的方法中通过人与人经验的传递,使得团队中的人很快地成长,站在一个水平线上,为最终目标的完成配置最有效的人力资源。
InfoQ中文站是什么?
这儿之所以要介绍InfoQ中文站,因为这是介绍整个主题的背景知识。InfoQ.com是一个社区型技术媒体,以关注企业级软件开发领域的趋势见长。目前这个媒体在全球开发者社区内引起了很大的反响,经常被各大社区引用。那么InfoQ.com的架构是什么样子的呢?可以说,它是一个非常典型分布式的团队。这件网站的总编在加拿大,销售在美国,开发团队在罗马尼亚,另外还有InfoQ中文站、InfoQ日文站等。而InfoQ中文站上的参与人员也是分部在全国各地的,包括北京、上海、广州、深圳、西安、成都等。
敏捷方法对于团队沟通的借鉴
作为一个知识型的团队,如果没有有效的沟通是很难将工作完成的,InfoQ.com和InfoQ中文站是如何保证团队间的沟通的呢?
在敏捷的方法里,有两个非常有效也是比较简单易用的实践,一个是Stand up,一个是回顾。Stand up的意思就是站立会议,详细解释就是说每天早晨或者晚上,团队成员围成一个圈,分别汇报当天的工作进展情况和下一步的打算,从而让整个团队内部的信息沟通有无,彼此了解对方的进展,推动整个项目的发展。而回顾,简而言之就是在一个稍微长的一段时间内,将过往的项目进行分析总结,发扬优点,改正缺点,为下一个项目或者项目的下一个阶段积累经验。
在InfoQ.com和InfoQ中文站两个组织中都比较好地应用到了这两个实践。比如InfoQ.com的沟通方式是每周二团队Stand up,包括内容、商务和开发人员,分别汇报自己的工作状态,还附之以沟通的电子邮件,进行问题的确认,防止出现理解有误的情况。而对于InfoQ中文站,因为都是中文,交流相对也比较方便,所以一般是每天通过邮件群组的形式进行Stand up,每周一电话沟通本周计划,周三则追踪计划的进展情况,周五则是回顾。通过这种形式很好地保证了公司日常工作的进展。另外一个好处是随着交流的增多,团队之间的了解程度也逐渐加深,团队成员的热情也得到很大的调动,形成了一个比较有活力的团队。这些成绩的背后都可以看到敏捷的功劳。
工具和平台对于敏捷的补充
那么是不是说只要借鉴敏捷方法,就可以让一个分布式团队有效地进行工作呢?还不完全是,另外一个不可或缺的因素是工具和平台。这里所谓的工具就是指交流所用的软件,比如MSN、Skype、Google Group等,通过这种在线沟通的形式,可以方便地联系到团队的其他成员,就某个话题进行交流,还可以进行任务的分配等;所谓平台就是办公写作平台,因为InfoQ.com和InfoQ中文站的主要工作是编辑,那边一个协同的办公平台就非常重要。
这里列举一个协同办公的流程。比如InfoQ.com上新发布了几篇新闻,InfoQ中文站要拿过来翻译,那么管理员把新闻的相关内容植入Google Spreadsheet,然后共享给其他参与翻译的团队成员,成员接到邮件后同步打开在线文档,选择自己感兴趣的内容进行翻译,然后将翻译好的文档再通过Google Docs共享给审校的人员,然后新闻就可以在InfoQ中文站上进行发布了。如果说没有Google的在线协同办公工具,还是依靠原来的邮件或者单纯的IM形式,效率会降低很多。
总结
综上所述,我所强调的内容基本是两点,第一是要借鉴敏捷方法中的精髓,将其思想应用到分布式团队的沟通之中,加强人与人之间的交流;第二则是在沟通的同时,也要注意合理地利用现有的技术,比如IM和在线协同工作平台,通过这些技术提高团队之间的沟通效率。希望这些经验能够对创业中的分布式团队起到一定的借鉴意义。
免费迷你书下载:领域驱动设计精简版
免费迷你书下载:OSWorkflow中文手册
免费迷你书下载:Visual Studio .NET使用技巧手册
视频:孟岩谈深入理解SOA和Enterprise Web 2.0
分享到:
相关推荐
在本文件中,作者以某省拟建的燃气蒸汽联合循环机组为例,详细探讨了分布式能源站为企业供能的运营方案。通过制定和比较三种不同的供能方案,最终确定了一种既能缩短企业初投资回收年限,又有利于提升分布式能源站...
在分布式仿真网格体系结构中,HLA(High Level Architecture)是国际分布式仿真的通用标准,具体实现为RTI(Run-Time Infrastructure)。然而,传统的集中式RTI服务器在大规模仿真中容易成为性能瓶颈,不适应网格...
#资源达人分享计划#
为了充分挖掘狂热IT趋势中的用户兴趣,厂商们都会积极地重新定位自身已有的产品组合。然而,糟糕的是,这种做法往往会造成认识上的混乱,甚至让用户对SOA丧失信心。因为厂商往往无法完全兑现他们所做的承诺,销售的...
分布式光伏发电指的是在用户附近直接安装的小型光伏电站,利用太阳能转化为电能,并网发电指的是这些电站与传统电网连接并交换电力的过程。在并网过程中,光伏发电系统对电网的电能质量、稳定性和安全性等方面会产生...
### 分布式数据库简析 #### 一、分布式数据库概览 **分布式数据库**是一种将数据分布在多个地理位置上的计算机系统中的数据库系统。这样的系统能够利用网络连接多台计算机,每台计算机都拥有自己的局部数据库以及...
《简析机械自动化在工业生产中的实践与应用》 随着科技的飞速发展,机械自动化在工业生产中的地位越来越重要,它不仅提升了生产效率,降低了生产成本,还极大地改善了工作环境,减少了人力资源的投入。本文将深入...
Java中的泛型简析实战Java中的泛型简析实战Java中的泛型简析实战Java中的泛型简析实战Java中的泛型简析实战Java中的泛型简析实战Java中的泛型简析实战Java中的泛型简析实战Java中的泛型简析实战Java中的泛型简析实战...
简析Excel在办公中的基本应用.pdf
总结,2020年的《中国数据中台行业发展简析行业报告》揭示了数据中台在助力中国企业数字化转型中的重要地位,为企业提供了宝贵的实践经验和未来发展的战略参考。数据中台不仅是一项技术,更是一种全新的业务模式,它...
Spring Cloud与分布式系统简析 Spring Cloud是基于Java语言的一系列框架的有序集合,旨在简化分布式系统的开发。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、...
PLC(Programmable Logic Controller,可编程逻辑控制器)在煤矿风机自控系统中的应用实践,涉及到工业自动控制领域的专业知识,对于提高煤矿安全生产具有重要意义。本文简析了PLC在煤矿风机自控系统中的设计和应用...
本文主要探讨了机械自动化在工业生产中的实践与应用,重点分析了其意义、应用概况、不足之处以及在重工业和轻工业中的具体应用。机械自动化技术是现代工业生产的重要推动力,能够简化工作流程,降低成本,提高生产...
### 简析搜索引擎中网络爬虫的搜索策略 #### 一、引言 随着互联网技术的迅猛发展,网络信息量急剧增加,人们获取信息的方式也在发生着根本性的转变。传统的方法已经无法满足用户对信息的需求,搜索引擎因此...
简析在电子信息工程中计算机网络技术的运用.pdf
Web3.0概念下的场景生态简析是指下一代互联网的发展方向,旨在解决用户与用户之间的信息互动、提升信息的传递效率、实现信息交互过程中的“可信”与“沉浸”。Web3.0概念的技术基础、驱动力、核心特点等都表明了Web...
"简析大数据在智能交通系统中的应用" 大数据技术的应用在智能交通系统中具有非常重要的作用。随着城市化建设的发展,城市交通压力不断增加,如何将大数据技术应用到智能交通系统中成为一个急需解决的问题。 大数据...
总的来说,调控一体化在电力系统自动化中的实践,体现了现代电力系统管理的先进理念和技术,对于推动电力行业的智能化、规范化发展具有深远意义。同时,这一领域的研究和发展将持续为电力系统的安全、高效运行提供...
C语言在中职计算机专业课程中的重要性和教学实践是一个至关重要的议题,因为它为学生奠定了坚实的编程基础,并在后续的学习和职业生涯中发挥着关键作用。C语言作为一种强大的中级编程语言,结合了高级语言的易读性与...
【简析J2EE应用程序中数据库类的设计模式】 在J2EE应用程序的开发过程中,数据库类的设计至关重要,它直接影响到系统的可维护性、扩展性和性能。本文主要探讨在不使用EJB技术的情况下,如何设计数据库类,特别是...