(57)【要約】【課題】端末操作自動実行システムにおける条件分岐やループを含む一連の操作の内容を表したシナリオを専門知識がないユーザでも編集可能とすること。【解決手段】端末操作自動記録・実行手段１２により、対象ＡＰに対するユーザの操作の内容を操作順に記録して編集用シナリオを作成し、各操作時における対象ＡＰによる画面のキャプチャ画像とともに記憶手段１１に格納し、グラフィカル編集手段１２により、記憶手段１１から前記編集用シナリオを読み込み、当該編集用シナリオ中の操作をノードで示すとともに各操作の順序を当該ノード間を結ぶ矢印で示す操作列として編集作業画面の編集領域に表示し、編集領域内の編集用シナリオの操作列に対するユーザによる個々のノードの配置の変更、削除、条件分岐を含む各種のノードの追加、矢印の追加、削除、付け替え、参照領域内の参照用シナリオの操作列中のノードの貼り付けの操作に従って編集用シナリオを編集する。【選択図】図１
2010198456.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ上で動作するアプリケーションプログラムに対するユーザの操作を自動化するシステムにおける一連の操作の内容を表したシナリオを編集する方法であって、
端末操作自動記録・実行手段が、対象アプリケーションプログラムに対するユーザの操作の内容を操作順に記録して編集用シナリオを作成し、各操作時における対象アプリケーションプログラムによる画面のキャプチャ画像とともに記憶手段に格納するステップと、
グラフィカル編集手段が、記憶手段から前記編集用シナリオを読み込み、当該編集用シナリオ中の操作をノードで示すとともに各操作の順序を当該ノード間を結ぶ矢印で示す操作列として編集作業画面の編集領域に表示するとともに、予め用意された参照用シナリオに対応する前記同様の操作列を編集作業画面の参照領域に表示するステップと、
グラフィカル編集手段が、編集領域内の編集用シナリオの操作列に対するユーザによる個々のノードの配置の変更、削除、条件分岐を含む各種のノードの追加、矢印の追加、削除、付け替え、参照領域内の参照用シナリオの操作列中のノードの貼り付けの操作に従って編集用シナリオを編集するステップとを少なくとも含む
ことを特徴とするシナリオ編集方法。
【請求項２】
請求項１に記載のシナリオ編集方法において、
前記に加え、
グラフィカル編集手段が、編集領域内の編集用シナリオの操作列中の任意のノードに対するユーザによる所定の操作に従って当該任意のノードの部分操作列を当該任意のノードに対応するキャプチャ画像により部分操作編集・確認画面に表示し、当該部分操作編集・確認画面上のキャプチャ画像に対するユーザによる並び替え、削除、追加、合併及び分割の操作に従って編集用シナリオを編集するステップを含む
ことを特徴とするシナリオ編集方法。
【請求項３】
請求項１に記載のシナリオ編集方法において、
前記に加え、
グラフィカル編集手段が、
編集領域画面上の編集用シナリオの操作列中の条件分岐を表すノードに対するユーザによる所定の操作に従って分岐条件編集画面を表示し、当該分岐条件編集画面上の変数、演算子、ラジオボタンに対するユーザによる選択または入力の操作に従って編集用シナリオにおける分岐条件を編集するステップを含む
ことを特徴とするシナリオ編集方法。
【請求項４】
コンピュータ上で動作するアプリケーションプログラムに対するユーザの操作を自動化するシステムにおける一連の操作の内容を表したシナリオを編集する装置であって、
編集用シナリオ、キャプチャ画像及び参照用シナリオを記憶するための記憶手段と、
対象アプリケーションプログラムに対するユーザの操作の内容を操作順に記録して編集用シナリオを作成し、各操作時における対象アプリケーションプログラムによる画面のキャプチャ画像とともに記憶手段に格納する端末操作自動記録・実行手段と、
記憶手段から前記編集用シナリオを読み込み、当該編集用シナリオ中の操作をノードで示すとともに各操作の順序を当該ノード間を結ぶ矢印で示す操作列として編集作業画面の編集領域に表示するとともに、予め用意された参照用シナリオに対応する前記同様の操作列を編集作業画面の参照領域に表示し、編集領域内の編集用シナリオの操作列に対するユーザによる個々のノードの配置の変更、削除、条件分岐を含む各種のノードの追加、矢印の追加、削除、付け替え、参照領域内の参照用シナリオの操作列中のノードの貼り付けの操作に従って編集用シナリオを編集するグラフィカル編集手段とを備えた
ことを特徴とするシナリオ編集装置。
【請求項５】
請求項４に記載のシナリオ編集装置において、
グラフィカル編集手段は、前記に加え、
編集領域内の編集用シナリオの操作列中の任意のノードに対するユーザによる所定の操作に従って当該任意のノードの部分操作列を当該任意のノードに対応するキャプチャ画像により部分操作編集・確認画面に表示し、当該部分操作編集・確認画面上のキャプチャ画像に対するユーザによる並び替え、削除、追加、合併及び分割の操作に従って編集用シナリオを編集する
ことを特徴とするシナリオ編集装置。
【請求項６】
請求項４に記載のシナリオ編集装置において、
グラフィカル編集手段は、前記に加え、編集領域内の編集用シナリオの操作列中の条件分岐を表すノードに対するユーザによる所定の操作に従って分岐条件編集画面を表示し、当該分岐条件編集画面上の変数、演算子、ラジオボタンに対するユーザによる選択または入力の操作に従って編集用シナリオにおける分岐条件を編集する
ことを特徴とするシナリオ編集装置。
【請求項７】
コンピュータを、請求項４乃至６のいずれかに記載の装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ上で動作するアプリケーションプログラム（ＡＰ）に対するユーザの操作、特にグラフィカルユーザインタフェース（ＧＵＩ）を有するＡＰに対する当該ＧＵＩを通じたユーザの操作を自動化するシステムにおいて、自動化する一連の操作の内容を表したシナリオを編集する技術に関するものである。
【背景技術】
【０００２】
端末装置等のコンピュータ上で動作するＡＰに対するユーザの操作を自動化するシステム（端末操作自動実行システム）とは、ユーザが当該ＡＰに対して行った一連の操作を記録し、後で同じ操作をコンピュータに代行させることを可能にするソフトウェアを指し、例えばＲｏｃｋｅｔＭｏｕｓｅ、Ｔｒｉｐｌｅ−９、ＡｕｔｏＭｏｕｓｅなどがある。
【０００３】
ＲｏｃｋｅｔＭｏｕｓｅでは、ユーザによる一連の操作を特定座標のクリックやキー入力の列として記録し、再現することができる（非特許文献１参照）。また、Ｔｒｉｐｌｅ−９では、ユーザによる一連の操作をＰａｓｃａｌに似たスクリプト言語により条件分岐やループなどの複雑な内容を含めて記述し、再現することが可能である（非特許文献２参照）。
【０００４】
また、ＡｕｔｏＭｏｕｓｅでのユーザによる一連の操作の記録及び編集の方法は、以下の通りである。ユーザが操作したい画面上の対象（ボタンやチェックボックスなど）をＡｕｔｏＭｏｕｓｅ上で任意の大きさの矩形として選択し、編集画面に貼り付ける。実施したい操作を、前記矩形中の任意の位置におけるクリック、ダブルクリックなどのマウス操作やキーボード操作として記述する。そのように記述された操作は切り取った矩形部分の画像としてＡｕｔｏＭｏｕｓｅの編集画面上に表示され、並べられる。ユーザは、ユーザが普段、操作しているコンピュータの画面上の画像を元に、操作列を組み立てていくことが可能であるため、ユーザ自身にプログラミングのスキル等がなくとも、ある程度実用的なシナリオを編集することができる（非特許文献３参照）。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】”Ｗｉｎｄｏｗｓ（登録商標）の操作を全自動化するＲｏｃｋｅｔＭｏｕｓｅ”、［ｏｎｌｉｎｅ］、Mojosoft.Inc.、［平成２１年２月１２日検索］、インターネット＜ＵＲＬ：http://home.att.ne.jp/yellow/town/rockm.htm＞
【非特許文献２】”Ｔｒｉｐｌｅ−９  ｆｏｒ  Ｗｉｎｄｏｗｓ（登録商標）”、［ｏｎｌｉｎｅ］、［平成２１年２月１２日検索］、インターネット＜ＵＲＬ：http://www.technocity.jp/products.htm＞
【非特許文献３】山本格也「ＧＵＩをＡＰＩとして用いるプログラミング法」、情報処理学会論文誌、Ｖｏｌ．３９、Ｎｏ．ＳＩＧ１（ＰＲ０１），１９９８，ｐ２６−３３
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前述した従来技術ではいずれも、一連の操作の内容を表したシナリオ（端末操作自動実行システムが、どのような操作を、どのような順番で、どのように実行するか、を指定するプログラム相当のもの）の編集に課題があった。
【０００７】
即ち、ＲｏｃｋｅｔＭｏｕｓｅでは、操作の記録・再生に用いるシナリオに、マウスクリックなどの操作と座標位置や時間間隔がセットで用いられている。クリック位置の座標は数値で表示されていても、その操作の意味がユーザには理解が困難である。そのため、操作記録時から大幅に変更するような編集は困難であった。
【０００８】
また、Ｔｒｉｐｌｅ−９は、専用のスクリプト言語で複雑な処理を記述することが可能であるが、プログラミングのスキルが必要とされるため、一般のユーザが編集することは困難であった。
【０００９】
また、ＡｕｔｏＭｏｕｓｅでは、シナリオの条件分岐やループを記述することはある程度可能であるが、柔軟な記述は困難であった。即ち、条件分岐相当については、記録時に切り取った矩形の画像から、選択肢となる複数の切り取った矩形画像に対して、それぞれ矢印を引くことで記述できる。実行時はいずれかの選択肢で、選択肢の矩形画像とマッチする矩形部分が現在の画面上に存在すれば、その選択肢で指定されている処理を実施する。ループも同様で、戻る矢印を追加することで実現できる。
【００１０】
しかし、この方法で記述できる条件分岐は、あくまでも画面上でマッチする画像が存在するか否かという条件だけである。
【００１１】
例えば、データの内容によって処理を振り分けたい場合などでは、データの表面的な外見で処理を分岐させることになるが、記述が非現実的になり得る。例えば、テキストボックス上の数値がフィボナッチ数列に含まれる数値であるか否かで分岐させたいとした場合、ＡｕｔｏＭｏｕｓｅではあり得る状態を列挙するしかないため、記述することは非現実的であった。
【００１２】
以上のように、前述した従来技術では、専門知識を持たないユーザが、条件分岐やループを含む一連の操作の内容を表したシナリオを編集することが困難であるという課題があった。
【課題を解決するための手段】
【００１３】
ＡＰをユーザの代わりに自動的に実行する従来の端末操作自動実行システムにおいては、操作する内容を表すシナリオの編集がプログラミングの知識やスキルを有するものに限られている、もしくは非常に限定的な部分のみだけがプログラミングの知識やスキルを有さないユーザによって編集可能という課題があった。
【００１４】
本発明では、ユーザ操作の前後などに対応する対象ＡＰのウィンドウのキャプチャ画像を元に、操作内容を視覚的に提示する。ユーザが操作内容を修正したい場合を想定し、テキストのプログラムではなく、グラフィカルなウィンドウキャプチャをベースに、操作の並び換えや削除、合併、また条件分岐、繰り返し処理など様々な処理の編集機能を提供する。
【００１５】
条件分岐や繰り返し処理については、ＵＭＬなどで提案されてきた視覚的な表示方法がある。しかし、端末操作自動実行システムにその表示や編集方法を応用した例は見られない。
【００１６】
本発明では、ＵＭＬなどの視覚的な表示・編集方法とウィンドウキャプチャによる直感的な操作内容の表示・編集とを発展的に組合せることで、プログラミングスキルを有しないユーザでも比較的理解し易い形での編集機能を提供する。
【００１７】
以上により、プログラミングの知識やスキルを有さないが対象ＡＰの操作経験を有するユーザが、条件分岐や繰り返し処理など、ある程度複雑な制御構造を持つシナリオの理解と編集を行うことを可能にする。
【発明の効果】
【００１８】
本発明によれば、実際に対象ＡＰを使っているユーザが普段利用している画面をシナリオの図示に用いることで、ユーザが操作内容を表すシナリオの形式や文法を知らなくとも、操作内容を把握すること及び編集することを容易にする。
【００１９】
また、条件分岐やループを含むような制御構造が複雑な場合でも、視覚的にユーザが操作している画面を元に表現すること、及び詳細の設定を別の画面へと分離し、必要に応じた詳細設定を可能とすることで、ユーザによる操作内容の理解や編集の負担を軽減する。
【００２０】
結果、プログラミングの知識やスキルを高いレベルで持つユーザでなくとも、作業の手間やミスの削減、作業時間の短縮による効率化などといった端末操作自動実行システムの恩恵を受けることを可能とする。
【図面の簡単な説明】
【００２１】
【図１】本発明のシナリオ編集装置の実施の形態の一例を示す構成図
【図２】本発明装置における編集処理の概要を示す流れ図
【図３】対象アプリケーションプログラムにおける操作画面の一例を示す説明図
【図４】本発明装置におけるシナリオ編集作業画面の一例を示す説明図
【図５】本発明装置におけるシナリオ編集作業画面の他の例を示す説明図
【図６】本発明によるシナリオの一例を示す説明図
【図７】本発明装置における部分操作編集・確認画面の一例を示す説明図
【図８】本発明装置における部分操作列編集処理の詳細を示す流れ図
【図９】本発明装置におけるシナリオ編集作業画面の更に他の例を示す説明図
【図１０】本発明装置における分岐条件編集画面の一例を示す説明図
【図１１】本発明装置における分岐条件編集処理の詳細を示す流れ図
【図１２】分岐条件編集処理における変数の設定画面の一例を示す説明図
【図１３】分岐条件編集処理における変数設定の際の対応画像の一例を示す説明図
【発明を実施するための形態】
【００２２】
図１は本発明のシナリオ編集装置の実施の形態の一例、ここでは入出力デバイス１を備え、ＯＳ２及び該ＯＳ２上で動作する対象アプリケーションプログラム（ＡＰ）３を含むユーザ端末４に実装された例を示すもので、本発明のシナリオ編集装置は、記憶手段１１と、端末操作自動記録・実行手段１２と、グラフィカル編集手段１３とから構成されている。
【００２３】
なお、入出力デバイス１は周知のマウス、キーボード、ディスプレイ等からなり、対象ＡＰ３に対するユーザによる入力操作及び対象ＡＰ３からのユーザへの処理結果の表示を行う外、本装置の端末操作自動記録・実行手段１２及びグラフィカル編集手段１３に対するユーザによる入力操作及びこれらの手段からのユーザへの処理結果の表示を行うものとする。
【００２４】
記憶手段１１は、後述する編集用シナリオ、キャプチャ画像及び参照用シナリオを記憶するためのものである。
【００２５】
端末操作自動記録・実行手段１２は、ユーザによる入出力デバイス１を通じた端末操作自動記録の指示が入力されると、対象ＡＰ３に対するユーザの操作の内容を操作順に記録して編集用シナリオを作成し、各操作時における対象ＡＰ３による画面のキャプチャ画像とともに記憶手段１１に格納する。
【００２６】
また、端末操作自動記録・実行手段１２は、ユーザによる入出力デバイス１を通じた端末操作自動実行の指示が入力されると、記憶手段１１から編集用シナリオを読み込み、当該編集用シナリオに従う操作を実行させる。
【００２７】
グラフィカル編集手段１３は、ユーザによる入出力デバイス１を通じた編集開始の指示が入力されると、記憶手段１１から前記編集用シナリオを読み込み、当該編集用シナリオ中の操作をノードで示すとともに各操作の順序を当該ノード間を結ぶ矢印で示す操作列として入出力デバイス１上に表示された編集作業画面の編集領域に表示するとともに、予め用意され、ユーザによる入出力デバイス１を通じて指定された参照用シナリオを記憶手段１１から読み込み、当該参照用シナリオに対応する前記同様の操作列を入出力デバイス１上に表示された編集作業画面の参照領域に表示し、編集領域内の編集用シナリオの操作列に対するユーザによる入出力デバイス１を通じた個々のノードの配置の変更、削除、条件分岐を含む各種のノードの追加、矢印の追加、削除、付け替え、参照領域内の参照用シナリオの操作列中のノードの貼り付けの操作に従って編集用シナリオを編集する。
【００２８】
また、グラフィカル編集手段１３は、編集領域内の編集用シナリオの操作列中の任意のノードに対するユーザによる入出力デバイス１を通じた所定の操作に従って当該任意のノードの部分操作列を当該任意のノードに対応するキャプチャ画像により入出力デバイス１上に表示された部分操作編集・確認画面に表示し、当該部分操作編集・確認画面上のキャプチャ画像に対するユーザによる入出力デバイス１を通じた並び替え、削除、追加、合併及び分割の操作に従って編集用シナリオを編集する。
【００２９】
また、グラフィカル編集手段１３は、編集領域内の編集用シナリオの操作列中の条件分岐を表すノードに対するユーザによる入出力デバイス１を通じた所定の操作に従って入出力デバイス１上に分岐条件編集画面を表示し、当該分岐条件編集画面上の変数、演算子、ラジオボタンに対するユーザによる入出力デバイス１を通じた選択または入力の操作に従って編集用シナリオにおける分岐条件を編集する。
【００３０】
図２は本発明装置における編集処理の概要を示す流れ図である。以下、本発明の詳細を処理の流れとともに説明する。
【００３１】
端末操作自動記録・実行手段１２に対し、ユーザによる入出力デバイス１を通じた端末操作自動記録の指示が入力された後、ユーザが入出力デバイス１を通じてＯＳ２にメッセージを投げ、対象ＡＰ３を操作すると、端末操作自動記録・実行手段１２は、通常の端末操作自動実行システムと同様に、この操作を監視することで操作の内容を操作順に記録し、操作内容の再現に必要となるシナリオのベース、即ち編集用シナリオを作成し、同時に、各操作時における対象ＡＰ３によるウィンドウ画面をキャプチャし、そのキャプチャ画像とともに記憶手段１１に格納する（ｓ１）。また、対象ＡＰ３中に分岐がある場合は、分岐それぞれの操作に対応する前記同様の操作内容の記録を行って編集用シナリオを作成するとともにキャプチャ画像を取得し、記憶手段１１に格納する（ｓ２）。
【００３２】
編集用シナリオをプログラミングの知識やスキルを持たないユーザでも編集可能とするために、対象ＡＰのキャプチャ画像を利用したグラフィカル編集システムを提供する。複数のシナリオを元にシナリオを編集する際は、他のシナリオを参照し、その一部を部品として利用する。さらに細かい編集が必要な場合、ユーザはグラフィカル編集システムを用いて、キャプチャ画像をベースにグラフィカルにシナリオを編集する。また、分岐条件の編集も必要に応じて実施する。
【００３３】
また、編集後のシナリオに基づき操作を自動実行させたい場合、ユーザは端末操作自動記録・実行手段１２に入出力デバイス１を通じて端末操作自動実行の指示を入力し、編集後の編集用シナリオを読み込ませて実行させる。
【００３４】
図３は本発明を説明するための対象ＡＰにおける操作画面の一例、ここでは、ある検索プログラムにおける操作画面の一例を示している。即ち、検索画面にて検索語句を入力し、全文検索もしくはタイトル検索を選択して検索をクリックし、この際、ヒットするものがあれば検索結果画面に遷移し、結果が表示され、ヒットするものがなければ検索エラー画面に遷移する、という操作フローの例を示している。
【００３５】
本装置において、グラフィカル編集手段１３に対し、ユーザによる入出力デバイス１を通じた編集開始の指示が入力されると、グラフィカル編集手段１３は、記憶手段１１から編集用シナリオを読み込み、当該編集用シナリオ中の操作をノード、各操作の順序をノード間を結ぶ矢印で示す操作列として入出力デバイス１上に表示された編集作業画面の編集領域（ペイン）に表示する（ｓ３）とともに、予め用意され、ユーザによる入出力デバイス１を通じて指定された参照用シナリオを記憶手段１１から読み込み、当該参照用シナリオに対応する前記同様の操作列を入出力デバイス１上に表示された編集作業画面の参照領域に表示する（ｓ４）。
【００３６】
また、グラフィカル編集手段１３では、編集領域内の編集用シナリオの操作列に対するユーザによる入出力デバイス１を通じた個々のノードの配置の変更、削除、条件分岐を含む各種のノードの追加、矢印の追加、削除、付け替え、参照領域内の参照用シナリオの操作列中のノードの貼り付けの操作に従って編集用シナリオを編集する（ｓ５）。
【００３７】
図４は本発明装置におけるシナリオ編集作業画面の一例、ここでは編集用シナリオとして図３に示した対象ＡＰの操作フローに対応する編集用シナリオを読み込んだ際の例を示す。
【００３８】
ユーザによる操作を覚えこませた段階では、通常、図４の左側の編集領域に示すように、分岐の存在しない直列的な操作列となる。編集するにあたって、分岐を作る場合、別の操作列を付け加える必要がある。そのために図４の右側の参照領域に示すように、他の参照用シナリオを読み込んでその操作列を表示し、材料として使えるようにする。その際は編集領域へのノードのドラッグ＆ドロップ操作などを用いてグラフィカルに実施する。また、条件分岐の追加やループの追加、処理順序を変更するために、図４の右下部のように、条件分岐と処理順序（矢印）を示すアイコンを配置し、適宜、編集領域にドラッグ＆ドロップ操作により配置する。ループを表すには、ループの終了条件を設定するための条件分岐を配置し、矢印により操作の繰返しを表現すれば良い。また、例外処理について記載の必要がある場合は、ＵＭＬなどの記法を利用して、条件分岐と同様に実現すれば良い。他にＷＨＩＬＥ文なども記載の必要があれば、ＵＭＬなどの既存の記法を利用して、同様の対処をすることで対応すれば良い。
【００３９】
以上のようにして、編集領域では個々のノードの配置のグラフィカルな変更、矢印の削除や付け替えや追加、分岐の追加などにより、柔軟にシナリオを組み立てることができる。
【００４０】
図５は図４に示した編集用シナリオを上述の操作によって編集した結果に対応するシナリオ編集作業画面を示すものである。また、図６は対応する編集用シナリオの一部を示すものである。なお、実際には、図６のようなシナリオの記述を直接、エンドユーザに示すことはない。
【００４１】
編集領域に示されるシナリオのビジュアルな表現方法には幾つかの方式が考えられるが、ここでは一例としてＵＭＬのアクティビティ図として示した。シナリオの表現方法としては、ＵＭＬのアクティビティ図の他に、ＵＭＬのステートチャート図、フローチャート、ビジュアルプログラミングの分野で提案されてきた表現方法などいくつかの方法があり得る。但し、条件分岐やループの存在を表現できるものとする。
【００４２】
図４及び図５に示すような、シナリオのビジュアルな編集の実現に必要な処理については、一般的なＵＭＬエディタ（例えば、ＡｒｇｏＵＭＬやＡｍａｔｅｒａｓＵＭＬなど）やペイント系ソフト（お絵かきソフト）などと類似しており、一般的な技術を用いることで実現可能である。
【００４３】
また、グラフィカル編集手段１３では、編集領域内の編集用シナリオの操作列中の任意のノードに対するユーザによる入出力デバイス１を通じた所定の操作に従って当該任意のノードの部分操作列を当該任意のノードに対応するキャプチャ画像により入出力デバイス１上に表示された部分操作編集・確認画面に表示し（ｓ６，ｓ７）、当該部分操作編集・確認画面上のキャプチャ画像に対するユーザによる入出力デバイス１を通じた並び替え、削除、追加、合併及び分割等の操作に従って編集用シナリオを編集する（ｓ８，ｓ９）。
【００４４】
図７は本発明装置における逐次的な操作列を編集する際の部分操作編集・確認画面の一例、ここでは図５中の「全文検索をチェック」のノードに対してダブルクリック等の所定の操作をすることで、当該ノードが表している逐次的な部分操作列を開いた例を示すものである。
【００４５】
この画面上で、参照領域に別のシナリオを直列的に並べたものから挿入したい操作に対応するキャプチャ画像をドラッグ＆ドロップで編集領域に挿入することや、編集対象の操作列から操作の削除や並べ替え、操作の合併や分割等をマウス操作でビジュアルに行うことができる。
【００４６】
図８は本発明装置における部分操作列編集処理の詳細を示す流れ図である。
【００４７】
即ち、部分操作編集・確認画面を表示した後（ｓ２１，ｓ２２）、ユーザによる入出力デバイス１を通じた操作に従い、「削除」は対象となるキャプチャ画像を選択した上で削除をメニューから選択・実行することで編集用シナリオの該当部分と当該キャプチャ画像を削除し（ｓ２３）、「追加」は参照用シナリオの対象となるキャプチャ画像を編集用シナリオの部分操作列中にドラッグ＆ドロップすることで参照用シナリオの該当部分及び変数宣言部分などの関連する情報を編集用シナリオにコピーし（ｓ２４）、「並べ替え」は対象となるキャプチャ画像をドラッグ＆ドロップすることで編集用シナリオの該当部分の順序を変更し（ｓ２５）、「合併」は複数のキャプチャ画像を選択した上で合併をメニューから選択・実行することなどで編集用シナリオの該当部分の変数宣言部分をマージし、ユーザ入力による新たな名前のブロック（ノード）で記述を連結させ（ｓ２６）、「分割」はキャプチャ画像間の領域を指定した上で分割をメニューから選択・実行することなどで編集用シナリオの指定箇所の上下でシナリオを２つのシナリオに分割し、ユーザ入力もしくは規定の命令規則による自動入力により新たな名前を２つのシナリオにつける（ｓ２７）ことで行うことができる。
【００４８】
他のシナリオからシナリオの一部を編集中のシナリオに挿入する機能は、従来技術には見られなかった機能である。過去に作成したシナリオと類似したシナリオを編集する際の手間を大幅に軽減することを可能にする。
【００４９】
プログラミングの知識等を持たないユーザでも編集可能とするために、図７の例のように操作内容記録時の対象ＡＰのウィンドウのキャプチャ画像を並べる。キャプチャ画像はシナリオ内で対応するブロックの名前と同名のファイル名とするなどの方法により管理するものとする。キャプチャ画像をどれくらいの粒度（１クリック毎なのか、ウィンドウの切り替わりタイミングなのかなど）で取得しておくかという事に関しては、特に編集システムとしての制限はない。但し、編集時に操作の詳細を表示するために、ユーザ操作の記録時は、マウスのクリックやキーの押下など、単位操作毎に画面キャプチャを取得しておき、表示可能にしておくことを想定している。
【００５０】
複数の操作をまとめた際は、編集時にウィンドウキャプチャの変化を示すために、ウィンドウのキャプチャ画像をスライドショーのように切り替え可能とすること、もしくはアニメーションとして表示することで（アニメーションＧＩＦなどの実現方法がある）、操作の流れを視覚的に確認可能とするようにしても良い。また、ウィンドウキャプチャが小さい場合、操作の内容がわからないケースがあるため、ズーム表示する（ｓ２８）ものとする。また、ウィンドウ表示により、操作した箇所が分かり難くなるケースがあるため、操作記録時にキャプチャ画像を取得する際に、操作対象のユーザインタフェース部品（ボタンやテキストボックスなど）の位置を記録しておき、キャプチャ画像における当該位置を赤い矩形で囲うなどの手段により、操作箇所を強調表示する。キャプチャをウィンドウ単位で表示することで、より正確にユーザ記録時の操作を把握することが可能になる。
【００５１】
ユーザが操作するオブジェクトをビジュアルに見せるという点で共通する従来技術（Ａｕｔｏｍｏｕｓｅ）では、矩形の選択範囲とクリック操作起動の可否及びクリック位置が密接に関連していたため、多くの場合、部分的にしか対象ＡＰの画像が表示されていなかった。
【００５２】
さらにまた、グラフィカル編集手段１３では、編集領域内の編集用シナリオの操作列中の条件分岐を表すノードに対するユーザによる入出力デバイス１を通じた所定の操作に従って入出力デバイス１上に分岐条件編集画面を表示し、当該分岐条件編集画面上の変数、演算子、ラジオボタンに対するユーザによる入出力デバイス１を通じた選択または入力の操作に従って編集用シナリオにおける分岐条件を編集する（図２：ｓ１０）。
【００５３】
図９は本発明装置におけるシナリオ編集作業画面の更に他の例、ここでは図５の編集作業画面の編集領域において条件分岐を表すノードとその分岐先を指定する際の例を示すもので、条件分岐ノードと分岐先をビジュアルに選択し、ダブルクリック等の所定の操作をすることによって、図１０に示すような分岐条件編集画面に遷移する。また、他の分岐条件の指定と分岐条件編集画面への遷移方法として、条件分岐を表すノードのみをビジュアルに選択し、ダブルクリック等の所定の操作をすることによって、図１０に示すような分岐条件編集画面に遷移する方法もある。この場合は編集作業画面の編集領域において、分岐先を示す矢印の近くに「Ｔｒｕｅ」または「Ｆａｌｓｅ」などといった真偽値を示す所定の文字列または記号を記載できるようにし、分岐条件の真偽値によって、矢印近くの文字列または記号と合致する分岐先に遷移するものとする。
【００５４】
図１１は本発明装置における分岐条件編集処理の詳細を示す流れ図である。
【００５５】
即ち、分岐条件編集画面を表示した後（ｓ３１）、ユーザによる入出力デバイス１を通じた操作に従い、既存の変数から選択するか（ｓ３２，ｓ３３）、変数の新規作成画面に移行して変数を作成する（ｓ３２，ｓ３４）ことで変数を決定し、これを左辺・右辺の両方について繰り返し（ｓ３５）、さらに比較演算子を選択する（ｓ３６）ことで１つの条件を決定し、全ての条件を決定（入力）した後（ｓ３７）、「全ての条件に一致（ａｎｄ）」、「いずれかの条件に一致（ｏｒ）」、「その他（直接入力）」のラジオボタンのいずれかを選択（又は直接入力）する（ｓ３８〜ｓ４１）ことで、編集用シナリオにおける分岐条件を編集することができる。
【００５６】
分岐条件の編集は、真偽値を有する条件式を編集することに相当し、図１０に示す画面では上部にある条件式が条件式編集における出力である。条件式は、命題変数に相当する画面中央の個々の条件を示す“識別子”（図１０では１，２で表される整数値）、論理演算に相当するａｎｄ，ｏｒ，ｎｏｔなどの“記号”、“（”（開き括弧）、“）”（閉じ括弧）から構成される命題論理により記述する。
【００５７】
条件式を直接記述しなくても済むように、単純なケースについては、全ての条件をａｎｄやｏｒで結合した条件式をラジオボタンの選択１クリックで記述できる。個々の条件については、例えば変数がユーザ入力の定数と等しい、などといった条件をできるだけリスト選択などを利用しながら入力する。比較演算子（等しい（＝）、等しくない（！＝）、……）については、変数の型によって選択できる演算子を変えるものとする。例えば、型として画像を選ぶ場合は画像とのマッチング（画面上に存在するか否かなど）などを行うものとする。また、取り得る変数の型が決まっている演算子を先に選択することで、変数の型は選ばせずに、演算子の型によって自動的に変数の型をセットする、というやり方もある。また、分岐条件編集画面で両辺の変数の型が揃わないような選択が行えないようにする。
【００５８】
図１２は分岐条件編集処理における変数の設定画面の一例、ここでは図１０の分岐条件編集画面において、変数をリストから選択する際の画面とその遷移を示したものである。
【００５９】
既存の変数があれば、リストから変数のプロパティを確認した上で選択できる。その際、設定してあれば変数に関連付けられた画像を参照することが可能であるため、変数の意味するものを直感的に理解できる。既存の変数に希望のものがない場合はリストから新しい変数を作成するメニューを開くなどの手段により、変数のプロパティを設定する。変数名と変数型を設定し、必要に応じて対応する画像を設定する。
【００６０】
変数型として画像を選ぶ場合及び他の変数型で画像を設定する場合は、例えば図１３に示すような、現在編集中の分岐に至るフローの画面を遡りながら順に表示させる画面において、画面上で対応させたい画像部分を（破線で示すように）矩形選択する。この画像を図１０の分岐条件編集画面において、変数を選択する際に表示し、変数の表す内容を理解する参考とするようにしても良い。
【００６１】
以上の手順を繰り返すことにより、編集用シナリオが完成すれば（図２：ｓ１１）、本発明装置による編集処理を終了する。
【００６２】
従来技術では、ユーザが対象ＡＰのキャプチャ画像を元にビジュアルにシナリオを編集できる場合は条件分岐やループなどが柔軟に記述できない、また一方で条件分岐やループなどが柔軟に記述できる場合はシナリオの編集にプログラミングスキルをユーザに要求してしまうといった課題があった。
【００６３】
本発明では、キャプチャ画像を元にしたビジュアルなシナリオ編集機能と条件分岐やループの柔軟な記述を両立する。キャプチャ画像を元にしたシナリオ表示に、条件分岐やループの存在がわかるように表示し、詳細の設定は別の画面に分離し、必要に応じた詳細設定を可能とすることで、上記課題を解決した。
【００６４】
なお、本発明は、周知のコンピュータに媒体もしくは通信回線を介して、図１の構成図に示された機能を実現するプログラム、あるいは図２、図８、図１１のフローチャートに示された手順を備えるプログラムをインストールすることによっても実現可能である。
【符号の説明】
【００６５】
１：入出力デバイス、２：ＯＳ、３：対象ＡＰ、４：ユーザ端末、１１：記憶手段、１２：端末操作自動記録・実行手段、１３：グラフィカル編集手段。
【図１】
2010198456.tif 000003
【図２】
2010198456.tif 000004
【図３】
2010198456.tif 000005
【図４】
2010198456.tif 000006
【図５】
2010198456.tif 000007
【図６】
2010198456.tif 000008
【図７】
2010198456.tif 000009
【図８】
2010198456.tif 000010
【図９】
2010198456.tif 000011
【図１０】
2010198456.tif 000012
【図１１】
2010198456.tif 000013
【図１２】
2010198456.tif 000014
【図１３】
2010198456.tif 000015