(57)【要約】【課題】手動による画面遷移の操作を削減すること。【解決手段】画面遷移制御装置１００は、画面を自動的に遷移させる過程において、シナリオファイルに定義された画面遷移順に従わない画面への遷移が発生した場合には、手動による画面遷移を許容する。そして、画面遷移制御装置１００は、手動による画面遷移による遷移先の画面が、シナリオファイルに定義された画面遷移順上、画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、再度自動的に画面を遷移させる。【選択図】図１
2015179428.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが実行する画面遷移制御方法であって、
自動画面遷移モードの実行中に、所定の画面遷移順に従わない画面への遷移が発生したことを検出すると、前記自動画面遷移モードを中止して、手動による画面遷移を許容し、
手動による画面遷移による遷移先の画面が、前記所定の画面遷移順上、前記所定の画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、自動画面遷移モードを再開する、
処理を実行することを特徴とする画面遷移制御方法。
【請求項２】
前記手動による画面遷移を許容する処理は、前記所定の画面遷移順に従わない画面が、前記次の画面の更に次の画面と一致する場合には、手動による画面遷移を許容しないで、自動画面遷移モードを継続することを特徴とする請求項１に記載の画面遷移制御方法。
【請求項３】
前記所定の画面遷移順に従わない画面への遷移が発生したことを検出する処理は、前記所定の画面遷移順に含まれる各画面と対応付けて登録された画面識別情報のうち、前記所定の画面遷移順上で次の遷移順である画面と対応する画面識別情報に示される情報が、前記コンピュータが通信可能なサーバから受信した画面遷移後の画面の情報に含まれない場合に、前記所定の画面遷移順に従わない画面への遷移が発生したと判定することを特徴とする請求項１または２に記載の画面遷移制御方法。
【請求項４】
コンピュータに、
自動画面遷移モードの実行中に、所定の画面遷移順に従わない画面への遷移が発生したことを検出すると、前記自動画面遷移モードを中止して、手動による画面遷移を許容し、
手動による画面遷移による遷移先の画面が、前記所定の画面遷移順上、前記所定の画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、自動画面遷移モードを再開する
処理を実行させることを特徴とする画面遷移制御プログラム。
【請求項５】
自動画面遷移モードの実行中に、所定の画面遷移順に従わない画面への遷移が発生したことを検出すると、前記自動画面遷移モードを中止して、手動による画面遷移を許容し、手動による画面遷移による遷移先の画面が、前記所定の画面遷移順上、前記所定の画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、自動画面遷移モードを再開する制御部
を有することを特徴とする画面遷移制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面遷移制御方法等に関する。
【背景技術】
【０００２】
近年、利用者が入力操作を行わなくてもＷｅｂ上の画面を自動遷移させることで、業務処理や情報収集の効率を向上させる従来技術がある。例えば、この従来技術では、画面の操作の手順を予めシナリオファイルに記録し、このシナリオファイルに記録された手順を順次実行する。
【０００３】
図１３は、従来技術の一例を示す図である。図１３に示す従来技術の例は、３つのシナリオファイル１０ａ，２０ａ，３０ａを持つシナリオグループを実行し、３つのシナリオファイルの最終画面を、サムネイル画面４０に表示させるものである。
【０００４】
例えば、シナリオファイル１０ａは、画面を、画面１１，１２，１３の順に遷移させるシナリオファイルである。シナリオファイル２０ａは、画面を、画面２１，２２，２３の順に遷移させるシナリオファイルである。シナリオファイル３０ａは、画面を、画面３１，３２，３３，３４の順に遷移させるシナリオファイルである。従来技術は、シナリオファイル１０ａ，２０ａ，２０ａを実行し、最終画面となる画面１３，２３，３４をそれぞれサムネイル画面４０に表示させる。
【０００５】
例えば、上記従来技術を用いることで、チェック対象となる複数の最終画面をサムネイル画面に自動的に表示することができるので、利用者がチェックの度に手動で最終画面に至るまでの操作を省くことができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１１−７６１５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した従来技術では、手動による画面遷移の操作を削減することができないという問題がある。
【０００８】
画面遷移中に、予めシナリオファイルで想定していない画面への遷移が発生する場合があり、このような場合には、シナリオファイルに従って画面を自動的に遷移させる処理が中断してしまい、以降の画面遷移を手動で行うことになる。
【０００９】
例えば、業務処理における画面の操作は、ログイン操作の画面を経て業務画面に遷移することが一般的である。しかし、一度ログインした後に、ログイン処理を省略するシステムや、シングルサインオンシステム等では、ログイン操作の画面が必ずしも毎回表示されるわけではない。
【００１０】
図１４は、従来技術の問題の一例を示す図である。シナリオファイル５０ａは、初期画面５１，ログイン画面５２，業務メニュー画面５３を順に表示させるものである。しかし、例えば、ログインした後に、ログイン処理を省略するようなシステムでは、シナリオファイル５０ａの通りに画面遷移しない。例えば、すでにログイン処理を行った状態でシナリオファイル５０ａが実行されると、初期画面５１に相当する初期画面６１の次に、ログイン画面が省略され、業務メニュー画面５３に相当する業務メニュー画面６２を表示させてしまう。このような場合には、シナリオファイル５０ａはうまく動作せず、手動によって画面遷移の操作を行うことで対処する。
【００１１】
その他にも、ワンタイムパスワードのように都度入力するパスワードが異なり自動化が困難なもの、ＩＣカード認証などのように、パソコンの設定／状況によって認証画面が異なるものがある。あるいは、状況によってエラーのポップアップ画面が表示されたりするものなど様々なパターンがある。この結果、手順が画一化できず認証処理後の手順の自動実行を行うことができない。
【００１２】
１つの側面では、本発明は、手動による画面遷移の操作を削減することができる画面遷移制御方法、画面遷移制御プログラムおよび画面遷移制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
第１の案では、コンピュータが、下記の処理を実行する。コンピュータは、自動画面遷移モードの実行中に、所定の画面遷移順に従わない画面への遷移が発生したことを検出すると、自動画面遷移モードを中止して、手動による画面遷移を許容する。コンピュータは、手動による画面遷移による遷移先の画面が、所定の画面遷移順上、所定の画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、自動画面遷移モードを再開する。
【発明の効果】
【００１４】
本発明の１実施態様によれば、画面遷移を自動実行することができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】図１は、本実施例に係るシステムの構成を示す図である。
【図２】図２は、本実施例に係る画面遷移制御装置の処理の一例を説明するための図である。
【図３】図３は、本実施例に係る画面遷移制御装置の構成を示す機能ブロック図である。
【図４】図４は、シナリオテーブルのデータ構造の一例を示す図である。
【図５】図５は、本実施例に係るシナリオ作成部の処理を説明するための図である。
【図６】図６は、本実施例に係るシナリオ実行部の処理を説明するための図（１）である。
【図７】図７は、本実施例に係るシナリオ実行部の処理を説明するための図（２）である。
【図８】図８は、本実施例に係るシナリオ実行部の処理を説明するための図（３）である。
【図９】図９は、本実施例に係るシナリオ実行部の処理手順を示すフローチャートである。
【図１０】図１０は、本実施例に係るシナリオ作成部のその他の処理を説明するための図である。
【図１１】図１１は、本実施例に係るシナリオ実行部の処理を説明するための図（４）である。
【図１２】図１２は、画面遷移制御プログラムを実行するコンピュータの一例を示す図である。
【図１３】図１３は、従来技術の一例を示す図である。
【図１４】図１４は、従来技術の問題の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下に、本願の開示する画面遷移制御方法、画面遷移制御プログラムおよび画面遷移制御装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【００１７】
図１は、本実施例に係るシステムの構成を示す図である。図１に示すように、このシステムは、画面遷移制御装置１００と、サーバ２００とを有する。画面遷移制御装置１００およびサーバ２００は、ネットワーク２５０によって相互に接続される。
【００１８】
画面遷移制御装置１００は、画面の遷移順や各画面でサーバに送信する値等を定義したシナリオファイルを保持する。画面遷移制御装置１００は、シナリオファイルを実行して値をサーバ２００に送信し、サーバ２００から受信する画面情報を表示する処理を繰り返すことで、画面を自動的に遷移させる。サーバ２００に送信される値は、例えば、ＵＲＬ（Uniform  Resource  Locator）、各画面のフォームに入力される値等に対応する。
【００１９】
画面遷移制御装置１００は、画面を自動的に遷移させる過程において、シナリオファイルに定義された画面遷移順に従わない画面への遷移が発生した場合には、手動による画面遷移を許容する。そして、画面遷移制御装置１００は、手動による画面遷移による遷移先の画面が、シナリオファイルに定義された画面遷移順上、画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、再度自動的に画面を遷移させる。
【００２０】
図２は、本実施例に係る画面遷移制御装置の処理の一例を説明するための図である。図２に示す例では、画面遷移制御装置１００のシナリオファイル７０ａでは、ログイン画面７１、メニュー画面７２、業務メニュー画面７３の順に画面が遷移することが定義されている。
【００２１】
図２において、画面遷移制御装置１００は、シナリオファイル７０ａで定義された値をサーバ２００に送信することで、ログイン画面８１の情報を受信し、ログイン画面８１を表示させる。画面遷移制御装置１００は、ログイン画面８１と、シナリオファイル７０ａのログイン画面７１とが一致するため、ログイン画面７１でサーバ２００に送信するＩＤ、パスワードを、サーバ２００に送信する。
【００２２】
ここで、例えば、パスワードの有効期限が切れている場合には、画面遷移制御装置１００は、シナリオファイル７０ａでログイン画面７１の次に受信するはず、即ちログインが成功した後に受信するはずのメニュー画面７２とは異なる画面８２の情報をサーバ２００から受信する。この場合には、画面遷移制御装置１００は、画面８２を表示し、手動による画面遷移を許容する。例えば、利用者は画面遷移制御装置１００を操作して、手動による画面遷移により、画面が、画面８２，８３，８４の順に遷移する。
【００２３】
続いて、画面遷移制御装置１００は、画面８４に対する利用者の手動操作に応じてサーバ２００から送信されてくるメニュー画面８５の情報を受信する。このメニュー画面８５は、シナリオファイル７０ａに定義された画面遷移順上、画面遷移順に従わない画面への遷移の発生直前の画面であったログイン画面７１の次のメニュー画面７２に一致する。この場合には、画面遷移制御装置１００は、再度、自動的に画面を遷移させる。例えば、画面遷移制御装置１００は、メニュー画面７２に対応する値をサーバ２００に送信することで、業務メニュー画面８６を、サーバ２００から受信する。画面遷移制御装置１００は、業務メニュー画面８６と、シナリオファイル７０ａの業務メニュー画面とが一致するため、業務メニュー画面７３でサーバ２００に送信する値を、サーバ２００に送信する。
【００２４】
サーバ２００は、画面遷移制御装置１００から値を受信し、受信した値に対応する画面の情報を、画面遷移制御装置１００に送信する装置である。
【００２５】
次に、図１に示した画面遷移制御装置１００の構成の一例について説明する。図３は、本実施例に係る画面遷移制御装置の構成を示す機能ブロック図である。図３に示すように、この画面遷移制御装置１００は、通信部１１０、入力部１２０、表示部１３０、記憶部１４０、制御部１５０を有する。
【００２６】
通信部１１０は、ネットワーク２５０を介して、サーバ２００とデータ通信を実行する処理部である。後述する制御部１５０は、通信部１１０を介して、データをやり取りする。例えば、通信部１１０は、通信装置に対応する。
【００２７】
入力部１２０は、各種の情報を入力する入力装置であり、例えば、キーボードやマウスに対応する。表示部１３０は、制御部１５０から出力される各種の情報を表示する表示装置であり、液晶ディスプレイやモニタ等に対応する。
【００２８】
記憶部１４０は、シナリオテーブル１４０ａを有する。例えば、記憶部１４０は、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子や、ＨＤＤ（Hard  Disk  Drive）などの記憶装置に対応する。
【００２９】
シナリオテーブル１４０ａは、複数のシナリオファイルを保持するテーブルである。図４は、シナリオテーブルのデータ構造の一例を示す図である。図４に示すように、このシナリオテーブル１４０ａは、シナリオグループＩＤと、シナリオファイルＩＤと、シーケンス番号と、シナリオデータとを対応付ける。シナリオグループＩＤは、シナリオグループを一意に識別する情報である。シナリオファイルＩＤは、シナリオファイルを一意に識別する情報である。シーケンス番号は、シナリオファイルに含まれるシナリオデータの実行順を示す番号である。シナリオデータは、サーバ２００に送信する値や、画面を識別する情報が含まれるデータである。例えば、シナリオデータは、ＸＭＬ（Extensible  Markup  Language）形式のデータとなる。
【００３０】
例えば、図４において、シナリオグループＩＤ「Ｇ００１」には、シナリオファイルＩＤ「００１」のシナリオファイルと、シナリオファイルＩＤ「００２」のシナリオファイルが存在する。シナリオファイルＩＤ「００１」のシナリオファイルでは、シーケンス番号「０１，０２，０３，０４」のシナリオデータが順に読み出され画面を遷移させる処理が実行される。シナリオファイルＩＤ「００２」のシナリオファイルでは、シーケンス番号「０１，０２」のシナリオデータが順に読み出され画面を遷移させる処理が実行される。
【００３１】
制御部１５０は、シナリオ作成部１５０ａとシナリオ実行部１５０ｂとを有する。制御部１５０は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）や、ＦＰＧＡ（Field  Programmable  Gate  Array）などの集積装置に対応する。また、制御部１５０は、例えば、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等の電子回路に対応する。
【００３２】
シナリオ作成部１５０ａは、シナリオファイルを作成し、作成したシナリオファイルを、シナリオテーブル１４０ａに登録する処理部である。図５は、シナリオ作成部の処理を説明するための図である。図５に示すように、例えば、シナリオ作成部１５０ａは、ステップＳ１０〜ステップＳ１２の処理を順に実行する。
【００３３】
シナリオ作成部１５０ａが実行するステップＳ１０の処理について説明する。シナリオ作成部１５０ａは、入力部１２０から、ＵＲＬの入力を受け付け、ＵＲＬの値をサーバ２００に送信する。また、シナリオ作成部１５０ａは、ＵＲＬ値を、シナリオデータ１Ａに書き出す。
【００３４】
シナリオ作成部１５０ａが実行するステップＳ１１の処理について説明する。シナリオ作成部１５０ａは、ログイン画面の情報をサーバ２００から取得した場合に、ログイン画面から画面識別情報「ログイン画面」を抽出する。シナリオ作成部１５０ａは、画面識別情報「ログイン画面」を、シナリオデータ２Ａに書き出す。シナリオ作成部１５０ａは、ＩＤ、パスワードの入力を受け付け、ＩＤ、パスワードの値をサーバ２００に送信する。また、シナリオ作成部１５０ａは、ＩＤ、パスワードの値を、シナリオデータ２Ａに書き出す。
【００３５】
シナリオ作成部１５０ａが実行するステップＳ１２の処理について説明する。シナリオ作成部１５０ａは、業務メニュー画面の情報をサーバ２００から取得した場合に、業務メニュー画面から画面識別情報「業務メニュー画面」、「ＳＥメニュー」を抽出する。シナリオ作成部１５０ａは、画面識別情報「業務メニュー画面」と「ＳＥメニュー」を、シナリオデータ３Ａに書き出す。シナリオ作成部１５０ａは、送信情報を受け付け、送信情報をサーバ２００に送信する。また、シナリオ作成部１５０ａは、送信情報を、シナリオデータ３Ａに書き出す。
【００３６】
シナリオ作成部１５０ａが上記ステップＳ１０〜１２の処理を実行することで、シナリオデータ１Ａ，２Ａ，３Ａを有するシナリオファイルが生成する。シナリオ作成部１５０ａは、生成したシナリオファイルを、シナリオテーブル１４０ａに登録する。なお、シナリオファイルに対応するシナリオファイルＩＤや、シナリオファイルＩＤは、入力部１２０を介して、利用者から指定される。また、図５に示した例では、シナリオデータ１Ａ，２Ａ，３Ａのシーケンス番号はそれぞれ、０１、０２、０３となる。
【００３７】
シナリオ実行部１５０ｂは、シナリオテーブル１４０ａに登録されたシナリオファイルのシナリオデータをシーケンス番号順に読み出して実行することで、自動的に画面遷移を行う処理部である。また、シナリオ実行部１５０ｂは、画面を自動的に遷移させる過程において、シナリオファイルに定義された画面遷移順に従わない画面への遷移が発生した場合には、手動による画面遷移を許容する。そして、画面遷移制御装置１００は、手動による画面遷移による遷移先の画面が、シナリオファイルに定義された画面遷移順上、画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、再度自動的に画面を遷移させる。
【００３８】
各ケースを例にして、シナリオ実行部１５０ｂの処理の一例について説明する。図６〜図８は、本実施例に係るシナリオ実行部の処理を説明するための図である。
【００３９】
まず、図６について説明する。図６は、シナリオファイルに定義された画面遷移順で、画面が遷移した場合の処理を示す。シナリオ実行部１５０ｂが実行するステップＳ２１の処理について説明する。シナリオ実行部１５０ｂは、シナリオファイルのシナリオデータ１Ａから、ＵＲＬの値を取り出し、ＵＲＬの値をサーバ２００に送信する。
【００４０】
シナリオ実行部１５０ｂが実行するステップＳ２２の処理について説明する。シナリオ実行部１５０ｂは、サーバ２００から画面９０ａの情報を受信し、画面９０ａのＨＴＭＬソースを取得する。シナリオ実行部１５０ｂは、シナリオデータ２Ａから画面識別情報「ログイン画面」を取得する。シナリオ実行部１５０ｂは、画面識別情報の文字列「ログイン画面」が、画面９０ａのＨＴＭＬのソース内に存在すると判定する。このため、シナリオ実行部１５０ｂは、シナリオデータ２Ａの入力値「ＩＤ、パスワード」を、サーバ２００に送信する。
【００４１】
シナリオ実行部１５０ｂが実行するステップＳ２３の処理について説明する。シナリオ実行部１５０ｂは、サーバ２００から画面９０ｂの情報を受信し、画面９０ｂのＨＴＭＬソースを取得する。シナリオ実行部１５０ｂは、シナリオデータ３Ａから画面識別情報「業務メニュー画面」、「ＳＥメニュー」を取得する。シナリオ実行部１５０ｂは、画面識別情報の文字列「業務メニュー画面」、「ＳＥメニュー」が、画面９０ａのＨＴＭＬのソース内に存在すると判定する。このため、シナリオ実行部１５０ｂは、シナリオデータ３Ａの送信情報を取り出し、サーバ２００に送信情報を送信する。
【００４２】
図６のステップＳ２１〜２３に示したように、シナリオ実行部１５０ｂは、シナリオファイルに定義された画面遷移順で、画面が遷移した場合には、利用者による手動操作は行わせず、自動的に画面が遷移させる。
【００４３】
次に、図７について説明する。図７は、シナリオファイルに定義された画面遷移順に従わない画面への遷移が発生した場合の処理（１）を示す。シナリオ実行部１５０ｂが実行するステップＳ３１の処理について説明する。シナリオ実行部１５０ｂは、シナリオファイルのシナリオデータ１Ａから、ＵＲＬの値を取り出し、ＵＲＬの値をサーバ２００に送信する。
【００４４】
シナリオ実行部１５０ｂが実行するステップＳ３２の処理について説明する。シナリオ実行部１５０ｂは、サーバ２００から画面９１ａの情報を受信し、画面９１ａのＨＴＭＬソースを取得する。シナリオ実行部１５０ｂは、シナリオデータ２Ａから画面識別情報「ログイン画面」を取得する。シナリオ実行部１５０ｂは、画面識別情報の文字列「ログイン画面」が、画面９１ａのＨＴＭＬのソース内に存在すると判定する。このため、シナリオ実行部１５０ｂは、シナリオデータ２Ａの入力値「ＩＤ、パスワード」を、サーバ２００に送信する。
【００４５】
シナリオ実行部１５０ｂが実行するステップＳ３３の処理について説明する。シナリオ実行部１５０ｂは、サーバ２００から画面９１ｂの情報を受信し、画面９１ｂのＨＴＭＬソースを取得する。シナリオ実行部１５０ｂは、シナリオデータ３Ａから画面識別情報「業務メニュー画面」、「ＳＥメニュー」を取得する。シナリオ実行部１５０ｂは、画面識別情報の文字列「業務メニュー画面」、「ＳＥメニュー」が、画面９１ｂのＨＴＭＬのソース内に存在しないため、画面遷移順に従わない画面への遷移が発生したと判定する。
【００４６】
シナリオ実行部１５０ｂは、画面遷移順に従わない画面への遷移が発生したと判定すると、手動操作に切り替える。例えば、シナリオ実行部１５０ｂは、画面９１ｂを表示部１３０に表示させ、利用者の入力を促す。利用者は、入力部１２０を操作して、画面９１ｂに値を入力し、シナリオ実行部１５０ｂは、入力された値を、サーバ２００に送信する。
【００４７】
シナリオ実行部１５０ｂは、手動操作に切り替えた後、サーバ２００から画面の情報を受信する度に、画面遷移順に従った次の画面のシナリオデータ３Ａに定義されている、画面識別情報「業務メニュー画面」、「ＳＥメニュー」が、受信した画面のＨＴＭＬソースに含まれるか否かを判定する。シナリオ実行部１５０ｂは、画面識別情報「業務メニュー画面」、「ＳＥメニュー」が、画面のＨＴＭＬソースに含まれない間は、手動操作を継続させる。これに対して、シナリオ実行部１５０ｂは、画面識別情報「業務メニュー画面」、「ＳＥメニュー」が、画面のＨＴＭＬソースに含まれることを検出した場合には、手動操作を抑止し、自動的に画面遷移を行う処理に切り替える。
【００４８】
シナリオ実行部１５０ｂが実行するステップＳ３４の処理について説明する。シナリオ実行部１５０ｂは、サーバ２００から画面９１ｃの情報を受信し、画面９１ｃのＨＴＭＬソースを取得する。シナリオ実行部１５０ｂは、画面識別情報の文字列「業務メニュー画面」、「ＳＥメニュー」が、画面９１ｃのＨＴＭＬのソース内に存在するため、手動操作から自動的に画面遷移を行う処理に切り替える。シナリオ実行部１５０ｂは、シナリオデータ３Ａの送信情報を取り出し、サーバ２００に送信情報を送信する。
【００４９】
図７のステップＳ３１〜３４に示したように、シナリオ実行部１５０ｂは、シナリオファイルに定義された画面遷移順に従わない画面への遷移が発生した場合には、手動操作を許容する。そして、シナリオ実行部１５０ｂは、サーバ２００から画面の情報を受信する度に、受信した画面が、シナリオファイルに定義された画面遷移順上、画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致するか否かを判定する。シナリオ実行部１５０ｂは、受信した画面が、シナリオファイルに定義された画面遷移順上、画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、シナリオファイルに従って、再度自動的に画面を遷移させる。
【００５０】
次に、図８について説明する。図８は、シナリオファイルに定義された画面遷移順に従わない画面への遷移が発生した場合の処理（２）を示す。シナリオ実行部１５０ｂが実行するステップＳ４１の処理について説明する。シナリオ実行部１５０ｂは、シナリオファイルのシステムデータ１Ａから、ＵＲＬの値を取り出し、ＵＲＬの値をサーバ２００に送信する。
【００５１】
シナリオ実行部１５０ｂが実行するステップＳ４２の処理について説明する。シナリオ実行部１５０ｂは、サーバ２００から画面９２ａの情報を受信し、画面９２ａのＨＴＭＬソースを取得する。シナリオ実行部１５０ｂは、シナリオデータ２Ａから画面識別情報「ログイン画面」を取得する。シナリオ実行部１５０ｂは、画面識別情報の文字列「ログイン画面」が、画面９２ａのＨＴＭＬのソース内に存在しないと判定する。
【００５２】
ここで、シナリオ実行部１５０ｂは、シナリオデータ２Ａの次のシナリオデータ３Ａから、画面識別情報「業務メニュー画面」、「ＳＥメニュー」を取得する。シナリオ実行部１５０ｂは、画面識別情報の文字列「業務メニュー画面」、「ＳＥメニュー」が、画面９２ａのＨＴＭＬのソース内に存在する。このような場合には、シナリオ実行部１５０ｂは、ログイン画面が省略されたものと判定し、シナリオデータ３Ａの実行処理に移行する。
【００５３】
シナリオ実行部１５０ｂは、シナリオデータ３Ａから送信情報を取り出し、サーバ２００に送信情報を送信する。
【００５４】
図８のステップＳ４１〜４２に示したように、シナリオ実行部１５０ｂは、シナリオファイルに定義された画面遷移順に従わない画面への遷移が発生した場合には、サーバ２００から送信された画面が、次のシナリオデータの画面に一致するか否かを判定する。シナリオ実行部１５０ｂは、次の画面に一致すると判定した場合には、所定の画面がスキップされたものとして、次のシナリオを読み出して、自動的に画面を遷移させる。
【００５５】
次に、本実施例に係るシナリオ実行部１５０ｂの処理手順について説明する。図９は、本実施例に係るシナリオ実行部の処理手順を示すフローチャートである。図９に示すように、シナリオ実行部１５０ｂは、処理対象とするシナリオファイルから、未読み出しのシーケンス番号のうち実行順が最も早いシーケンス番号に対応づけられているシナリオデータを読み出し（ステップＳ１０１）、終了であるか否かを判定する（ステップＳ１０２）。シナリオ実行部１５０ｂは、終了である場合には（ステップＳ１０２，Ｙｅｓ）、処理を終了する。
【００５６】
一方、シナリオ実行部１５０ｂは、終了でない場合には（ステップＳ１０２，Ｎｏ）、シーケンス番号「０１」のシナリオデータであるか否かを判定する（ステップＳ１０３）。シナリオ実行部１５０ｂは、シーケンス番号「０１」のシナリオデータである場合には（ステップＳ１０３，Ｙｅｓ）、シナリオデータにＵＲＬ値があるか否かを判定する（ステップＳ１０４）。シナリオ実行部１５０ｂは、シナリオデータにＵＲＬ値がない場合には（ステップＳ１０４，Ｎｏ）、処理を終了する。
【００５７】
一方、シナリオ実行部１５０ｂは、シナリオデータにＵＲＬ値がある場合には（ステップＳ１０４，Ｙｅｓ）、ＵＲＬ値をサーバ２００に送信し（ステップＳ１０５）、ステップＳ１０１に移行する。
【００５８】
ステップＳ１０３の説明に戻る。シナリオ実行部１５０ｂは、シーケンス番号「０１」のシナリオデータでない場合には（ステップＳ１０３，Ｎｏ）、サーバ２００から画面を受信したか否かを判定する（ステップＳ１０６）。シナリオ実行部１５０ｂは、サーバ２００から画面を受信しない場合には（ステップＳ１０６，Ｎｏ）、再度ステップＳ１０６に移行する。すなわち、サーバ２００から画面が送信されてくるのを待機する。
【００５９】
一方、シナリオ実行部１５０ｂは、サーバ２００から画面を受信した場合には（ステップＳ１０６，Ｙｅｓ）、受信した画面からＨＴＭＬデータを取得する（ステップＳ１０７）。シナリオ実行部１５０ｂは、ＨＴＭＬデータに、シナリオデータの画面識別情報が含まれるか否かを判定する（ステップＳ１０８）。シナリオ実行部１５０ｂは、ＨＴＭＬデータに、シナリオデータの画面識別情報が含まれる場合には（ステップＳ１０８，Ｙｅｓ）、シナリオデータの値をサーバ２００に送信し（ステップＳ１０９）、ステップＳ１０１に移行する。
【００６０】
一方、シナリオ実行部１５０ｂは、ＨＴＭＬデータに、シナリオデータの画面識別情報が含まれない場合には（ステップＳ１０８，Ｎｏ）、手動操作を許容し、シナリオファイルから次のシナリオデータ、すなわち未読み出しのシーケンス番号のうち実行順が最も早いシーケンス番号に対応づけられているシナリオデータを読み出す（ステップＳ１１０）。シナリオ実行部１５０ｂは、終了であるか否かを判定する（ステップＳ１１１）。シナリオ実行部１５０ｂは、終了である場合には（ステップＳ１１１，Ｙｅｓ）、処理を終了する。
【００６１】
一方、シナリオ実行部１５０ｂは、終了でない場合には（ステップＳ１１１，Ｎｏ）、受信した画面のＨＴＭＬデータに、Ｓ１１０で読み出したシナリオデータの画面識別情報が含まれるか否かを判定する（ステップＳ１１２）。シナリオ実行部１５０ｂは、受信した画面のＨＴＭＬデータに、シナリオデータの画面識別情報が含まれる場合には（ステップＳ１１２，Ｙｅｓ）、自動モードに復帰し、シナリオデータの値をサーバ２００に送信する（ステップＳ１１３）。そして、シナリオ実行部１５０ｂは、ステップＳ１０１に移行する。
【００６２】
一方、シナリオ実行部１５０ｂは、受信した画面のＨＴＭＬデータに、シナリオデータの画面識別情報が含まれない場合には（ステップＳ１１２，Ｎｏ）、直前に読み込んだシナリオデータの一つ前のデータを読み直し（ステップＳ１１４）、ステップＳ１０６に移行する。なお、ステップＳ１１４において、シナリオ実行部１５０ｂは、一つ前に読み込みポイントを戻している。
【００６３】
なお、シナリオ実行部１５０ｂは、図９に示した処理のうち、Ｓ１１０、Ｓ１１１、Ｓ１１２、Ｓ１１３、Ｓ１１４の処理を実行しないようにすることもできる。そうすることで、先に図６と図７を用いて説明した動作のみが実行されることになる。この場合には、Ｓ１０８でＮＯの後に、手動操作を許容し、ステップＳ１０６に移行する。またその際には、Ｓ１０９で自動モードに復帰する処理を追加する。
【００６４】
次に、本実施例に係る画面遷移制御装置１００の効果について説明する。画面遷移制御装置１００は、画面を自動的に遷移させる過程において、シナリオファイルに定義された画面遷移順に従わない画面への遷移が発生した場合には、手動による画面遷移を許容する。そして、画面遷移制御装置１００は、手動による画面遷移による遷移先の画面が、シナリオファイルに定義された画面遷移順上、画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、再度自動的に画面を遷移させる。このため、画面遷移制御装置１００によれば、画面遷移順に従わない画面への遷移が発生し、手動操作を行わせた後、所定の条件により、自動遷移に復帰するため、手動による画面遷移の操作を削減することができる。
【００６５】
また、画面遷移制御装置１００は、システムファイルに登録された画面遷移後の画面識別情報に対応する情報が、画面遷移後の画面のＨＴＭＬファイルに含まれない場合に、所定の画面遷移順に従わない画面への遷移が発生したと判定する。このため、例えば、画面識別子の有無による簡易的な方法で、画面への遷移が所定の順序か否かを判定できる。
【００６６】
ところで、上述したシナリオ作成部１５０ａの処理は一例である。以下において、シナリオ作成部１５０ａのその他の処理について説明する。例えば、シナリオ作成部１５０ａは、一部の画面を自動的に画面遷移させるためのシナリオデータを意図的に作成しないことで、所定の画面のみ利用者に手動操作を実行させることができる。
【００６７】
図１０は、シナリオ作成部のその他の処理を説明するための図である。図１０に示すように、シナリオ作成部１５０ａは、ステップＳ５１〜ステップＳ５３の処理を順に実行する。図１０に示す処理では、ログイン画面を自動的に画面遷移させないためのシナリオファイルを作成する場合について説明する。
【００６８】
シナリオ作成部１５０ａが実行するステップＳ５１の処理について説明する。シナリオ作成部１５０ａは、入力部１２０からＵＲＬの入力を受け付け、ＵＲＬの値をサーバ２００に送信する。また、シナリオ作成部１５０ａは、ＵＲＬ値を、シナリオデータ１Ｂに書き出す。
【００６９】
シナリオ作成部１５０ａが実行するステップＳ５２の処理について説明する。シナリオ作成部１５０ａは、入力部１２０から自動オフ情報の入力を受け付ける。例えば、利用者は、入力部１２０を操作して、画面上の自動オンボタンを押下して、自動オフボタンに切り替えることで、自動オフ情報を入力する。シナリオ作成部１５０ａは、自動オフ情報の入力を受け付けた場合には、該当する画面のシナリオデータの作成をスキップする。図１０に示す例では、ログイン画面に対応するシナリオデータの作成をスキップする。シナリオ作成部１５０ａは、ＩＤ、パスワードの入力を受け付け、ＩＤ、パスワードの値をサーバ２００に送信する。
【００７０】
シナリオ作成部１５０ａが実行するステップＳ５３の処理について説明する。シナリオ作成部１５０ａは、入力部１２０から自動オン情報の入力を受け付ける。例えば、利用者は、入力部１２０を操作して、画面上の自動オフボタンを押下して、自動オンボタンに切り替えることで、自動オン情報を入力する。シナリオ作成部１５０ａは、自動オン情報の入力を受け付けた場合には、該当する画面のシナリオデータを作成する。
【００７１】
シナリオ作成部１５０ａは、業務メニュー画面から画面識別情報「業務メニュー画面」、「ＳＥメニュー」を抽出する。シナリオ作成部１５０ａは、画面識別情報「業務メニュー画面」と「ＳＥメニュー」を、シナリオデータ２Ｂに書き出す。シナリオ作成部１５０ａは、送信情報を受け付け、送信情報をサーバ２００に送信する。また、シナリオ作成部１５０ａは、送信情報を、シナリオデータ２Ｂに書き出す。
【００７２】
次に、図１０でシナリオ作成部１５０ａにより作成されたシナリオファイルを実行するシナリオ実行部１５０ｂの処理の一例について説明する。図１１は、本実施例に係るシナリオ実行部の処理を説明するための図（４）である。
【００７３】
シナリオ実行部１５０ｂが実行するステップＳ６１の処理について説明する。シナリオ実行部１５０ｂは、シナリオファイルのシナリオデータ１Ｂから、ＵＲＬの値を取り出し、ＵＲＬの値をサーバ２００に送信する。
【００７４】
シナリオ実行部１５０ｂが実行するステップＳ６２の処理について説明する。シナリオ実行部１５０ｂは、サーバ２００から画面９３ａの情報を受信し、画面９３ａのＨＴＭＬソースを取得する。シナリオ実行部１５０ｂは、シナリオデータ２Ｂから画面識別情報「業務メニュー画面」、「ＳＥメニュー」を取得する。シナリオ実行部１５０ｂは、画面識別情報の文字列「業務メニュー画面」、「ＳＥメニュー」が、画面９３ａのＨＴＭＬのソース内に存在しないため、画面遷移順に従わない画面への遷移が発生したと判定する。
【００７５】
シナリオ実行部１５０ｂは、画面遷移順に従わない画面への遷移が発生したと判定すると、手動操作に切り替える。例えば、シナリオ実行部１５０ｂは、画面９３ａを表示部１３０に表示させ、利用者の入力を促す。利用者は、入力部１２０を操作して、画面９３ａに値を入力し、シナリオ実行部１５０ｂは、入力された値を、サーバ２００に送信する。
【００７６】
シナリオ実行部１５０ｂが実行するステップＳ６３の処理について説明する。シナリオ実行部１５０ｂは、サーバ２００から画面９３ｂの情報を受信し、画面９３ｂのＨＴＭＬソースを取得する。シナリオ実行部１５０ｂは、画面識別情報の文字列「業務メニュー画面」、「ＳＥメニュー」が、画面９３ｂのＨＴＭＬのソース内に存在するため、手動操作から自動的に画面遷移を行う処理に切り替える。シナリオ実行部１５０ｂは、シナリオデータ２Ｂの送信情報を取り出し、サーバ２００に送信情報を送信する。
【００７７】
図１０、図１１で説明したように、例えば、シナリオ作成部１５０ａは、ログイン画面を自動的に画面遷移させるためのシナリオデータを意図的に作成しないことで、ログイン画面のみ利用者に手動操作を実行させることができる。
【００７８】
次に、上記実施例に示した画面遷移制御装置１００と同様の機能を実現する画面遷移制御プログラムを実行するコンピュータの一例について説明する。図１２は、画面遷移制御プログラムを実行するコンピュータの一例を示す図である。
【００７９】
図１２に示すように、コンピュータ３００は、各種演算処理を実行するＣＰＵ３０１と、ユーザからのデータの入力を受け付ける入力装置３０２と、ディスプレイ３０３とを有する。また、コンピュータ３００は、記憶媒体からプログラム等を読取る読み取り装置３０４と、ネットワークを介して他のコンピュータとの間でデータの授受を行うインターフェース装置３０５とを有する。また、コンピュータ３００は、各種情報を一時記憶するＲＡＭ３０６と、ハードディスク装置３０７とを有する。そして、各装置３０１〜３０７は、バス３０８に接続される。
【００８０】
ハードディスク装置３０７は、制御プログラム３０７ａを有する。ＣＰＵ３０１は、制御プログラム３０７ａを読み出してＲＡＭ３０６に展開する。制御プログラム３０７ａは、制御プロセス３０６ａとして機能する。例えば、制御プロセス３０６ａは、制御部１５０に対応する。
【００８１】
なお、制御プログラム３０７ａについては、必ずしも最初からハードディスク装置３０７に記憶させておかなくても良い。例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ３００が制御プログラム３０７ａを読み出して実行するようにしてもよい。
【００８２】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００８３】
（付記１）コンピュータが実行する画面遷移制御方法であって、
自動画面遷移モードの実行中に、所定の画面遷移順に従わない画面への遷移が発生したことを検出すると、前記自動画面遷移モードを中止して、手動による画面遷移を許容し、
手動による画面遷移による遷移先の画面が、前記所定の画面遷移順上、前記所定の画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、自動画面遷移モードを再開する、
処理を実行することを特徴とする画面遷移制御方法。
【００８４】
（付記２）前記手動による画面遷移を許容する処理は、前記所定の画面遷移順に従わない画面が、前記次の画面の更に次の画面と一致する場合には、手動による画面遷移を許容しないで、自動画面遷移モードを継続することを特徴とする付記１に記載の画面遷移制御方法。
【００８５】
（付記３）前記所定の画面遷移順に従わない画面への遷移が発生したことを検出する処理は、前記所定の画面遷移順に含まれる各画面と対応付けて登録された画面識別情報のうち、前記所定の画面遷移順上で次の遷移順である画面と対応する画面識別情報に示される情報が、前記コンピュータが通信可能なサーバから受信した画面遷移後の画面の情報に含まれない場合に、前記所定の画面遷移順に従わない画面への遷移が発生したと判定することを特徴とする付記１または２に記載の画面遷移制御方法。
【００８６】
（付記４）前記コンピュータは、通信可能に接続されたサーバに対してアクセスすることに応じて該サーバから送信されてくる前記画面を受信し、前記検出する処理は、前記受信した画面を処理対象とすることを特徴とする付記１乃至３いずれか１に記載の画面遷移制御方法。
【００８７】
（付記５）コンピュータに、
自動画面遷移モードの実行中に、所定の画面遷移順に従わない画面への遷移が発生したことを検出すると、前記自動画面遷移モードを中止して、手動による画面遷移を許容し、
手動による画面遷移による遷移先の画面が、前記所定の画面遷移順上、前記所定の画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、自動画面遷移モードを再開する
処理を実行させることを特徴とする画面遷移制御プログラム。
【００８８】
（付記６）前記手動による画面遷移を許容する処理は、前記所定の画面遷移順に従わない画面が、前記次の画面の更に次の画面と一致する場合には、手動による画面遷移を許容しないで、自動画面遷移モードを継続することを特徴とする付記５に記載の画面遷移制御プログラム。
【００８９】
（付記７）前記所定の画面遷移順に従わない画面への遷移が発生したことを検出する処理は、前記所定の画面遷移順に含まれる各画面と対応付けて登録された画面識別情報のうち、前記所定の画面遷移順上で次の遷移順である画面と対応する画面識別情報に示される情報が、前記コンピュータが通信可能なサーバから受信した画面遷移後の画面の情報に含まれない場合に、前記所定の画面遷移順に従わない画面への遷移が発生したと判定することを特徴とする付記５または６に記載の画面遷移制御プログラム。
【００９０】
（付記８）前記コンピュータは、通信可能に接続されたサーバに対してアクセスすることに応じて該サーバから送信されてくる前記画面を受信し、前記検出する処理は、前記受信した画面を処理対象とすることを特徴とする付記５乃至７いずれか１に記載の画面遷移制御プログラム。
【００９１】
（付記９）自動画面遷移モードの実行中に、所定の画面遷移順に従わない画面への遷移が発生したことを検出すると、前記自動画面遷移モードを中止して、手動による画面遷移を許容し、手動による画面遷移による遷移先の画面が、前記所定の画面遷移順上、前記所定の画面遷移順に従わない画面への遷移の発生直前の画面の次の画面に一致することを検出すると、自動画面遷移モードを再開する制御部
を有することを特徴とする画面遷移制御装置。
【００９２】
（付記１０）前記制御部は、前記所定の画面遷移順に従わない画面が、前記次の画面の更に次の画面と一致する場合には、手動による画面遷移を許容しないで、自動画面遷移モードを継続することを特徴とする付記９に記載の画面遷移制御装置。
【００９３】
（付記１１）前記制御部は、前記所定の画面遷移順に含まれる各画面と対応付けて登録された画面識別情報のうち、前記所定の画面遷移順上で次の遷移順である画面と対応する画面識別情報に示される情報が、前記コンピュータが通信可能なサーバから受信した画面遷移後の画面の情報に含まれない場合に、前記所定の画面遷移順に従わない画面への遷移が発生したと判定することを特徴とする付記９または１０に記載の画面遷移制御装置。
【００９４】
（付記１２）前記制御部は、通信可能に接続されたサーバに対してアクセスすることに応じて該サーバから送信されてくる前記画面を受信し、前記受信した画面を処理対象とすることを特徴とする付記９乃至１１いずれか１に記載の画面遷移制御装置。
【符号の説明】
【００９５】
１００  画面遷移制御装置
２００  サーバ
２５０  ネットワーク
【図１】
2015179428.tif 000003
【図２】
2015179428.tif 000004
【図３】
2015179428.tif 000005
【図４】
2015179428.tif 000006
【図５】
2015179428.tif 000007
【図６】
2015179428.tif 000008
【図７】
2015179428.tif 000009
【図８】
2015179428.tif 000010
【図９】
2015179428.tif 000011
【図１０】
2015179428.tif 000012
【図１１】
2015179428.tif 000013
【図１２】
2015179428.tif 000014
【図１３】
2015179428.tif 000015
【図１４】
2015179428.tif 000016