从汽车行业发展探索“SOA声明”(三 上)

从汽车行业发展探索“SOA声明”(三 上) 

中汽创智科技有限公司 – 基础软件部门

说明

文章转载请注明作者、出处以及版权声明。未经授权,禁止用于商业目的。本文章仅代表作者观点,不对其中包含或引用信息的准确性、可靠性或完整性提供任何明示或默示的承诺及保证。对于任何直接或间接采用、转载本文章信息产生的损失,作者不承担任何责任。

 

联系

如果您对本文档内容有任何建议,请发邮件至以下邮件列表。

 

邮件列表:

like@t3caic.com

autosemo-info@caam.org.cn

 

专业术语
专业术语 描述
面向服务设计范式(范型)

是达成面向服务战略目标的一条途径,其代表八大面向服务设计原则的集合,其进一步增强了分布式系统方案逻辑不同部分之间的共同性。

架构设计标准、设计模式和最佳实践都能够支持设计范式的成功应用。

 

面向服务 是包含一系列特定设计原则的设计范式。
面向服务架构 确立一种架构模型,其旨在通过将服务定位为表达方案逻辑的主要途径以支持与面向服务计算相关的战略目标的实现。
面向服务计算 代表新一代分布式计算平台
SOA技术架构 服务的基础物理设计
正 文
0.概述

SOA技术进入主流开发行列,其经历了十几年的天花乱坠的宣传,逐步形成系统的理论体系、成熟的设计方法和经验化工程流程。

随着汽车行业数字化、智能化和网联化时代的到来,汽车技术和IT技术迎来大融合。其中,车辆作为物联网的终端,其软件架构也需要与主流的物联网架构具有对等架构模型,构建以车辆为中心的车云一体架构,为用户提供个性化服务生态。因此,SOA技术也成为汽车行业技术人员关注的焦点。

SOA是一个泛化的、系统的和复杂软件工程设计思想和方法,业界对其至今没有统一的学术定义。如何提高对SOA理论体系的认知,加快SOA的文化转播,促进SOA在企业落地,在项目中技术实施,是汽车行业急切关心的话题。

SOA的实践方式是“知行合一”。这里我们首先从汽车行业发展的视角解读和探索“SOA声明”,以方便车企从业人员正确掌握SOA开发理念,减少SOA技术的实施风险。

 

1.“SOA声明”指导原则原文

 

我们遵循以下原则:

–     尊重组织的社会和权力结构。

–     认识到SOA最终需要在许多层面上进行变革。

–     SOA采用的范围可以不同。保持努力可控,并在有意义界限内。

–     产品和标准本身不会给你SOA,也不会为你提供面向服务范式。

–     SOA可以通过各种技术和标准来实现。

–     根据行业、事实和社区标准建立统一的企业标准和政策。

–     在外部追求一致性,同时允许内部的多样性。

–     通过与业务和技术利益相关者的协作来识别服务。

–     通过考虑当前和未来的使用范围将服务使用最大化。

–     验证服务是否满足业务需求和目标。

–     发展服务及其组织响应实际使用。

–     分离以不同速率变化的系统的不同方面。

–     减少隐式依赖并发布所有外部依赖关系,以增强稳健性并减少变更带来的影响。

–         在每个抽象层次上,围绕一个内聚和可管理的功能单元组织每个服务。

 

2.“SOA声明”指导原则原文-探索

 

–    我们遵循以下原则:

思想解读:

到目前为止,该声明已经形成了一个总体愿景,以及与愿景相关的一套核心价值观,声明的其余部分包括一套为坚持价值观和实现愿景而提供的指导原则。

重要的是要记住,这些是专门支持这一声明的指导原则,它们不应与构成面向服务的设计原则混淆。

行业解读:

该指导原则适用于希望采用面向服务的汽车行业运营主体,该指导原则可以帮助企业高管或员工速快认知面向服务的思想和方法,以便于实施好SOA方法和方案路线。同时,也可以作为SOA文化进行企业宣讲。

 

–    尊重组织的社会和权力结构

思想解读:

最常见的SOA陷阱之一是正在实现以技术为中心的举措。这样做几乎总会导致失败,因为我们根本没有为不可避免的组织影响做好准备。

采用面向服务是改变我们的业务自动化方式。然而,无论我们为实现这一转型工作采用什么样的计划,我们必须始终从对组织、组织结构、目标和文化的理解和欣赏开发。

