Skip to main content
QUICK REVIEW

[論文レビュー] What Should You Know Before Developing a Service Identification Approach

Anas Shatnawi, Hafedh Mili|arXiv (Cornell University)|Jan 1, 2017
Software Engineering Research参考文献 12被引用数 1
ひとこと要約

この論文は、レガシーオブジェクト指向ソフトウェアにおけるサービス同定アプローチの基盤となる枠組みを提供し、根幹的な概念的・方法論的課題に取り組む。5つのサービスタイプ(プロセス、ビジネス、ヘルパー、IT、能力)の分類を提案するとともに、ソースコードからサービスをリバースエンジニアリングするための3つのアルゴリズム的戦略(事前同定、事中同定、事後同定)を導入し、サービスタイプと実装アーティファクトおよびアーキテクチャ知識の整合性を重視する。

ABSTRACT

In this paper, we answer a set of research questions that are required to develop service identification approach based on the analysis of object- oriented software. Such research questions are: (1) what is a service, (2) how are services different from software components, (3) what are types of services, (4) what are existing service identification approaches that consider service types into account, and (5) how to identify services based on the object-oriented source code with respect to their types. Our methodology is based on performing a literature review to identify the answers of these research questions. Also, we propose a taxonomy of service types.

研究の動機と目的

  • サービスとは何か、およびソフトウェアコンポonentとどう異なるかといった基本的概念を明確化すること。
  • 既存のサービス同定アプローチにおいて標準化されたサービスタイプ分類が欠如しているという問題に取り組むこと。
  • オブジェクト指向ソースコードからリバースエンジニアリング可能なサービスタイプを同定・分類すること。
  • サービスタイプ認識をサービス同定プロセスに統合するための構造的メソドロジーを提言すること。
  • 原則的でタイプに配慮した同定技術を通じて、レガシーシステムのサービス指向アーキテクチャ(SOA)への移行を支援すること。

提案手法

  • 既存のサービスおよびサービス分類に関する定義を分析するための包括的文献レビューの実施。
  • 機能的および非機能的役割に基づき、5段階のサービスタイプ分類(プロセス、ビジネス、ヘルパー、IT、能力サービス)を統合的に提唱。
  • 3つのアルゴリズム的戦略を提言:事前同定(タイプベースのパーティショニング)、事中同定(タイプ固有の分析)、事後同定(同定後に分類)。
  • サービス指向の概念(例:インターフェース、粗粒度の操作)をオブジェクト指向の構成要素(例:パubリックメソッド、クラス)にマッピングし、ソースコード解析を可能にする。
  • アーキテクチャ知識(例:デプロイメント範囲、ビジネス文脈)を統合し、コードからだけでは完全に同定できないサービスタイプを区別する。
  • 特に外部文脈(例:ビジネス、能力サービス)を必要とするタイプのサービスを同定するための基準を定義する。

実験結果

リサーチクエスチョン

  • RQ1文献において、インターフェース、粒度、状態に関して、サービスとは何か、どのように定義されているか。
  • RQ2粒度、デプロイメントモデル、アーキテクチャ的役割の観点から、サービスとソフトウェアコンポonentはどのように異なるか。
  • RQ3明確に区別できるサービスタイプは何か、そしてどのように体系的に分類できるか。
  • RQ4既存のサービス同定アプローチのうち、同定プロセス中にサービスタイプを考慮しているものはどれか。
  • RQ5オブジェクト指向ソースコードから、その意味的タイプ(例:ビジネス、ヘルパー、IT)を尊重しながら、どのようにサービスを同定できるか。

主な発見

  • サービスとコンポonentの間には明確な違いがあり、主に粒度(サービスは粗粒度)とデプロイメントモデル(緩い結合、プラットフォーム非依存)の観点で顕著である。
  • 本研究で提唱された5つのサービスタイプ(プロセス、ビジネス、ヘルパー、IT、能力)の分類は、レガシーシステムにおけるサービス同定のための体系的分類を提供する。
  • 事前同定、事中同定、事後同定のアルゴリズムは、同定パイプラインにサービスタイプ認識を統合するための明確な戦略を提供する。
  • クラス内のパブリックメソッドはサービスインターフェースにマッピング可能であるが、特定のサービスタイプ(例:ビジネス、能力サービス)を同定するには、コードのみでは不十分で、追加のアーキテクチャ的またはビジネス的文脈が必要となる。
  • 既存のサービス同定アプローチは、主にサービスタイプの差異を無視しており、本研究は原則的で分類に基づくメソドロジーを通じて、このギャップを埋める。
  • 同定プロセスにサービスタイプの意味論を統合することで、SOA移行に向けた抽出されたサービスの正確性と関連性が向上する。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。