第五届敏捷中国大会现场采访敏捷宣言创始人:Martin Fowler和James Grenning

由ThoughtWorks主办、InfoQ全程提供票务支持的第五届敏捷中国大会昨日在北京成功举办,两位敏捷宣言的创始人Martin Fowler和James Grenning受邀分别作了题为“21世纪的软件设计”和“测试不再是发现Bug”的主题演讲,并接受媒体访问。InfoQ编辑在大会现场就REST、敏捷、嵌入式开发等相关话题和两位大师进行了简短的交流。

受访者简介:Martin Fowler,著名作家,软件开发咨询师及演讲家,ThoughtWorks首席科学家。他以其超过20年的专业经验帮助企业核心系统应用面向对象技术 。

InfoQ:作为技术领域的权威,很多人认为您代表着技术的潮流或者发展方向,请问您最近在关注什么技术?

Martin Fowler(以下简称Martin):在过去的几年,包括现在,我一直在关注DSL(领域特定语言),我的新书《Domain Specific Languages》也主要关注的这个方面。对于我来说,我喜欢在某一个时间段只关注一个领域。在未来一段时间,持续交付是我很想去关注的,想多花一些时间。

InfoQ:最近您为Jim Webber等人撰写的《REST in Practice》写了一个序言,里面提到对REST要谨慎地使用,您认为REST技术的应用前景如何?

Martin:对于我个人来讲我非常不愿意预测未来,但是我仍然认为REST是个非常好的技术,可以用来在互联网上做集成,做可扩展性的集成等。另外我也有一些同事,他们对REST这个领域非常专注,并曾经成功地应用REST做过很多的项目,这些都可以证明REST在可扩展集成领域有比较好的基础。

InfoQ:以您的观点,您如何定义一个成熟的敏捷开发团队?

Martin:我想最重要的度量标准就是这个团队能够快速地、及时地、经常地发布软件,而且能够比较高质量地发布软件,开发人员能够把代码安全地放在系统中,而不出现问题。这些都是一个高质量的敏捷团队所应该具备的素养。

受访者简介:James Grenning, Renaissance Software Consulting 公司创始人,全球知名讲师,过程教练及咨询师。他拥有超过30年的软件开发行业经验,擅长技术指导与管理。他专注于嵌入式软件研发,也是将敏捷实践带入IT世界的重要先驱力量,是敏捷宣言创始人之一。

InfoQ:在嵌入式开发领域,敏捷的实施现状如何?另外在这个领域的敏捷实施过程中,最大的难点是什么?

James Grenning(以下简称James):在传统的开发过程中,团队可能会认为一开始就进行设计、定义,然后再编程才是正常的途径,等到以后出现问题时,再回过头来找解决方案。其实嵌入式开发团队通常也是这样,这也是他们在实施敏捷的过程中必须要注意的。在嵌入式开发领域最大的一个秘密就是嵌入式开发和其他的开发没有什么本质上的区别,实际上当我们觉得它很特殊的原因,是因为它有一些复杂的依赖,比如对硬件设备的依赖。但是,事实上,在其他的软件开发领域也有类似的依赖。

InfoQ:在嵌入式开发中常用的语言是C和C++,而C还不是面向对象语言,很多人认为用C很难写出干净的代码。请问您如何看待这个说法?另外在用C做嵌入式开发的时候,您认为有些有价值的原则值得遵循?

James:用C++可以写出很好的面向对象的程序。对于C语言来说,它是很灵活的。根据过去两年的实践证明,基于C语言也能够写出具有紧密的、封闭性的模块。特别是CPT(一种C语言编程软件)可以帮助开发人员做出更好的设计,写出有更好封装性的模块或者代码。不像以前写C语言的时候,人们倾向于写的非常长,通过CPT大家都会自觉不自觉地将程序写得更小,更有封装性。

对于用于嵌入式的C语言开发来讲,它使用的原则其实和其他的面向对象编程的原则一样。都应该遵循面向对象开发的那些原则,特别是像封装性、高内聚等。比如我们要测试一辆汽车,要对其引擎做具体的测试,这是比较困难的,因为通常来说引擎装在汽车里才能完全展示驱动汽车的性能。但是如果我们能够将引擎拆下来,对它进行单独测试,也许会更加有效。对于C语言开发也是这样,如果所编写的代码都是相互关联、耦合的,那么就无法进行有效的验证。所以说,C语言的编程也应该遵循面向对象开发的原则:高内聚、低耦合!

你可能感兴趣的:(第五届敏捷中国大会现场采访敏捷宣言创始人:Martin Fowler和James Grenning)