采用面向服务是一种非常人性化的体验。它需要权威认识的支持,并要求IT文化采纳以战略、社区为中心的理念。我们必须充分认知和规划这一层次的组织变革,以便获得实现面向服务目标状态所需的必要的长期承诺。

这些类型的因素不仅有助于我们确定如何最好地开展SOA计划,它们还会进一步协助我们定义最合适的范围和采纳方法。

行业解读:

车企员工的文化教育、团队合作和执行纪律等范围内没有做好准备,仅以SOA项目或SOA技术推动面向服务的实施,是不可行的。

车企对SOA的采纳,应从对SOA文化、SOA战略目标和SOA价值的理解和欣赏出发,配合敏捷的组织结构和一套公司治理体系。这些需要企业高层领导从公司长期战略出发,在企业一定有意义的范围内逐步实施和变革。

 

–    认识到SOA最终需要在许多层面上进行变革;

思想解读:

有句谚语“成功是给有准备的人的”。从SOA项目中吸取的第一课就是我们必须充分理解并对采用面向服务带来的变化范围进行规划和准备。

面向服务通过将软件程序定位为具有长期、可重复业务价值的IT资产,从而构建自动化解决方案的方法。根据可能利用云基础设施的程度,可能需要大量的前期投资来创建这些资产组成的环境。此外,需要持续的承诺来维持和利用其价值。所以,就在IT门户之外,我们需要如何投资、衡量并维护IT企业中的系统。

另外,由于面向服务引入了定位为企业资源的服务,我们将如何拥有系统的不同部分并调整其设计和使用情况都会发生一定变化,更不用说改变基础设施,以保证连续的可扩展性和可靠性。

成熟的SOA治理系统和服务技术可以解决这些问题。

行业解读:

车企采用面向服务会给车端的基础设施(大算例性能平台、高带宽通讯网络等)、软件集成模式、软件开发流程、软件标准、平台工具和软件管理模式等方面都带来影响。

同时,采用面向服务也会给车企组织结构、文化体系、公司规范体系和公司治理体系等方面提出新的变革诉求。

SOA在IT行业已广泛应用和实践,在汽车行业仅刚刚开始。存在标准缺失、平台工具缺失和适配车端的中间件也不完善的风险,采用过程将面临一定技术挑战。因此,需要车企有持之以恒的决心不断推进。

 

–    SOA采用的范围可以不同,保持努力可控,并在有意义界限内;

思想解读:

一个普遍观念是,为了实现面向服务计算的战略目标,企业必须采取面向服务的方式。这意味着在整个IT企业中创建并实现设计和行业标准,从而创建具有本征可互操作服务的企业服务目录。虽然这个理想没有任何问题,但对于许多组织,特别是那些拥有较大IT企业的组织来说,这个目标并不现实。

需要确定任何给定SOA采纳工作最合适的范围,作为与实际考虑因素相集合的规划和分析结果,例如上述对组织结构、权限领域和文化变革的影响。在规范阶段考虑平衡范围支撑点,有助于根据组织的成熟度和准备状态确定适当的初始采用范围。

这些因素有助于进一步确定可管理的采用范围。但是,对于任何采用所花费的功夫,均会产生将IT企业推向理想战略目标状态的环境,且范围必须是有意义的。换句话说,它必须是有意义的 “跨竖井”,以便可以在预定义的边界内相互交付服务集合。换句话说,我们要创造“服务大陆”,而并非可怕的“服务岛”。

在同一IT企业领域内构建独立拥有和管理的服务目录这一概念是基于域目录设计模式的,该模式最初是作为SOA设计模式(基于经验验证的设计方法)目录的一部分发布的。这种方法减少了许多通常归因于“大爆炸”的SOA项目风险,并进一步减轻了对组织和技术变化的影响(因为影响仅限于分段和管理范围)。它也是一种可分阶段的方法,一次可以创建一个域服务目录。

行业解读:

大型车企采用面向服务一开始应避免“大爆炸”式企业范围全面推广,众多IT在实践中发现因企业组织成熟度水平较低,如教育、团队协作、纪律水平和平衡范围(团队协作、教育和纪律水平程度三者达到有意义可管理的程度)支撑不足,是SOA项目真正落地面临巨大风险。

大型车企采用面向服务时,可根据可管理的采用范围,分阶段和分区域在IT企业领域内构建多个独立拥有和管理的服务目录,可借助“域目录设计模式”给予指导和实施。

