Skip to main content
QUICK REVIEW

[論文レビュー] Automatic adaptor synthesis for protocol transformation

Marco Autili, Paola Inverardi|arXiv (Cornell University)|Dec 1, 2014
Advanced Software Engineering Methodologies参考文献 6被引用数 8
ひとこと要約

本稿では、プロトコル強化の形式的仕様を用いて、既存のコーディネータを変換することで、コンポーネントベースのシステムにおけるプロトコル強化付きグルー・コード(アダプタ)を構成的かつ自動的に合成する手法を提示する。失敗なしコーディネータ合成の先行研究を拡張し、信頼性、フォールトトレランス、アーキテクチャの進化をモジュラーで再利用可能なラッパー・コンポーネントを通じてサポートする。これにより、システム統合における空間計算量と合成可能性が顕著に向上する。

ABSTRACT

Adaptation of software components is an important issue in Component Based Software Engineering (CBSE). Building a system from reusable or Commercial-Off-The-Shelf (COTS) components introduces a set of issues, mainly related to compatibility and communication aspects. Components may have incompatible interaction behavior. Moreover it might be necessary to enhance the current communication protocol to introduce more sophisticated interactions among components. We address these problems enhancing our architectural approach which allows for detection and recovery of integration mismatches by synthesizing a suitable coordinator. Starting from the specification of the system to be assembled and from the specification of the needed protocol enhancements, our framework automatically derives, in a compositional way, the glue code for the set of components. The synthesized glue code avoids interaction mismatches and provides a protocol-enhanced version of the composed system.

研究の動機と目的

  • 再利用可能またはCOTSコンポーネントを組み合わせる際の統合不一致やプロトコル非互換性を解決すること。
  • 信頼性、フォールトトレランス、アーキテクチャの進化をサポートする、強化されたグルー・コードの自動合成を可能にすること。
  • 各強化ごとにモジュラーで再利用可能なプロトコル変換を可能にすることで、既存のコーディネータ合成手法の空間計算量と合成可能性を向上させること。
  • 再利用可能で形式的に合成されたコーディネータを用いて、コンポーネントの挿入、交換、削除などの動的システム更新をサポートすること。
  • 行動モデルとメッセージシーケンスチャート(bMSCs/hMSCs)を用いた形式的枠組みを提供し、プロトコル強化付きコーディネータの指定と自動生成を可能にすること。

提案手法

  • 同期的でリクエスト/通知ベースの通信を、トップ/ボトムポートを通じて行う、コンポーネントと接続子のアーキテクチャスタイルを採用する。
  • bMSCとhMSCを用いてプロトコル強化(例:リトライポリシー)を形式的に仕様化し、これにより強化されたコーディネータの行動モデル(LTS)を合成する。
  • 元のコーディネータ、ラッパー・コンポーネント、サブコーディネータの合成として、新しいコーディネータを自動的に合成することで、モジュラーなプロトコル変換を実現する。
  • ラッパー・コンポーネントは、元のコンポーネントを変更せずに相互作用を仲介し、プロトコル強化(例:リトライ、監視)を適用するインターセプタとして合成される。
  • 合成されたLTSが元のコーディネータのボトムドメインの実際の動作と一致することを確認することで、行動的正しさを保証する。
  • 合成プロセスは合成的である:各プロトコル強化がモジュラー変換として適用され、再利用と段階的システム進化が可能になる。

実験結果

リサーチクエスチョン

  • RQ1コンポーネントベースのシステムにおけるコーディネータの振る舞いを強化するため、プロトコル変換を自動的に合成する方法は何か?
  • RQ2提案手法は、既存のコーディネータ合成技術の合成可能性と空間計算量をどのように改善するか?
  • RQ3リトライポリシー、フォールトトレランス、監視などのプロトコル強化を、形式的に指定し自動的にコーディネータに適用する方法は何か?
  • RQ4正しさを保持したまま、コンポーネントの挿入、交換、削除などの動的アーキテクチャ更新をサポートできるか?
  • RQ5合成されたグルー・コードの行動的正しさを、元のシステム動作に対して形式的に検証する方法は何か?

主な発見

  • 拡張された手法により、複数のプロトコル変換をモジュラーに適用可能な、プロトコル強化付きコーディネータの合成的合成が可能になった。
  • 既存のグルー・コードを再利用し、各強化に対してのみ新しいモジュラーコンポーネントを合成することで、空間計算量が改善された。
  • 形式的プロトコル変換を通じて、フォールトトレランス、エラー処理、監視、セキュリティといった重要な非機能要件がサポートされた。
  • 手法は形式的に検証済みである:ラッパーと新しいコーディネータの合成LTSは、元のコーディネータのボトムドメインの実際の動作と一致しなければならない。
  • 既存に合成されたグルー・コードを再利用することで、コンポーネントの挿入、交換、削除を含む動的システム進化が可能になった。
  • プロトタイプツール「SYNTHESIS」は、元のコーディネータ合成の自動化を支援するが、今後の作業として、強化されたプロトコル変換手法をサポートする拡張が予定されている。

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

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

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

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