next up previous
Up: 「パターンに基づくビジュアル並列プログラミング環境」に関する成果概要 Previous: 研究の内容

研究の成果

研究上の成果

ビジュアルなデザインのパターンを支援する方式

ビジュアルなプログラムデザインのパターンに基づく並列プログラムの開発を 支援するために、開発環境(特にエディタ)に求められる機能について検討を行っ た。KLIEG のエディタには、デザイナがパターン図を定義するための機能とプ ログラマがパターン図を利用するための機能が、既に一部実現されている。拡 張が必要なのは、以下のような機能である。

  1. パターンとパターンにはめ込まれるプロセスの間の整合性をチェックする機能
  2. パターンにはめ込まれるデフォルトのプロセスやサンプルのプロセスを定義す る機能
  3. パターンを用いて作成されたプログラムの挙動を一部変更したい時に、 どの部分を変更すべきかわかりやすく示すための機能

1については型チェックおよびプロトコルチェックのシステムを現在設計中で ある。 単純な型チェックについては、既に設計が完了した。また、このチェッ ク機能を利用したユーザインタフェースの改善方式について検討を行った。2 については、プロセスをはめ込む部分(ホールと呼ぶ)に複数のプロセスを同時 に保持する機能を設計した。複数のプロセスの中から実際に実行されるプロセ スは、メニューにより容易に選択できる。3 については、一つのパターンに複 数のビューを持たせ、変更したい挙動の種類により異なるビューを用いること を可能とするインタフェースを設計した。

3 の機能を実現するための基盤技術として、エディタ用のズーム・アルゴリズ ムを新たに設計し、このアルゴリズムを用いてズーム機能を導入したエディタ を試作した。

パターンの意味情報を活用したプログラム実行の可視化

プログラムの設計/コーディングだけではなく、デバッグの段階まで視野に入 れたビジュアルな開発環境を実現するために、並列プログラムの実行を可視化 する方式について検討を行った。その結果に基づき、以下のような特徴を持つ トレーサを実現した。


その他の成果

負荷分散のパターンとして master-workers 型のものに焦点を絞り、このパター ンが持つ情報に基づき、負荷分散を行う最適化されたコードを生成する方式を 検討した。

発表論文リスト

  1. 豊田正史, 志築文太郎, 高橋伸, 柴山悦哉: Mochi Sheet: ズーミングとレイ アウト編集機能の統合, インタラクション'97 論文集, 情報処理学会, pp. 79〜86, 1997.

  2. 志築文太郎, 豊田正史, 高橋伸, 柴山悦哉: ビジュアル並列プログラミング環 境 KLIEG: プロセスネットワークパターンを利用した再利用性の向上と実行表 示の効率化, ソフトウェア科学会 WISS'96 論文集, 近代科学社レクチャー ノート, Vol. 16, pp. 81〜90, 1996.

  3. 志築文太郎, 豊田正史, 高橋伸, 柴山悦哉: ビジュアルプログラムが持つ図形 情報を利用した動的プロセスネットワークの可視化手法, 日本ソフトウェ ア科学会第13回大会論文集, pp. 149〜152, 1996.


ソフトウェアとしての成果

試作するソフトウェアは、次のような構成要素からなる。

エディタは、通常のドロー系エディタと類似の操作によりデータフ ロー図に基づくビジュアルプログラムを編集する機能を持つ。 さらに、パターンの定義と利用のための支援機能を実現している。 トランスレータは、エディタで編集したプログラムを KL1 のプログラムに変 換する。 トレーサは、トランスレータが生成した KL1 のコードを KLIC を用いて実行 し、KLIC が生成したログ情報をもとに、プログラム実行過程の可視化を行う。 アニメーション機能とフィッシュアイ型のズーム機能を特徴とする。

  
図 --1: Nクイーン問題を解く並列ビジュアルプログラム

  
図 --2: トレーサによるビジュアルプログラムの可視化

--1は、エディタで入力したビジュアル並列プログラム の一例を示すものである。 また、図 --2は、このプログラムの実行の様子をトレーサ を用いて可視化したものである。

本ソフトウェアは、C++ で記述されコードサイズは約2万行(コメント行を含 む)である。 また、添付資料として、ユーザズマニュアルおよびサンプルプログラムを提供 する。


残された課題

主な課題として以下のものが残された。


自己評価

並列論理型言語のためのパターンに基づくビジュアル開発環境を試作すること ができた。 平成7年度版の KLIEG と比較した場合、エディタのインタフェースおよびトレー サの表示機能のスケーラビリティが向上した。 一般に、ビジュアル言語/環境ではスケーラビリティが問題となることが多い が、パターンの概念を有効に活用することにより、この問題に一定の解決を与 えた点が評価できる。



next up previous
Up: 「パターンに基づくビジュアル並列プログラミング環境」に関する成果概要 Previous: 研究の内容



www-admin@icot.or.jp