SOA敏捷架构的TOGAF层次化迭代建模
倪 枫
【摘 要】摘要:针对面向服务(SOA)敏捷架构演进周期短、业务与IT对齐要求高的特点,提出一套基于开放组架构框架(TOGAF)的层次化迭代建模方法:外层迭代通过敏捷演进闭环使得企业架构能够随架构愿景的调整敏捷地实施增量化更新;内层迭代通过三维迭代矩阵建立架构模型组在需求、语义、粒度3个方面的对齐机制。对内层迭代进一步探讨了基于BPM+SOA的业务架构、信息系统架构及技术架构模型组语义对齐建模方法与典型建模过程,为SOA敏捷架构提供了一种可迭代的、阶段化交付的、业务流程与信息系统对齐的实现方案。
【期刊名称】上海理工大学学报 【年(卷),期】2018(040)004 【总页数】8
【关键词】企业架构;开放组架构框架;面向服务架构;敏捷迭代开发 【文献来源】https://www.zhangqiaokeyan.com/academic-journal-cn_journal-university-shanghai-science-technology_thesis/0201270225893.html
基金项目:国家自然科学基金资助项目(61403255);上海理工大学教师教学发展研究项目(CFTD18020Y);上海理工大学“大学生创新创业训练计划”资助项目
近三十年来,借助系统架构理论研究并融入现代企业管理方法,企业信息化架构的研究取得了诸多进展[1-3]。随着市场环境的瞬息万变和企业竞争的加剧,尤其是近年来互联网成为企业间的主要协作环境之后,网络的开放性和协作的
动态性使得客户需求变更、业务流程调整、硬件资源升级更加频繁,这对企业架构提出了新的要求。一方面,高成长性带来企业愿景和需求的持续变化,要求架构具有不断演进的能力;另一方面,频繁的业务升级与流程优化需要信息系统和技术层面的及时跟进和支撑,企业需要更“敏捷”的架构,这一需求越来越受到关注。
1 敏捷架构
Lucke等在2012年总结了企业架构研究领域的13个关键热点问题[4],其中就包括架构设计中架构模型随业务环境变化的敏捷性迭代演化问题,然而,这个问题至今没有明确的、被广泛认可的解决方案。与传统企业架构相比,敏捷架构的“敏捷性”主要体现在以下两个方面:一方面,根据顶层需求的不断变化更快地进行架构整体迭代,即敏捷演进;另一方面,业务需求调整时更快地提供与业务匹配的IT应用系统,即业务与IT对齐。由此提出的敏捷架构设计的概念和方法[5-6]融合来自软件工程领域的敏捷开发方法、业务流程管理(business process management,BPM)[7]和面向服务架构(service oriented architecture,SOA)[8]的设计思想,其适用性体现在两个方面。 一方面,敏捷开发方法与SOA结合解决敏捷演进问题。敏捷开发方法提供一种与传统瀑布式方法不同的适应型方法,认为业务需求始终是变化的,而且这种变化是无法预知的。因此架构开发者并不试图去限制或者预测需求的变化,而是在需求变化发生的时候迅速地对架构设计作出调整和演进以适应这种变化,即敏捷演进。而通过SOA服务组件的复用和组合是实现敏捷演进的有效途径,且已有了一些成功的应用实践[9]。
另一方面,SOA与BPM[5, 10]方法组合解决业务与IT对齐问题。尹裴等[11]
指出,成功的SOA架构设计必须是IT技术人员与业务流程管理人员合作的结果,由BPM需求驱动的SOA才是有生命力的,才能实现企业信息系统快速有效地响应业务环境变化,避免企业架构中“业务与IT两张皮”的失配现象。 然而,目前大多数SOA敏捷架构研究都有重技术轻方法论的特点。研究主要集中在SOA的实现技术上,如服务的描述与调用、服务相似度计算、服务的匹配和组合算法等,而对如何实施企业SOA敏捷架构的设计与开发较少有系统化的方法论研究。在方法论层面,值得参考的工作是盛津芳提出的一种基于SOA的模型驱动快速开发架构[12],将架构开发过程划分为两个正交层面:垂直维度包括5个建模层次(基础设施服务层、适配器服务层、业务服务层、业务流程层、展示层),水平维度包括4个建模阶段(业务建模、服务建模、流程编排、服务实现)。本文结合目前业界主流的开放组架构框架(the open group architecture framework,TOGAF)[13]及 BPM+SOA 建 模 方 法 ,对盛津芳的二维正交开发过程进行改进和扩充。针对企业架构的敏捷演进和业务IT对齐问题,提出一套针对SOA敏捷架构开发的TOGAF层次化迭代建模方法,由外层敏捷演进迭代闭环促进架构整体的敏捷演进,由内层三维迭代矩阵改善业务与IT的对齐问题。
2 TOGAF建模
2.1 TOGAF
企业架构这一概念提出以来,世界上已有数十个组织陆续发布了从专业到一般各种类型的企业架构框架标准[14],然而大多数企业架构设计思想停留在底层信息系统层面,没有上升到整个企业战略层面。企业架构敏捷性的提高必须从架构全局进行设计与规划[15]。本文使用的开放组架构框架TOGAF是一整套
企业战略导向、业务流程驱动直至信息系统与技术层实施的解决方案和架构方法论,强调逐步迭代细化的架构开发方法,与SOA敏捷架构的设计与开发有很多契合点。
受到国际主流厂商(IBM,HP,SUN等)的认可和推动,TOGAF 9.1版本发布至今已成为企业架构的主流框架标准,目前全世界73%的企业正在使用(或已经使用过)TOGAF建模企业架构[16]。国内在企业架构方面虽起步较迟,但发展尤为迅速,华为、国家电网等越来越多的大型企业遵循TOGAF 框架和方法构建企业架构[17]。基于TOGAF的SOA敏捷架构建模方法在产业界和学术界也有相关研究。Yuliana等[18]在一个采矿企业的TOGAF架构建模中使用敏捷开发方法对基线架构与目标架构进行迭代式开发,并在迭代过程中强调业务与IT的对齐,但没有深入研究各架构模型组之间的建模关联。史翔等[19]基于TOGAF框架对一个燃气企业进行了SOA信息化架构设计,但缺乏建模过程的详细说明。本文针对以上问题,基于TOGAF,在SOA敏捷架构开发的应用中,关注各架构模型组元模型层语义关联,给出了一套层次化迭代建模过程。 TOGAF对架构开发过程和架构开发内容分别给出了两套通用的参考标准:一套完整的架构开发过程方法论ADM(architecture development method)和一套定义了架构内容的元模型框架ACF(architecture content framework)[13, 20]。
基于ADM的架构开发过程是一个可靠的、行之有效的分阶段逐步实现的迭代式过程,用以开发能够满足战略需求的企业架构。ADM将企业架构建模过程划分成以架构需求管理为中心的9个建模阶段,根据架构需求的逐步明确化和架构粒度的由粗到细,支持循环迭代的建模方式。如图1左边部分所示,ADM
整个环状迭代周期为外层迭代,环状周期中间也可以包括若干内层迭代。 基于ACF的架构开发内容元模型是在元模型层面定义的一个形式化的抽象内容结构,用以保证ADM全过程建模内容的一致性,并为希望使用架构工具实施架构的组织提供指导[13]。ACF通过对架构内容元模型的定义,使架构开发中的各视角、各粒度模型实例能在一个共有的本体基础上定义、构建并呈现,从而保证整个架构描述的语义一致性以及内容完整性。 2.2 以BIT为核心的ADM
TOGAF依据模型驱动开发理论将企业架构划分成3个视角架构:业务架构(business architecture)、信息系统架构(information systems architecture)、技术架构(technology architecture)[13],本文合并称为BIT视角架构。对应的3个架构建模阶段构成了ADM的核心,并在ACF中分别对应一部分内容元模型,如图1所示。基于TOGAF的SOA敏捷架构开发过程,即以ADM为全生命周期参考模板,由企业架构愿景驱动,以需求为中心对BIT架构进行迭代式设计与开发。
业务架构(B):描述业务组织结构、业务执行节点、业务功能、业务协作角色、业务流程以及由业务协作关系识别出潜在的业务服务。得益于SOA的信息系统架构治理,使得业务架构层面不用考虑与底层资源和遗留系统的交互细节,而把重点放在业务流程的优化设计和敏捷调整上。
信息系统架构(I):根据业务架构模型及其对潜在业务服务的定义,设计开发SOA信息系统架构,包括与业务服务对应的基本服务架构、逻辑服务组件以及数据实体逻辑模型等。SOA避免了企业信息系统层面出现烟囱式、功能重叠、信息孤岛式的情况。
SOA敏捷架构的TOGAF层次化迭代建模



