首页> 外文期刊>The Journal of Systems and Software >A dataflow-driven approach to identifying microservices from monolithic applications
【24h】

A dataflow-driven approach to identifying microservices from monolithic applications

机译:一种数据流驱动的方法,用于从整体应用程序中识别微服务

获取原文
获取原文并翻译 | 示例
           

摘要

Microservices architecture emphasizes employing multiple small-scale and independently deployable microservices, rather than encapsulating all function capabilities into one monolith. Correspondingly, microservice-oriented decomposition, which has been identified to be an extremely challenging task, plays a crucial and prerequisite role in developing microservice-based systems. To address the challenges in such a task, we propose a dataflow-driven semi-automatic decomposition approach. In particular, a four-step decomposition procedure is defined: (1) conduct the business requirement analysis to generate use case and business logic specification; (2) construct the fine-grained Data Flow Diagrams (DFD) and the process-datastore version of DFD (DFDPS) representing the business logics; (3) extract the dependencies between processes and datastores into decomposable sentence sets; and (4) identify candidate microservices by clustering processes and their closely related datastores into individual modules from the decomposable sentence sets. To validate this microservice-oriented decomposition approach, we performed a case study on Cargo Tracking System that is a typical case decomposed by other microservices identification methods (Service Cutter and API Analysis), and made comparisons in terms of specific coupling and cohesion metrics. The results show that the proposed dataflow-driven decomposition approach can recommend microservice candidates with sound coupling and cohesion through a rigorous and easy to-operate implementation with semi-automatic support. (C) 2019 Elsevier Inc. All rights reserved.
机译:微服务架构强调采用多个小型且可独立部署的微服务,而不是将所有功能都封装在一个整体中。相应地,面向微服务的分解已被认为是一项极富挑战性的任务,它在开发基于微服务的系统中起着至关重要的先决作用。为了解决此类任务中的挑战,我们提出了一种数据流驱动的半自动分解方法。具体来说,定义了一个四步分解过程:(1)进行业务需求分析以生成用例和业务逻辑规范; (2)构造表示业务逻辑的细粒度数据流程图(DFD)和DFD的过程数据存储版本(DFDPS); (3)将流程和数据存储之间的依赖关系提取到可分解的句子集中; (4)通过将过程及其紧密相关的数据存储进行聚类,将候选微服务识别为可分解语句集中的单个模块。为了验证这种面向微服务的分解方法,我们在货物跟踪系统上进行了案例研究,该案例是由其他微服务识别方法(Service Cutter和AP​​I Analysis)分解而成的典型案例,并在特定耦合和内聚度量方面进行了比较。结果表明,所提出的数据流驱动分解方法可以通过具有半自动支持的严格且易于操作的实现,推荐具有良好耦合和凝聚力的微服务候选对象。 (C)2019 Elsevier Inc.保留所有权利。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号