构建的可伸缩性和达到的性能:一个虚拟座谈会
这个由业界主要专家们参加的座谈会探究了在使应用程序具备尽可能好的伸缩性及性能的过程中所面临的挑战和思考过程。
- Architecture, Java, .NET, Ruby,
作者 Deborah Hartmann译者 郑柯 发布于 2007年8月21日 上午4时42分
InfoQ为您独家带来两位专家级的敏捷活动推动者Esther Derby和Diana Larsen的敏捷著作:《敏捷回顾——让团队从优秀到卓越》的章节节选。
作为一个关键的敏捷实践,回顾活动可以帮助团队检查在项目中哪些事情做的对,哪些事情做的有问题。但是传统的回顾(有时被称为post-mortems,即盖棺定论)只在项目结尾时进行,由于时机过晚,很难对团队和项目起到什么帮助。敏捷团队需要迭代式和增量式的回顾,以尽快精确定位问题,设计解决方案,来使得团队可以早日改进,从而产生更好的收效。
InfoQ向各位读者发布书中的一个章节节选,同时询问了作者一些关于写作本书的问题。
InfoQ:团队们一直以来都在使用Norman Kerth的网站和书指导他们的回顾活动,我甚至怀疑你们也在用……通过这本书,你们想再补充些什么呢?
Esther:没错,我们都看过Norman的书。实际上,那本书里面还提到过我们俩。我在1991年就认识Norman了,他一直告诉我说,“你必须要见见Diana。你们真的有很多相同之处,而且你们的技能和长处可以互补。”后来,他组织了一个会议,并让我们两个一起召集第一届Retrospective Facilitators Gathering大会(现在还是每年一次)。从那时起,我们就开始一起工作了,并且觉得这样很不错。
在Norman那本书的基础上,我们想说:不一定非要等到项目结束再来做回顾。即使你不在一个敏捷团队中,你还是可以在各个发布阶段,各个里程碑,或者通过固定的时间间隔来进行回顾,改进团队的工作方式。
Diana:Norman关注项目结束时的回顾,他描述如何从团队之外引入有经验的人推动回顾活动,以改善现有状况。我们想告诉大家,针对短期且有明确目标的迭代,团队领导者可以和团队成员一起独立完成每个迭代的回顾活动。在开始写本书的时候,我们跟Norman谈过,他鼓励我们继续实施这个写书的想法。
InfoQ:你们能不能告诉我们一个真实的故事,说明确实有团队发现回顾是一种有用的工具?
Diana:我们听到了很多这样的故事。最先想起来的,是一个经常使用回顾来改进其流程的极限编程团队。他们总是挑战自己,不断想出一些有创意的实验在接下来的迭代中使用。在其中一个被他们称为“混杂式结对(promiscuous pairing)”的实验中,他们试图找到与团队不同成员进行结对编程的最佳时间长度。Arlo Belshee在Agile2005大会上做了有关该实验的演示报告,说明其对生产力的提升效果。
Esther:我曾经与这样一个团队进行过讨论,几乎所有的工程实践在他们那里都进行的不错,因此他们使用回顾来解决冲突问题。他们在每个迭代中都进行检视、实验,并构建解决冲突的技能和信心。随着时间推移,他们学会了如何处理每个团队都会发生的“平常的”冲突。当大家意见出现严重分歧时,他们有能力、也有信心在团队内部解决问题。而且更有利的是,由于他们可以在团队内部解决全部问题,他们的经理就可以花费更多的时间来消除组织中对团队造成的障碍。当然,这使得团队能够轻装上阵,以更加轻松的心态来开发软件。
InfoQ:关于回顾,现在你们最希望人们知道的是什么?
Esther:团队应该经常停下来,检查并调整之前的方法和实践,才能向更好的方向发展。而回顾活动正是这样做的最佳机制。
请看InfoQ提供的独家书籍节选:第十章: Make It So
我们还咨询了Andy Hunt选择这本书作为Pragmatic系列书籍之一的原因。
Andy:反馈对实用主义程序员(Pragmatic Programmers)至关重要。使用回顾从整个团队收集反馈并做出应对,是一项很有价值的技术。Esther和Diana的书是一本非常实际的,推动持续回顾的实用指南。
查看英文原文:Book Excerpt: Agile Retrospectives这个由业界主要专家们参加的座谈会探究了在使应用程序具备尽可能好的伸缩性及性能的过程中所面临的挑战和思考过程。
本视频主要对OpenSocial进行了分析,并对实现的方式进行了介绍。其中包括:OpenSocial的开发经验、Container Provider的技术准备、平台的构成要素、具体的规范、以及对未来的展望。
Memcached在大型网站被应用得越来越广泛,但是Java客户端并不多,本文作者基于现有的开源客户端进行了封装优化,并翔实记录了这一过程。
在他们文章的第二部分,作者探讨了动态业务应用的架构并介绍了资源容器的概念。他们示范了如何在JEE之上构建这个架构,以及它如何影响实现生产力。
ClickOnce让WinForms应用程序的部署轻而易举。David Cooksey演示了如何在ASP.NET中编写一个HttpHandler来实现对ClickOnce部署的版本细分。
本文是Productive Java with Ruby系列文章的第二篇,通过上一篇的介绍,我想大家对如何利用Ruby进行单元测试有了一个基本的了解,从这里开始,我将和大家一起讨论一些利用Ruby进行单元测试时的高级话题。
《应用SOA》是由四位一流SOA专家合著关于SOA的新书,其主旨是帮助你成功地实施SOA。尤其是,这本书将帮助你把你的SOA项目与企业架构、IT治理、核心数据和BPM项目结合起来。
没有回复
回复