`
Qin-Qin
  • 浏览: 24747 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

一切从架构的基本元素出发

阅读更多

——专访汤森路透集团企业架构师刘晓晖

 

说起来路透,很多人知道世界四大通讯社之一路透社,却并不知道它背后的路透集团在2008年4月与加拿大媒体巨头汤姆森集团合并,成为汤森路透集团,英文名Thomson Reuters,一跃成为全世界占有市场份额最多的金融信息服务提供商。

 

2006年,路透集团在中国北京中关村软件园成立了软件研发中心,目前已有700余人的研发队伍,负责研制、开发、维护汤森路透全球金融系统的数据采集、处理、发送任务,完成了纽约证交所,纳斯达克等交易所的升级与软件移植,欧共体多市场的金融报价系统。除了金融市场战略事业部,集团还拥有法律事业部,税务财务事业部,科学研究事业部,医疗健康事业部,汤森路透集团为全球上百万的专业人士提供高质量和智能化的信息服务,北京的软件研发中心现致力于为集团旗舰产品的研发做出贡献。

刘晓晖,是汤森路透软件研发中心内资深的企业架构师。1991年开始进入IT行业,多年来扮演过程序员、团队主管、经理等各种角色,最后成为架构师,也有六七年的时间了。


 

 

什么是架构?

在整个采访过程中,刘晓晖多次提到“架构的基本元素”。我们的谈话,也就先从“什么是架构”开始。刘晓晖指出:“虽然不同公司对架构会有不同的定义,但是说起来架构,总是会有一些共同的元素,总是要涉及到结构、各个组成部分之间的交互关系,以及这些组成部分跟外界的交互关系。除此之外,还有一些相对来说不太明显的东西,比如一些设计标准,应该遵循的各种规范等等,它们也属于架构的元素,就像我们这栋办公楼的装修,就非常有Thomson Reuters的一贯风格。只要是Thomson Reuters的办公室,不管是在伦敦、新加坡,还是总部,装修风格都非常像。架构最终是要服务于具体的业务要求。”

接下来,刘晓晖提到了架构的共性与具体行业和企业的组合问题。他说:“在架构上,一定有一些共同的元素。如果结合不同的具体行业和企业,就会产生架构的多样性。就拿Thomson Reuters来讲,我们是做金融数据产品的一家公司,专门为各种机构和个人提供专业的金融数据和咨询信息,有很多产品线。然而所有的产品实际上都是基于我们的金融数据。比如有些客户希望通过汤森路透得到一些实时的股市信息,我们还有外汇、期货等方面的交易平台。可以想象,我们有一个非常庞大的数据采集系统,处理各种各样不同类型的金融数据,此后还要把数据分发到每一个具体的产品。因此,如何组织这些不同的数据集,是我们在做架构时需要考虑的一些东西。不同客户还会有些特殊的需求,比如有些要求实时性,有些要求容错性,也就是说某个系统的某个环节发生故障,应该对他的业务不造成影响,这都是我们在整体上设计汤森路透系统架构时非常关注的一些方面。不过如果把架构的基本元素再套用到其他行业,可能又有不一样的一些关注点。”


 

 

汤森路透集团的架构师

在汤森路透集团内部,有一个名为Chief Architecture Office的组织,简称CAO。那么为什么要存在这样一个组织?其中又是由什么样的人构成的呢?刘晓晖这样解释:“CAO以前是隶属于CTO管辖的,是非常重要的一个机构。至于是否有必要有这样的组织,我觉得很大程度上取决于行业的性质。我们汤森路透从全球几百家证券交易所俄采集金融数据,然后再做集中的处理,增值和分发。对于如此庞大的一个系统,必须有这么一个Chief Architecture Office的存在,负责整体架构。我们要求在任何一个领域中做项目的时候,都要把它放在整个企业的环境中考虑,看它跟其他系统应该是什么样的交互关系。”

“在CAO中,有三种架构师,一种是企业架构师(Enterprise Architect),就像我,我们的关注点在于系统,负责企业系统的架构,做Technical Governance,也就是技术监理,是我们的一个重要工作方式。同时对于一些比较大的项目、一些战略性的项目,我们会直接参与架构的设计。还有一种架构师叫做数据架构师(Data Architect),又称为信息架构师(Information Architect)。他们的关注点是数据和内容。因为汤森路透对于自己的定位是金融数据中心厂商,怎么样组织我们的数据,这点非常非常重要。因为我们的数据来源非常非常多,怎么样把这些数据非常有序地整合起来,同时还得考虑这些数据跟不同产品系列之间应该是什么样的关系。此外还有业务架构师(Business Architect),侧重于业务如何跟各种各样的流程之间如何定义。其实在汤森路透集团这一类性质的公司里头,经常可以看到Chief Architecture Office的机构。

“另外,我们还有一些系统架构师、解决方案架构师、软件架构师等等,这些在汤森路透复杂庞大的系统里都能找到。从之前谈到的架构基本元素而言,他们都有共同之处,但是放在具体的环境里头,大家都有各自不同的关注范围,有不尽相同的一些抽象层次,但这些都是一层一层环环相扣连接起来的。在TOGAF企业架构框架里面也可以看到类似的对应关系。”

刘晓晖接下来还谈到了有关汤森路透内部架构师培训的话题。他提到:汤森路透重视员工的发展,有专门的技术梯级,员工在技术方向有较大的发展空间。汤森路透还为技术人员成长为架构师提供了培训的机会。自06年起,汤森路透集团从全球研发中心开始推广架构师成长计划(Growing Architects Program),为各个领域不同的技术骨干创造成长的条件,并专门针对他们设计了两年的培训计划,主要分三个方面。首先是为他们安排非常资深的架构师作为导师;其次,围绕整个培训计划,还建立了架构师社区,并有定期的讲座和交流;第三个方面就是有一些跟公司业务匹配的课程设计,这其中既有技术方面,也有软技能方面,比如谈判、演讲方面的课程等等。


 

 

作为桥梁的企业架构师

说起来自己担任的企业架构师的独特之处,刘晓晖指出:作为汤森路透集团的企业架构师,需要结合汤森路透的业务来考虑整个系统与数据的构成。比如实时数据、历史数据以及众多公司各种各样的背景信息,这些数据如何跨系统、跨层次地关联在一起。如果具体到某个具体系统内部的详细设计,就会有相关的系统架构师去考虑,比如与证券交易所的交互系统等等。如果其中涉及到与外界系统的关系,这又是需要企业架构师来协调的事情了,但是企业架构师通常不会过多关注具体的模块设计或是算法实现。

经常有人为架构师应该注重业务,还是注重技术而争得不可开交。对此,刘晓晖的看法是:“我个人不会去区分到底哪个更重要。架构师当然要有技术方面的专长,但是作为企业架构师,其实担任了技术与业务之间的桥梁。所以对于我来说,技术和业务同样重要。不过只要是一个架构师,一定会涉及到非常多的利益相关人,一定有与业务和需求相关的一些东西,也有非常具体的技术要求。企业架构师可能很少去写代码,但是要关注系统为了实现业务需求需要用什么样的技术,比如实现什么样的容错能力,采用什么样的容错方法,什么样的弹性机制等等。我们要把这些思考构建到系统里头,在这个层次上,结合业界的一些实践,结合汤森路透自己各种系统的一些实践,拿出有一些非常有价值的解决方案。比如针对可扩展性,提出什么样的架构模式,在哪些业务情形下可以重用,具体要怎么样实现,数据应该怎么存储,系统之间的交互应该是通过什么样的方式,什么样的渠道,应该在哪些地方建立各级的缓存等等这些方案,都需要我们去归纳、设计。”


 

 

企业架构的技术趋势

对于未来两、三年内企业架构技术上的变化,刘晓晖说道:“在汤森路透集团,最核心的东西就是数据和内容。但是我们会利用各种各样新的技术,比如说3G,也可能成为一种我们分发数据的一种途径。再比如云计算,我觉得都有可能成为我们整个平台有机的一部分。所以架构师要考虑新的技术领域。在设计架构的时候,应该充分利用新技术来满足业务要求。新技术,新方法一定会出现,但作为架构来说,把这些技术的具体形式都抽象掉以后,基本元素仍然是存在,仍然是共同的,只是在具体表现形式和应用的具体技术方面会有各种各样的不同。

“由于我们的业务主要是围绕数据展开的,所以我会关注基于数据的智能分析、商业智能这个领域。另外,我们这个行业现在关心虚拟化技术,因为这跟我们直接相关。汤森路透在世界各地针对不同专业领域也建有自己的数据中心,每一个数据中心都非常非常庞大。如何用新技术把系统设计得更加的有效、密集,其中就有很多方向可以考虑,包括如何充分利用服务器资源,提高计算能力,同时更节约空间。虚拟化是我们非常关注的技术。此外,我们还对涉及到海量数据的高性能计算相关的技术跟关注。汤森路透跟一些主要的一些厂商,比如IBM、Oracle、微软等等都有比较固定的合作伙伴关系,所以我们也有很多活动跟这些伙伴一起合作。”


 

 

多年来的体会

做了这些年架构师,刘晓晖这样谈自己多年来的体会:“有几点我觉得感受比较深。一个就是现在很多人都在谈架构,实际上他们没有非常明确的认识。这个概念显得有些含糊和抽象,但实际上这个概念是可以有很明确的方法来解释和表述的。同时,也正是因为架构这个概念的特殊性,各种角色对于架构师都有非常不同的期望,这也是架构师经常要面对的,非常有挑战性的一个方面。比如在一个项目里头,工程师对你的期望跟业务方面角色对于你的期望完全不一样。而项目经理的期望可能又是另外一种了。不过至少有一点是可以肯定的:这么多不同的利益相关者,他们对于架构师都抱有很高的期望。

“架构师还会遇到一些文化方面的问题。在汤森路透这一类全球性的公司里,文化是一个非常普遍的问题,而且大家都觉得这个东西非常重要。汤森路透集团也有专门的工作组在做这方面的努力,去归纳文化之间的差别到底有哪些不同,会带来什么样的问题,需要怎么解决。因为不同文化背景,思考、沟通的方式也不一样。包括我们在运用语言的时候,比如说在我们这个类型的公司里面语言的使用能力不一样,就会产生一些非常微妙的差别。在某一个文化里头适用的沟通方式,换一种文化背景来说,可能就不适用,人家会觉得‘你这好像是在冒犯我’。我们工作组在做这一方面的研究和教育。他们一直也在各种场合给不同文化背景的人强调:要意识到文化上的差异可能带来一些问题,要有充分的考虑和应对。

“对于架构师来说,我觉得这也是软技能的一部分。架构师对于这方面要有充分的认识,要相当敏感,只有这样才能进行更有效的沟通。因为沟通是架构师经常要做的事情。不过现在很多情况跟我们当年不一样,现在我观察到:相当多的人具备很好的语言运用能力,他们在文化的适应能力上也相当强,同时有非常丰富的工作背景。因此,在汤森路透内部,技术骨干要发展成为架构师,文化上的差异已经不再是多么大的一个障碍了。”

分享到:
评论

相关推荐

    成为架构师的基本要素

    本文旨在探讨成为一名架构师所需要的基本要素,并从个人特质和职业发展两个角度进行深入分析。 #### 二、个人特质 成为一名优秀的架构师,首先要具备一定的个人特质。这些特质不仅关乎技术能力,更重要的是涉及到...

    架构的基本原则

    架构的基本原则 一个很好介绍架构的各种基本原则的ppt

    逻辑架构和物理架构在架构设计中的应用

    在不同的架构设计方法中出现的软件架构视图种类很多,本文介绍最常用的两种架构视图——逻辑架构视图和物理架构视图,并通过具体案例的分析说明如何运用它们进行架构设计。当观察和描述事物大局的时候,逻辑架构和...

    电子病历基本架构与数据标准

    本文将深入探讨电子病历的基本架构与数据标准。 一、电子病历的基本概念和系统架构 1. 基本概念: 电子病历并非简单的纸质病历数字化,而是涵盖了患者基本信息、临床诊疗记录、检查检验结果、医疗影像资料、处方...

    电子病历基本架构与数据标准(试行)

    电子病历基本架构与数据标准(试行)旨在规范这一领域的建设和应用,确保信息的准确性和安全性。 首先,电子病历的基本架构主要包括以下几个层次: 1. **数据采集层**:这是电子病历系统的起点,涉及到医生、护士等...

    从业务架构到微服务

    ### 从业务架构到微服务:深度解析与实践探索 #### 微服务的起源与定义 微服务架构是一种设计思路,旨在将一个大型的应用分解成一系列小型、独立的服务,每个服务都围绕着特定的业务能力构建,并且可以独立地部署...

    架构实战——软件架构设计的过程

    - **领域驱动设计(DDD)**:强调从业务角度出发,将复杂业务逻辑抽象为模型,并围绕这些模型构建软件系统。 #### 结语 《架构实战——软件架构设计的过程》这本书不仅覆盖了软件架构设计的基本概念和原则,还深入...

    系统架构师(高级)学习资料.pdf

    6. 明确目标和需求,架构设计的出发点和归宿都应该是实际的应用需求。 7. 强调可扩展性,确保系统能够适应未来的变化。 8. 平衡易用性和易维护性,使系统既不过于复杂也不过于简单。 9. 架构设计中的安全性考虑,...

    安全架构设计方法指南.pptx

    华为出品-安全架构设计方法指南,讲解安全架构设计的来源、软件系统架构与安全架构的定义,常见的系统架构表现形式,安全架构视图,安全架构设计的基本步骤和参考,基于八维度设计框架的安全架构设计方法,维度安全...

    华为企业架构总体架构设计方法.pptx

    企业架构设计方法的核心元素包括业务架构、数据架构、应用架构和技术架构等几个方面。业务架构是业务能力和流程的蓝图,数据架构是数据资源的蓝图,应用架构是应用系统的蓝图,技术架构是技术基础设施的蓝图。 企业...

    架构师-架构漫谈

    软件架构是指软件系统的结构设计,它定义了软件的基本组织结构和构成组件,以及这些组件之间的关系和交互方式。软件架构的关键目标是解决软件系统中的问题,包括系统的功能性、可靠性、可维护性、可扩展性等方面。 ...

    数字化转型企业架构设计手册.pptx

    企业架构内容框架是企业架构设计的基础,旨在描述企业架构所关注的元素、元素之间的关系以及展现方式,包括元模型和视图两部分内容。企业架构内容框架是企业架构设计的核心,旨在指导企业架构设计的步骤、各步的输入...

    软件架构师教程,系统架构师讲义

    本教程首先会介绍软件架构的基本概念,如模块化、分层架构、微服务架构等,让读者理解架构设计的重要性。 二、架构模式与风格 架构模式是经过验证的设计解决方案,可以用来解决常见的软件问题。例如,客户端-服务器...

    软件架构师教程 软件架构

    0_架构师与设计师.pdf 01_软件流程实施方案选择.pdf 02_软件架构文档设计.pdf 03_软件架构风险管理.pdf 04_如何描述和评估软件架构质量.pdf 05_设计模式与软件架构设计.pdf 06_AOP开发实践.pdf 07_软件架构通用服务....

    IT架构规划方法(架构建模、业务、数据、技术、应用架构设计精讲).ppt

    架构建模方法总论 业务架构建模方法 数据架构建模方法 应用架构建模方法 技术架构设计方法

    应用架构设计.ppt

    架构基本概念 (Basic Concept) 架构设计目标 (Goals) 架构分类 (Categories) 企业级应用架构 (Enterprise Architecture) 架构组成 (Constitution) 架构设计原则 (SOA) 架构实现方法论 (Methodology) 火龙...

    华为企业架构之业务架构设计方法.pptx

    业务架构设计的目的在于确保企业所有人员对业务有一个共同理解,将宏观的企业战略进行分解,从战略范畴落实到战术范畴,通过运营支撑业务目标达成。 业务架构设计的原则包括: 1. 战略驱动:业务架构要符合XXX电网...

Global site tag (gtag.js) - Google Analytics