2011年应InfoQ的邀请,在QCon北京大会上主持了设计优良的架构这个主题。写了主题介绍,并做了企业级软件的组件化和动态化开发实践的主题分享。
主题介绍:从第一个软件诞生开始,软件架构就和软件息息相关。
软件架构是软件的基础,是描述软件系统框架的语义,包含了软件系统主要的决策信息,包
括软件元素的如何组织,如何实现预期的功能、性能、可靠性和质量等,还包括技术选型,集成性,扩展性,一致性等内容,随着软件从个人软件扩展到企业软件系
统,再到互联网这个巨大的平台,软件的规模愈来愈大,复杂度越来越高,软件系统的架构设计面临了前所未有的挑战。
千禧年之后,江湖盛
传,MDA(模型驱动架构)是软件设计的银弹。最后的结论是没有银弹。虽然银弹没飞起来,但之后各种架构思想、框架、技术接踵而来,IOC、AOP、
O/R
Mapping、SOA、ESB、OSGi等,包括现在的云计算平台技术,架构渐欲迷人眼。其实不乱,大家可以看到,每种技术都是在解决某一方面的问题。
即使这样,面对如此纷繁复杂的技术、框架和思想,如何选择,如何设计优良的架构?这不仅是架构师的问题,也是所有软件从业者的问题,也是CIO的问题。
我的主题分享:现代人类文明运行于软件之上,而软件的构建过程却 隐于黑暗里。从软件系统诞生之初,程序员们就开始梦想有一天能够像建造桥梁和房屋那样“透明”的构造软件,实现“即插即用”的软件系统,但是到目前为止, 软件的开发依然让我们倍感挫折,失败的软件项目有增无减,我们依然在路上。幸好技术一直在进步,软件系统的组件化和动态化技术让我们离真相更近了一步。该 主题主要介绍了在构建企业软件基础平台的过程中对组件化和动态化技术的开发实践,包括大型项目的组件化开发过程、构建过程和装配机制等,主要涉及的技术包 括XDoclet、Plug-in机制、WTP的facets机制、工作流、元数据等,同时还介绍了OSGiR4.2的企业级高级特性及其相关应用。
我的keynote: