JP4057766B2 - プログラム作成支援装置および方法、プログラム作成支援プログラムを記録した媒体 - Google Patents
プログラム作成支援装置および方法、プログラム作成支援プログラムを記録した媒体 Download PDFInfo
- Publication number
- JP4057766B2 JP4057766B2 JP2000213299A JP2000213299A JP4057766B2 JP 4057766 B2 JP4057766 B2 JP 4057766B2 JP 2000213299 A JP2000213299 A JP 2000213299A JP 2000213299 A JP2000213299 A JP 2000213299A JP 4057766 B2 JP4057766 B2 JP 4057766B2
- Authority
- JP
- Japan
- Prior art keywords
- agent
- icon
- arrow
- host
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Multi Processors (AREA)
- Stored Programmes (AREA)
Description
【発明の属する技術分野】
本発明は、複数のコンピュータ間で移動するモバイルエージェントを使用したプログラムの作成を支援する装置および方法に関するものである。
【0002】
【従来の技術】
インターネットやイントラネットといった広域開放型ネットワーク環境が発展するのに伴い、変化が激しく、多種多様な要求が与えられるような分散システムへの需要がますます高まりつつある。そのようなシステム構築のための基盤技術として、エージェントが期待されている。エージェントとは、自律性、移動性、知性、協調性、即応性といった特徴により、環境の変化や多種多様な要求に対応するソフトウェアである。特に、移動性を備えたいわゆるモバイルエージェントは、最も実用化が近いと期待されている。なお、ここでの移動機能は、インターネットやイントラネットといった広域開放型ネットワーク環境で提供される情報リソースを、ネットワーク上を移動しながらそれらにアクセスすることにより、効率よく活用することを目的とした機能である。
【0003】
さらに、エージェントの実システムへの適用が考えられるようになってきたため、開発支援技術の研究も出始めている。たとえば、オブジェクト指向方法論を適用した開発手法や、デザインパターンの適用といったものがある。前者の例として、David Kinny and Michael Georgeff " Modelling and Design of Multi-Agent Systems "(Jorg P. Muller, Michael Wooldridge, Nicholas R. Jennings編 "Intelligent Agents III; Proceedings of the 1996 Workshop on Agent Theories, Architectures, and Languages" 所収)がある。また後者の例として、Yariv Aridor and Danny B. Lange "Agent design patterns: Elements of agent application design" (Proceedings of Agents '98 所収)がある。
【0004】
Kinny とGeorgeffの文献は、エージェントシステムの開発に対し、OMT(James Rumbaugh, Michael Blaha, William, Premerlani, Frederick Eddy, william Lorenson著、羽生田栄一監訳「オブジェクト指向方法論OMT−モデル化と設計」)と呼ばれる、図式表現に基づいた開発手法を適用している。OMTは、本来オブジェクト指向システムの開発手法として広く有効性が認められているので、オブジェクト指向技術を基盤としたエージェントシステムの開発に対しても効果がある。
【0005】
AridorとLange の文献では、エージェントのためのデザインパターンを、Travelling Pattern、Task Pattern、およびInteraction Patternsの3 種類に分けて、いくつか例示している。ここでデザインパターンとは、ソフトウェア開発における過去の優れた経験を定式化し、明示的に表現することにより、それら優れたソフトウェア設計の再利用を容易にするものである。また、そのようなデザインパターンの利用例も示すことにより、エージェントシステムの開発手法を効果的に例示している。
【0006】
【発明が解決しようとする課題】
一般に、移動機能を持つモバイルエージェントは、その動きをとらえるのが、従来のソフトウェアに比べて困難である、という点がある。すなわち、エージェントがリモートホストに移動して作業を開始すると、移動先の環境に対応して動作することになるが、そのようなリモートホストの環境を把握することは容易ではなく、結果的にエージェントの動作の把握も困難となる。このため、エージェントシステムは理解容易性が低くなりがちであり、開発はアドホックなものとなり、信頼性や拡張性が乏しいシステムとなる。したがって、移動機能をいかに効果的に表現できるかが、モバイルエージェントシステムの開発手法として重要である。
【0007】
ところが、このような点に関して、上記の先行技術には次のような問題点がある。まず、Kinny とGeorgeffの文献の手法で利用しているOMTは、モバイルエージェントの中心的な機能であるエージェント移動機能を効果的に表現することができず、エージェントの移動機能を扱っていない。また、AridorとLange の文献の手法は、そこで紹介している特定のデザインパターンにおけるエージェントの移動機能の利用法を示すのみであり、エージェント移動機能の一般的な表現方法については考慮していない。
【0008】
本発明は、前記のような従来技術の問題点を解決するために提案されたものであって、エージェントの移動機能の図的表現を開発者が視覚的に操作することにより、モバイルエージェントシステムの開発を容易にするプログラム作成支援装置およびその方法、作成支援プログラムを記録した媒体を提供することを目的とする。
特に、本発明は、エージェントの移動または複製を矢印とアイコンやボックスなどの図形によって表示すると共に、この矢印の操作部として表示判定部、表示調整部および動作記述変更部の三者を備えた構成とすることで、開発者に対してエラー表示や記述変更などのプログラム作成支援を与えるものである。
【0009】
【課題を解決するための手段】
前記の目的を達成するための手段の一つは、ネットワークに接続されたコンピュータを表現するホストボックスを描くためのホストボックス操作部と、前記ホストボックス内に、そのホストボックスで表現されたコンピュータ上で動作するアプリケーションプログラムを表すアプリケーション動作ラインを描くためのアプリケーション動作ライン操作部と、前記ホストボックス内に、そのホストボックスで表現されたコンピュータ上で動作するエージェントプログラムを表すエージェント動作ラインを描くためのエージェント動作ライン操作部と、前記各プログラム間で交換されるメッセージを表すメッセージ矢印を描くためのメッセージ矢印操作部と、前記ホストボックスによって表現された異なったコンピュータ間のエージェントプログラムの移動を表現するために、異なったホストボックス内に存在するエージェント動作ライン同士を接続するエージェント移動矢印を描くためのエージェント移動矢印操作部とを備えていることを特徴とする。
【0010】
このような解決手段では、画面上に、ネットワークに接続されたコンピュータをホストボックスを用いて表現し、このホストボックス内にこのホストボックスで表現されたコンピュータ上で動作するアプリケーションプログラムとエージェントプログラムとをそれぞれの動作ラインによって表現し、各プログラム間で交換されるメッセージを前記動作ライン間に描かれたメッセージ矢印によって表現し、異なったホストボックス内に存在するエージェント動作ライン同士をエージェント移動矢印によって接続することにより、前記ホストボックスによって表現された異なったコンピュータ間のエージェントプログラムの移動を表現する。
【0011】
他の解決手段は、ネットワークに接続されたコンピュータを表現するホストアイコンを描くためのホストアイコン操作部と、前記ホストアイコン内に、そのホストアイコンで表現されたコンピュータ上で動作するエージェントプログラムの各動作状態を示す状態アイコンを描くための状態アイコン操作部と、前記ホストアイコン内に、前記エージェントプログラムの各状態アイコン間の遷移を示す状態遷移矢印を描くための状態遷移矢印操作部と、異なったホストボックス内に存在するエージェントの状態アイコン同士を接続するエージェント移動矢印を描くためのエージェント移動矢印操作部とを備えていることを特徴とする。
【0012】
この手段では、画面上に、ネットワークに接続されたコンピュータをホストアイコンを用いて表現し、このホストアイコン内にこのホストアイコンで表現されたコンピュータ上で動作するエージェントプログラムを、エージェントプログラムの各動作状態を示す状態アイコンと、各状態アイコン間の遷移を示す状態遷移矢印とによって表現し、異なったホストボックス内に存在するエージェントの状態アイコン同士をエージェント移動矢印によって接続することにより、前記ホストアイコンによって表現された異なったコンピュータ間のエージェントプログラムの移動が、エージェントプログラムのどの動作状態間においてなされるかを表現する。
【0013】
他の解決手段は、前記ホストボックスあるいはホストアイコン間に、ホストボックスあるいはホストアイコンが表現するコンピュータ間の接続状態を示すリンクを表示するためのリンク操作部を備えていることを特徴とする。この手段では、前記ホストボックスあるいはホストアイコン間に、ホストボックスあるいはホストアイコンが表現するコンピュータ間の接続状態を示すリンクを表示する。
【0014】
他の解決手段は、エージェントプログラムの複製操作を表現するエージェント複製矢印を描くためのエージェント複製矢印操作部を備えていることを特徴とする。この手段では、エージェントプログラムの複製操作をエージェント複製矢印によって表現し、このエージェント複製矢印の始点を複製元のホストボックス内に表示されているエージェント動作ラインに設定し、エージェント複製矢印の終点を複製先のホストボックス内に設定することにより、複製先のホストボックス内に複製元のホストボックス内に表示されているエージェント動作ラインの複製を表示して、複製先のコンピュータ上における複製元のエージェントプログラムの複製の生成を表現する。
【0015】
他の解決手段は、画面上に表示されたホストボックスあるいはホストアイコン、アプリケーション動作ライン、エージェント動作ライン、状態アイコン、メッセージ矢印の少なくとも一つの表示について、その表示を指定した場合に、その表示が表現するコンピュータ、プログラム、メッセージの内容を画面上に表示する内容表示部を備えていることを特徴とする。この手段では、画面上の表示を指定した場合に、その表示が表現するコンピュータ、プログラム、メッセージの内容を画面上に表示する。また、前記内容の表示を、状態遷移図またはプログラムリスト形式の状態記述によって行う。
【0016】
他の解決手段は、コンピュータ上で動作するアプリケーションプログラムをアプリケーションアイコンにより表現するアプリケーションアイコン操作部と、コンピュータ上で動作するエージェントプログラムをエージェントアイコンにより表現するエージェントアイコン操作部と、各プログラム間で交換されるメッセージを、各アイコン間の相互作用を表現するコラボレーション識別子を備えたコラボレーション矢印からなるメッセージ矢印を用いて表現するメッセージ矢印操作部と、エージェントの複製操作を、各アイコン間の相互作用を表現するコラボレーション識別子を備えたコラボレーション矢印からなるエージェント複製矢印によって表現するエージェント複製矢印操作部とを備えていることを特徴とする。
【0017】
この手段では、画面上に、コンピュータ上で動作するアプリケーションプログラムをアプリケーションアイコンにより表現し、エージェントプログラムをエージェントアイコンにより表現し、各プログラム間で交換されるメッセージをメッセージ矢印を用いて表現し、エージェントの複製操作をエージェント複製矢印によって表現し、前記各矢印を、各アイコン間の相互作用を表現するコラボレーション識別子を備えたコラボレーション矢印によって構成し、前記エージェントアイコンからエージェント複製矢印を描くことにより、このエージェント複製矢印の終点部分に対して矢印の始点に表現されているエージェントアイコンの複製を描画して、複製先のコンピュータ上における複製元のエージェントプログラムの複製の生成を表現すると共に、この複製操作に付随して必要となる変更を行う。
【0018】
他の解決手段は、コンピュータ上で動作するエージェントプログラムの各動作状態を示す状態アイコンを描くための状態アイコン操作部と、前記エージェントプログラムの各状態アイコン間の遷移を示す状態遷移矢印を描くための状態遷移矢印操作部と、前記状態アイコン上に、その状態アイコンが示す状態において、エージェントが複製を行うことを示す複製マーカを表示するためのエージェント複製マーカ操作部とを備えていることを特徴とする。
【0019】
この手段では、画面上に、コンピュータ上で動作するエージェントプログラムを、エージェントプログラムの各動作状態を示す状態アイコンと、各状態アイコン間の遷移を示す状態遷移矢印とによって表現し、前記状態アイコン上に複製マーカを表示するか否かによって、その状態アイコンが示す状態において、エージェントが複製を行うか否かを表現する。
【0020】
他の解決手段は、ネットワークに接続されたコンピュータを表現するホストアイコンを描くためのホストアイコン操作部と、前記ホストアイコン内に、そのホストアイコンで表現されたコンピュータ上で動作するアプリケーションプログラムをアプリケーションアイコンにより表現するアプリケーションアイコン操作部と、前記ホストアイコン内に、そのホストアイコンで表現されたコンピュータ上で動作するエージェントプログラムをエージェントアイコンにより表現するエージェントアイコン操作部と、各プログラム間で交換されるメッセージを、各アイコン間の相互作用を表現するコラボレーション識別子を備えたコラボレーション矢印からなるメッセージ矢印を用いて表現するメッセージ矢印操作部と、前記ホストアイコンによって表現された異なったコンピュータ間のエージェントプログラムの移動を表現するために、各アイコン間の相互作用を表現するコラボレーション識別子を備えたコラボレーション矢印からなるエージェント移動矢印によって表現するエージェント移動矢印操作部とを備えていることを特徴とする。
【0021】
この手段では、画面上に、ネットワークに接続されたコンピュータをホストアイコンを用いて表現し、このホストアイコン内にこのホストアイコンで表現されたコンピュータ上で動作するアプリケーションプログラムをアプリケーションアイコンにより表現し、エージェントプログラムをエージェントアイコンにより表現し、各プログラム間で交換されるメッセージをメッセージ矢印を用いて表現し、エージェントの移動をエージェント移動矢印によって表現し、前記各矢印を、各アイコン間の相互作用を表現するコラボレーション識別子を備えたコラボレーション矢印によって構成し、前記エージェントアイコンからエージェント移動矢印を描くことにより、このエージェント移動矢印の終点にエージェントアイコンを描画して移動後のエージェントを表現するとともに、この移動に付随して必要となる表示変更を行う。
【0022】
他の解決手段は、記録媒体に関するものであって、この記録媒体に前記のようなプログラム作成支援方法を実現するコンピュータプログラムを記録する。
【0023】
【発明の実施の形態】
以下、本発明のプログラム作成支援装置および方法の実施形態を図面に基づいて具体的に説明する。本発明の実施形態はコンピュータ上に実現され、実施形態の各機能は、所定の手順(プログラム)がこのコンピュータを制御することで実現される。例えば、入力装置は、入力するプログラムやデータの態様によって種々のものを採用することができ、キーボードやマウスなどを使用できる。また、各記憶装置は、外部から入力したデータや作成対象となるプログラム、および本実施形態の作成支援装置を構成するプログラムや、本実施形態の支援装置で作成した各種のデータ蓄えるためのものであり、磁気や光ディスク装置、半導体メモリ等の所望の装置を用いることができる。さらに、他の部分は、コンピュータのソフトウェアによって構成されることが典型的である。
【0024】
本明細書における各「部」は、実施形態の各機能に対応する概念的なもので、必ずしも特定のハードウェアやソフトウェア・ルーチンに1対1には対応しない。したがって、本明細書では、以下、実施形態の各機能を有する仮想的回路ブロック(部)を想定して実施形態を説明する。また、本実施形態における各手順の各ステップは、その性質に反しない限り、実行順序を変更し、複数同時に実行し、また、実行ごとに異なった順序で実行してもよい。
【0025】
(1)第1実施形態
本実施形態は、エージェントの移動機能の開発を支援するもので、システムで動作中のソフトウェア(アプリケーションやエージェント)の動作状況や、それらソフトウェア間の相互作用の状況を、時間軸に沿って示すシーケンス図の表記を利用する。シーケンス図では、上から下への縦方向に時間が流れているものとし、動作ラインと呼ばれる縦方向の直線によって、各ソフトウェアの動作状況を表現する。また、動作ライン間に引かれた、相互作用矢印によって、ソフトウェア間の相互作用を表現する。
【0026】
なお、本発明のプログラム作成支援装置はプログラムやそれを動作させるコンピュータを画面上に図形として表示するものであるから、本実施形態および後に述べる他の実施形態に使用される各種の動作(図形の生成、削除、移動、コピー)は、従来からCADなどの図形処理ソフトウェアで知られている手法を適宜採用することができる。また、従来の図形処理ソフトで使用されるテンプレートの利用、スナップ、ガイド、グリッド、拡大、縮小、線種変更、線や矢印によって接続されたアイコン間の位置を変更した場合に線や矢印が自動的に追従する機能なども、本発明の装置に組み合わせて使用できる。
【0027】
(1−1)第1実施形態の構成…図1,図2
本実施形態のプログラム作成支援装置について、図1および図2を参照して説明する。本装置は、その支援対象となるプログラムの開発を行うとともに本装置を動作させるためにCPUやメモリを備えたコンピュータ本体1と、このコンピュータ本体1に対しさまざまなコマンドやデータを入力するマウスやキーボードなどの入力装置2と、プログラムの作成を支援するために本装置によって生成されるさまざまな表示を描画するためのディスプレイ3とを備えている。
【0028】
前記コンピュータ本体1上で動作する本装置は、開発過程にあるプログラムを構成する各種のアプリケーションと各種のエージェントの仕様や動作記述を記憶する記憶装置4を備えている。この記憶装置4は、これらのプログラムを動作させるためにネットワークの各ノードを構成する複数のコンピュータと、各アプリケーションやエージェント間において交換される各種のメッセージについても、それぞれの内容を記憶する。
【0029】
本装置には、ホストボックス操作部12、アプリケーション動作ライン操作部13、エージェント動作ライン操作部14、エージェント移動矢印操作部15、メッセージ矢印操作部16、メニュー表示部17、表示判定部18および内容表示部19が設けられている。また、前記エージェント移動矢印操作部15は、エージェント移動矢印Ayとホストボックスとの接続を判定する接続判定部151と、エージェント動作ラインの変更行う動作ライン調整部152と、エージェントの動作記述を変更する動作記述変更部153とを備えている。
【0030】
ホストボックス操作部12は、前記記憶装置4に記憶されている複数のネットワーク上のコンピュータ中から所定のコンピュータを選択し、そのコンピュータをホストボックスHとしてディスプレイ3の画面上に表示する。このホストボックス操作部12は、画面上におけるホストボックスの生成、削除、移動を行うと共に、後に説明するアプリケーション動作ラインPやエージェント動作ラインAがホストボックスH内にとどまるように調整するなどのホストボックスに関する操作を行う。
【0031】
アプリケーション動作ライン操作部13は、ネットワークに接続された各コンピュータ上で動作するアプリケーションを選択して、このアプリケーションを前記コンピュータに対応するホストボックスH内に直線として表示する。この場合、本実施形態においては、このアプリケーション動作ラインPはアプリケーションの動作ステップに従って画面の上方から下方に向かって伸びる直線として表示される。エージェント動作ライン操作部14は、前記記憶装置4に記憶されている複数のエージェントの中から、所定のエージェントを選択して、そのエージェントが動作するコンピュータを示すホストボックスH内に、画面の上方から下方に伸びる直線として表示する。すなわち、アプリケーション動作ラインPは、エージェントでない通常のアプリケーションソフトウェアの動作状況を表し、エージェント動作ラインAは、モバイルエージェントの各ホスト内での動作状況を表すもので、これらは、実線、点線などにより区別されている。
【0032】
これら各動作ラインP,Aは、画面上の一点を指定することにより、その点を通る縦方向の直線として描画されるものであり、前記各操作部13,14によってホストボックスH内からはみ出すことがないように描かれる。また、各操作部13,14は、ホストボックスが表すコンピュータ内における各種のアプリケーションやエージェントの動作を、各アプリケーションやエージェントの動作時間軸上における相対的な位置関係を利用して表示するものである。そのため、前記各操作部13,14は、各アプリケーションやエージェントの生成、消滅に従い、ホストボックスH内における各動作ラインP,Aの長さを調整する機能を有する。また、各操作部13,14は、各動作ラインP,Aの削除、移動などの操作も行うように構成されている。
【0033】
エージェント移動矢印操作部15は、画面上に表示している複数のホストボックスH間に、そのホストボックスが表示するコンピュータ間にエージェントを移動させることを示す矢印(エージェント移動矢印Ay)を表示するものである。このエージェント移動矢印操作部15には、エージェント移動矢印Ayの接続判定部151、エージェント動作ライン調整部152およびエージェント動作記述変更部153が設けられている。
【0034】
エージェント移動矢印Ayの接続判定部151は、描画するエージェント移動矢印Ayの始点と終点が、移動元と移動先のホストボックスH1,H2内に位置しているか否かを判定するものであり、移動矢印Ayがこれらの2つのホストボックス間にまたがっていない場合にはエラーとして再度の移動矢印Ayの描画を促すものである。動作ライン調整部152は、描画されたエージェント移動矢印Ayの始点と終点とにそれぞれエージェント動作ラインAが表示されるように、各ホストボックス内におけるエージェントの動作ラインを変更する。すなわち、エージェント移動矢印操作部15により、エージェントがホストボックス間を移動することが画面上に表示された場合、このエージェントの移動に伴い移動元と移動先のホストボックス内におけるエージェントの動作が移動矢印Ayの描画前の状態とは異なることになる。そのため、動作ライン調整部152は、移動矢印Ayを描画した場合に、エージェントの移動に伴う移動元と移動先のホストボックス内におけるエージェント動作ラインAの変更を行う。エージェント動作記述変更部153は、前記動作ライン調整部152と同様に、エージェント移動矢印操作部15によりホストボックス間をエージェントが移動することが指定された場合に、それに応じてエージェントを構成するプログラムについて移動命令を付加するなどの変更を自動的に行う。
【0035】
エージェント移動矢印操作部15は、前記のようなエージェント移動矢印Ayの生成に加えて、その削除、移動などの操作も行うように構成されており、これらの操作に伴い、動作ライン調整部152およびエージェント動作記述変更部153が動作ラインの調整と、エージェントを構成するプログラムの変更を自動的に行う。
【0036】
メッセージ矢印操作部16は、記憶装置に記憶されている複数のメッセージの中から所定のメッセージを選択し、このメッセージが指定したアプリケーション間、あるいはアプリケーションとエージェント間で交換されるように、アプリケーション動作ラインP間あるいはエージェント動作ラインA間にメッセージ矢印Myを表示する。すなわち、2つの動作ライン付近の一点ずつを指定することにより、一方の動作ラインから他方の動作ラインに延びた、各動作ラインに接触するメッセージ矢印Myを描く。このメッセージ矢印操作部16は、前記のようなメッセージ矢印Myの生成に加えて、その削除、移動などの操作も行うように構成されている。
【0037】
メニュー表示部17は、前記入力装置2を利用して前記各操作部12〜16のいずれかを選択するとともに、選択された各操作部12〜16を動作させる場合において必要な選択、すなわち、
(1) 記憶装置に記憶されている中のどのような種類のコンピュータ、アプリケーション、エージェントあるいはメッセージを操作するか。
(2) 各操作部において動作ラインや移動矢印Ayの生成、消滅、移動などのうち、どの様な操作を行うか。
(3) プログラムなどの内容を表示させる場合にどの様な表示形式を選択するか。などの選択を行う。
【0038】
表示判定部18は、入力装置2を使用して画面上に表示された複数の表示の中からある特定の表示を指定した場合に、その表示がどのような種類の動作ラインや矢印であるかを判定する。この表示判定部18は、単に指定された動作ラインや矢印の種類を判定するだけではなく、指定された動作ラインまたは矢印が前記記憶装置4に記憶されているどのアプリケーションやエージェントを表しているかについても判定する。
【0039】
内容表示部19は、各操作部12〜16によって操作されるホストボックス、アプリケーション動作ラインP、エージェント動作ラインA、エージェント移動矢印Ay、およびメッセージ矢印Myの内容を表示する。すなわち、この内容表示部19は、前記表示判定部18によって判定された各動作ラインや矢印が表示するアプリケーションやエージェントあるいはメッセージの記述内容や仕様を画面上に具体的に表示する。本実施形態においては、エージェント等の内容を状態遷移図によって表示するかあるいはプログラムリストのような状態記述によって表示するかを、前記メニュー表示部17を利用して選択することができるように、この内容表示部19は状態遷移図表示部191と状態記述表示部192とにより構成されている。
【0040】
(1−2)第1実施形態の作用
(1−2−1)画面上における各表示の説明…図2
ディスプレイ3の画面上にはネットワーク上のコンピュータを表すホストボックスHが表示されている。この図2ではネットワークに接続された2つのホストボックスH1,H2が表示されている。それぞれのホストボックスH1,H2内には非エージェントアプリケーションの動作を表すアプリケーション動作ラインPが表示されている。このアプリケーション動作ラインPは、ホストボックス内において縦方向に伸びる直線として表示されており、このアプリケーション動作ラインPによってホストボックスHによって表されたコンピュータ内におけるアプリケーションの動作が経時的に表示される。
【0041】
ホストボックスH内にはそのコンピュータで動作するアプリケーションの数に応じて複数本の動作ラインが表示されている。複数の動作ラインの間には、各アプリケーション間で交換されるメッセージを表示するために、メッセージ矢印Myが表示されている。このメッセージ矢印Myは後述するエージェントの移動を表示する矢印(エージェント移動矢印Ay)とは区別するために、画面上では太さや色彩あるいは点線実線などを異ならせて表示されている。
【0042】
ホストボックスH内には、コンピュータ内におけるモバイルエージェントの動作を表すために、エージェント動作ラインAが表示されている。このモバイルエージェントの動作ラインAは、前記アプリケーション動作ラインPとは点線、実線などの線種や色彩により区別して表示される。モバイルエージェントは、ネットワークに接続された複数のコンピュータ間を移動するものであるため、モバイルエージェントの移動元である第1のホストボックスH1内においては、このモバイルエージェントの生成から他のコンピュータへ移動するまでの間の状態を示す動作ラインA1が表示され、移動先である第2のホストボックスH2内には移動してきたモバイルエージェントの到着時からその消滅時あるいは他のコンピュータへ移動するまでの間の状態を示す動作ラインA2が表示される。
【0043】
さらに、移動元のホストボックスH1と移動先のホストボックスH2との間には、エージェントの移動を示すエージェント移動矢印Ayが表示されている。このエージェント移動矢印Ayは、移動元のホストボックスH1内に表示されたエージェント動作ラインAの終端と、移動先のホストボックスH2内に表示されたエージェント動作ラインAの始点とを結ぶものである。また、このエージェント動作ラインAと前記アプリケーション動作ラインPとの間には、エージェントとアプリケーションとの間で交換されるメッセージを表示するためのメッセージ矢印Myが表示されている。
【0044】
(1−2−2)エージェント動作ラインの生成…図3,図4
ところで、本実施形態においては、次のようにして複数のホストボックスHにエージェント動作ラインAを表示させることができる。すなわち、図3は、エージェントの移動元と移動先のコンピュータを表示したホストボックスHが描かれ、これらホストボックス内にそれぞれ独立して動作する複数のアプリケーションがアプリケーション動作ラインPとして示されている。このホストボックスHを描画するには、前記図1に示したホストボックス操作部12により、記憶装置4から所定のコンピュータを選択し、このコンピュータに相当するホストボックスを画面上に描画する。この図3では、ネットワークに接続された2つのコンピュータに相当する2つのホストボックスH1,H2が画面上に表示され、各ホストボックス内にはそれぞれのコンピュータで動作するアプリケーションを示す動作ラインPが表示されている。
【0045】
このような複数のコンピュータ間においてモバイルエージェントを動作させる場合には、マウスなどの入力装置2を利用して、まず、どのような種類のエージェントを生成させるかについてメニュー表示部17を利用して選択しておく。このようなエージェントを選択することにより、エージェントがどのアプリケーションの実行状態におけるどのようなタイミングにおいて生成あるいは消滅するか、また、エージェントの属性、仕様、機能などが決定される。次に、マウスなどの入力装置2を使用して移動元のホストボックスH1内における所定の点を指定し、この点から移動先のホストボックスH2に向けてエージェント移動矢印Ayを描く。なお、ここで指定した点は移動元のホストボックスH1内で動作するアプリケーションとの関係において、モバイルエージェントが移動先のホストボックスH2に移動するタイミングに相当する。
【0046】
このような入力装置2からの指令に基づいて、エージェント移動矢印操作部15がエージェント移動矢印Ayを描くと、図4に示すように、前記エージェント動作ライン調整部152によって移動元のホストボックスH1と移動先のホストボックスH2のそれぞれにエージェント動作ラインAが表示される。このうち移動元のホストボックスH1に表示されるエージェント動作ラインは、前記の選択されたエージェントの属性などによって定まるホストボックス内の所定の点を始点とし、エージェント移動矢印Ayの始点部を終点とする。一方、移動先のホストボックスH2に表示される動作ラインは、エージェント移動矢印Ayの終点部を始点として、あらかじめ選択されたエージェントの属性などによって定まるホストボックス内の所定の点を終点とする。
【0047】
なお、図では表示されていないが、このような移動矢印の生成に伴ってエージェント動作ラインAが生成された場合、エージェント動作記述変更部153により、生成された動作ラインに対応するようにエージェントプログラム自体の仕様や動作記述も変更される。さらに、前記の入力装置2によって、エージェント移動矢印Ayを描いた場合に、その始点と終点のいずれか一方、あるいはその両方がホストボックスH内に存在しない場合には、接続判定部151がこれを検出してエラー処理を行い、始点と終点が移動元と移動先のホストボックスH1,H2にまたがった移動矢印を再度入力するように、プログラムの開発者に促すことになる。
【0048】
このように、本実施形態によれば、複数のホストボックスの間にまたがってエージェント移動矢印Ayを描くだけの操作により、各ホストボックスにおけるエージェントを生成および消滅を表すエージェント動作ラインAが自動的に生成される。その結果、エージェント移動矢印Ayを描くという1つの操作により、ネットワークに接続されたあるコンピュータ上でエージェントが生成され、そのエージェントが他のコンピュータ上に移動して所定の動作を行うことが、一目瞭然に表示される。
【0049】
(1−2−3)エージェント動作ラインの変更…図5,図6
図5は移動元のホストボックスH1内にエージェント動作ラインAが表示されている場合に、エージェント動作ライン操作部14を使用して、このエージェント動作ラインAの途中から移動先のホストボックスH2に向けてエージェント移動矢印Ayを描いた場合を表示している。このような場合は、移動矢印Ayを描く前の状態では移動元のホストボックスH1内においてエージェントが生成し、所定の動作を行ってから消滅することを意味しているが、そのエージェントの動作ラインAの途中から移動矢印Ayを描いた結果、エージェントは矢印の始点部分までは移動元のホストボックスH1内で動作を行い、その後矢印によって結ばれた移動先のホストボックスH2に移動して、そのホストボックスH2が表すコンピュータ上で動作を行う。
【0050】
したがって、このようなエージェント移動矢印Ayを描くと、それによって生じるエージェントの移動に応じて、エージェント動作ライン調整部152により、各ホストボックス内におけるエージェント移動ラインについても図6に示すように、移動元のホストボックスH1内では矢印の始点以降のエージェント動作ラインAが消去され、一方、移動先のホストボックスH2内においては矢印の終点部以降にエージェント動作ラインAが生成されるという調整が自動的に行われる。
【0051】
(1−2−4)移動矢印を描画する場合のフローチャート…図7
前記のような図3〜図6に示すような本実施形態の作用を図7のフローチャートによって説明する。まず、ステップ1のようにエージェント移動矢印操作部15を利用してエージェント移動矢印Ayを画面上に描くと、ステップ2のように接続判定部151が描かれたエージェント移動矢印Ayが複数のホストボックスHにまたがっているか否かの判定を行う。ここで、エージェント移動矢印Ayが複数のホストボックスHにまたがっていない場合には、エージェントの移動元および/または移動先が示されていないので、ステップ3においてエラー処理を行い改めてエージェント移動矢印Ayの入力を待つ。一方、エージェント移動矢印Ayが複数のホストボックスHにまたがっていることが確認された場合には、ステップ4に進み、前記接続判定部151において、エージェント移動矢印Ayの始点および終点がモバイルエージェントの動作ラインに接しているか否かの判定を行う。
【0052】
移動矢印Ayの始点および終点が動作ラインに接していない場合には、ステップ5において、エージェント動作ライン調整部152により、移動矢印Ayの始点側のホストボックスH1内には上方に向けてエージェント動作ラインAを表示し、一方、移動矢印Ayの終点側のホストボックスH2内には下方に向けてエージェント動作ラインAを表示する。このステップ5の動作が、前記図3および図4に示したものである。
【0053】
また、ステップ4において、前記接続判定部151によりエージェント移動矢印Ayの始点あるいは終点がエージェント動作ラインAに接していることが判明した場合には、ステップ6に進む。このステップ6においては、エージェント動作ライン調整部152により、移動矢印Ayの始点が動作ラインに接している場合には(前記図5の状態)、動作ラインの上側のみを残して動作ラインを縮小し、移動矢印Ayの終点側のホストボックスH内に矢印の終点よりも下側に伸びる動作ラインを描く(前記図6の状態)。また移動矢印Ayの終点がエージェント動作ラインAの途中に接している場合には、矢印の終点よりも下側の動作ラインを残してそのボックス内の動作ラインを縮小し、一方矢印の始点側のホストボックスH内に矢印の始点よりも上側に新たな動作ラインを表示する。
【0054】
(1−2−5)状態遷移図による内容表示…図8,図9
次に、本実施形態における内容表示部19の作用を説明する。
例えば、図8に示すようなホストボックスH内にエージェント動作ラインAが表示されている状態において、マウスなどの入力手段によりそのエージェント動作ラインAを指定する。すると、表示判定部18が指定した表示がどの様な種類の表示、例えばホストボックス、動作ラインあるいは矢印であるか(図8の場合はエージェント動作ラインA)を判別し、さらに、判別された各種の表示ごとに複数の異なった内容のものがある場合には、その表示が記憶装置に記憶されているいずれのコンピュータ、アプリケーション、エージェント、メッセージであるかを判別する(図8の場合には、どのような種類のエージェントであるか)。この表示判定部18の判別結果に従い、内容表示部19は指定された表示に対応するコンピュータ、アプリケーション、エージェント、メッセージに関する仕様や動作記述を呼び出して、図9に示すように、画面上に新たなウインドウWを開き、このウインドウW内に指定された表示に対応するコンピュータ、アプリケーション、エージェントあるいはメッセージの仕様や動作記述を表示する。
【0055】
この動作記述の表示にあたっては、動作記述を表示させる動作ラインなどの表示にカーソルを合わせてマウスのボタンをダブルクリックしたりあるいはマウスの右ボタンを押すことにより、メニュー表示部17によりメニューを表示させて状態遷移図表示部191あるいは状態記述表示部192を選択することにより、表示する動作記述表示の形式を選択することができる。
【0056】
この図9の例では、エージェント動作ラインAによって表示されたエージェントの動作記述が、画面上に開かれたウインドウW内に状態遷移図として表示されている。すなわち、このウインドウW内には、エージェントの動作記述が、エージェントの状態を表す状態アイコンNと、エージェントの状態変化を表す状態遷移矢印Nyとによって表示されている。
【0057】
(1−2−6)状態遷移図における動作記述の変更…図10,図11
図10のようにエージェントの内容が状態遷移図によって表示されている状態において、マウスなどを利用して移動元のホストボックスH1内にあるエージェントから移動先のホストボックスH2内に向かってエージェント移動矢印Ayを描くと、この移動矢印Ayの追加によってホストボックスH内のエージェントは矢印終点側のホストボックスHに移動する指令を受けることになるので、この移動が可能となるように、エージェントを構成するプログラムそのものに変更が加えられる。このエージェントのプログラムそのものに対する変更は、前記エージェント動作記述変更部153によって行われる。
【0058】
このようなエージェントのプログラムの構成それ自体に対する変更が行われると、この変更を受けて内容表示部19は、画面上に表示している状態遷移図についても変更を行う。すなわち、図11に示すように、エージェントが移動するためには、エージェントが移動直前の状態に変化する必要があるので、ウインドウW内には移動直前の状態を示す状態アイコンN−1と、すでに表示されている各状態アイコンNからこの移動直前の状態のアイコンに至る遷移を示す遷移矢印Ny−1とが追加される。なお、図10および図11の例では状態遷移図を表示するウインドウWを開いたままでエージェント移動矢印Ayを描いたために、ウインドウW内に移動前状態アイコンNや遷移矢印が追加されたが、図10の状態でいったんウインドウWを閉じ、再度図8のようにエージェント動作ラインAを指定すれば、移動矢印Ayの追加の結果変更されたエージェントの構成が図10のような状態遷移図として表示される。
【0059】
(1−2−7)動作記述による内容表示と動作記述の変更…図12〜図14
図12の例は、前記図8においてエージェント動作ラインAを指定した場合に、前記のようなウインドウW内に状態遷移図を表示させるかわりに、そのエージェントの動作記述すなわちプログラムリストを表示させるものである。すなわち、メニュー表示部17を利用して表示形式として動作記述による表示を選択しておくことにより、状態記述表示部192が動作して選択されたアプリケーションやエージェントの動作記述をプログラムリストの形式で表示する。
【0060】
このような図12のウインドウW内に動作記述が表示されている状態において、図13に示すように動作ラインの端部から移動先のホストボックスH2内に向かってエージェント移動矢印Ayを描くと、図14に示すように、エージェント動作記述変更部153によりエージェントを構成するプログラムに移動命令が追加されるとともに、内容表示部19がその変更を受けてウインドウW内の動作記述の末尾移動命令が追加された表示を行う。
【0061】
(1−2−8)移動命令追加のフローチャート…図15
なお、図15は、前記エージェント移動矢印Ayを描いた場合におけるエージェント移動矢印操作部15の作用を説明するフローチャートであって、前記図7のフローチャートのステップ5およびステップ6の次に、ステップ7として、始点側のエージェント動作ラインAの表すエージェントについて、その動作記述に移動命令を挿入するステップを追加したものである。このように本実施形態では、エージェント動作ライン調整部152によってエージェントの移動に伴う動作ラインの表示を変更するだけではなく、エージェント動作記述変更部153の作用により、前記状態遷移図やこのプログラムリスト形式の状態記述に示すように、エージェントの移動に伴うエージェントプログラムの動作技術の変更までも自動的に行うことができる。
【0062】
(1−2−9)メッセージ矢印の内容表示…図16
前記内容表示部19は、前記のような動作ラインによって表示されたエージェントの内容を表示するだけではなく、画面上に表示された他の表示(ホストボックス、アプリケーション動作ライン、メッセージ矢印)によって示されるコンピュータ、アプリケーション、あるいはメッセージの内容を表示することができる。例えば、アプリケーション間あるいはエージェント間でやりとりされるメッセージは、メッセージ矢印Myによって表示されるが、このメッセージ矢印Myをマウスなどで指定した場合に、指定されたメッセージ矢印Myが示すメッセージの具体的内容を表示させることが可能である。
【0063】
このメッセージの内容表示は、表示判定部18により、入力装置2によって指定されたメッセージ矢印Myがどのメッセージを表示しているかを判定し、この表示判定部18によって判別されたメッセージの具体的内容を、内容表示部19が記憶装置4から呼び出して画面上に表示する。すなわち、内容表示部19は、図16に示すように、前記判定部によって判定されたメッセージの内容を記憶装置4から取り出すとともに、画面上にウインドウWを開いてこのウインドウW内に記憶装置4から取り出したメッセージの具体的内容を表示する。
なお、このメッセージ内容の表示については、本実施形態に限らず、以下述べる他の実施形態においても同様に設けることが可能である。
【0064】
(1−3)第1実施形態の効果
このように本実施形態によれば、移動元と移動先のホストボックスH1,H2の間にエージェント移動矢印Ayを描くだけの操作によって、ホストボックス間を移動するエージェントの動作が一目瞭然に表示されるとともに、画面上にエージェント移動矢印Ayを描くと同時に開発中のプログラムに対しても、エージェントの移動を表す命令が自動的に付加される。また、移動に伴う各ホストボックス内におけるエージェントの構成そのものの変化についても自動的に修正がなされる。さらに、ホストボックス内に示されているアプリケーションやエージェントの構成内容を状態遷移図や動作記述として表示することができるので、プログラムの開発者が開発中のアプリケーションやエージェントについてその具体的内容を常に参照することが可能となる。
なお、本実施形態においては、エージェントの動作記述を状態遷移図とプログラムリストの両方で表示するようにしたが、いずれか一方のみを表示するように構成することも可能である。
【0065】
(2)第2実施形態
本実施形態は、エージェントの移動機能の開発を支援するもので、ネットワークに接続された各コンピュータをホストアイコンIで表示すると共に、各コンピュータ内で動作するアプリケーションおよび各コンピュータ間で移動するエージェントの構成および動作を、状態アイコンNとその間の状態遷移矢印Nyとから構成される状態遷移図で表す。エージェントの移動も、状態アイコンN間の遷移矢印とは区別される別の状態遷移矢印Ayで表す。
【0066】
(2−1)第2実施形態の構成…図17
本実施形態のプログラム開発支援装置は、図17に示すように、ホストアイコン操作部21、状態アイコン操作部22、状態遷移矢印操作部23、エージェント移動矢印操作部24、メニュー表示部27、表示判定部28および内容表示部29を備えている。また、エージェント移動矢印操作部24は、エージェント移動矢印AyとホストアイコンIとの接続を判定する接続判定部241と、状態アイコンNおよび遷移矢印の表示を変更する表示調整部242と、エージェントの動作記述を変更する動作記述変更部243とを備えている。
【0067】
ホストアイコン操作部21は、画面上におけるホストアイコンIの生成、削除、移動を行う。すなわち、ホストアイコン操作部21は、前記記憶装置に記憶されている複数のネットワーク上のコンピュータ中から所定のコンピュータを選択し、そのコンピュータをホストアイコンIとしてディスプレイの画面上に表示する。ホストアイコンIはそれぞれネットワーク上のコンピュータを表すもので、その内部に状態アイコンNが存在することにより、エージェントプログラムがアイコンによって示された状態に従ってそのコンピュータ上で動作することを示す。このホストアイコン操作部21は、後で説明する状態アイコンNや状態遷移矢印NyがホストアイコンI内部にとどまるように(ただし、異なるホストアイコンIの内部に移動することは可能)調整するなどのホストアイコンIに関する操作を行う。
【0068】
状態アイコンNは、各コンピュータ上に配置されたエージェントの状態を示すものであり、また状態遷移矢印Nyはエージェントの各状態から他の状態への遷移を表現するものであって、これら状態アイコンNと状態遷移矢印Nyとによりエージェントが状態遷移図として表現される。
【0069】
状態アイコン操作部22は、指定したホストアイコンI内における状態アイコンNの生成、削除、移動、複製などの操作を行うものである。また、状態遷移矢印操作部23は、複数の状態アイコンNを指定することにより、一方の状態アイコンNからもう一方の状態アイコンNに向かって状態遷移矢印Nyを生成したり、この生成された状態遷移矢印Nyの削除、移動、複製の操作を行う。なお、本実施形態では、この操作の際に、状態遷移矢印Nyの端点とそれに接している状態アイコンNは離れないように、状態アイコンNの近傍に矢印の端点を指定すると、状態アイコンNと矢印端点とがスナップするように構成する。
【0070】
この状態アイコン操作部22および状態遷移矢印操作部23は、描画される状態アイコンNや状態遷移矢印Nyが、ホストアイコンIの内部にのみ存在できるようにする機能を有する。すなわち、プログラムの開発者が、状態アイコンNや状態遷移矢印NyをホストアイコンIの外部に描画しようとした場合には、それを検出してエラー表示を行うとともに、ホストアイコンI内部にこれらを描画するように促すメッセージなどを表示する。
【0071】
この状態アイコン操作部22および状態遷移矢印操作部23は、プログラムの開発者が各状態アイコンNや状態遷移矢印Nyを指定したホストアイコンI内に一つ一つ描いていくことにより、所定のエージェントプログラムを表現することも可能であるが、メニュー表示部27および内容表示部29を利用して、前記記憶装置4に記憶されている複数のエージェントの中から希望するエージェントを選択し、そのエージェントの動作記述を状態遷移図としてホストアイコンI内に表示させることも可能である。さらに、状態アイコン操作部22および状態遷移矢印操作部23は、状態アイコンNが表す状態および状態遷移矢印Nyが表す状態遷移の動作記述(プログラムなど)を操作(表示、編集など)する機能も有する。
【0072】
エージェント移動矢印Ayは、ネットワークに接続された複数のコンピュータ間をエージェントが移動することを表すものである。このエージェント移動矢印Ayの操作部24は、エージェント移動矢印Ayの操作(生成、削除、移動など)を行うものであって、例えば、前記コンピュータを表示する異なったホストアイコンI間にエージェント移動矢印Ayを引くものである。
【0073】
このエージェント移動矢印操作部24は、前記状態アイコンNなどを操作した場合に、ホストアイコンI間に引かれるというエージェント移動矢印Ayについての制約が破られた場合には、それを検出してエージェント移動矢印Ayを通常の状態遷移矢印Nyに変化させる機能を有する。したがって、このエージェント移動矢印操作部24には、エージェント移動矢印AyとホストアイコンI間の接続を判定する接続判定部241が設けられている。また、エージェント移動矢印Ayの操作に伴い、各ホストアイコンI内に表示されているエージェントそれ自体の構成に変化が生じた場合には、その変化に対応してエージェントの構成を表示する状態アイコンNおよび状態遷移矢印Nyの表示を変更する表示調整部242と、エージェントの構成の変化をその動作記述そのものの変更に反映させる動作記述変更部243と備えている。
【0074】
メニュー表示部27、表示判定部28および内容表示部29は、基本的には前記に第1実施形態と同様の構成を有するものである。すなわち、メニュー表示部27は、前記入力装置2を利用して前記各操作部のいずれを動作させるか選択するとともに、選択された各操作部を動作させる場合において必要な選択、例えば操作に当たってどのような種類のコンピュータやエージェントを使用するか、アイコンや矢印について生成、消滅、移動などの中からどのような操作を行うか、などの選択を行う。表示判定部28は、入力装置2によって画面上に表示されたホストアイコンIや状態アイコンNなどを指定した場合に、そのようなアイコンなどがどのコンピュータやエージェントを意味するか、あるいはこれらのコンピュータやエージェントの仕様や動作記述はどのようなものであるかを判定する。内容表示部29は、前記判定部28によって判定されたアイコンや矢印に対応するコンピュータやエージェントの仕様や記述内容を、画面上にプログラムリストなどの形式で表示する。
【0075】
(2−2)第2実施形態の作用
(2−2−1)画面上における各表示の説明…図18
ディスプレイ3の画面上には、ネットワーク上のコンピュータを表すホストアイコンIが表示されている。この図18ではネットワークに接続された3つのホストアイコンIが表示されている。それぞれのホストアイコンI内には、そのホストアイコンIが表示するコンピュータ上におけるエージェントの動作状態を表示する状態アイコンNが表示されている。この場合、各ホストアイコンI内には、プログラムの実行に伴ってエージェントがとりうる動作を示す複数の状態アイコンNが表示され、各状態アイコンN同士は、ある状態から他の状態にエージェントが動作することを示す状態遷移矢印Nyによって接続されている。
【0076】
複数のホストアイコンIの間には、各ホストアイコンIが表すコンピュータ間をエージェントが移動することを示すために、エージェント移動矢印Ayが表示されている。すなわち、このエージェント移動矢印Ayは、移動元のホストボックス内に表示された移動直前の状態を示す状態アイコンNと、移動先のホストボックス内に表示された移動直後の状態を示す状態アイコンNとを接続するものである。前記ホストアイコンIと状態アイコンN、およびエージェント移動矢印Ayと前記状態遷移矢印Nyは、その線種、線の太さ、色彩などが異なることにより、画面上で区別して表示される。
【0077】
このようにすると移動元のホストアイコンIによって表現されるコンピュータ上で生成されたエージェントが、そのホストアイコンI内の状態アイコンNによって表示された動作状態から、エージェント移動矢印Ayによって接続された移動先のホストアイコンIにより表現される他のコンピュータに対してネットワークを通じて移動し、移動先のホストアイコンI内の状態アイコンNによって表示された動作状態に移行することが表現される。また、エージェントがあるホストアイコンI内で異なった動作状態をとる場合には、各動作状態間の遷移が状態遷移矢印Nyによって表現される。
【0078】
(2−2−2)状態アイコンNの移動…図19、図20
前記図18に示すような状態から、図19に示すように、状態アイコン操作部22を利用して、第2のホストアイコンI2内の状態アイコンN2を第3のホストアイコンI3内のN3の位置に移動させると、この状態アイコンN2,N3と他の状態アイコンNと接続している状態遷移矢印Nyおよびエージェント移動矢印Ayが状態アイコンN2,N3の移動に追従して変形する。すなわち、第2のホストアイコンI2内で移動直前の状態を示す状態アイコンN2が、第3のホストアイコンI3内における移動完了直後の状態アイコンN3に変化する。
【0079】
すると、図20に示すように、第2のホストアイコンI2内において移動直前の状態アイコンN2に接続されていた状態遷移矢印Nyが、第2のホストアイコンI2と第3のホストアイコンI3をまたぐように引き伸ばされるとともに、第2のホストアイコンI2と第3のホストアイコンI3間に引かれていたエージェント移動矢印Ayが第3のホストアイコンI3内部の状態アイコンN同士を接続するように短縮される。このような状態アイコンN2,N3の移動およびそれに伴う状態遷移矢印Nyとエージェント移動矢印Ayの変形が生じると、前記接続判定部241が各矢印のホストアイコンI内外の位置を検出し、その検出結果に応じて表示調整部242が各矢印を状態遷移矢印Nyあるいはエージェント移動矢印Ayに変形する。具体的には、各矢印の線種、太さ、色彩などを、移動前の状態アイコンN2,N3を接続していたものから、移動後の状態アイコンN2,3を接続する矢印に相当するものに変更する。
【0080】
このように本実施形態においては、状態アイコンNをホストアイコンI間に移動させる操作により、ホストアイコンIが表すコンピュータ間におけるエージェントの移動タイミングを自由に変更することができるとともに、状態アイコンNの移動に応じて状態遷移矢印Nyやエージェント移動矢印Ayの表示も変更することが可能となる。その結果、簡単な操作でエージェントプログラムの変更を行うと同時に、その変更結果を直ちにかつ明瞭に認識することが可能となる。
【0081】
(2−2−3)フローチャートの説明…図21
図21は前記のようなホストアイコンI間における状態アイコンNの移動操作を示すフローチャートである。このフローチャートに示すように、ステップ1において、状態アイコン操作部22により状態アイコンNを操作すると、この状態アイコンNに接続されている状態遷移矢印Nyあるいはエージェント移動矢印Ayが変形する。そして、ステップ2において、接続判定部241により状態遷移矢印Nyが複数のホストアイコンIにまたがっているか否かを判定する。判定の結果、状態遷移矢印Nyが複数のホストアイコンIにまたがっている場合には、ステップ3に示すように、表示調整部242が状態遷移矢印Nyをエージェント移動矢印Ayに変更する。
【0082】
一方、ステップ2における判定結果が、状態遷移矢印Nyが複数のホストアイコンIにまたがっていない場合には、ステップ4に進み、前記接続判定部241によりエージェント移動矢印Ayは複数のホストアイコンIにまたがっているか否かを判定する。この判定結果がYesの場合には、状態アイコンNが一つのホストアイコンI内で移動し、状態遷移矢印Nyおよびエージェント移動矢印Ayについて変更をする必要がないので、表示調整部242は状態アイコンNの移動に伴う各矢印の寸法の調整のみを行う。ステップ4における接続判定部241の判定結果がNo、すなわちエージェント移動矢印Ayが複数のホストアイコンIにまたがっていない場合には、ステップ5に進み、表示調整部242はエージェント移動矢印Ayを状態遷移矢印に変更する。
【0083】
(2−2−4)エージェントプログラムの表示…図22
図22の例は、画面上にホストアイコンや状態アイコンが表示されている場合において、マウスなどの入力装置により希望する表示を指定すると、その表示が表しているコンピュータの仕様や次プログラムの構成内容が表示されることを示している。すなわち、入力装置により希望する表示を指定すると、表示判定部28が画面上のどのホストアイコンや状態アイコンを示しているか、また指定されたホストアイコンや状態アイコンが前記記憶装置4に記憶されているどのような内容のコンピュータやプログラムに相当するかを判定する。そして、内容表示部29が前記表示判定部28によって判定されたプログラムなどの内容を記憶装置4から取り出すとともに、画面上にウインドウWを開いて、このウインドウW内にプログラムの動作記述をプログラムリストの形式で表示したり、コンピュータの仕様などを表示する。
【0084】
(2−2−5)動作記述の変更…図23
図23は、前記図22の状態において、第1のホストアイコン内の状態アイコンから第2のホストアイコン内の状態アイコンに向かってエージェント移動矢印を追加した状態を示している。エージェント移動矢印操作部24を利用して画面上にこのような矢印を追加すると、本実施形態においては画面上における表示の変更だけではなく、表示されているエージェントプログラムの構成内容それ自体についても矢印の追加に応じた変更がなされる。具体的には、画面上のウインドウ内に表示されている動作記述の末尾に、エージェント移動矢印に対応した移動命令が追加される。このような動作記述の変更は、動作記述変更部243が、画面上に描かれたエージェント移動矢印やその他の状態アイコンなどの変更を検出し、その変更内容に合わせた動作記述の変更を行うことによりなされる。
【0085】
(2−3)第2実施形態の効果
以上の通り本実施形態によれば、各ホストアイコンが表現するコンピュータ上においてエージェントプログラムが取り得る様々な動作状態が状態アイコンとして表現されるとともに、それぞれの動作状態から他の動作状態に対する遷移が状態遷移矢印によって表示されるので、プログラムの開発者がエージェントプログラムとそれが動作するネットワーク上のコンピュータとの関係を容易に把握することができる。また、ホストアイコン間における状態アイコンの移動に伴う状態遷移矢印やエージェント移動矢印の変更、あるいはエージェント移動矢印や状態アイコンの追加がエージェントプログラムの構成内容そのものに反映されるので、画面上でアイコンや矢印を操作するだけでプログラムの記述や修正を行うことが可能となる。さらに、画面上のアイコンや矢印の表示する内容を常に参照することができる点も、プログラムの開発上便利である。
【0086】
(3)第3実施形態…図24、図25
本実施形態は、エージェントの移動機能の開発を支援するもので、前記第2実施形態に対し、コンピュータ間の接続状況を表すリンクを操作する機能を追加したものである。
本実施形態の構成は、図17に示す第2実施形態の構成に加えて、コンピュータ間の接続状況を表すリンクを操作するリンク操作部31を設けたものである。このリンク操作部31は、画面上に表示されている複数のホストアイコンを結ぶリンクLの生成・削除・移動、複製などを行うものである。このリンク操作部31によって生成されるリンクLは、本実施形態においては前記状態遷移矢印やエージェント移動矢印とは区別される直線によって表示される。このリンクLも、ホストアイコンが表現するコンピュータ間の接続状況に合わせて、複数種類のものを用意することが可能であり、これら各種のリンクLは前記記憶装置4内に記憶され、プログラムの開発者はメニュー表示部を操作することにより希望するリンクLを選択し、複数のホストアイコン間を接続することができる。
【0087】
(4)第4実施形態…図26、図27
本実施形態はエージェントの複製機能の開発を支援するもので、第1実施形態の構成に加えて、エージェントの複製機能を表現するために、エージェント複製矢印操作部41を設けたものである。このエージェント複製矢印操作部41には、生成した複製矢印の始点が複製元となるエージェント動作ラインの途中に接しているか否かを判定する接続判定部411と、複製矢印の終点に新たなエージェント動作ラインを描画するなどのエージェントの複製に伴う画面表示を変更する表示調整部412と、このエージェント動作ラインの複製に伴って支援対象となるプログラムにエージェントを複製するための命令を追加するなどの変更を行う動作記述変更部413が設けられている。
【0088】
本実施形態において、画面上に表示されたエージェント複製矢印Cyは、エージェントの複製を表す。エージェント複製矢印操作部41は、このエージェント複製矢印Cyが、常にエージェント動作ラインAの途中を始点とし、終点は別のエージェント動作ラインAの始点となるように画面上に表示する。すなわち、エージェント複製矢印操作部41を利用して画面上に表示されているエージェント動作ラインA1の途中からエージェント複製矢印Cyを引き出すと、このエージェント複製矢印Cyの終点部に、前記エージェント動作ラインA1のエージェント複製矢印Cyの始点よりも後の部分が新しいエージェントとしてコンピュータ上に生成され、それが新しいエージェント動作ラインA2として画面上に表示される。このエージェント複製矢印Cyは、前記エージェント移動矢印や状態遷移矢印とは区別されるように、その線種、太さ、色彩などが異なったものである。
【0089】
また、本実施形態においては、前記第1実施形態における動作記述変更部413が、このエージェント複製矢印Cyの生成・削除・移動などにより生じるエージェントの変更に応じて、エージェントの動作記述そのものについても変更を行う。すなわち、図27の例では、エージェント複製矢印Cyの追加に伴い、新たなエージェントが生成されると、エージェントの動作記述に複製命令が追加される。
【0090】
(5)第5実施形態
本実施形態はエージェントの複製機能の開発を支援するものであって、コラボレーション図により、エージェントの複製機能を表現する。このコラボレーション図は、システムの構成要素を長方形で表すオブジェクトアイコン(アプリケーションアイコンP、エージェントアイコンA)と、構成要素間の相互作用をオブジェクトアイコン間の矢印で表すコラボレーション矢印(メッセージ矢印Myと複製矢印Cy)から構成される。本実施形態おいては、前記実施形態で示した状態遷移図と同様に、各コラボレーション矢印の始点、終点は、オブジェクトアイコンと常に接する。また、各コラボレーション矢印には、文字列で表されるコラボレーションラベルが、コラボレーションの順序を数字で表すコラボレーション番号と共に付随し、コラボレーション識別子となる。
【0091】
(5−1)第5実施形態の構成…図28
本実施形態の装置は、支援対象となるプログラムを構成するアプリケーションおよびエージェントを表示するために、アプリケーションアイコン操作部51およびエージェントアイコン操作部52を備えている。また、アプリケーションとエージェント間で交換されるメッセージを表示するメッセージ矢印Myを操作するメッセージ矢印操作部53と、エージェントの複製を表示する複製矢印Cyを操作する複製矢印操作部54とが設けられている。メッセージ矢印操作部53は、メッセージ矢印Myを生成、削除、移動するもので、メッセージ矢印Myはアプリケーションやエージェントを表示する各アイコン間に描かれる。
【0092】
複製矢印操作部54は、支援対象となるプログラム中にエージェントの複製を生成するために使用する複製矢印Cyを生成、削除、移動するもので、複製矢印Cyはその操作部54により必ずエージェントアイコンA間に描かれる。このエージェント複製矢印操作部54には、生成した複製矢印の始点が複製元となるエージェントアイコンに属しているか否かを判定する接続判定部541と、複製矢印の終点に複製元のエージェントアイコンと同一のエージェントアイコンを描画するとともに、複製元のエージェントアイコンにループ状のメッセージ矢印を生成するなどのエージェントアイコンの複製に伴う画面表示を変更する表示調整部542と、このエージェントアイコンの複製に伴って支援対象となるプログラムにエージェントを複製するための命令を追加するなどの動作記述の変更を行う動作記述変更部543が設けられている。
【0093】
なお、本実施形態においても、前記各実施形態と同様に、メニュー表示部17、表示判定部18、内容表示部19が設けられ、画面上で指定した各アプリケーション、エージェント、メッセージなどの具体的内容(仕様や動作記述など)を適宜表示できるようになっている。また、画面上に表示する各アイコンや矢印に対して、記憶装置4に格納されているどのようなアプリケーションやエージェントあるいはメッセージを割り当てるかについて、前記各操作部の操作時にメニュー表示部17を利用して選択できる点も、前記各実施形態と同様である。
【0094】
(5−2)第5実施形態の作用…図29
図29において、画面上には個別のアプリケーションプログラムを表すアプリケーションアイコンPが表示されている。またこのアプリケーションアイコンPとの間でメッセージをやりとりするエージェントプログラムを示すエージェントアイコンAが表示されている。これらのアプリケーションアイコンPやエージェントアイコンAは、前記アプリケーションアイコン操作部51あるいはエージェントアイコン操作部52によって生成される。なお、これら各操作部51,52によって各アイコンP,Aを画面上に表示するにあたっては、前記メニュー表示部17を利用して、記憶装置4内に格納されている各種のアプリケーションやエージェントの中から所望なものを選択し、それらをマウスなどの入力装置2を用いて画面上に適宜配置する。
【0095】
なお、図の例では、第1のアプリケーションアイコンP1を画面上に表示した後、複製元となるエージェントアイコンA1を表示し、次にこれらアプリケーションアイコンP1とエージェントアイコンA1の間を、メッセージ矢印操作部53によって生成されるメッセージ矢印My1によって接続する。その後、複製元のエージェントアイコンA1から複製矢印Cyを引き出すと、複製矢印Cyの終点部に複製先のエージェントアイコンA2が表示される。これと同時に、また、複製矢印操作部54により、複製矢印Cyの始点のエージェントアイコンA1には、「copy_message」というラベルのついた、当該エージェントアイコンA1上でループしたメッセージ矢印Myrが付随して表示される。
【0096】
以下、第2のアプリケーションアイコンP2、第3のアプリケーションアイコンP3を順次描くとともにこれらアプリケーションアイコンP2,P3とエージェントアイコンA1,A2との間にメッセージ矢印My2,My3を表示することで、支援対象となるプログラムを構成する複数のアプリケーションとエージェントとの関係をコラボレーション図により表示することができる。
【0097】
この場合、メッセージ矢印Myや複製矢印Cyを各アイコン間に順番に生成していくと、各矢印操作部53,54は、各矢印の生成順序をコラボレーションの順序として認識し、各矢印の近傍にコラボレーション番号を表示する。また、このコラボレーション番号とともに、メッセージ矢印Myや複製矢印Cyであることを示す識別子、例えばメッセージ矢印Myではその内容を示すa,b,cなどの記号やラベルを、また複製矢印Cyではその作用を示す「copy」の文字を矢印の近傍に表示する。
【0098】
なお、各矢印操作部53,54は、コラボレーション番号や識別子の変更が可能であってもよい。この場合、変更後も番号が矢印によって異なるものとなるように、調整する必要がある。例えば、ある番号を変更した結果、他の矢印の番号と一致、あるいは順序が入れ替わる場合、影響が及ぶ矢印の番号も同時に変更することが考えられる。さらには、各矢印操作部53,54は、予め番号を生成、表示せず、後で番号を入力できるようにしてもよい。
【0099】
また、この第5実施形態においては、ネットワークに接続された各コンピュータを表示するホストボックスやホストアイコンを表示していないが、この第5実施形態と前記第1または第2実施形態とを組み合わせることにより、第5実施形態に表示された各アプリケーションやエージェントがいずれのコンピュータ上で動作するかを表現することも可能である。例えば、図30において、第1のアプリケーションアイコンP1と複製元のエージェントアイコンA1を第1のホストボックスあるいはホストアイコン内に配置し、第2、第3のアプリケーションアイコンP2,P3と複製先のエージェントアイコンA2を第2のホストボックスあるいはホストアイコン内に配置することにより、各プログラムとコンピュータの関係を表示することができる。
【0100】
(5−3)第5実施形態の効果
前記のように第5実施形態においては、個々のアプリケーションとエージェント間のメッセージの交換をコラボレーション図を利用して表示するプログラムの開発作業を行う場合に、画面上で複製矢印を操作するだけの簡単な作業でエージェントの複製を行うことができる。特に、本実施形態においては複製矢印を描画するだけで、画面上における新たなエージェントアイコンの表示や複製元のエージェントに関するメッセージ矢印の生成が自動的に行われるとともに、これらの操作が開発対象であるプログラムの動作記述に対しても反映される利点がある。また、前記の動作ラインや状態遷移図を利用した表示に比較して、コラボレーション図による表示は、メッセージ矢印や複製矢印にその動作順序や内容を示すラベルを表示させることができるので、各アプリケーションやエージェント間におけるメッセージの動作順序などが一目瞭然に表示される利点もある。
【0101】
(6)第6実施形態
本実施形態は、エージェントの複製機能を活用したプログラム作成をより一層効果的に支援するために、状態遷移図によりエージェントの複製機能を表現する。すなわち、本実施形態は、コンピュータ上で動作するエージェントの動作を、エージェントの各動作状態を示す状態アイコンNとその間の状態遷移矢印Nyとから構成される状態遷移図で表した上で、状態アイコンが示す状態において、エージェントが複製を行うことを示す複製マーカを操作する機能を追加したものである。
【0102】
(6−1)第6実施形態の構成…図30
本実施形態のプログラム開発支援装置は、図30に示すように、状態遷移図を操作するための基本的な機能部として、状態アイコン操作部61および状態遷移矢印操作部62を備えている。これらの機能部は、前述した第2実施形態の対応する機能部とほぼ同様の機能を有するものである。すなわち、状態アイコン操作部61は、状態アイコンNの生成、削除、移動、複製などの操作を行うものである。また、状態遷移矢印操作部62は、複数の状態アイコンNを指定することにより、一方の状態アイコンNからもう一方の状態アイコンNに向かって状態遷移矢印Nyを生成したり、この生成された状態遷移矢印Nyの削除、移動、複製の操作を行う。
【0103】
そして、本実施形態においては、これらの状態アイコン操作部61および状態遷移矢印操作部62に加えて、状態アイコンが示す状態においてエージェントが複製を行うことを示す複製マーカを操作するエージェント複製マーカ操作部61が設けられている。エージェント複製マーカ操作部61は、状態アイコン上における、エージェント複製マーカCmの表示・非表示を切り替えるものである。
【0104】
このエージェント複製マーカ操作部61には、指定された状態アイコンN上における複製マーカの表示・非表示の指定を判定する表示判定部631が設けられている。そして、この表示判定部631による判定結果に応じて、状態アイコンN上に複製マーカCmを表示させ、あるいは表示されていた複製マーカCmを削除する表示調整部632と、複製マーカCmの表示・非表示の変化をその状態アイコンNに対応する動作記述変更部643とを備えている。
【0105】
なお、本実施形態においても、前記各実施形態と同様に、メニュー表示部17、表示判定部18、内容表示部19が設けられ、画面上で指定した各アプリケーション、エージェント、メッセージなどの具体的内容(仕様や動作記述など)を適宜表示できるようになっている。また、画面上に表示する各アイコンや矢印に対して、記憶装置4に格納されているどのようなアプリケーションやエージェントあるいはメッセージを割り当てるかについて、前記各操作部の操作時にメニュー表示部17を利用して選択できる点も、前記各実施形態と同様である。
【0106】
(6−2)第6実施形態の作用…図31〜図33
図31においては、コンピュータ上におけるエージェントの動作状態を表示する状態アイコンNが表示されている。この場合、プログラムの実行に伴ってエージェントがとりうる動作を示す複数の状態アイコンNが表示され、各状態アイコンN同士は、ある状態から他の状態にエージェントが移行することを示す状態遷移矢印Nyによって接続されている。この画面上において、エージェント複製マーカ操作部61は、状態アイコン上におけるエージェント複製マーカCmの表示・非表示を切り替えることができる。
【0107】
図32においては、状態アイコンNを指定して、対応するプログラムコードを表示した場合の画面を示している。すなわち、入力装置2により1つの状態アイコンNを指定すると、表示判定部18が画面上のどの状態アイコンを示しているか、また指定された状態アイコンが記憶装置4に記憶されているどのような内容のコンピュータやプログラムに相当するかを判定する。そして、内容表示部19が前記表示判定部18によって判定されたプログラムなどの内容を記憶装置4から取り出すとともに、画面上にウインドウWを開いて、このウインドウW内にプログラムの動作記述をプログラムリストの形式で表示したり、コンピュータの仕様などを表示する。図32中では、プログラムリストを表示している。
【0108】
図33は、図32の状態から、指定された状態アイコンN上でさらに入力装置2により「複製マーカ表示」を指定することによって、エージェント複製マーカ操作部61によりその状態アイコンN上に複製マーカCmを表示した状態を示している。エージェント複製マーカ操作部61を利用して画面上にこの複製マーカCmを表示した場合には、画面上における表示の変更だけではなく、ウインドウW内に表示されているエージェントプログラムの構成内容それ自体についても複製マーカCmの追加に応じた変更がなされる。具体的には、画面上のウインドウ内に表示されている動作記述の文頭に、複製マーカCmに対応した複製命令が追加される。このような動作記述の変更は、動作記述変更部633が、画面上に描かれた状態アイコン上の複製マーカCmの表示・非表示に合わせた動作記述の変更を行うことによりなされる。
【0109】
また、エージェント複製マーカ操作部61によって、単に表示・非表示の切り替えのみでなく、複製回数を任意に指定できるようにしてもよい。この場合には、動作記述変更部633によって単に複製命令を追加・除去するだけでなく、指定回数だけ複製命令を実行するプログラムコードを追加することもできる。
さらには、複数命令の実行により生成される複製エージェントの動作開始状態を任意に指定することもできる。
【0110】
(6−3)第6実施形態の効果
以上の通り、本実施形態においては、状態遷移図を利用して、エージェントの複製機能を活用したプログラムの作成を容易に行うことができる。特に、本実施形態においては、複製マークCmの表示・非表示を指定するだけで、複製マークCmが画面上に表示されるとともに、この複製マークCmに対応する複製命令が、開発対象であるプログラムの動作記述に対しても反映される利点がある。したがって、エージェントの複製機能を活用したプログラム作成をより一層効果的に支援することができる。
【0111】
(7)第7実施形態
本実施形態は、エージェントの移動機能を活用したプログラム作成をより一層効果的に支援するために、コラボレーション図により、エージェントの移動機能を表現する。すなわち、本実施形態は、コンピュータ上で動作するエージェントの動作を、オブジェクトアイコンP,Aとコラボレーション矢印Myとから構成されるコラボレーション図で表した上で、さらに、ホストボックスHとエージェント移動矢印Ayを操作する機能を追加したものである。
【0112】
(7−1)第7実施形態の構成…図34
本実施形態のプログラム開発支援装置は、図34に示すように、コラボレーション図を操作するための基本的な機能部として、アプリケーションアイコン操作部71、エージェントアイコン操作部72、およびメッセージ矢印操作部73を備えている。これらの機能部は、前述した第5実施形態の対応する機能部とほぼ同様の機能を有するものである。すなわち、アプリケーションアイコン操作部71およびエージェントアイコン操作部72は、支援対象となるプログラムを構成するアプリケーションおよびエージェントを表示するアプリケーションアイコンPおよびエージェントアイコンAの生成、削除、移動、複製などの操作を行うものである。また、メッセージ矢印操作部73は、アプリケーションとエージェント間で交換されるメッセージを表示するメッセージ矢印Myの生成、削除、移動などの操作を行うものであり、メッセージ矢印MyはアプリケーションアイコンPやエージェントアイコンAなどのオブジェクトアイコン間に描かれる。
【0113】
そして、本実施形態においては、これらの操作部71〜73に加えて、ホストボックスを操作するホストボックス操作部74と、支援対象となるプログラム中でのエージェントの移動を示すために使用するエージェント移動矢印Ayを操作するエージェント移動矢印操作部75が設けられている。
このうち、ホストボックス操作部74は、ホストボックスの基本的な編集機能、すなわち、生成、移動、サイズ変更、削除などの操作を行うものである。ホストボックスHは、その操作部74によりアプリケーションアイコンPやエージェントアイコンAなどの複数のオブジェクトアイコンを囲む矩形で表され、それらのオブジェクトアイコンが示すアプリケーションやエージェントが、ある物理的なホストマシン上で動作していることを表す。
【0114】
また、エージェント移動矢印操作部75は、支援対象となるプログラム中でのエージェントの移動を表示するために使用する移動矢印Ayの基本的な編集機能を有するものである。エージェント移動矢印Ayは、それぞれ異なるホストボックスH内にあるエージェントアイコンA間に描かれ、このエージェントが始点のあるホストボックスHが表すホストマシンから、終点のあるホストボックスが表すホストマシンへ移動することを表す。また、エージェント移動矢印Ayは、必ずそれぞれ異なるホストボックス内にあるエージェントアイコン間に描かれ、その始点のエージェントアイコンには、そのエージェントアイコン上でループするメッセージ矢印が、migrate_messageというラベル付きで必ず付随する。
【0115】
エージェント移動矢印操作部75には、生成した移動矢印の始点が移動元となるエージェントアイコンに属しているか否かを判定する接続判定部751が設けられている。そして、移動矢印の終点に移動元のエージェントアイコンと同一のエージェントアイコンを描画するとともに、移動元のエージェントアイコンにループ状のメッセージ矢印を生成するなどのエージェントアイコンの移動に伴う画面表示を変更する表示調整部752と、このエージェントアイコンの移動に伴って支援対象となるプログラムにエージェントを移動するための命令を追加するなどの動作記述の変更を行う動作記述変更部753が設けられている。
【0116】
なお、本実施形態においても、前記各実施形態と同様に、メニュー表示部17、表示判定部18、内容表示部19が設けられ、画面上で指定した各アプリケーション、エージェント、メッセージなどの具体的内容(仕様や動作記述など)を適宜表示できるようになっている。また、画面上に表示する各アイコンや矢印に対して、記憶装置4に格納されているどのようなアプリケーションやエージェントあるいはメッセージを割り当てるかについて、前記各操作部の操作時にメニュー表示部17を利用して選択できる点も、前記各実施形態と同様である。
【0117】
(7−2)第7実施形態の作用…図35〜図37
図35において、画面上には、個別のアプリケーションプログラムを表すアプリケーションアイコンPと、このアプリケーションアイコンPとの間でメッセージをやりとりするエージェントプログラムを示すエージェントアイコンAが表示されている。また、アプリケーションアイコンPとエージェントアイコンAとの間には、コラボレーション識別子付きのメッセージ矢印Myが表示されている。
【0118】
この図35においては、さらに、アプリケーションアイコンPやエージェントアイコンAを囲むようにして、それらのアイコンP,Aが示すアプリケーションやエージェントが動作している物理的なホストマシンを示す2個のホストボックスH1,H2が表示されており、これらのホストボックスH1,H2は、ホストボックス操作部74によって生成される。そして、異なるホストボックスH1,H2内にあるエージェントアイコンA1,A2間にエージェント移動矢印Ayが表示されるとともに、その始点のエージェントアイコンには、そのエージェントアイコン上でループするメッセージ矢印Myrが、「migrate_message」というラベル付きで表示されている。
【0119】
図36、図37は、図35に示す画面を作成する手順を示している。すなわち、まず、図36に示すように、ホストボックス操作部74によってホストボックスH1を画面上に表示し、アプリケーションアイコン操作部71によってそのホストボックスH1内に第1、第2のアプリケーションアイコンP1,P2を表示するとともに、エージェントアイコン操作部72によって移動元となるエージェントアイコンA1を表示する。なお、アプリケーションアイコン操作部71やエージェントアイコン操作部72によって各アイコンP,Aを画面上に表示するにあたっては、前述した第5実施形態と同様に、メニュー表示部17を利用して、記憶装置4内に格納されている各種のアプリケーションやエージェントの中から所望なものを選択し、それらをマウスなどの入力装置2を用いて画面上に適宜配置する。次に、第1、第2のアプリケーションアイコンP1,P2とエージェントアイコンA1の間を、メッセージ矢印操作部73によって生成されるメッセージ矢印My1,My2によってそれぞれ接続する。
【0120】
続いて、ホストボックス操作部74によって移動先となるホストボックスH2を画面上に表示し、このホストボックスH2内にアプリケーションアイコン操作部71によって第3のアプリケーションアイコンP3を表示する。その後、エージェント移動矢印操作部75によって、移動元のホストボックスH1内のエージェントアイコンA1から移動先のホストボックスH2内を終点とするエージェント移動矢印Ayを引き出す。
このようにエージェント移動矢印Ayが描かれると、図37に塗りつぶしで示すように、この移動矢印Ayに付随するラベル、移動先のエージェントアイコンA2、およびラベル付きのループしたメッセージ矢印Myr、が自動的に表示される。すなわち、エージェント移動矢印Ayが描かれると、この移動矢印Ayに「migrate」というラベルが表示されるとともに、エージェント移動矢印Ayの終点部に移動先のエージェントアイコンA2が表示される。これと同時に、移動矢印Ayの始点のエージェントアイコンA1には、エージェントアイコンA1上でループしたメッセージ矢印My2が、「migrate_message」というラベル付きで表示される。
【0121】
以下、移動先のホストボックスH2内において、第3のアプリケーションアイコンP3と移動先のエージェントアイコンA2との間にメッセージ矢印My3を表示することで、支援対象となるプログラムを構成する複数のアプリケーションとエージェントとの関係をコラボレーション図により表示することができる。
この場合、メッセージ矢印Myや移動矢印Ayを各アイコン間に順番に生成していくと、各矢印操作部73,75は、各矢印の生成順序をコラボレーションの順序として認識し、各矢印の近傍にコラボレーション番号を表示する。また、このコラボレーション番号とともに、メッセージ矢印Myや移動矢印Cyであることを示す識別子、例えば、メッセージ矢印Myではその内容を示すa,b,cなどの記号やラベルを、また移動矢印Cyでは前述したように、その作用を示す「migrate」の文字を矢印の近傍に表示する。
【0122】
なお、各矢印操作部73,75は、コラボレーション番号や識別子の変更が可能であってもよい。この場合、変更後も番号が矢印によって異なるものとなるように、調整する必要がある。例えば、ある番号を変更した結果、他の矢印の番号と一致、あるいは順序が入れ替わる場合、影響が及ぶ矢印の番号も同時に変更することが考えられる。さらには、各矢印操作部73,75は、予め番号を生成、表示せず、後で番号を入力できるようにしてもよい。
【0123】
(7−3)第7実施形態の効果
以上の通り、本実施形態においては、コラボレーション図を利用して、エージェントの移動機能を活用したプログラムの作成を容易に行うことができる。特に、本実施形態においては、移動矢印を描画するだけで、画面上における新たなエージェントアイコンの表示や移動元のエージェントに関するメッセージ矢印の生成が自動的に行われるとともに、これらの操作が開発対象であるプログラムの動作記述に対しても反映される利点がある。また、第5実施形態について説明したように、動作ラインや状態遷移図を利用した表示に比較して、コラボレーション図による表示は、メッセージ矢印や移動矢印にその動作順序や内容を示すラベルを表示させることができるので、各アプリケーションやエージェント間におけるメッセージの動作順序などが一目瞭然に表示される利点もある。したがって、エージェントの移動機能を活用したプログラム作成をより一層効果的に支援することができる。
【0124】
【発明の効果】
以上の通り本発明によれば、ネットワークによって接続された複数のコンピュータ間をモバイルエージェントが移動するようなプログラムを作成するにあたって、各コンピュータ上で動作するアプリケーションプログラムとエージェントとの関係、あるいはエージェントとそれが移動する各コンピュータとの関係を目で見て分かりやすく表現することが可能となる。また、コンピュータ、アプリケーション、エージェント、メッセージなどに対応する表示を画面上で操作するだけで、これらを組み合わせたプログラム全体の構築が可能となるとともに、画面上の表示に対する操作をそのままプログラムの動作記述に反映させることができるので、プログラムの作成がより簡単に実行できる。このように本発明によれば、モバイルエージェントを使用したプログラムの作成を効果的に支援することのできる支援装置および方法を提供することが可能となる。
【図面の簡単な説明】
【図1】本発明によるプログラム作成支援装置の第1実施形態の構成を示すブロック図。
【図2】本発明の第1実施形態の画面上における各表示を説明する図。
【図3】本発明の第1実施形態において、エージェント動作ラインの生成前の状態を示す図。
【図4】図3の状態からエージェント動作ラインが生成された後の状態を示す図。
【図5】本発明の第1実施形態において、エージェント動作ラインの途中からエージェント移動矢印を描いた状態を示す図。
【図6】図5のエージェント移動矢印を描いた結果、新たなエージェント動作ラインが生成された状態を示す図。
【図7】本発明の第1実施形態の動作を説明するフローチャート。
【図8】本発明の第1実施形態において、エージェント動作ラインを指定した状態を示す図。
【図9】図8の状態から指定されたエージェントの動作記述を状態遷移図によって表示した図。
【図10】図9の状態において、エージェント移動矢印を描いた状態を示す図。
【図11】図10の状態において、エージェント移動矢印の追加に伴う状態遷移図の変化を示す図。
【図12】図8の状態から指定されたエージェントの動作記述をプログラムリストを利用して表示した図。
【図13】図12の状態において、エージェント移動矢印を描いた状態を示す図。
【図14】図13の状態において、エージェント移動矢印の追加に伴う動作記述の変化を示す図。
【図15】本発明の第1実施形態において、エージェント移動矢印を表示した場合の動作を示すフローチャート。
【図16】本発明の第1実施形態において、メッセージ矢印の内容を表示する図。
【図17】本発明の第2実施形態の構成を示すブロック図。
【図18】本発明の第2実施形態の画面上における各表示を説明する図。
【図19】本発明の第2実施形態において、状態アイコンを他のホストアイコンに移動する場合を説明する図。
【図20】図19において、状態アイコンの移動が完了した状態を示す図。
【図21】本発明の第2実施形態の動作を説明するフローチャート。
【図22】本発明の第2実施形態において、状態アイコンを指定するとそのプログラムリストが表示されることを示す図。
【図23】本発明の第2実施形態において、エージェント移動矢印を描くと移動命令が追加されることを示す図。
【図24】本発明の第3実施形態の構成を示すブロック図。
【図25】本発明の第3実施形態において、ホストアイコン間にリンクが表示されている状態を示す図。
【図26】本発明の第4実施形態の構成を示すブロック図。
【図27】本発明の第4実施形態において、エージェント複製矢印を描くとプログラムに複製命令が追加されることを示す図。
【図28】本発明の第5実施形態の構成を示すブロック図。
【図29】本発明の第5実施形態において、エージェントアイコンの複製を示す図。
【図30】本発明の第6実施形態の構成を示すブロック図。
【図31】本発明の第6実施形態において、複製マーカを示す図。
【図32】本発明の第6実施形態において、状態アイコンを指定するとそのプログラムリストが表示されることを示す図。
【図33】本発明の第6実施形態において、複製マーカを表示すると複製命令が追加されることを示す図。
【図34】本発明の第7実施形態の構成を示すブロック図。
【図35】本発明の第7実施形態において、エージェントアイコンの移動を示す図。
【図36】本発明の第7実施形態において、エージェント移動矢印の生成を示す図。
【図37】本発明の第7実施形態において、エージェント移動矢印を描くと関連する表示変更が行われることを示す図。
【符号の説明】
1…コンピュータ本体
2…入力装置
3…ディスプレイ
4…記憶装置
12…ホストボックス操作部
13…アプリケーション動作ライン操作部
14…エージェント動作ライン操作部
15…エージェント移動矢印操作部
151…接続判定部
152…エージェント動作ライン調整部
153…エージェント動作記述変更部
16…メッセージ矢印操作部
17…メニュー表示部
17…メニュー表示部
18…表示判定部
19…内容表示部
191…状態遷移図表示部
192…状態記述表示部
21…ホストアイコン操作部
22…状態アイコン操作部
23…状態遷移矢印操作部
24…エージェント移動矢印操作部
241…接続判定部
242…表示調整部
243…動作記述変更部
27…メニュー表示部
28…表示判定部
29…内容表示部
31…リンク操作部
41…エージェント複製矢印操作部
411…接続判定部
412…表示調整部
413…動作記述変更部
51…アプリケーションアイコン操作部
52…エージェントアイコン操作部
53…メッセージ矢印操作部
54…エージェント複製矢印操作部
541…接続判定部
542…表示調整部
543…動作記述変更部
61…状態アイコン操作部
62…状態遷移矢印操作部
63…エージェント複製マーカ操作部
631…表示判定部
632…表示調整部
633…動作記述変更部
71…アプリケーションアイコン操作部
72…エージェントアイコン操作部
73…メッセージ矢印操作部
74…ホストボックス操作部
75…エージェント移動矢印操作部
751…接続判定部
752…表示調整部
753…動作記述変更部
H…ホストボックス
I…ホストアイコン
N…状態アイコン
P…アプリケーションアイコン
P…アプリケーション動作ライン
A…エージェントアイコン
A…エージェント動作ライン
Ay…エージェント移動矢印
Cy…エージェント複製矢印
My…メッセージ矢印
Myr…ループしたメッセージ矢印
Ny…状態遷移矢印
W…ウインドウ
L…リンク
Claims (18)
- ネットワークに接続されたコンピュータを表現するホストボックスを描くためのホストボックス操作部と、前記ホストボックス内に、そのホストボックスで表現されたコンピュータ上で動作するアプリケーションプログラムを表すアプリケーション動作ラインを描くためのアプリケーション動作ライン操作部と、前記ホストボックス内に、そのホストボックスで表現されたコンピュータ上で動作するエージェントプログラムを表すエージェント動作ラインを描くためのエージェント動作ライン操作部と、前記各プログラム間で交換されるメッセージを表すメッセージ矢印を描くためのメッセージ矢印操作部と、前記ホストボックスによって表現された異なったコンピュータ間のエージェントプログラムの移動を表現するために、異なったホストボックス内に存在するエージェント動作ライン同士を接続するエージェント移動矢印を描くためのエージェント移動矢印操作部とを備え、
前記エージェント移動矢印操作部には、エージェント移動矢印の接続判定部、エージェント動作ライン調整部およびエージェント動作記述変更部が設けられ、
前記エージェント移動矢印の接続判定部は、描画するエージェント移動矢印の始点と終点が、移動元と移動先のホストボックス内に位置しているか否かを判定し、移動矢印がこれらの2つのホストボックス間にまたがっていない場合にはエラーとして再度の移動矢印の描画を促すものであり、
前記動作ライン調整部は、描画されたエージェント移動矢印の始点と終点とにそれぞれエージェント動作ラインが表示されるように、各ホストボックス内におけるエージェントの動作ラインを変更するものであり、
前記エージェント動作記述変更部は、前記エージェント移動矢印操作部によりホストボックス間をエージェントが移動することが指定された場合に、それに応じてエージェントを構成するプログラムについて変更を行うものであることを特徴とするプログラム作成支援装置。 - ネットワークに接続されたコンピュータを表現するホストアイコンを描くためのホストアイコン操作部と、前記ホストアイコン内に、そのホストアイコンで表現されたコンピュータ上で動作するエージェントプログラムの各動作状態を示す状態アイコンを描くための状態アイコン操作部と、前記ホストアイコン内に、前記エージェントプログラムの各状態アイコン間の遷移を示す状態遷移矢印を描くための状態遷移矢印操作部と、異なったホストボックス内に存在するエージェントの状態アイコン同士を接続するエージェント移動矢印を描くためのエージェント移動矢印操作部とを備え、
前記エージェント移動矢印操作部は、エージェント移動矢印とホストアイコンとの接続を判定する接続判定部と、状態アイコンおよび遷移矢印の表示を変更する表示調整部と、エージェントの動作記述を変更する動作記述変更部とを備え、
前記接続判定部は、ホストアイコン間に引かれるというエージェント移動矢印についての制約が破られた場合には、それを検出してエージェント移動矢印を通常の状態遷移矢印に変化させるものであり、
前記表示調整部は、エージェント移動矢印の操作に伴い、各ホストアイコン内に表示されているエージェントそれ自体の構成に変化が生じた場合に、その変化に対応してエージェントの構成を表示する状態アイコンおよび状態遷移矢印の表示を変更するものであり、 前記動作記述変更部は、エージェントの構成の変化をその動作記述そのものの変更に反映させるものであることを特徴とするプログラム作成支援装置。 - 前記ホストボックスあるいはホストアイコン間に、ホストボックスあるいはホストアイコンが表現するコンピュータ間の接続状態を示すリンクを表示するためのリンク操作部を備えていることを特徴とする請求項1または2に記載のプログラム作成支援装置。
- エージェントプログラムの複製操作を表現するエージェント複製矢印を描くためのエージェント複製矢印操作部を備えていることを特徴とする請求項1または2に記載のプログラム作成支援装置。
- 画面上に表示されたホストボックスあるいはホストアイコン、アプリケーション動作ライン、エージェント動作ライン、状態アイコン、メッセージ矢印の少なくとも一つの表示について、その表示を指定した場合に、その表示が表現するコンピュータ、プログラム、メッセージの内容を画面上に表示する内容表示部を備えていることを特徴とする請求項1または2に記載のプログラム作成支援装置。
- コンピュータ上で動作するアプリケーションプログラムをアプリケーションアイコンにより表現するアプリケーションアイコン操作部と、
コンピュータ上で動作するエージェントプログラムをエージェントアイコンにより表現するエージェントアイコン操作部と、
コラボレーション識別子を備えかつ各アイコン間の相互作用を表現するメッセージ矢印を用いて、各プログラム間で交換されるメッセージを表現するメッセージ矢印操作部と、
コラボレーション識別子を備えかつ各アイコン間の相互作用を表現するエージェント複製矢印によって、エージェントの複製操作を表現するエージェント複製矢印操作部とを備え、
前記エージェント複製矢印操作部には、生成した複製矢印の始点が複製元となるエージェントアイコンに属しているか否かを判定する接続判定部と、エージェントアイコンの複製に伴う画面表示を変更する表示調整部と、このエージェントアイコンの複製に伴って支援対象となるプログラムにエージェントを複製するための命令を追加する動作記述変更部が設けられていることを特徴とするプログラム作成支援装置。 - ネットワークに接続されたコンピュータを表現するホストボックスを描くためのホストボックス操作部と、前記ホストボックス内に、そのホストボックスで表現されたコンピュータ上で動作するアプリケーションプログラムを表すアプリケーション動作ラインを描くためのアプリケーション動作ライン操作部と、前記ホストボックス内に、そのホストボックスで表現されたコンピュータ上で動作するエージェントプログラムを表すエージェント動作ラインを描くためのエージェント動作ライン操作部と、前記各プログラム間で交換されるメッセージを表すメッセージ矢印を描くためのメッセージ矢印操作部と、前記ホストボックスによって表現された異なったコンピュータ間のエージェントプログラムの移動を表現するために、異なったホストボックス内に存在するエージェント動作ライン同士を接続するエージェント移動矢印を描くためのエージェント移動矢印操作部とを備え、前記エージェント移動矢印操作部には、エージェント移動矢印の接続判定部、エージェント動作ライン調整部およびエージェント動作記述変更部が設けられたプログラム作成支援装置を使用し、
前記ホストボックス操作部により、コンピュータの画面上に、ネットワークに接続されたコンピュータをホストボックスを用いて表現し、前記アプリケーション動作ライン操作部により、このホストボックス内にこのホストボックスで表現されたコンピュータ上で動作するアプリケーションプログラムとエージェントプログラムとをそれぞれの動作ラインによって表現し、前記メッセージ矢印操作部により、各プログラム間で交換されるメッセージを前記動作ライン間に描かれたメッセージ矢印によって表現し、前記エージェント移動矢印操作部により、異なったホストボックス内に存在するエージェント動作ライン同士をエージェント移動矢印によって接続することにより、前記ホストボックスによって表現された異なったコンピュータ間のエージェントプログラムの移動を表現すると共に、
前記エージェント移動矢印の接続判定部により、描画するエージェント移動矢印の始点と終点が、移動元と移動先のホストボックス内に位置しているか否かを判定し、移動矢印がこれらの2つのホストボックス間にまたがっていない場合にはエラーとして再度の移動矢印の描画を促し、
前記動作ライン調整部により、描画されたエージェント移動矢印の始点と終点とにそれぞれエージェント動作ラインが表示されるように、各ホストボックス内におけるエージェントの動作ラインを変更し、
前記エージェント動作記述変更部により、前記エージェント移動矢印操作部によりホストボックス間をエージェントが移動することが指定された場合に、それに応じてエージェントを構成するプログラムについて変更を行うことを特徴とするプログラム作成支援方法。 - ネットワークに接続されたコンピュータを表現するホストアイコンを描くためのホストアイコン操作部と、前記ホストアイコン内に、そのホストアイコンで表現されたコンピュータ上で動作するエージェントプログラムの各動作状態を示す状態アイコンを描くための状態アイコン操作部と、前記ホストアイコン内に、前記エージェントプログラムの各状態アイコン間の遷移を示す状態遷移矢印を描くための状態遷移矢印操作部と、異なったホストボックス内に存在するエージェントの状態アイコン同士を接続するエージェント移動矢印を描くためのエージェント移動矢印操作部とを備えとを備え、前記エージェント移動矢印操作部は、エージェント移動矢印とホストアイコンとの接続を判定する接続判定部と、状態アイコンおよび遷移矢印の表示を変更する表示調整部と、エージェントの動作記述を変更する動作記述変更部とを備えたプログラム製支援装置を使用して、
前記ホストアイコン操作部により、コンピュータの画面上に、ネットワークに接続されたコンピュータをホストアイコンを用いて表現し、前記状態アイコン操作部により、このホストアイコン内にこのホストアイコンで表現されたコンピュータ上で動作するエージェントプログラムを、エージェントプログラムの各動作状態を示す状態アイコンを表現し、前記状態遷移矢印操作部により、各状態アイコン間の遷移を示す状態遷移矢印を表現し、前記エージェント移動矢印操作部により、異なったホストボックス内に存在するエージェントの状態アイコン同士をエージェント移動矢印によって接続することにより、前記ホストアイコンによって表現された異なったコンピュータ間のエージェントプログラムの移動が、エージェントプログラムのどの動作状態間においてなされるかを表現し、
前記接続判定部により、ホストアイコン間に引かれるというエージェント移動矢印についての制約が破られた場合には、それを検出してエージェント移動矢印を通常の状態遷移矢印に変化させ、
前記表示調整部により、エージェント移動矢印の操作に伴い、各ホストアイコン内に表示されているエージェントそれ自体の構成に変化が生じた場合に、その変化に対応してエージェントの構成を表示する状態アイコンおよび状態遷移矢印の表示を変更させ、
前記動作記述変更部により、エージェントの構成の変化をその動作記述そのものの変更に反映させることを特徴とするプログラム作成支援方法。 - 前記プログラム作成支援装置がリンク操作部を有し、このリンク操作部により、前記ホストボックスあるいはホストアイコン間に、ホストボックスあるいはホストアイコンが表現するコンピュータ間の接続状態を示すリンクを表示することを特徴とする請求項7または8に記載のプログラム作成支援方法。
- 前記プログラム作成支援装置がエージェント複製矢印操作部を有し、このエージェント複製操作部が、エージェントプログラムの複製操作をエージェント複製矢印によって表現し、このエージェント複製矢印の始点を複製元のホストボックス内に表示されているエージェント動作ラインに設定し、エージェント複製矢印の終点を複製先のホストボックス内に設定することにより、複製先のホストボックス内に複製元のホストボックス内に表示されているエージェント動作ラインの複製を表示して、複製先のコンピュータ上における複製元のエージェントプログラムの複製の生成を表現することを特徴とする請求項7または8に記載のプログラム作成支援方法。
- 前記プログラム作成支援装置が内容表示部を備え、その内容表示部により、コンピュータの画面上に、表示されたホストボックスあるいはホストアイコン、アプリケーション動作ライン、エージェント動作ライン、状態アイコン、メッセージ矢印の少なくとも一つの表示について、その表示を指定した場合に、その表示が表現するコンピュータ、プログラム、メッセージの内容を画面上に表示することを特徴とする請求項7または8に記載のプログラム作成支援方法。
- 前記内容表示部による前記内容の表示が、状態遷移図またはプログラムリスト形式の状態記述によって行われることを特徴とする請求項11に記載のプログラム作成支援方法。
- コンピュータ上で動作するアプリケーションプログラムをアプリケーションアイコンにより表現するアプリケーションアイコン操作部と、コンピュータ上で動作するエージェントプログラムをエージェントアイコンにより表現するエージェントアイコン操作部と、コラボレーション識別子を備えかつ各アイコン間の相互作用を表現するメッセージ矢印を用いて、各プログラム間で交換されるメッセージを表現するメッセージ矢印操作部と、コラボレーション識別子を備えかつ各アイコン間の相互作用を表現するエージェント複製矢印によって、エージェントの複製操作を表現するエージェント複製矢印操作部とを備え、前記エージェント複製矢印操作部には、生成した複製矢印の始点が複製元となるエージェントアイコンに属しているか否かを判定する接続判定部と、エージェントアイコンの複製に伴う画面表示を変更する表示調整部と、このエージェントアイコンの複製に伴って支援対象となるプログラムにエージェントを複製するための命令を追加する動作記述変更部が設けられているプログラム作成支援装置を使用し、
コンピュータの画面上に、前記アプリケーションアイコン操作部により、コンピュータ上で動作するアプリケーションプログラムをアプリケーションアイコンにより表現し、前記エージェントアイコン操作部により、エージェントプログラムをエージェントアイコンにより表現し、前記メッセージ矢印操作部により、各プログラム間で交換されるメッセージをメッセージ矢印を用いて表現し、エージェント複製矢印操作部により、エージェントの複製操作をエージェント複製矢印によって表現することで、前記各矢印を、各アイコン間の相互作用を表現するコラボレーション識別子を備えたコラボレーション矢印によって構成し、前記エージェントアイコンからエージェント複製矢印を描くことにより、このエージェント複製矢印の終点に矢印の始点に表現されているエージェントアイコンの複製を描画して、複製先のコンピュータ上における複製元のエージェントプログラムの複製の生成を表現すると共に、この複製操作に付随して必要となる変更を行い、
前記接続判定部により、生成した複製矢印の始点が複製元となるエージェントアイコンに属しているか否かを判定し、前記表示調整部により、エージェントアイコンの複製に伴う画面表示を変更し、前記動作記述部により、このエージェントアイコンの複製に伴って支援対象となるプログラムにエージェントを複製するための命令を追加することを特徴とするプログラム作成支援方法。 - コンピュータ上で動作するエージェントプログラムの各動作状態を示す状態アイコンを描くための状態アイコン操作部と、前記エージェントプログラムの各状態アイコン間の遷移を示す状態遷移矢印を描くための状態遷移矢印操作部と、前記状態アイコン上に、その状態アイコンが示す状態において、エージェントが複製を行うことを示す複製マーカを表示するためのエージェント複製マーカ操作部とを備え、
前記エージェント複製マーカ操作部には、指定された状態アイコン上における複製マーカの表示・非表示の指定を判定する表示判定部と、この表示判定部による判定結果に応じて、状態アイコン上に複製マーカ表示させ、あるいは表示されていた複製マーカを削除する表示調整部と、画面上に描かれた状態アイコン上の複製マーカの表示・非表示に合わせて動作記述の変更を行う動作記述変更部とを備えていることを特徴とするプログラム作成支援装置。 - ネットワークに接続されたコンピュータを表現するホストアイコンを描くためのホストアイコン操作部と、前記ホストアイコン内に、そのホストアイコンで表現されたコンピュータ上で動作するアプリケーションプログラムをアプリケーションアイコンにより表現するアプリケーションアイコン操作部と、前記ホストアイコン内に、そのホストアイコンで表現されたコンピュータ上で動作するエージェントプログラムをエージェントアイコンにより表現するエージェントアイコン操作部と、コラボレーション識別子を備えかつ各アイコン間の相互作用を表現するメッセージ矢印を用いて各プログラム間で交換されるメッセージを表現するメッセージ矢印操作部と、前記ホストアイコンによって表現された異なったコンピュータ間のエージェントプログラムの移動を、コラボレーション識別子を備えかつ各アイコン間の相互作用を表現するエージェント移動矢印によって表現するエージェント移動矢印操作部とを備え、
前記エージェント移動矢印操作部には、生成した移動矢印の始点が移動元となるエージェントアイコンに属しているか否かを判定する接続判定部と、エージェントアイコンの移動に伴う画面表示を変更する表示調整部と、このエージェントアイコンの移動に伴って支援対象となるプログラムに動作記述の変更を行う動作記述変更部が設けられていることを特徴とするプログラム作成支援装置。 - コンピュータ上で動作するエージェントプログラムの各動作状態を示す状態アイコンを描くための状態アイコン操作部と、前記エージェントプログラムの各状態アイコン間の遷移を示す状態遷移矢印を描くための状態遷移矢印操作部と、前記状態アイコン上に、その状態アイコンが示す状態において、エージェントが複製を行うことを示す複製マーカを表示するためのエージェント複製マーカ操作部とを備え、前記エージェント複製マーカ操作部は、指定された状態アイコン上における複製マーカの表示・非表示の指定を判定する表示判定部と、この表示判定部による判定結果に応じて、状態アイコン上に複製マーカ表示させ、あるいは表示されていた複製マーカを削除する表示調整部と、画面上に描かれた状態アイコン上の複製マーカの表示・非表示に合わせて動作記述の変更を行う動作記述変更部とを備えているプログラム作成支援装置を使用し、
コンピュータの画面上に、前記状態アイコン操作部により、コンピュータ上で動作するエージェントプログラムの各動作状態を示す状態アイコンを表現し、前記状態遷移矢印操作部により、各状態アイコン間の遷移を示す状態遷移矢印を表現し、前記状態アイコン上に複製マーカを表示するか否かによって、その状態アイコンが示す状態において、エージェントが複製を行うか否かを表現し、
前記表示判定部により、指定された状態アイコン上における複製マーカの表示・非表示の指定を判定し、前記表示調整部により、前記表示判定部による判定結果に応じて、状態アイコン上に複製マーカ表示させ、あるいは表示されていた複製マーカを削除させ、前記動作記述変更部により、画面上に描かれた状態アイコン上の複製マーカの表示・非表示に合わせて動作記述の変更を行うことを特徴とするプログラム作成支援方法。 - ネットワークに接続されたコンピュータを表現するホストアイコンを描くためのホストアイコン操作部と、前記ホストアイコン内に、そのホストアイコンで表現されたコンピュータ上で動作するアプリケーションプログラムをアプリケーションアイコンにより表現するアプリケーションアイコン操作部と、前記ホストアイコン内に、そのホストアイコンで表現されたコンピュータ上で動作するエージェントプログラムをエージェントアイコンにより表現するエージェントアイコン操作部と、コラボレーション識別子を備えかつ各アイコン間の相互作用を表現するメッセージ矢印を用いて各プログラム間で交換されるメッセージを表現するメッセージ矢印操作部と、前記ホストアイコンによって表現された異なったコンピュータ間のエージェントプログラムの移動を、コラボレーション識別子を備えかつ各アイコン間の相互作用を表現するエージェント移動矢印によって表現するエージェント移動矢印操作部とを備え、前記エージェント移動矢印操作部には、生成した移動矢印の 始点が移動元となるエージェントアイコンに属しているか否かを判定する接続判定部と、エージェントアイコンの移動に伴う画面表示を変更する表示調整部と、このエージェントアイコンの移動に伴って支援対象となるプログラムに動作記述の変更を行う動作記述変更部が設けられているプログラム作成支援装置を使用して、
コンピュータの画面上に、前記ホストアイコン操作部により、ネットワークに接続されたコンピュータをホストアイコンを用いて表現し、アプリケーションアイコン操作部により、このホストアイコン内にこのホストアイコンで表現されたコンピュータ上で動作するアプリケーションプログラムをアプリケーションアイコンにより表現し、エージェントアイコン操作部により、エージェントプログラムをエージェントアイコンにより表現し、メッセージ矢印操作部により、各プログラム間で交換されるメッセージをメッセージ矢印を用いて表現し、エージェント移動矢印操作部により、エージェントの移動をエージェント移動矢印によって表現し、前記各矢印を、各アイコン間の相互作用を表現するコラボレーション識別子を備えたコラボレーション矢印によって構成し、前記エージェントアイコンからエージェント移動矢印を描くことにより、このエージェント移動矢印の終点にエージェントアイコンを描画して移動後のエージェントを表現するとともに、この移動に付随して必要となる表示変更を行い、
前記接続判定部により、生成した移動矢印の始点が移動元となるエージェントアイコンに属しているか否かを判定し、前記表示調整部により、エージェントアイコンの移動に伴う画面表示を変更し、前記動作記述変更部により、このエージェントアイコンの移動に伴って支援対象となるプログラムに動作記述の変更を行うことを特徴とするプログラム作成支援方法。 - 前記請求項7から13、16、および17のいずれかに記載されたプログラム作成支援方法を実現するコンピュータプログラムを記録した記録媒体。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000213299A JP4057766B2 (ja) | 1999-09-30 | 2000-07-13 | プログラム作成支援装置および方法、プログラム作成支援プログラムを記録した媒体 |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP11-280379 | 1999-09-30 | ||
| JP28037999 | 1999-09-30 | ||
| JP2000213299A JP4057766B2 (ja) | 1999-09-30 | 2000-07-13 | プログラム作成支援装置および方法、プログラム作成支援プログラムを記録した媒体 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2001166936A JP2001166936A (ja) | 2001-06-22 |
| JP4057766B2 true JP4057766B2 (ja) | 2008-03-05 |
Family
ID=26553752
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000213299A Expired - Fee Related JP4057766B2 (ja) | 1999-09-30 | 2000-07-13 | プログラム作成支援装置および方法、プログラム作成支援プログラムを記録した媒体 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4057766B2 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4836898B2 (ja) * | 2007-08-27 | 2011-12-14 | 株式会社東芝 | 遠隔監視・診断システム |
-
2000
- 2000-07-13 JP JP2000213299A patent/JP4057766B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2001166936A (ja) | 2001-06-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6366300B1 (en) | Visual programming method and its system | |
| JP3755499B2 (ja) | Guiアプリケーション開発支援装置、gui表示装置、および方法、並びにコンピュータ・プログラム | |
| JP3839468B2 (ja) | 国際データ処理システム | |
| JP4612069B2 (ja) | データを表現し操作する方法 | |
| JP3793226B2 (ja) | アトミック・コマンド・システム | |
| JP2008146665A (ja) | メニュー項目表示方法および装置 | |
| JP5362736B2 (ja) | 論理構造デザイン・サーフェス | |
| JP6079817B2 (ja) | ラダープログラム作成装置、コンピュータープログラム及びラダープログラム作成方法 | |
| EP0819274B1 (en) | Method and system for executing an application program | |
| JP4057766B2 (ja) | プログラム作成支援装置および方法、プログラム作成支援プログラムを記録した媒体 | |
| JPWO1999027438A1 (ja) | 画面作成エディタ | |
| JP6115063B2 (ja) | プログラマブルコントローラの周辺装置 | |
| JP2008142788A (ja) | 動作プログラム作成支援方法および動作プログラム作成装置。 | |
| JP3898507B2 (ja) | プログラム作成支援システム及びプログラム作成支援方法 | |
| JP7380376B2 (ja) | 情報処理装置およびラダープログラムを表示するためのプログラム | |
| JP2713147B2 (ja) | マルチメディアプレゼンテーション編集方法 | |
| JP3299259B2 (ja) | プログラムの構造図編集処理方式 | |
| JPH06231030A (ja) | マルチメディアオーサリングシステム | |
| JP2004272409A (ja) | オブジェクト仮止め装置、オブジェクト仮止め方法及びオブジェクト仮止めプログラム | |
| JPH09237274A (ja) | Www用htmlファイル作成方法及び装置 | |
| JPH07141158A (ja) | データ編集システム | |
| JP2005251128A (ja) | モデル編集システム、モデル編集方法およびモデル編集用プログラム | |
| JP3781923B2 (ja) | 線描画装置および線描画方法、ならびに線描画プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
| Landay et al. | Just draw it! Programming by sketching storyboards | |
| JP3300156B2 (ja) | Cadシステムの障害時における復旧方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050308 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070907 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070911 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071112 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20071211 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071214 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101221 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111221 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121221 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121221 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131221 Year of fee payment: 6 |
|
| LAPS | Cancellation because of no payment of annual fees |