比如,可以先从车身控制域、自动驾驶域或智能座舱域,在组织成熟度水平达到一定程度,可以向其他域扩展,直至扩展到云端生态(云端标准体系相对完整成熟),最终完成内外部生态的资源的服务化。

 

–    产品和标准本身不会给你SOA,也不会为你提供面向服务范式;

思想解读:

这个指导原则涉及两个分开但非常相关的观念。第一个是可以用现代技术产品购买SOA,第二个是一个假设,即采用行业标准(如XML、WSDL、SOAP等)自然会产生面向服务的技术架构。

供应商和行业标准社区已被认证为基于非专有框架和平台构建现代服务技术的创新。从服务虚拟化到云计算和网格计算的一切都有助于提高构建复杂的面向服务解决方案的潜力。然而,这些技术都不是SOA专业的。利用这些技术,你可以像在自己服务器上一样轻松地在云上构建基于竖井的系统。

为了实现面向服务的技术架构,需要成功应用面向服务,因此不存在所谓的“盒子里的SOA”。反过来,我们所设计和构建的一切都是由业务的独特方向、愿景和业务需求来驱动。

行业解读:

车企在车端平台采用采用面向服务时,所采用的SOME/IP、DDS和接口元模型(Field/Event/Notification/Method)标准不会给企业带来面向服务的技术架构。采用的平台技术(遗憾的是车端还没有面向服务的应用开发平台,如Java/.NET平台)也不会一劳永逸地给企业带来面向服务的技术架构。

为了实现面向服务的技术架构,一定需要成功应用面向服务的设计思想和方法,且基于业务场景的驱动和需求输入。

 

–    SOA可以通过各种技术和标准来实现;

思想解读:

面向服务是技术中立和供应商中立的范式。面向服务的架构是技术中立和供应商中立的架构模型。

面向服务的计算可以视为分布式计算的一种特殊形式。

因此,可以使用适用于分布式计算的任何技术和行业标准来构建面向服务的解决方案。

虽然一些技术(特别是那些基于行业标准的技术)可以增加应用一些面向服务设计原则的潜力,但实际上是实现业务需求的潜力,该潜力最终决定了最合适的技术和行业标准。SOA设计模式,如双协议和并发锲约,支持在同一服务目录中使用和标准化替代服务技术。

行业解读:

车企采用面向服务实现面向服务的技术架构,该形式的技术架构是技术中立和供应商中立的架构模型。可以帮助车企营造一个供应商多元化的局面,促进车企创新技术和最优应用程序的利用。

同时,业务应用领域的特征和业务需求的特质决定了业务实现过程中最合适的技术和行业标准。这些技术和行业标准在制定过程中很好的应用了面向服务设计原则,所以其使用有利于企业面向服务战略的落地。

 

–    根据行业、事实和社区标准建立统一的企业标准和政策;

思想解读:

行业标准代表非专有技术规范,有助于创建一致的技术架构基线特征(如传输、接口、消息格式等)。但是,仅仅使用行业标准并不能保证服务的本征可互操作性。

要使两个软件程序完全兼容,需要遵守其他约定(如数据模型和策略),这就是为什么IT企业必须创建和执行设计标准。未能适当标准化并调整特定领域内服务的标准化会导致许多战略利益所依赖的互操作性结构开始瓦解。

这一指导原则主张使用企业设计标准和设计原则,如标准化服务契约和服务松耦合。同时也提醒我们,只要可能、可行,定制设计标准应以业界和社会一致使用的标准和面向服务设计原则为基础。

行业解读:

车企采用面向服务需要充分利用行业标准或更为广泛的工业标准。同时,也必须基于面向服务设计原则为基础,服务契约理论为指导,创建企业服务设计标准,以满足软件程序的兼容性,提高服务的互操作性,以支持面向服务战略价值和企业战略目标的实现。

 

3.  总结展望

 

以上,对企业采用面向服务给出指导原则。其指出采用面向服务过程中,需要权威人士或企业高管的支持,其给企业带来全方面的变革,不仅仅技术层面。同时,SOA采用时的应用范围、行业标准、平台产品或企业标准都是SOA落地要考虑的关键要素,需要根据业务需求和实施环境综合决策。

后期将对”SOA声明”中的指导原则继续进行系列解读和探索。

 

参考

[1] http://www.soa-manifesto.org

[2] 《SOA Principle of Service Design》[USA] Thomas

 

0

评论0

请先
显示验证码

社交账号快速登录