(57)【要約】【課題】受け付けた特定操作に応じた画面遷移が行われない事態の発生を抑制する。【解決手段】第１のイベントを検出すると、ソフトウェアに関する第１プロセス及び第２プロセスの生成指示を出力し、いずれかの情報を受け付けるたびに、受け付けた情報を、出力した生成指示に応じて生成された第１プロセスに送信し、受け付けた情報の受け付けよりもＮ（Ｎ≧１）番前に受け付け、かつ第１プロセスに送信した他の情報を、出力した生成指示に応じて生成された第２プロセスに送信し、第１プロセスに送信した情報に応じた処理を第１プロセスが実行することで生成した画面の表示部への表示に応じて、第２のイベントを検出すると、第２プロセスに送信した他の情報に応じた処理を第２プロセスが実行することで生成した画面の表示部への表示指示を出力する、処理をコンピュータに実行させる制御プログラムが提供される。【選択図】図１２
2018181150.tif 000002
【特許請求の範囲】
【請求項１】
第１のイベントを検出すると、ソフトウェアに関する第１のプロセス及び第２のプロセスの生成指示を出力し、
いずれかの情報を受け付けるたびに、受け付けた前記いずれかの情報を、出力した前記生成指示に応じて生成された前記第１のプロセスに送信するとともに、受け付けた前記いずれかの情報の受け付けよりもＮ（Ｎ≧１）番前に受け付け、かつ、前記第１のプロセスに送信した他の情報を、出力した前記生成指示に応じて生成された前記第２のプロセスに送信する処理を実行し、
前記第１のプロセスに送信した前記いずれかの情報に応じた処理を前記第１のプロセスが実行することにより生成した画面の表示部への表示に応じて、第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を前記第２のプロセスが実行することにより生成した画面の前記表示部への表示指示を出力する、
処理をコンピュータに実行させることを特徴とする制御プログラム。
【請求項２】
前記第１のプロセスに送信した前記いずれかの情報に応じた処理を、前記第１のプロセスから操作される第１の生成部が実行することにより、生成した画面の前記表示部への表示に応じて、前記第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を、前記第２のプロセスから操作される第２の生成部が実行することにより、生成した画面の前記表示部への表示指示を出力する、
ことを特徴とする請求項１に記載の制御プログラム。
【請求項３】
前記第２のイベントを検出する度に、受け付けた前記いずれかの情報に応じた処理を実行するプロセスを、前記第１のプロセス及び前記第２のプロセスの一方から他方へ変更する、
ことを特徴とする請求項１又は２に記載の制御プログラム。
【請求項４】
受け付けた前記いずれかの情報に応じた処理を、前記第１のプロセス又は前記第２のプロセスが実行するときの順番に対応付けて、受け付けた前記いずれかの情報を入力情報として記憶部に記憶し、
前記第２のイベントを検出すると、前記第１のプロセス及び前記第２のプロセスの一方から他方への変更に応じて、前記第１のプロセス及び前記第２のプロセスの一方を再起動し、前記記憶部に記憶している入力情報を、該入力情報に対応付けて記憶されている順番に従い再起動した前記第１のプロセス及び前記第２のプロセスの一方に送信する、
ことを特徴とする請求項３に記載の制御プログラム。
【請求項５】
第１のイベントを検出すると、ソフトウェアに関する第１のプロセス及び第２のプロセスの生成指示を出力し、
いずれかの情報を受け付けるたびに、受け付けた前記いずれかの情報を、出力した前記生成指示に応じて生成された前記第１のプロセスに送信するとともに、受け付けた前記いずれかの情報の受け付けよりもＮ（Ｎ≧１）番前に受け付け、かつ、前記第１のプロセスに送信した他の情報を、出力した前記生成指示に応じて生成された前記第２のプロセスに送信する処理を実行し、
前記第１のプロセスに送信した前記いずれかの情報に応じた処理を前記第１のプロセスが実行することにより生成した画面の表示部への表示に応じて、第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を前記第２のプロセスが実行することにより生成した画面の前記表示部への表示指示を出力する、
ことをコンピュータが実行することを特徴とする制御方法。
【請求項６】
第１のイベントを検出すると、ソフトウェアに関する第１のプロセス及び第２のプロセスの生成指示を出力する出力部と、
いずれかの情報を受け付けるたびに、受け付けた前記いずれかの情報を、出力した前記生成指示に応じて生成された前記第１のプロセスに送信するとともに、受け付けた前記いずれかの情報の受け付けよりもＮ（Ｎ≧１）番前に受け付け、かつ、前記第１のプロセスに送信した他の情報を、出力した前記生成指示に応じて生成された前記第２のプロセスに送信する処理を実行する制御部と、を有し、
前記出力部は、前記第１のプロセスに送信した前記いずれかの情報に応じた処理を前記第１のプロセスが実行することにより生成した画面の表示部への表示に応じて、第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を前記第２のプロセスが実行することにより生成した画面の前記表示部への表示指示を出力する、
ことを特徴とする制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御プログラム、制御方法及び制御装置に関する。
【背景技術】
【０００２】
Ｗｅｂサーバにより提供されるサービスを組み合わせてユーザに提供するサービス提供装置が知られている（例えば、特許文献１参照）。また、Ｗｅｂブラウザを使って他のＷｅｂアプリケーションを操作するサービスをユーザに提供するサービス提供装置が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２００８／１２６７９６パンフレット
【特許文献２】特開２０１０−８６１０８号公報
【特許文献３】特開２００９−８７０３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の技術では、ユーザが誤った情報を入力すると、サービス提供装置は、誤った入力情報に基づき他のＷｅｂアプリケーションを操作する。他のＷｅｂアプリケーションが入力情報に応じて画面を生成するとき、送信された入力情報は誤った情報であると認識できる場合には、画面の生成及び画面遷移は行われず、エラーメッセージが出力される。
【０００５】
しかしながら、他のＷｅｂアプリケーションは、送信された入力情報の内容によっては入力情報が誤った情報であると認識できない場合がある。この場合、他のＷｅｂアプリケーションの実行により、誤った入力情報に応じた画面が生成され、画面遷移が行われる。
【０００６】
そして、これらのいずれの場合にも、入力画面は、誤った情報を入力した画面から次の画面へ遷移してしまう。サービス提供装置は、入力画面を現在の画面から前の画面に戻す機能を有しないため、ユーザは、入力画面を前の画面に戻して正しい情報を入力し直すことができず、他のＷｅｂアプリケーションが生成した画面との不整合を整合させることができない。このため、ユーザは、サービス提供装置を再起動し、処理を初めからやり直す必要がある。
【０００７】
これに対して、サービス提供装置が提供する機能に、入力画面を現在の画面から前の画面に戻す機能を追加することが考えられる。しかし、その場合、サービス提供装置が提供する機能を実現するソフトウェアがバージョンアップする度に、最新のソフトウェアに上記機能を追加する必要が生じ、煩雑である。
【０００８】
そこで、１つの側面では、本発明は、特定の操作を受け付けた際に、該操作に応じた画面遷移が行われない事態の発生を抑制することを目的とする。
【課題を解決するための手段】
【０００９】
１つの実施態様では、第１のイベントを検出すると、ソフトウェアに関する第１のプロセス及び第２のプロセスの生成指示を出力し、いずれかの情報を受け付けるたびに、受け付けた前記いずれかの情報を、出力した前記生成指示に応じて生成された前記第１のプロセスに送信するとともに、受け付けた前記いずれかの情報の受け付けよりもＮ（Ｎ≧１）番前に受け付け、かつ、前記第１のプロセスに送信した他の情報を、出力した前記生成指示に応じて生成された前記第２のプロセスに送信する処理を実行し、前記第１のプロセスに送信した前記いずれかの情報に応じた処理を前記第１のプロセスが実行することにより生成した画面の表示部への表示に応じて、第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を前記第２のプロセスが実行することにより生成した画面の前記表示部への表示指示を出力する、処理をコンピュータに実行させることを特徴とする制御プログラムが提供される。
【発明の効果】
【００１０】
１つの側面では、特定の操作を受け付けた際に、該操作に応じた画面遷移が行われない事態の発生を抑制することができる。
【図面の簡単な説明】
【００１１】
【図１】一実施形態に係る操作システムの全体構成の一例を示す図。
【図２】一実施形態に係る画面操作情報ＤＢの一例を示す図。
【図３】一実施形態に係る質問テーブルの一例を示す図。
【図４】一実施形態に係る生成情報ＤＢの一例を示す図。
【図５】一実施形態に係るスケジュール作成画面の一例を示す図。
【図６】一実施形態に係るスケジュール作成画面の一例を示す図。
【図７】一実施形態に係る制御装置のハードウェア構成の一例を示す図。
【図８】一実施形態に係る記録モードにおける制御処理の一例を示すフローチャート。
【図９】一実施形態に係る記録モードにおける画面操作情報ＤＢの一例を示す図。
【図１０】従来の監視モードにおける制御処理の一例を示すフローチャート。
【図１１】従来の監視モードにおける制御処理（続き）の一例を示すフローチャート。
【図１２】一実施形態に係る監視モードにおける制御処理の一例を示すフローチャート。
【図１３】一実施形態に係る監視モードにおける制御処理（続き）の一例を示すフローチャート。
【図１４】一実施形態に係る監視モードにおける制御処理（続き）の一例を示すフローチャート。
【図１５】一実施形態に係る監視モードにおける画面操作情報ＤＢの一例を示す図。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
【００１３】
［操作システムの全体構成］
まず、本発明の一実施形態に係る操作システム１の構成の一例について、図１を参照しながら説明する。操作システム１は、制御装置１０、プロセス実行装置２０及び生成装置３０を有する。制御装置１０、プロセス実行装置２０及び生成装置３０は、インターネット等のネットワーク４０により接続されている。
【００１４】
ユーザは、制御装置１０に直接、画面生成のための情報を入力してプロジェクト管理画面の生成を指示してもよい。ユーザは、制御装置１０と通信可能なスマートフォン等の機器を使用して、画面生成のための情報を送信してプロジェクト管理画面の生成を指示してもよい。
【００１５】
制御装置１０は、画面生成のための情報（入力情報）をプロセス実行装置２０に送信し、ユーザの指示に応じた所定の処理を実行させるように指示する。本実施形態では、入力情報は、プロジェクト管理に関する情報であるが、これに限らない。
【００１６】
なお、制御装置１０は、どのような電子機器であってもよく、一例としては、サーバ、パーソナルコンピュータ、スマートフォン、ＰＤＡ（Personal Digital Assistants）、携帯電話が挙げられる。制御装置１０は、ＨＭＤ（Head Mount Display）、ＦＭＤ（Face Mount Display）等のウェアラブル機器であってもよい。
【００１７】
プロセス実行装置２０は、オートメーションツールのソフトウェアを使用して生成装置３０を操作し、生成装置３０に、制御装置１０から受け付けた入力情報に応じたプロジェクト管理画面を生成させる。生成された画面は、Ｗｅｂブラウザを使用して制御装置１０のディスプレイに表示される。これにより、ユーザはプロジェクトの進捗状況を把握することができる。
【００１８】
制御装置１０は、Ｗｅｂブラウザを使ってユーザが指示する特定のイベントを検出すると、プロジェクト管理画面を生成するプロセスの生成指示を出力し、プロセス実行装置２０に送信する。
【００１９】
プロセス実行装置２０は、制御装置１０からプロセスの生成指示を受け付けると、プロジェクト管理画面を生成する生成装置３０を操作する第１及び第２のプロセスを生成し、所定のタイミングに各プロセスを実行する。本実施形態では、第１のプロセスを実行するソフトウェアの機能を、第１のプロセス実行部２１の機能ブロックで示し、第２のプロセスを実行するソフトウェアの機能を、第２のプロセス実行部２２の機能ブロックで示す。
【００２０】
プロセス実行装置２０が、オートメーションツールを使用して生成装置３０にインストールされたＷｅｂアプリケーションを動作させると、入力情報に応じたプロジェクト管理画面が生成される。
【００２１】
本実施形態では、第１のプロセス実行部２１の操作により入力情報に応じたプロジェクト管理画面を生成する機能を、第１の生成部３１の機能ブロックで示す。また、第２のプロセス実行部２２の操作により入力情報に応じたプロジェクト管理画面を生成する機能を、第２の生成部３２の機能ブロックで示す。
【００２２】
プロセス実行装置２０は、制御装置１０からプロジェクト管理画面を生成するための情報を受け付ける度に、受け付けた情報を生成装置３０に送信し、ユーザの要求するプロジェクト管理画面を生成装置３０に生成させる。
【００２３】
プロセス実行装置２０と生成装置３０との通信は、プロセス実行装置２０が生成装置３０に送信する質問に対して、生成装置３０がプロセス実行装置２０に回答する一方向通信である。
【００２４】
プロセス実行装置２０及び生成装置３０は、例えば、Ｗｅｂサーバにより実現可能である。本実施形態では、プロセス実行装置２０及び生成装置３０は別々のＷｅｂサーバにより実現される。しかし、これに限らず、プロセス実行装置２０及び生成装置３０は同一のＷｅｂサーバにより実現されてもよい。なお、生成装置３０には、プロジェクト管理画面を生成するため生成情報ＤＢ３３が記憶される。ただし、生成情報ＤＢ３３は、必ずしも生成装置３０の内部に記憶されている必要はなく、ネットワーク４０を介してクラウド上の記憶装置に記憶されてもよい。
【００２５】
［制御装置の機能構成］
次に、本実施形態に係る制御装置１０の機能構成の一例について説明する。本実施形態に係る制御装置１０は、検出部１１、記憶部１２、受付部１３、制御部１４、出力部１５、表示部１６、送信部１７及び受信部１８を有する。
【００２６】
検出部１１は、Ｗｅｂブラウザを使ってユーザが指示する特定のイベントを検出する。記憶部１２は、画面操作情報ＤＢ１２１、質問テーブル１２２及び制御プログラム１２３を記憶する。画面操作情報ＤＢ１２１は、プロジェクト管理画面を生成するための操作情報を記憶する。図２に一実施形態に係る画面操作情報ＤＢの一例を示す。本実施形態に係る画面操作情報ＤＢには、質問回数を示すＩＤと、質問に対してユーザが入力した情報（ユーザ入力情報）と、ユーザ入力情報に対して生成された画面のＷｅｂページタイトル情報とが記憶される。
【００２７】
質問テーブル１２２は、制御装置１０から生成装置３０に問い合わせする質問の内容が記憶されたテーブルである。図３に、質問テーブル１２２の一例を示す。質問テーブル１２２は、ＸＭＬ（Extensible Markup Language）形式のファイルであってもよい。
【００２８】
受付部１３は、プロジェクト管理画面を生成するための入力情報を受け付ける。送信部１７は、受付部１３がプロジェクト管理画面を生成するための入力情報を受け付けるたびに、受け付けた入力情報を、プロセス実行装置２０に送信する。
【００２９】
具体的には、送信部１７は、受け付けた入力情報を第１のプロセス実行部２１に送信する。また、送信部１７は、受け付けた入力情報の受け付けよりもＮ（Ｎ≧１）番前に受け付け、かつ、第１のプロセス実行部２１に送信した他の情報を、第２のプロセス実行部２２に送信する。制御部１４は、制御装置１０の全体を制御する。
【００３０】
第１のプロセス実行部２１は、第１の生成部３１と通信し、質疑応答を行うことで、受け付けた情報に応じて生成装置３０にチケットを発行させることにより、チケットを自動生成できる。生成されたチケットが表示されたプロジェクト管理画面は、Ｗｅｂブラウザを使用して表示部１６に表示される。このように、生成装置３０が提供するプロジェクト管理ツールのアプリケーションは、仕事をチケットという小さな粒度に分割して、そのチケットの進捗状態を随時更新することでプロジェクトの進捗を管理する。
【００３１】
第２のプロセス実行部２２は、第２の生成部３２と通信し、質疑応答を行うことで、受け付けた情報のうち、第１のプロセス実行部２１に送信した他の情報に応じて生成装置３０にチケットを発行させることにより、チケットを自動生成できる。第１のプロセス実行部２１が実行する処理により生成した画面の表示部１６への表示に応じて、特定のイベントが検出されると、第２のプロセス実行部２２が実行する処理により生成した画面の表示部１６への表示指示が出力され、該画面がＷｅｂブラウザを使用して表示部１６に表示される。上記の特定のイベント（第２のイベント）の一例としては、ユーザが画面のエラーを認識したときに行う（前画面への）「戻りボタン」の押下、及び自動で画面のエラーを検出したことが挙げられる。
【００３２】
なお、生成装置３０が実行するアプリケーションは、プロジェクト管理ツールのアプリケーションに限らず、例えば、交通渋滞管理ツールやその他のソフトウェアで構成されるいずれのアプリケーションであってもよい。
【００３３】
また、第１のプロセス実行部２１及び第２のプロセス実行部２２は、生成装置３０を操作してプロジェクト管理画面を生成させる処理を実行することに限らず、自らがプロジェクト管理画面を生成する処理やその他の処理の処理を実行するソフトウェアであってもよい。この場合、第１のプロセス実行部２１及び第２のプロセス実行部２２がプロジェクト管理ツール等の所定のツールのアプリケーションを実行するため、生成装置３０は不要になる。ただし、生成装置３０で複数のチケットを作る際には、関係者情報や注意書き情報など、同じ情報を何度も入力することになるので、本実施形態にて説明するように、画面入力を自動化できるプロセス実行装置２０を使って入力作業を効率化することが好ましい。
【００３４】
受信部１８は、問い合わせに対する回答等の所定の情報を受信する。出力部１５は、検出部１１が特定のイベントを検出すると、第１のプロセス及び第２のプロセスの生成指示を出力する。第１のプロセス及び第２のプロセスの生成指示は、プロセス実行装置２０に送信され。これにより、第１のプロセス実行部２１及び第２のプロセス実行部２２が生成される。
【００３５】
生成したプロジェクト管理画面の情報は、生成情報ＤＢ３３に記憶される。生成情報ＤＢ３３の一例を図４に示す。生成情報ＤＢ３３には、タスクボード番号、Ｗｅｂページタイトル情報、ストーリー番号、チケット及びステータスが記憶されている。
【００３６】
図５は、生成されたプロジェクト管理画面の一例である。ユーザは、Ｗｅｂブラウザを使用して図５及び図６に一例を示すプロジェクト管理画面を見ることができ、これにより、プロジェクト毎の進捗管理を把握することができる。図５に示すように、画面の上部左側のＵＲＬ表示２００の末尾の文字列「２１７」が、生成情報ＤＢ３３のタスクボード番号に記憶される。また、画面の上部中央に表示されたページタイトル２０１の「Ａツール作成」が、生成情報ＤＢ３３のＷｅｂページタイトル情報に記憶される。Ｗｅｂページタイトル情報は、画面の識別情報の一例である。
【００３７】
画面上のタスクボード１６１には、チケット１６２〜１６７と呼ばれるタスクの一覧がスケジュールと共に表示される。これにより、ユーザは、プロジェクト全体を俯瞰で確認でき、また進捗状態を把握できる。チケット１６２〜１６７は、タスクを作るストーリー及びストーリー内で定義される各処理を示す。図５の例では、チケット１６２は、ストーリー「特許」に関するタスクを示し、「特許」プロジェクト内のチケット１６３〜１６６は処理済であり、チケット１６７は拒否されていることを示す。
【００３８】
［制御装置のハードウェア構成］
次に、本実施形態に係る制御装置１０のハードウェア構成について、図７を参照して説明する。本実施形態に係る制御装置１０は、入力装置１０１、出力装置１０２、外部Ｉ／Ｆ１０３、ＲＡＭ（Random Access Memory）１０４、ＲＯＭ（Read Only Memory）１０５、ＣＰＵ（Central Processing Unit）１０６、通信Ｉ／Ｆ１０７、及びＨＤＤ（Hard Disk Drive）１０８などを備え、それぞれがバスＢで相互に接続されている。
【００３９】
入力装置１０１は、キーボードやマウスなどを含み、制御装置１０に各操作信号を入力するために用いられる。出力装置１０２は、ＬＣＤ（Liquid crystal Display）モニタ等のディスプレイ、プリンタ、ＣＲＴ（Cathode Ray Tube）などを含み、各種の処理結果を出力する。通信Ｉ／Ｆ１０７は、制御装置１０をネットワークに接続するインターフェースである。これにより、制御装置１０は、通信Ｉ／Ｆ１０７を介して、プロセス実行装置２０及びその他の機器とデータ通信を行うことができる。
【００４０】
ＨＤＤ１０８は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、制御装置１０の全体を制御する基本ソフトウェア及びアプリケーションのソフトウェアがある。例えば、ＨＤＤ１０８には、各種のデータベースやプログラム等が格納されてもよい。
【００４１】
外部Ｉ／Ｆ１０３は、外部装置とのインターフェースである。外部装置には、記録媒体１０３ａなどがある。これにより、制御装置１０は、外部Ｉ／Ｆ１０３を介して記録媒体１０３ａの読み取り及び／又は書き込みを行うことができる。記録媒体１０３ａには、ＣＤ（Compact Disk）、及びＤＶＤ（Digital Versatile Disk）、ならびに、ＳＤメモリカード（SD Memory card）やＵＳＢメモリ（Universal Serial Bus memory）等がある。
【００４２】
ＲＯＭ１０５は、電源を切っても内部データを保持することができる不揮発性の半導体メモリである。ＲＯＭ１０５には、制御プログラム１２３、基本プログラム及びデータが格納されている。ＲＡＭ１０４は、プログラムやデータを一時保持する揮発性の半導体メモリである。ＣＰＵ１０６は、ＨＤＤ１０８やＲＯＭ１０５などの記憶装置から、プログラムやデータをＲＡＭ１０４上に読み出し、処理を実行することで、制御装置１０全体の制御や搭載機能を実現する演算装置である。
【００４３】
かかる構成により、本実施形態に係る制御装置１０では、検出部１１、制御部１４、出力部１５の各機能は、例えば、ＲＡＭ１０４、ＲＯＭ１０５、ＨＤＤ１０８等に記憶されたプログラムが、ＣＰＵ１０６に実行させる処理により実現可能である。
【００４４】
また、記憶部１２の機能は、例えば、ＲＡＭ１０４、ＲＯＭ１０５、ＨＤＤ１０８又はネットワーク４０を介して制御装置１０に接続されるクラウド上のサーバ等により実行可能である。
【００４５】
また、受付部１３の機能は、例えば入力装置１０１により実現可能である。表示部１６の機能は、例えば出力装置１０２により実現可能である。送信部１７及び受信部１８の機能は、例えば通信Ｉ／Ｆ１０７により実現可能である。
【００４６】
［記録モードにおける制御処理］
次に、本実施形態に操作システム１において実行される記録モードにおける制御処理の一例について図８を参照して説明する。図８は、一実施形態に係る記録モードにおける制御処理の一例を示したフローチャートである。
【００４７】
なお、以下では、第１のプロセス実行部２１及び第２のプロセス実行部２２を総称してプロセス実行部ともいう。プロセス実行部が実行する処理は、第１のプロセス実行部２１又は第２のプロセス実行部２２により行われる。
【００４８】
また、第１の生成部３１及び第２の生成部３２を総称して生成部ともいう。生成部が実行する処理は、第１の生成部３１又は第２の生成部３２により行われる。
【００４９】
本処理が開始されると、ユーザは制御装置１０を起動する（ステップＳ１）。次に、制御部１４は、モードの選択画面を表示部１６に表示し、ユーザにモードの選択を促す（ステップＳ２）。ユーザが、「記録モード」を選択すると、検出部１１は、記録モードを検出する。
【００５０】
「記録モード」が検出されると、出力部１５は、ソフトウェアに関する第１のプロセス及び第２のプロセスの生成指示を出力する。これに従い、送信部１７は、プロセス実行装置２０を起動し（ステップＳ３）、第１のプロセス及び第２のプロセスの生成を指示する。これに応じて、プロセス実行装置２０は、ソフトウェアに関する第１のプロセス及び第２のプロセスを生成する。プロセス実行部は、生成部を操作して、プロジェクト管理ツールが提供するスケジュール作成ページを開く（ステップＳ４）。
【００５１】
次に、プロセス実行部は、どのタスクボードにタスクを作るかを制御装置１０に問い合わせる（ステップＳ５）。受付部１３が問い合わせを受け付けると、送信部１７は、どのタスクボードにタスクを作るかをユーザに問い合わせる（ステップＳ６）。ユーザが「１２３４」を入力すると、送信部１７は、プロセス実行部にユーザの入力情報「１２３４」を送信し、これに応じて、プロセス実行部は、生成部にタスクボード番号「１２３４」を送信する（ステップＳ７）。生成部は、タスクボード番号「１２３４」のタスクボードに対応する画面を生成し、画面遷移を行う。
【００５２】
次に、送信部１７は、生成した画面に遷移した後のＷｅｂページタイトルを問い合わせる（ステップＳ８）。生成部が、「スケジュール作成」を返信すると、出力部１５は、画面操作情報ＤＢ１２１のＩＤの項目に、１回目の質問を示す「１」を記憶し、Ｗｅｂページタイトル情報の項目に「スケジュール作成」を対応付けて記憶する（ステップＳ９）。
【００５３】
図９は、一実施形態に係る記録モードにおける画面操作情報ＤＢの一例を示す。図９（ａ）には、質問回数が０回目のときの画面操作情報ＤＢ１２１のデータ０が示されている。質問回数が０回目のときの画面操作情報ＤＢ１２１には、何もデータが記憶されていない状態である。
【００５４】
ステップＳ９が実行されると、画面操作情報ＤＢ１２１には、図９（ｂ）のデータ１に示すように、質問回数が１回目であることを表すＩＤの「１」と、Ｗｅｂページタイトル情報の「スケジュール作成」とが対応付けて保存される。
【００５５】
図８に戻り、プロセス実行部は、タスクを作るストーリー番号を制御装置１０に問い合わせる（ステップＳ１０）。受付部１３が問い合わせを受け付けると、送信部１７は、タスクを作るストーリー番号をユーザに問い合わせる（ステップＳ１１）。ユーザが「１１１」を入力すると、送信部１７は、プロセス実行部にストーリー番号「１１１」を送信し、プロセス実行部は、ストーリー番号「１１１」を生成部に送信する（ステップＳ１２）。生成部は、ストーリー番号「１１１」のチケットを作成する画面を生成する。
【００５６】
次に、送信部１７は、生成した画面に遷移した後のＷｅｂページタイトルを問い合わせる（ステップＳ１３）。生成部が、「Ａツール開発」を制御装置１０に返信すると、出力部１５は、画面操作情報ＤＢ１２１のＩＤの項目に「２」を記憶し、画面遷移後のＷｅｂページタイトル情報の項目に「Ａツール開発」を対応付けて記憶する（ステップＳ１４）。これにより、画面操作情報ＤＢ１２１には、図９（ｃ）のデータ２に示すように、ＩＤの「２」とＷｅｂページタイトル情報の「Ａツール開発」とが対応付けて保存される。
【００５７】
図８に戻り、プロセス実行部は、チケットの種類を制御装置１０に問い合わせる（ステップＳ１５）。問い合わせを受け付けると、送信部１７は、チケットの種類をユーザに問い合わせる（ステップＳ１６）。ユーザが「テスト項目作成」を入力すると、送信部１７は、プロセス実行部に「テスト項目作成」を送信し、プロセス実行部は、チケットの種類の「テスト項目作成」を生成部に送信する（ステップＳ１７）。生成部は、「テスト項目作成」のチケットを作成し、テスト項目作成のチケットが表示されている画面を生成する。
【００５８】
次に、送信部１７は、生成した画面に遷移した後のＷｅｂページタイトルを問い合わせる（ステップＳ１８）。生成部が、「Ａツール開発」を制御装置１０に返信すると、出力部１５は、画面操作情報ＤＢ１２１のＩＤの項目に「３」を記憶し、Ｗｅｂページタイトル情報の項目に「Ａツール開発」を対応付けて記憶する（ステップＳ１９）。これにより、画面操作情報ＤＢ１２１には、図９（ｄ）のデータ３に示すように、ＩＤの「３」とＷｅｂページタイトル情報の「Ａツール開発」とが対応付けて保存される。
【００５９】
以上に説明したように、本実施形態に係る記録モードにおける制御処理によれば、生成部にて画面の生成が行われる度に、図９のデータ１〜３に一例を示す画面操作情報が画面操作情報ＤＢ１２１に蓄積されていく。
【００６０】
［従来の監視モードにおける制御処理］
次に、従来の監視モードにおける制御処理の一例について図１０及び図１１を参照して説明した後、本実施形態に係る監視モードにおける制御処理の一例について図１２〜図１５を参照して説明する。図１０及び図１１は、従来の監視モードにおける制御処理の一例を示したフローチャートである。
【００６１】
従来の監視モードでは、図１０に示す処理が開始されると、ユーザは制御装置１０を起動する（ステップＳ２０）。次に、制御部１４は、モード選択画面を表示部１６に表示し、ユーザにモードを選択させる（ステップＳ２１）。ユーザが、「監視モード」を選択すると、検出部１１は、監視モードを検出する。「監視モード」の検出は、第１のイベントの検出の一例である。
【００６２】
「監視モード」が検出されると、送信部１７は、プロセス実行装置２０を起動し（ステップＳ２２）、プロセスの生成を指示する。これに応じて、プロセス実行装置２０のプロセス実行部は、生成装置３０の生成部を操作して、プロジェクト管理ツールのログインページを開き（ステップＳ２３）、ログインする。
【００６３】
ログイン後、プロセス実行部は、どのタスクボードにタスクを作るかを制御装置１０に問い合わせる（ステップＳ２４）。問い合わせを受け付けると、送信部１７は、どのタスクボードにタスクを作るかをユーザに問い合わせる（ステップＳ２５）。ユーザが「１２３４」を入力すると、送信部１７は、プロセス実行部にユーザの入力情報「１２３４」を送信する。これに応じて、プロセス実行部は、生成部にタスクボード番号「１２３４」を送信する（ステップＳ２６）。生成部は、タスクボード番号「１２３４」のタスクボードに対応する画面を生成する。
【００６４】
次に、送信部１７は、生成した画面に遷移した後のＷｅｂページタイトルを問い合わせる（ステップＳ２７）。生成部が、「スケジュール作成」を返信すると、制御部１４は、生成部から返信されたＷｅｂページタイトルと、画面操作情報ＤＢ１２１に記憶されている１回目の質問に対応するＷｅｂページタイトルとを比較する（ステップＳ２８）。比較の結果、１回目の質問に対応するＷｅｂページタイトルと、受信したＷｅｂページタイトルとが一致している場合、出力部１５は、プロセス実行部の質問に対応するユーザの入力情報「１２３４」を画面操作情報ＤＢ１２１に保存する（ステップＳ２９）。比較の結果、画面操作情報ＤＢ１２１に記憶されている該当質問回数に対応するＷｅｂページタイトルと、受信したＷｅｂページタイトルとが一致していない場合、復元モードを実行する。
【００６５】
この時点では、図１５（ｅ）のデータ４に示すように、画面操作情報ＤＢ１２１に記憶されているＩＤ（質問回数）が「１」、つまり、１回目の質問に対応するＷｅｂページタイトル「スケジュール作成」と、受信したＷｅｂページタイトルとは一致している。よって、図１５（ｆ）のデータ５に示すように、出力部１５は、画面操作情報ＤＢ１２１の１回目の質問に対応するユーザ入力情報の項目に、ユーザによって入力されたタスクボード番号「１２３４」を保存する。
【００６６】
図１０に戻り、プロセス実行部は、タスクを作るストーリー番号を制御装置１０に問い合わせる（ステップＳ３０）。問い合わせを受け付けると、送信部１７は、タスクを作るストーリー番号をユーザに問い合わせる（ステップＳ３１）。ユーザが誤って、ユーザが生成情報ＤＢ３３に存在しないストーリー番号「１１１１」を入力すると、送信部１７は、プロセス実行部にストーリー番号「１１１１」を送信する。プロセス実行部は、存在しないストーリー番号「１１１１」を生成部に送信する（ステップＳ３２）。生成部は、存在しないストーリー番号「１１１１」のチケットを作成することができないため、画面は生成できずに画面遷移は行われない。
【００６７】
次に、送信部１７は、生成部が生成した画面への遷移後のＷｅｂページタイトルを問い合わせる（ステップＳ３３）。これに応じて、生成部は、画面生成にエラーが生じ、正しい画面遷移がされなかったことを示す「４０４  ｅｒｒｏｒ」を制御装置１０に返信する。制御部１４は、受信したＷｅｂページタイトルと、画面操作情報ＤＢ１２１に記憶されている２回目の質問に対応するＷｅｂページタイトルとを比較する（ステップＳ３４）。比較の結果、画面操作情報ＤＢ１２１に記憶されている該当質問回数に対応するＷｅｂページタイトルと、受信したＷｅｂページタイトルとが一致していない場合、復元モードを実行する。この時点では、図１５（ｆ）に示すように、画面操作情報ＤＢ１２１に記憶されている２回目の質問に対応するＡツール開発と、受信したＷｅｂページタイトル「４０４  ｅｒｒｏｒ」とは一致していない。
【００６８】
よって、制御部１４は、Ｗｅｂページタイトルが異なるため、送信部１７は、正しい画面遷移ではないと判断し、プロセス実行部の停止を指示する（ステップＳ３５）。また、送信部１７は、生成装置３０にＷｅｂブラウザを閉じるように指示する（ステップＳ３６）。なお、制御装置１０による正しい画面遷移が行われなかったとの上記判定に応じて行われた、プロセス実行部の停止を指示は、第２のイベントの検出の一例である。
【００６９】
第２のイベントが検出されると、復元モードの処理が実行される。復元モードの処理では、送信部１７は、プロセス実行装置２０を再起動させ（ステップＳ３７）、プロセス実行装置２０のプロセス実行部は、生成装置３０の生成部を操作して、ログインページを開き（ステップＳ３８）、ログインする。
【００７０】
ログイン後、プロセス実行部は、どのタスクボードにタスクを作るかを制御装置１０に問い合わせる（ステップＳ３９）。問い合わせを受け付けると、送信部１７は、画面操作情報ＤＢ１２１に保存されているユーザ入力情報から、問い合わせに対するユーザ入力情報を1つずつプロセス実行装置２０に送信する。
【００７１】
ここでは、１回目の質問であるため、ＩＤの項目が「１」に対応付けて記憶された「１２３４」が選択され、送信部１７は、ユーザ入力情報「１２３４」をプロセス実行部に送信する。プロセス実行部は、ユーザ入力情報「１２３４」を生成部に送信する（ステップＳ４０）。画面操作情報ＤＢ１２１に保存されているユーザ入力情報を、質問の順に送信し、問い合わせに対する最後のユーザ入力情報を送信した後に監視モードに戻る。図１５（ｆ）のデータ５の場合、ユーザ入力情報「１２３４」が最後のユーザ入力情報である。
【００７２】
次に、図１０の制御処理に続く図１１では、プロセス実行部は、タスクを作るストーリー番号を制御装置１０に問い合わせる（ステップＳ４１）。問い合わせを受け付けると、送信部１７は、タスクを作るストーリー番号をユーザに問い合わせる（ステップＳ４２）。ここで、図１０のステップＳ３７の再起動後、ストーリー番号「１１１」を正しく入力すると、送信部１７は、プロセス実行部にストーリー番号「１１１」を送信する。プロセス実行部は、ストーリー番号「１１１」を生成部に送信する（ステップＳ４３）。生成部は、ストーリー番号「１１１」のチケットを作成し、作成されたチケットを表示する画面を生成し、生成した画面への遷移が行われる。
【００７３】
次に、送信部１７は、画面遷移後のＷｅｂページタイトルを問い合わせる（ステップＳ４４）。生成部が、「Ａツール開発」を返信すると、制御部１４は、受信した画面情報のＷｅｂページタイトル「Ａツール開発」と、画面操作情報ＤＢ１２１に記憶されている２回目の質問に対応するＷｅｂページタイトルとを比較する（ステップＳ４５）。
【００７４】
この時点では、図１５（ｆ）示すように、画面操作情報ＤＢ１２１に記憶されている２回目の質問に対応する「Ａツール開発」と、受信したＷｅｂページタイトルとは一致している。よって、図１５（ｇ）に示すように、出力部１５は、画面操作情報ＤＢ１２１のユーザ入力情報の項目に、ユーザによって入力されたストーリー番号「１１１」を保存する（ステップＳ４６）。
【００７５】
図１１に戻り、プロセス実行部は、チケットの種類を制御装置１０に問い合わせる（ステップＳ４７）。問い合わせを受け付けると、送信部１７は、チケットの種類をユーザに問い合わせる（ステップＳ４８）。ユーザが「テスト項目作成」を入力すると、送信部１７は、プロセス実行部にチケットの種類「テスト項目作成」を送信し、プロセス実行部は、チケットの種類「テスト項目作成」を生成部に送信する（ステップＳ４９）。生成部は、「テスト項目作成」のチケットを作成し、テスト項目作成のチケットを表示する画面を生成する。
【００７６】
次に、送信部１７は、生成した画面に遷移した後のＷｅｂページタイトルを問い合わせる（ステップＳ５０）。生成部が、「Ａツール開発」を制御装置１０に返信すると、制御部１４は、受信した画面情報のＷｅｂページタイトル「Ａツール開発」と、画面操作情報ＤＢ１２１に記憶されている２回目の質問に対応するＷｅｂページタイトルとを比較する（ステップＳ５１）。
【００７７】
画面操作情報ＤＢ１２１に記憶されている２回目の質問に対応するＡツール開発と、受信したＷｅｂページタイトルとが一致している場合、出力部１５は、対応するユーザ入力情報の項目に、Ｗｅｂページタイトル「テスト項目作成」を保存する（ステップＳ５２）。
【００７８】
以上のように、従来の監視モード及び復元モードでは、以下の動作（１）〜（５）が行われる。
（１）プロセス実行装置２０の質問を制御装置１０からユーザへ問い合わせる。
（２）ユーザの回答を受け付けた制御装置１０からプロセス実行装置２０へ回答を送信する。
（３）プロセス実行装置２０から生成装置３０へ回答を送信する。
（４）回答の内容に応じて生成装置３０が生成した画面情報（ここではＷｅｂページタイトル）を生成装置３０から制御装置１０に送信する。
（５）画面情報と画面操作情報ＤＢ１２１に記憶されたＷｅｂページタイトル情報とが一致する場合、ユーザ入力情報を蓄積する。
（６）誤った入力情報により画面が生成できない場合には、復元モードに移行し、プロセス実行装置２０を再起動する。そして、画面操作情報ＤＢ１２１に記憶されたユーザ入力情報の初めから一つずつ再実行し、エラーが生じる直前の処理まで再実行してから監視モードに遷移する。
【００７９】
以上によれば、従来の監視モードの制御処理では、誤った入力情報が入力された場合、入力画面を現在の画面から前の画面に戻す機能を有しないため、制御装置は、入力画面を前の画面に戻して正しい情報を入力することができず、生成装置３０が生成した画面との間の画面の不整合を整合させることができない。このため、ユーザは、プロセス実行装置２０を再起動し、処理を初めからやり直す必要がある。
【００８０】
また、生成装置３０は、上記のように送信された入力情報の誤りを認識できる場合だけでなく、入力情報の誤りを認識できないときがある。このとき、生成装置３０は、誤った入力情報に応じてユーザが要求しない画面が生成される。
【００８１】
例えば、ユーザは２２４番のタスクボードにチケットを作りたい場合に、「２１７」と入力した場合、生成装置３０は、入力されたタスクボード番号のストーリーが生成情報ＤＢ３３に存在しないときには、正しい画面遷移をしなかったと判断できる。これにより、ユーザの入力ミスを自動検出できる。
【００８２】
一方、入力されたタスクボード番号のストーリーが生成情報ＤＢ３３に存在する場合、画面遷移としては正しいので、生成装置３０は、ユーザが入力ミスしていることを検出できない。つまり、ユーザが誤って「２１７」と打ち込んだとしても、生成装置３０は、２１７番のタスクボードにチケットを作成することを要求していると判断し、２１７のタスクボードの画面を生成し、画面遷移を行うことになる。
【００８３】
生成された画面を見たユーザが、この時点で自分の意図しないタスクボードが表示されているために、ユーザが自分の打ち間違いに気付いても、従来の技術で実現した操作システムでは、既に画面を遷移させているので、入力ミスする前の状態に戻すことはできない。
【００８４】
図５に誤った入力を行った場合の画面の一例を示し、図６に正しい入力を行った場合の画面の一例を示す。図５では、画面の上部左側のＵＲＬ表示２００の末尾の文字列が「２１７」であり、図６では「２２４」である。画面タイトルは同じであり、いずれのＵＲＬも存在するため、操作システム１が自動的に入力ミスを検出することはできない。しかし、画面に表示されるチケットの内容は明らかに異なるため、画面遷移後に、ユーザは自分の開きたかった画面の想定と違うことから、自分が入力ミスしたことに、すぐに気づくことができる。しかし、従来の技術では、既に画面を遷移させているので、入力ミスをする前の状態を再現するには、プロセス実行装置２０を再起動して最初からやり直すことになるため、煩雑である。
【００８５】
そこで、以下に説明する本実施形態に係る監視モードにおける制御処理では、プロセス実行部と生成部の連携システムを二重化し、時間差で質疑応答を入力することで、ユーザが入力を間違った場合にすぐ気が付いて画面の状態を正しく修正することが可能となる。これにより、受け付けた特定の操作イベントに応じた画面遷移が行われない事態の発生を抑制することができる。
【００８６】
図１２は、一実施形態に係る監視モードにおける制御の一例を示すフローチャートである。図１３は、一実施形態に係る監視モードにおける制御処理（続き）の一例を示すフローチャートである。図１４は、一実施形態に係る監視モードにおける制御処理（続き）の一例を示すフローチャートである。図１５は、一実施形態に係る監視モードにおける画面操作情報ＤＢ１２１の一例を示す。
【００８７】
図１２において本処理が開始されると、ユーザは制御装置１０を起動する（ステップＳ７０）。次に、制御部１４は、ユーザにモードを選択させる（ステップＳ７１）。ユーザが、「監視モード」を選択すると、検出部１１は、「監視モード」を検出する。「監視モード」の検出は、第１のイベントの検出の一例である。第１のイベントの検出に対応して、出力部１５は、第１のプロセス及び第２のプロセスの生成指示を出力し、送信部１７は、プロセス実行装置２０（第１のプロセス実行部２１及び第２のプロセス実行部２２）を起動する（ステップＳ７２）。
【００８８】
第１のプロセス実行部２１は、生成装置３０の第１の生成部３１を操作してログインページを開き（ステップＳ７３）、ログインする。第２のプロセス実行部２２は、生成装置３０の第２の生成部３２を操作してログインページを開き（ステップＳ７５）、ログインする。
【００８９】
ログイン後、第１のプロセス実行部２１は、どのタスクボードにタスクを作るかを制御装置１０に問い合わせる（ステップＳ７６）。また、第２のプロセス実行部２２は、どのタスクボードにタスクを作るかを制御装置１０に問い合わせる（ステップＳ７７）。
【００９０】
受付部１３が問い合わせを受け付けると、送信部１７は、どのタスクボードにタスクを作るかをユーザに問い合わせる（ステップＳ７８）。ユーザが「１２３４」を入力すると、送信部１７は、第１のプロセス実行部２１にユーザの入力情報「１２３４」を送信し、これに応じて、第１のプロセス実行部２１は、第１の生成部３１にタスクボード番号「１２３４」を送信する（ステップＳ７９）。第１の生成部３１は、タスクボード番号「１２３４」のタスクボードに対応する画面を生成する。
【００９１】
次に、制御部１４は、画面操作情報ＤＢ１２１に記憶されている情報を確認する。例えば、図１５（ｅ）のデータ４では、ユーザ入力情報は一つも保存されていない。よって、この時点では、制御部１４は、画面操作情報ＤＢ１２１に保存されている、返答されたユーザ入力情報数は「０」であると確認する（ステップＳ８０）。この場合、ユーザ入力情報は一つも保存されていないため、第２のプロセス実行部２２は実行しない。
【００９２】
次に、送信部１７は、第１の生成部３１が生成した画面に遷移した後のＷｅｂページタイトルを問い合わせる（ステップＳ８１）。第１の生成部３１が、「スケジュール作成」を返信すると、制御部１４は、第１の生成部３１から受信したＷｅｂページタイトル「スケジュール作成」と、画面操作情報ＤＢ１２１に記憶されている対応するＷｅｂページタイトルとを比較する（ステップＳ８２）。比較の結果、画面操作情報ＤＢ１２１に記憶されている１回目の質問に対応するＷｅｂページタイトルと、受信したＷｅｂページタイトルとが一致している場合、出力部１５は、ユーザの入力情報「１２３４」を画面操作情報ＤＢ１２１に保存する（ステップＳ８３）。図１５（ｆ）のデータ５では、受信したＷｅｂページタイトル「スケジュール作成」と一致するため、監視モードでの1回目の質問に対するユーザの入力情報「１２３４」が保存される。
【００９３】
図１２に戻り、第１のプロセス実行部２１は、タスクを作るストーリー番号を制御装置１０に問い合わせる（ステップＳ８４）。問い合わせを受け付けると、送信部１７は、タスクを作るストーリー番号をユーザに問い合わせる（ステップＳ８５）。ユーザがストーリー番号「１１１」を入力すると、送信部１７は、第１のプロセス実行部２１にストーリー番号「１１１」を送信する。第１のプロセス実行部２１は、ストーリー番号「１１１」を第１の生成部３１に送信する（ステップＳ８６）。
【００９４】
次に、制御部１４は、画面操作情報ＤＢ１２１に記憶されている情報を確認する。例えば、図１５（ｆ）のデータ５では、ユーザ入力情報が一つ保存されている。よって、この時点では、制御部１４は、画面操作情報ＤＢ１２１に保存されている、返答されたユーザ入力情報数は「１」であると確認する（ステップＳ８７）。この場合、ユーザ入力情報が一つ保存されているため、送信部１７は、第２のプロセス実行部２２にユーザ入力情報「１２３４」を送信し、第２のプロセス実行部２２は、第２の生成部３２にタスクボード番号「１２３４」を送信する（ステップＳ８８）。このようにして、第２の生成部３２は、第１の生成部３１への質問に対して質問1回分を遅らせた状態としておく。
【００９５】
上記では、この時点でメインで動作している第１のプロセス実行部２１に対してバックグラウンド（サブ）で動作している第２のプロセス実行部２２には、ユーザが入力した入力情報を直接送るのではなく、生成情報ＤＢ３３に保存されているユーザ入力情報を送信することで実現する。
【００９６】
次に、送信部１７は、第１の生成部３１が生成した画面に遷移した後のＷｅｂページタイトルを問い合わせる（ステップＳ８９）。第１の生成部３１が、「Ａツール開発」を制御装置１０に返信すると、制御部１４は、受信した画面情報のＷｅｂページタイトル「Ａツール開発」と、画面操作情報ＤＢ１２１に記憶されている２回目の質問に対応するＷｅｂページタイトルとを比較する（ステップＳ９０）。この時点では、図１５（ｆ）のデータ５に示すように、画面操作情報ＤＢ１２１に記憶されている２回目の質問に対応するＡツール開発と、受信したＷｅｂページタイトル「Ａツール開発」とは一致している。
【００９７】
よって、図１５（ｇ）に示すように、出力部１５は、画面操作情報ＤＢ１２１の２回目の質問に対応するユーザ入力情報の項目に、ストーリー番号「１１１」を保存する（ステップＳ９１）。
【００９８】
次に、第１のプロセス実行部２１は、チケットの種類を制御装置１０に問い合わせる（ステップＳ９２）。このとき、第２のプロセス実行部２２は、タスクを作るストーリー番号を制御装置１０に問い合わせる（ステップＳ９３）。
【００９９】
問い合わせを受け付けると、送信部１７は、チケットの種類をユーザに問い合わせる（ステップＳ９４）。ユーザが「テスト項目作成」を入力しようとして誤って、「テッスト項目作成」と入力したとする。このとき、送信部１７は、第１のプロセス実行部２１にチケットの種類「テッスト項目作成」を送信し、第１のプロセス実行部２１は、チケットの種類「テッスト項目作成」を第１の生成部３１に送信する（ステップＳ９５）。
【０１００】
次に、制御部１４は、画面操作情報ＤＢ１２１に記憶されている情報を確認する。例えば、図１５（ｇ）のデータ６では、ユーザ入力情報が二つ保存されている。よって、この時点では、制御部１４は、画面操作情報ＤＢ１２１に保存されている、返答されたユーザ入力情報数は「２」であると確認する（ステップＳ９６）。この場合、ユーザ入力情報が二つ保存されているため、送信部１７は、第２のプロセス実行部２２に２回目の質問に対応するユーザの入力情報「１１１」を送信し、第２のプロセス実行部２２は、第２の生成部３２にストーリー番号「１１１」を送信する（ステップＳ９７）。これにより、第２の生成部３２は、第１の生成部３１への質問に対して質問1回分を遅らせた状態としておく。
【０１０１】
一方、送信部１７が、第１の生成部３１が生成した画面に遷移した後のＷｅｂページタイトルを問い合わせると（ステップＳ９８）、第１の生成部３１は、画面生成にエラーが生じ、正しい画面遷移が行われなかったことを示す「４０４  ｅｒｒｏｒ」を返信する。
【０１０２】
ここで、制御部１４は、受信した画面情報のＷｅｂページタイトル「４０４  ｅｒｒｏｒ」と、画面操作情報ＤＢ１２１に記憶されている、プロセス実行部の質問回数に対応するＷｅｂページタイトルとを比較する（ステップＳ９９）。制御部１４は、比較の結果、画面操作情報ＤＢ１２１に記憶されている３回目の質問に対応するＷｅｂページタイトル「Ａツール開発」と、受信したＷｅｂページタイトル「４０４  ｅｒｒｏｒ」とが一致していないと判定し、正しい画面遷移ではないと判断する。
【０１０３】
この場合、制御部１４は、メインのプロセスを第１のプロセス実行部２１が実行する第１のプロセスから、第２のプロセス実行部２２が実行する第２のプロセスに変更する（ステップＳ１００）。次に、制御部１４は、図１２の制御処理に続く図１３にて、第１のプロセス実行部２１の停止を指示する（ステップＳ１０１）。また、送信部１７は、第１の生成部３１にＷｅｂブラウザを閉じるように指示する（ステップＳ１０２）。なお、生成装置３０によるＷｅｂページタイトルが異なるとの判定は、第２のイベントの検出の一例である。
【０１０４】
第２のイベントが検出されると、復元モードの処理が実行される。復元モードの処理では、送信部１７は、第１のプロセス実行部２１を再起動させ（ステップＳ１０３）、第１のプロセス実行部２１は、第１の生成部３１を操作して、ログインページを開き（ステップＳ１０４）、ログインする。
【０１０５】
ログイン後、第１のプロセス実行部２１は、どのタスクボードにタスクを作るかを制御装置１０に問い合わせる（ステップＳ１０５）。問い合わせを受け付けると、送信部１７は、画面操作情報ＤＢ１２１に保存されているユーザ入力情報から、問い合わせに対するユーザ入力情報を1つずつプロセス実行装置２０に送信する。
【０１０６】
これに対して、送信部１７は、図１５（ｇ）の１回目の質問に対応するユーザ入力情報「１２３４」を、第１のプロセス実行部２１に送信する。第１のプロセス実行部２１は、ユーザ入力情報「１２３４」を第１の生成部３１に送信する（ステップＳ１０６）。
【０１０７】
次に、第１のプロセス実行部２１は、タスクを作るストーリー番号を制御装置１０に問い合わせる（ステップＳ１０７）。これに対して、送信部１７は、図１５（ｇ）の２回目の質問に対応するユーザ入力情報「１１１」を、第１のプロセス実行部２１に送信する。第１のプロセス実行部２１は、ユーザ入力情報「１１１」を第１の生成部３１に送信する（ステップＳ１０８）。このようにして、新たにサブで動作する第１のプロセス実行部２１に、画面操作情報ＤＢ１２１に保存されているユーザ入力情報から、問い合わせに対する最後のユーザ入力情報を送信した状態にする。このようにして、新たにサブで動作することになった第１のプロセス実行部２１は、再起動して、新たにメインになった第２のプロセス実行部２２よりも一つ前の質問の時点まで、自動的に処理を進めておく。なお、サブ側の第１のプロセス実行部２１は、メイン側の第２のプロセス実行部２２よりも一つ前（直前）の質問の時点まで、自動的に処理を進めることに限らず、第２のプロセス実行部２２よりもＮ（Ｎ≧１）個前の質問の時点まで、自動的に処理を進めてもよい。例えば、本実施形態では、２つのプロセスを生成してメインのプロセスとサブのプロセスとして動作させる。しかし、これに限らず、３つのプロセスを生成して１つのメインのプロセスと２つのサブのプロセスとして動作させてもよい。この場合、メインのプロセスを２つのサブの一方のプロセスと変更してもよい。このとき、２つのサブの他方のプロセスについては、変更後のメインのプロセスよりも一つ前の質問の時点まで自動的に処理を進め、メインからサブに変更になったプロセスについては、変更後のメインのプロセスよりも二つ前の質問の時点まで自動的に処理を進めてもよい。
【０１０８】
次に、第１のプロセス実行部２１は、チケットの種類を制御装置１０に問い合わせる（ステップＳ１０９）。同様に、第２のプロセス実行部２２は、チケットの種類を制御装置１０に問い合わせる（ステップＳ１１０）。また、画面操作情報ＤＢ１２１に保存されているユーザ入力情報から、問い合わせに対する最後のユーザ入力情報を送信する際、画面操作情報ＤＢ１２１に保存されている質問された順に一つずつユーザ入力情報を送信してもよいし、画面操作情報ＤＢ１２１に保存されているユーザ入力情報を束にして送信してもよい。
【０１０９】
問い合わせを受け付けると、送信部１７は、チケットの種類をユーザに問い合わせる（ステップＳ１１１）。ユーザが「テスト項目作成」を入力しようとして誤って、「テスト実施」と入力すると、送信部１７は、新たにメインとなった第２のプロセス実行部２２にチケットの種類「テスト実施」を送信する。第２のプロセス実行部２２は、チケットの種類「テスト実施」を第２の生成部３２に送信する（ステップＳ１１２）。ここで、「テスト実施」は、生成情報ＤＢ３３に記憶され、想定され得る入力であるため、第２の生成部３２はエラーと判定せず、「テスト実施」のチケットを作成し、作成した「テスト実施」のチケットが表示される画面を生成する。
【０１１０】
次に、制御部１４は、画面操作情報ＤＢ１２１に記憶されている３回目の質問のユーザ入力情報を確認する（ステップＳ１１３）。例えば、図１５（ｇ）のデータ６では、３回目の質問に対するユーザ入力情報は保存されていないため、第１のプロセス実行部２１は実行しない。
【０１１１】
次に、送信部１７は、画面遷移後のＷｅｂページタイトルを問い合わせる（ステップＳ１１４）。生成部が、「Ａツール開発」を返信すると、制御部１４は、生成部から受信した画面情報のＷｅｂページタイトル「Ａツール開発」と、画面操作情報ＤＢ１２１に記憶されている、プロセス実行部の質問回数に対応するＷｅｂページタイトルとを比較する（ステップＳ１１５）。
【０１１２】
この時点では、図１５（ｈ）のデータ７に示すように、画面操作情報ＤＢ１２１に記憶されている２回目の質問に対応するＡツール開発と、受信したＷｅｂページタイトルとは一致している。よって、図１５（ｉ）のデータ８に示すように、出力部１５は、３回目の質問に対するユーザ入力情報の項目に、ユーザによって入力されたチケットの種類「テスト実施」を保存する（ステップＳ１１６）。
【０１１３】
次に、第２のプロセス実行部２２は、テストの際に使うテスト項目書名はどこに保存されているかを問い合わせる（ステップＳ１１７）。受付部１３は、問い合わせを受け付け、テストの際に使うテスト項目書名はどこに保存されているかを、ユーザに問い合わせる（ステップＳ１１８）。
【０１１４】
ユーザは、この時点でチケットの種類が「テスト実施」の生成画面を見て、自分の要求するプロジェクト管理画面が表示されていないと判断し、自分の入力間違いに気づく。この場合、ユーザは制御装置１０等に配置された「戻るボタン」を押すと、一つ前の画面に戻る指示が制御装置１０に送信される（ステップＳ１１９）。なお、ユーザによる「戻るボタン」の押下は、第２のイベントの検出の一例である。第２のイベントが検出されると、復元モードの処理が実行される。
【０１１５】
第２のイベントが検出されると、出力部１５は、画面操作情報ＤＢ１２１に記憶されている最新のユーザ入力情報を削除する（ステップＳ１２０）。これにより、図１５（ｊ）のデータ９に示すように、３回目の質問に対するユーザ入力情報の項目に保存されていた「テスト実施」が削除される。
【０１１６】
この場合、制御部１４は、メインのプロセスを第２のプロセス実行部２２が実行する第２のプロセスから、第１のプロセス実行部２１が実行する第１のプロセスに変更する（ステップＳ１２１）。次に、制御部１４は、第２のプロセス実行部２２の停止を指示する（ステップＳ１２２）。
【０１１７】
また、送信部１７は、第２の生成部３２にＷｅｂブラウザを閉じるように指示する（ステップＳ１２３）。送信部１７は、第２のプロセス実行部２２を再起動させる（ステップＳ１２４）。送信部１７は、第２の生成部３２を操作して、チケット作成ページを開く（ステップＳ１２５）。
【０１１８】
次に、第２のプロセス実行部２２は、どのタスクボードにタスクを作るかを制御装置１０に問い合わせる（ステップＳ１２６）。問い合わせを受け付けると、送信部１７は、画面操作情報ＤＢ１２１に保存されている１回目の質問に対応するユーザ入力情報「１２３４」を第２のプロセス実行部２２に送信する。第２のプロセス実行部２２は、タスクボードの番号「１２３４」を第２の生成部３２に送信する（ステップＳ１２７）。
【０１１９】
次に、第２のプロセス実行部２２は、タスクを作るストーリー番号を制御装置１０に問い合わせる（ステップＳ１２８）。問い合わせを受け付けると、送信部１７は、画面操作情報ＤＢ１２１に保存されている２回目の質問に対応するユーザ入力情報「１１１」を第２のプロセス実行部２２に送信する。第２のプロセス実行部２２は、ストーリー番号「１１１」を第２の生成部３２に送信する（ステップＳ１２９）。
【０１２０】
このようにして、新たにバックグラウンド（サブ）で動作することになった第２のプロセス実行部２２は、再起動して、新たにメインになった第１のプロセス実行部２１よりも一つ前の質問の時点まで、自動的に処理を進めておく。
【０１２１】
次に、第２のプロセス実行部２２は、チケットの種類を制御装置１０に問い合わせる（ステップＳ１３０）。問い合わせを受け付けると、送信部１７は、チケットの種類をユーザに問い合わせる（ステップＳ１３１）。ユーザが「テスト項目作成」を入力すると、送信部１７は、第１のプロセス実行部２１にチケットの種類「テスト項目作成」を送信し、第１のプロセス実行部２１は、チケットの種類「テスト項目作成」を第１の生成部３１に送信する（ステップＳ１３２）。第１の生成部３１は、「テスト項目作成」のチケットを作成し、テスト項目作成のチケットが表示されている画面を生成する。
【０１２２】
次に、制御部１４は、画面操作情報ＤＢ１２１に記憶されている３回目の質問のユーザ入力情報を確認する（ステップＳ１３２）。例えば、図１５（ｊ）のデータ９では、３回目の質問に対するユーザ入力情報は保存されていないため、第２のプロセス実行部２２は実行しない。
【０１２３】
次に、送信部１７は、画面遷移後のＷｅｂページタイトルを問い合わせる（ステップＳ１３３）。第２のプロセス実行部２２が、Ａツール開発を返信すると、制御部１４は、受信した画面情報のＷｅｂページタイトル「Ａツール開発」と、画面操作情報ＤＢ１２１に記憶されている、３回目の質問に対応するＷｅｂページタイトルとを比較する（ステップＳ１３４）。
【０１２４】
この時点では、図１５（ｊ）のデータ９に示すように、画面操作情報ＤＢ１２１に記憶されている３回目の質問に対応するＡツール開発と、受信したＷｅｂページタイトルとは一致している。よって、図１５（ｋ）のデータ１０に示すように、出力部１５は、３回目の質問に対するユーザ入力情報の項目に、ユーザによって入力されたチケットの種類「テスト項目作成」を保存する（ステップＳ１３５）。
【０１２５】
以上によれば、本実施形態に係る監視モードにおける制御処理では、ユーザが誤った入力を行った場合に、生成装置３０がその入力の誤りを判定できる場合、第１のプロセス実行部２１及び第２のプロセス実行部２２のメインとサブの関係が切り替えられる。これにより、ユーザは、メインで動作する第１のプロセス実行部２１及び第２のプロセス実行部２２の一方の画面にて操作を継続することが可能になる。第１のプロセス実行部２１及び第２のプロセス実行部２２のいずれか一方にメインの動作が切り替えられる度に、第１のプロセス実行部２１及び第２のプロセス実行部２２の他方は再起動して、メインのプロセス実行部より一つ前の質問の時点まで、自動的に処理を進めておく。
【０１２６】
また、ユーザが自分で1つ前の質問に誤った内容を入力してしまったと気づいた際に操作システム１の「戻るボタン」をクリックすることによっても、第１のプロセス実行部２１及び第２のプロセス実行部２２のメインとサブの関係が切り替えられる。これにより、第１のプロセス実行部２１及び第２のプロセス実行部２２のメインで動作する一方の画面で操作を継続し、他方は再起動して、メインのプロセス実行部より一つ前の質問の時点まで、自動的に処理を進めておく。これにより、従来技術では、再起動してから誤った入力情報を再入力することが可能な環境が整うまでに時間を要したが、サブのプロセス実行部をメインのプロセス実行部より一つ前の質問の時点まで自動的に処理を進めておくことで、その待ち時間が無くなるという効果がある。これにより、受け付けた特定操作に応じた画面遷移が行われない事態の発生を抑制することができる。
【０１２７】
例えば「チケットを作るストーリー番号は何ですか」というプロセス実行装置２０からの質問に対して１２３番のストーリーにチケットを作るケースにおいて、ユーザが誤って１２３と打ち込んだ場合について具体的に説明する。この場合、生成装置３０の画面は１２２番のストーリーの画面に遷移するのでユーザは自分のミスに気付く。その時点で操作システムの「戻るボタン」を押せば、誤った入力を行う前の状態に戻すことができる。
【０１２８】
以上、操作システム、制御プログラム、制御方法及び制御装置を上記実施形態により説明したが、本発明に係る制御プログラム、制御方法及び制御装置は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び変形例が複数存在する場合、矛盾しない範囲で組み合わせることができる。
【０１２９】
例えば、上記実施形態に係る操作システムの構成は一例であり、本発明の範囲を限定するものではなく、用途や目的に応じて様々なシステム構成例があることは言うまでもない。例えば、制御装置１０、プロセス実行装置２０及び生成装置３０がネットワーク４０を介して互いに接続されているシステム形態は、本実施形態に係る操作システムの一態様であり、これに限定されない。
【０１３０】
例えば、本発明に係る操作システムは、制御装置１０及びプロセス実行装置２０がネットワーク４０を介して互いに接続されているシステム形態であってもよい。この場合、プロセス実行装置２０は、他のアプリケーションを操作することなく、所定の第１のプロセス及び第２のプロセスを第１及び第２のプロセス実行部においてそれぞれ実行してもよい。この場合、第１のプロセスの実行結果を表示部１６に表示しておき、第２のイベントが検出されたときに、第２のプロセスに切り替え、第２のプロセスの実行結果を表示部１６に表示してもよい。
【０１３１】
以上の説明に関し、更に以下の項を開示する。
（付記１）
第１のイベントを検出すると、ソフトウェアに関する第１のプロセス及び第２のプロセスの生成指示を出力し、
いずれかの情報を受け付けるたびに、受け付けた前記いずれかの情報を、出力した前記生成指示に応じて生成された前記第１のプロセスに送信するとともに、受け付けた前記いずれかの情報の受け付けよりもＮ（Ｎ≧１）番前に受け付け、かつ、前記第１のプロセスに送信した他の情報を、出力した前記生成指示に応じて生成された前記第２のプロセスに送信する処理を実行し、
前記第１のプロセスに送信した前記いずれかの情報に応じた処理を前記第１のプロセスが実行することにより生成した画面の表示部への表示に応じて、第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を前記第２のプロセスが実行することにより生成した画面の前記表示部への表示指示を出力する、
処理をコンピュータに実行させることを特徴とする制御プログラム。
（付記２）
前記第１のプロセスに送信した前記いずれかの情報に応じた処理を、前記第１のプロセスから操作される第１の生成部が実行することにより、生成した画面の表示部への表示に応じて、前記第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を、前記第２のプロセスから操作される第２の生成部が実行することにより、生成した画面の前記表示部への表示指示を出力する、
ことを特徴とする付記１に記載の制御プログラム。
（付記３）
前記第２のイベントを検出する度に、受け付けた前記いずれかの情報に応じた処理を実行するプロセスを、前記第１のプロセス及び前記第２のプロセスの一方から他方へ変更する、
ことを特徴とする付記１又は２に記載の制御プログラム。
（付記４）
受け付けた前記いずれかの情報に応じた処理を、前記第１のプロセス又は前記第２のプロセスが実行するときの順番に対応付けて、受け付けた前記いずれかの情報を入力情報として記憶部に記憶し、
前記第２のイベントを検出すると、前記第１のプロセス及び前記第２のプロセスの一方から他方への変更に応じて、前記第１のプロセス及び前記第２のプロセスの一方を再起動し、前記記憶部に記憶している入力情報を、該入力情報に対応付けて記憶されている順番に従い再起動した前記第１のプロセス及び前記第２のプロセスの一方に送信する、
ことを特徴とする付記３に記載の制御プログラム。
（付記５）
第１のイベントを検出すると、ソフトウェアに関する第１のプロセス及び第２のプロセスの生成指示を出力し、
いずれかの情報を受け付けるたびに、受け付けた前記いずれかの情報を、出力した前記生成指示に応じて生成された前記第１のプロセスに送信するとともに、受け付けた前記いずれかの情報の受け付けよりもＮ（Ｎ≧１）番前に受け付け、かつ、前記第１のプロセスに送信した他の情報を、出力した前記生成指示に応じて生成された前記第２のプロセスに送信する処理を実行し、
前記第１のプロセスに送信した前記いずれかの情報に応じた処理を前記第１のプロセスが実行することにより生成した画面の表示部への表示に応じて、第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を前記第２のプロセスが実行することにより生成した画面の前記表示部への表示指示を出力する、
ことをコンピュータが実行することを特徴とする制御方法。
（付記６）
前記第１のプロセスに送信した前記いずれかの情報に応じた処理を、前記第１のプロセスから操作される第１の生成部が実行することにより、生成した画面の表示部への表示に応じて、前記第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を、前記第２のプロセスから操作される第２の生成部が実行することにより、生成した画面の前記表示部への表示指示を出力する、
ことを特徴とする付記５に記載の制御方法。
（付記７）
前記第２のイベントを検出する度に、受け付けた前記いずれかの情報に応じた処理を実行するプロセスを、前記第１のプロセス及び前記第２のプロセスの一方から他方へ変更する、
ことを特徴とする付記５又は６に記載の制御方法。
（付記８）
受け付けた前記いずれかの情報に応じた処理を、前記第１のプロセス又は前記第２のプロセスが実行するときの順番に対応付けて、受け付けた前記いずれかの情報を入力情報として記憶部に記憶し、
前記第２のイベントを検出すると、前記第１のプロセス及び前記第２のプロセスの一方から他方への変更に応じて、前記第１のプロセス及び前記第２のプロセスの一方を再起動し、前記記憶部に記憶している入力情報を、該入力情報に対応付けて記憶されている順番に従い再起動した前記第１のプロセス及び前記第２のプロセスの一方に送信する、
ことを特徴とする付記７に記載の制御方法。
（付記９）
第１のイベントを検出すると、ソフトウェアに関する第１のプロセス及び第２のプロセスの生成指示を出力する出力部と、
いずれかの情報を受け付けるたびに、受け付けた前記いずれかの情報を、出力した前記生成指示に応じて生成された前記第１のプロセスに送信するとともに、受け付けた前記いずれかの情報の受け付けよりもＮ（Ｎ≧１）番前に受け付け、かつ、前記第１のプロセスに送信した他の情報を、出力した前記生成指示に応じて生成された前記第２のプロセスに送信する処理を実行する制御部と、を有し、
前記出力部は、前記第１のプロセスに送信した前記いずれかの情報に応じた処理を前記第１のプロセスが実行することにより生成した画面の表示部への表示に応じて、第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を前記第２のプロセスが実行することにより生成した画面の前記表示部への表示指示を出力する、
ことを特徴とする制御装置。
（付記１０）
前記出力部は、前記第１のプロセスに送信した前記いずれかの情報に応じた処理を、前記第１のプロセスから操作される第１の生成部が実行することにより、生成した画面の前記表示部への表示に応じて、前記第２のイベントを検出すると、前記第２のプロセスに送信した前記他の情報に応じた処理を、前記第２のプロセスから操作される第２の生成部が実行することにより、生成した画面の前記表示部への表示指示を出力する、
ことを特徴とする付記９に記載の制御装置。
（付記１１）
前記第２のイベントを検出する度に、受け付けた前記いずれかの情報に応じた処理を実行するプロセスを、前記第１のプロセス及び前記第２のプロセスの一方から他方へ変更する、
ことを特徴とする付記９又は１０に記載の制御装置。
（付記１２）
前記出力部は、受け付けた前記いずれかの情報に応じた処理を、前記第１のプロセス又は前記第２のプロセスが実行するときの順番に対応付けて、受け付けた前記いずれかの情報を入力情報として記憶部に記憶し、
前記第２のイベントを検出すると、前記第１のプロセス及び前記第２のプロセスの一方を再起動し、前記記憶部に記憶している入力情報を、該入力情報に対応付けて記憶されている順番に応じて再起動した前記第１のプロセス及び前記第２のプロセスの一方に送信する送信部を有する、
ことを特徴とする付記１１に記載の制御装置。
【符号の説明】
【０１３２】
１  操作システム
１０  制御装置
１１  検出部
１２  記憶部
１３  受付部
１４  制御部
１５  出力部
１６  表示部
１７  送信部
１８  受信部
２０  プロセス実行装置
２１  第１のプロセス実行部
２２  第２のプロセス実行部
３０  生成装置
３１  第１の生成部
３２  第２の生成部
３３  生成情報ＤＢ
１２１  画面操作情報ＤＢ
１２２  質問テーブル
１２３  制御プログラム
【図１】
2018181150.tif 000003
【図２】
2018181150.tif 000004
【図３】
2018181150.tif 000005
【図４】
2018181150.tif 000006
【図５】
2018181150.tif 000007
【図６】
2018181150.tif 000008
【図７】
2018181150.tif 000009
【図８】
2018181150.tif 000010
【図９】
2018181150.tif 000011
【図１０】
2018181150.tif 000012
【図１１】
2018181150.tif 000013
【図１２】
2018181150.tif 000014
【図１３】
2018181150.tif 000015
【図１４】
2018181150.tif 000016
【図１５】
2018181150.tif 000017