基于交互流建模语言的微服务架构建模研究

2018-02-01 11:46邓禹刘晓燕
软件导刊 2018年1期
关键词:概念模型组件架构

邓禹+刘晓燕

摘要:

微服务架构以其先进的架构风格将应用分割成细小的服务,而MDA(Model Driver Architecture)集成化的模型开发方法也为解决软件开发效率和可移植性问题提供了实现机制。结合模型驱动实现了微服务架构建模开发,将微服务建模分为概念模型和交互模型两个过程。基于交互流建模语言定义概念元模型,设计了模型转换方法,将概念元模型映射到交互模型,并根据其提供的组件设计出一种微服务模型重用机制,提高了开发效率。最终的交互模型以图形化方式显示,提供了直观的模型视图。

关键词:

微服务架构;MDA;交互流建模语言;模型转换;概念元模型

DOIDOI:10.11907/rjdk.172148

中图分类号:TP319

文献标识码:A文章编号文章编号:1672-7800(2018)001-0165-04

Abstract:The Microservice architecture advocates dividing the application into small services with its advanced architectural style,The MDA integrated model development method also provides a mechanism to solve the problem of software development efficiency and portability.Microservice architecture development process and model building are the key research content.On the basis of,this article focuses combined with the model driver to achieve Microservice architecture modeling and development, Microservice modeling is divided into conceptual model and interaction model of the two processes.At the same time, the conceptual meta-model is defined based on the interaction flow modeling language,the design model transformation method maps the conceptual meta-model to the interactive model,and according to the components provided by the design of a Microservice model reuse mechanism,improve development efficiency.The final interaction model is shown in graphical representation, providing an intuitive model view.

Key Words:microservice architecture;model driver architecture;interaction flow modeling language; model transformation;conceptual meta-model

0引言

微服務架构模型[1]将应用分割成一系列细小的服务,每个服务专注于单一的业务功能,每个微服务都是一个架构模型。但由于缺少一种简洁高效的架构方法,使得手工编码仍是主要的开发手段,开发出的微服务应用存在移植性低、维护性差的缺点。MDA[2]的核心内容就是建模,从代码开发为中心过渡到模型架构为中心,并分离系统的业务逻辑和平台,将设计阶段的重点放在业务逻辑上,是实现系统自动转换的重要工具。MDA框架中的平台独立模型PIM和平台相关模型PSM是模型架构的关键技术[3]。模型转换解决模型到模型及模型到代码的映射方法,并将方法映射在不同的技术平台。交互流建模语言作为最新的建模开发语言,以其强大的交互模型和组件完成复杂的建模开发。通过交互设计中的关注点分离(与微服务架构中的服务分割相同)来改进开发过程,同时改善内容、界面组合、交互和导航控制以及与业务逻辑的连接,增强模型组件的重用设计和建模的开发效率。

本文通过模型驱动架构的设计,以交互流建模语言为基础,结合微服务架构设计特点,建立了一套微服务架构开发方法,设计出微服务重用模块,以实现模型组件的重复利用。利用交互流建模语言提供的扩展性组件设计微服务架构模型转换规则,提供了一种微服务开发思路。

1相关研究

1.1微服务架构建模

模型是有关属性的模拟或表示,微服务围绕业务能力构建,能够完全自主化部署[4]。微服务架构模型可以采用模块化思想分步建模,将建模设计分为微服务概念模型(Mircoservice Conceptual Model,MSCM)和微服务交互模型(Mircoservice Interaction Model,MSLM)两个过程。MSCM是一个既抽象又与平台无关的模型(PIM),而MSIM则是具体的平台相关模型(PSM),完成微服务开发的用户交互和应用组建。由MSCM到MSIM,符合模型驱动架构过程中PIM到PSM 的模型映射过程,如图1所示。

在模型驱动的开发过程中,MSCM是一个M1层模型,需要定义一个M2层元模型(Meta-model)对概念模型进行描述。因此,整个开发建模过程的重点是概念元模型的建立和模型转换。endprint

猜你喜欢
概念模型组件架构
基于FPGA的RNN硬件加速架构
无人机智能巡检在光伏电站组件诊断中的应用
功能架构在电子电气架构开发中的应用和实践
新型碎边剪刀盘组件
U盾外壳组件注塑模具设计
基于“认知提升”的体系作战指挥概念模型及装备发展需求
LSN DCI EVPN VxLAN组网架构研究及实现
风起新一代光伏组件膜层:SSG纳米自清洁膜层
一种基于FPGA+ARM架构的μPMU实现
基于PSR概念模型的稀土资源安全评价