软件行业从软件开发到软件工程的转变,使得架构设计师成为SOA取得成功的重要角色。因此,首先我们看看要设计一个成功的SOA都需要哪些架构设计师?
总设计师——他应该有高水平的技术、全面的商业知识和伟大的领导才能。这个人不但要了解SOA的方方面面,还要能用业务术语向业务部门、用高层次的技术和业务术语向CIO、尽量详细地向技术人员解释SOA的价值。至于该角色在设计活动中的参与程度则可以根据公司和SOA建设的规模而定。但是不管怎么说,这个人至少要有足够的知识,可以随时参加到设计活动中来。从领导者的角度来说,这个人很可能是建立并实施治理、把IT理念从编程转向工程、建立SOA路线图,以及其它文化因素变动的推动者。
企业架构师——在小型或中型公司里,总设计师和企业架构师(EA)可以由同一个人担当。在大型公司里,可以设立一名以上的EA。EA要在自己的领域和业务方面有很深的了解,可以进行跨领域工作,这样才能保证所设计的架构能够同时满足业务与IT的需求。维基百科上说得好:
“企业架构师的任务是利用这些知识保证业务与IT能够协调工作。企业架构师是企业的业务目标、战略、过程与IT策略的联系人,他利用多种架构模型或视图将这一切展示出来,并描述如何有效、持久、灵活地满足企业当前与未来的需求。”
领域架构师——领域架构师是专精于某一领域技术的架构师。他们是相关领域的专家。需要这类人才的领域包括:
· 应用
· 信息
· 安全
· 设施
· 业务过程
· 网络
· 集成
公司规模的大小也决定了这些职位将作为单独的角色存在,还是将几个职位合并为一个范围更广的职位。比如,较小型公司可以将应用、信息和集成归为同一个职位,把设施和网络归到另一个职位。但是不管实际设立多少职位,所有这些领域都是必须考虑周全的。各个领域都是架设SOA所必不可少的重要因素。
方案设计师——方案设计师要有关于具体技术甚至业务应用的实际经验。比如,可以是Java、.Net、后端系统、Web应用、财务体系、电子商务系统、分布式处理等方面的设计师。并且,和领域架构师一样,这个职位的设定同样取决于公司的规模与预算。
架构团队
如上所述,一个架构团队需要以下角色:
· 总设计师
· 企业架构师
· 领域架构师
· 方案设计师
至于在这些岗位上具体需要多少人则由公司根据实际情况而定。比如,一个大约200人的开发团队,其架构团队可以包括一位总设计师、一位EA、一位领域架构师和一位方案设计师。
笔者曾经在某企业架构研究会上看到一个案例,关于一家财富排名100企业的全球化SOA部署。他们的团队中有超过100名架构师,在许多业务领域上设立多名EA,甚至总设计师也有数名。这样的团队是无法做好的。
架构理念
总架构师可以按自己喜欢的方式任意组织团队,但是有一点不能乱来,那就是要有正确的理念。架构团队的出发点必须是SOA所要解决的目标问题,即业务需求。如果团队失去这个重心,那么SOA就会沦落为一个IT项目,而不是整个企业的重要任务。必须在整个项目中灌输业务的精神,这样才能真正发挥SOA的优势。
此外,架构团队还要保证他们没有被别人视为(不现实、限于理论的)象牙塔团队。SOA需要架构师们从别人无法到达的高度解释一些理念问题。架构团队要成为企业的动力,推动企业从传统的、独立的应用开发方式转向更具协作性的工程方式,这样企业才能把眼光放得长远,而不局限于当前许多企业还在使用的、目光短浅的开发方式。
另外,架构团队必须足够开放。他们要评估当前的业务过程、当前的IT实践、当前的系统,然后指出所需做出的改动,根据SOA路线图推动企业走向业务与IT共同建立的蓝图。如果不改变IT的开发方式,那么整个开发团队可能无法理解SOA与Web服务的不同之处。在架设与管理SOA方面,知识的培养与传播也是非常关键的。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
华为软件开发云平台:“一多二全三高”能否满足企业的需求?
在2017年3月22日,华为青岛软件开发云上线大会上,华为也表示,中国的软件与信息服务业,2016年总收入达到4.9万亿,软件从业人员是570万。
-
企业架构师角色转变:有失也有得
云和移动时代的到来已经改变了公司应用IT的方式,也因此改变了企业架构师的角色。他们跟业务的协作也越来越紧密,而不是仅仅专注于IT。
-
事件驱动框架和SOA在空军的应用
空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。
-
揭秘New Relic APM技术细节
New Relic应性能管理(APM)套件主要用于Web软件开发。它允许用户在面向服务的架构(SOA)上跟踪关键事务性能,并且支持代码级别的可见性来评估特定代码段和SQL语句对性能的影响