Skip to main content
QUICK REVIEW

[논문 리뷰] Analysis of Service-oriented Modeling Approaches for Viewpoint-specific Model-driven Development of Microservice Architecture

Florian Rademacher, Sabine Sachweh|arXiv (Cornell University)|2018. 04. 26.
Software System Performance and Reliability참고 문헌 18인용 수 7
한 줄 요약

이 논문은 마이크로서비스 아키텍처(MSA)의 시각에 특화된 모델 기반 개발(MDD)에 적용 가능한 의미적으로 동일한 모델링 개념을 식별하고 군집화하기 위해 기존의 서비스 지향 아키텍처(SOA) 모델링 접근법을 분석한다. 이 연구는 48개의 적용 가능한 개념 군집을 MSA-MDD의 세 가지 시각—데이터, 서비스, 운영—에 매핑하여 향후 MSA-MDD 메타모델 및 모델링 언어를 위한 개념적 기반을 제공하며, 코드 생성과 시스템 설계를 지원한다.

ABSTRACT

Microservice Architecture (MSA) is a novel service-based architectural style for distributed software systems. Compared to Service-oriented Architecture (SOA), MSA puts a stronger focus on self-containment of services. Each microservice is responsible for realizing exactly one business or technological capability that is distinct from other services' capabilities. Additionally, on the implementation and operation level, microservices are self-contained in that they are developed, tested, deployed and operated independently from each other. Next to these characteristics that distinguish MSA from SOA, both architectural styles rely on services as building blocks of distributed software architecture and hence face similar challenges regarding, e.g., service identification, composition and provisioning. However, in contrast to MSA, SOA may rely on an extensive body of knowledge to tackle these challenges. Thus, due to both architectural styles being service-based, the question arises to what degree MSA might draw on existing findings of SOA research and practice. In this paper we address this question in the field of Model-driven Development (MDD) for design and operation of service-based architectures. Therefore, we present an analysis of existing MDD approaches to SOA, which comprises the identification and semantic clustering of modeling concepts for SOA design and operation. For each concept cluster, the analysis assesses its applicability to MDD of MSA (MSA-MDD) and assigns it to a specific modeling viewpoint. The goal of the presented analysis is to provide a conceptual foundation for an MSA-MDD metamodel.

연구 동기 및 목표

  • 기존의 서비스 지향 아키텍처(SOA) 모델링 접근법이 마이크로서비스 아키텍처(MSA) 모델 기반 개발(MDD)에 어떻게 적용 가능한지 조사하기 위해.
  • MSA 설계 및 운영에 관련된 SOA-MDD 접근법에서 유래한 모델링 개념을 식별하고 의미적으로 군집화하기 위해.
  • MSA-MDD에 적용 가능한 개념 군집을 데이터, 서비스, 운영이라는 세 가지 구분된 모델링 시각에 할당하기 위해.
  • 코드 생성과 체계적인 소프트웨어 공학을 지원하는 미래의 MSA-MDD 메타모델을 위한 개념적 기반을 마련하기 위해.
  • 성숙한 SOA-MDD 연구와 새로운 MSA-MDD 관행 사이의 격차를 메우기 위해 이전의 모델링 구성요소를 이식 가능한 방식으로 추출하기 위해.

제안 방법

  • 서비스 설계 및 운영과 관련된 100개의 후보 모델링 개념을 추출하기 위해 10개의 기존 SOA 모델링 접근법을 체계적으로 조사하였다.
  • 세 단계 분석 프로토콜을 적용: 개념 식별, 다양한 접근법 간 동일한 의미의 개념 군집화, SOA-MSA 간 차이를 바탕으로 한 적용 가능성 평가.
  • MSA 원칙(예: 서비스의 자가 포함성, 독립적 배포, 팀 자율성)과의 일치 여부를 평가하여 각 개념 군집이 MSA-MDD에 적용 가능한지 평가하였다.
  • 48개의 적용 가능한 개념 군집을 데이터(데이터 구조 및 영속성), 서비스(인터페이스, 계약, 행동), 운영(배포, 모니터링, 런타임 관련 요소)이라는 세 가지 모델링 시각에 매핑하였다.
  • 일관성과 주관성을 줄이기 위해 체계적이고 반복 가능한 프로토콜을 사용하였으며, 동료 검증 및 특수 케이스 해결을 포함하였다.
  • 향후 작업으로 AjiL과 같은 실용적 접근법 및 경험 보고서를 활용하여 메타모델을 보완하여 실제 적용 가능성과의 연계를 강화할 계획이다.

실험 결과

연구 질문

  • RQ1기존의 SOA 모델링 접근법이 마이크로서비스 아키텍처(MSA) 모델 기반 개발(MDD)에 어느 정도 적용 가능한가?
  • RQ2SOA-MDD에서 유래한 어떤 모델링 개념들이 의미적으로 동일하며, 서로 다른 접근법 간에 군집화될 수 있는가?
  • RQ3SOA와 MSA 간의 핵심 아키텍처적 차이를 고려할 때, 이러한 개념 군집 중 어떤 것이 MSA-MDD에 적용 가능한가?
  • RQ4적용 가능한 개념 군집을 MSA-MDD에서 구분된 모델링 시각에 체계적으로 할당하는 방법은 무엇인가?
  • RQ5이 분석을 통해 표준화된 MSA-MDD 메타모델 및 모델링 언어 개발을 지원할 수 있는 개념적 기반은 무엇인가?

주요 결과

  • 분석을 통해 서비스 설계 및 운영과 관련된 100개의 후보 모델링 개념을 10개의 SOA 모델링 접근법에서 식별하였다.
  • MSA-MDD에의 적용 가능성을 평가한 결과, 48개의 개념 군집이 의미적 및 기술적으로 마이크로서비스 환경으로 이식 가능하다는 것이 확인되었다.
  • 이러한 48개의 군집은 데이터, 서비스, 운영이라는 세 가지 모델링 시각에 체계적으로 할당되어 MSA-MDD에서 시각 기반 모델링을 가능하게 하였다.
  • 연구는 SOA-MDD가 성숙한 기반을 지니고 있음에도 불구하고, 독립적 배포 및 팀 자율성과 같은 핵심적인 MSA 전용 고려사항은 기존 개념의 보다 신중한 적응이 필요하다는 점을 드러냈다.
  • 결과는 코드 생성 및 도구 지원을 지원하는 표준화된 MSA-MDD 메타모델 개발을 위한 체계적이고 근거 기반의 개념적 기반을 제공한다.
  • 분석은 향후 실용적인 MSA 구현 사례(예: AjiL)를 활용한 보완이 필요하며, 이는 낮은 관련성의 개념을 제거하고 실제 적용 가능성과의 연계를 강화하기 위함이다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.