研究概要 |
本年度はコンポーネントを利用したソフトウェアを構成する際の汎用的な手法として、(1)単一の計算機の上でコンポーネントの動作・仕様を記述するための方法、(2)それらを接続、合成することによりソフトウェアを構成する方法およびそれらを(3)広域分散ネットワーク環境に適応させるための変換方法の3つを中心に基礎的な研究を行った。 具体的にはコンポーネントアーキテクチャとしてJavaBeansを採用し、(1)従来の手法では記述言語や提供者が異なる構成要素郡の中から開発者が必要とするものを抽出するコストが大きい点が問題であったが、記述言語に依存しない性質を抽出したコンポーネントの仕様記述言語(BSML)および検索言語(ACL)を提唱しその効果を確認した。(2)従来の手法では十分に確立されていなかったコンポーネントを接続する際に情報を授受するための機構(作用、interaction)を抽象的に記述する手法を提唱し、それに基づいた記述言語および開発環境のプロトタイプを実装した。(3)本来は位置独立でないコンポーネントに分散環境では必須となる位置独立性を持たせるための変換方法の確立とその抽象化のためのコンポーネント(RCA,Remote Component Adapter)を開発した。 広域分散環境におけるコンポーネントソフトウェアの問題点として従来のコンポーネント位置固定方式ではネットワーク負荷の増大にともなうオーバーヘッドが大きいためコンポーネント移動方式が優れているという認識はあったものの、その具体的な配置方法に関しては研究が行われていなかった。本研究課題では実際の広域環境においてその最適な配置を決定するための準備段階として、Java RMIを使用した3〜5台のPCクラスタ上で分散環境を模倣し通信速度などを自由に設定できる実験環境を構築した上、動的に負荷を変更した場合にコンポーネントの位置を最適化するための手法を実験的に求めた。これらの結果により広域分散環境においてコンポーネントソフトウェアが効率よく機能するための条件などが明らかになった。
|