説明

ソフトウェア自動再現プログラム

【課題】解析対象のソフトウェアを実際に行なった入力操作をさせながら再現させ、精度のよいエラー解析を行うことが可能なソフトウェア自動再現プログラムを提供する。
【解決手段】キャプチャー対象となっているソフトウェアに対して行われ、複数のキーの中から選択される入力操作を再現させるためのソフトウェア自動再現プログラムであって、コンピュータに、ソフトウェアがアクティブな状態である場合に、そのアクティブ画面の画面データ情報を取得する画面データ情報取得処理ステップと、この画面データ情報と関連付けて、入力操作をキー操作データとして保存するキー操作データ保存ステップと、保存されたキー操作データに基づいて、ソフトウェアの入力操作を再現させる再現ステップと、を実行させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、キャプチャー対象となっているソフトウェアに対して行われ、複数のキーの中から選択される入力操作を再現させるためのソフトウェア自動再現プログラムに関するものである。
【背景技術】
【0002】
従来から、写真プリントを作成する写真処理装置とコントローラをネットワークで接続した写真プリント処理システムが知られている。このようなシステムでは、店頭受付端末またはネットワーク受付端末で受け付けた画像データがオーダー単位に大容量記憶装置に保存される。また、スキャナーによって現像済みネガフィルムから読み取った画像データも同様にオーダー単位に大容量記憶装置に保存される。保存されたオーダー単位の画像データは、コントローラによって管理されている。コントローラは、オーダーの受付順序あるいは顧客への引渡し納期等に基づくプリント処理順序にしたがって、オーダー単位に画像データを写真処理装置に送信する。また、コントローラは、画像データに対して各種補正処理を行うことができる。この各種補正処理は、色補正、濃度の補正、赤目補正、逆光補正などの特殊補正等が挙げられる。写真処理装置は、コントローラから送信されたオーダー単位の画像データを処理し、写真プリントを作成する。上記のコントローラは、専用装置によって構成される場合もあるが、汎用のパソコンによって構成される場合もある。また、このような一連の処理を行うために、コントローラにはソフトウェアがインストールされている。
【0003】
ところで、上記のような写真プリント処理システムにおいて、オペレータの操作履歴を後から検証する目的、エラー発生原因を検証する目的、保守目的等で、コントローラにおける操作履歴を画面キャプチャリングの手法によって取得する方法が提案されている。現在公知の画面キャプチャーソフトは、モニターに表示された画面データを全て取り込む構成のものである。
【0004】
取り込まれた画面データを再現することで、オペレータの操作履歴を確認・検証することができるものの、実際にソフトウェアをエラーが発生した時と同じ状態になるように再現するためには、例えば、同じソフトウェアがインストールされた別のコンピュータを用意し、上記画面データに基づいて、解析者自身が入力操作を行なう必要があった。従って、解析者にとっては、検証作業が非常に煩わしいものであった。
【0005】
なお、操作履歴を取得するデータ処理装置として、下記特許文献1が知られている。この特許文献1の装置は、コンピュータの基本機能を管理する基本ソフトウエア及びワープロソフトやWEBブラウザ等のアプリケーションソフトウエア等の各種ソフトウエアに対するマウスやキーボード等の入力手段を用いた操作履歴を受け付ける操作履歴受付手段と、前記操作履歴受付手段で受け付けた操作履歴に基づき、前記ソフトウエアに対するユーザの操作傾向を知るための所定の処理を行う操作傾向データ処理手段と、前記操作傾向データ処理手段の所定の処理により得たユーザの操作傾向を示す操作傾向データを出力する操作傾向データ出力手段とを備えることを特徴とするものである。
【0006】
また、特許文献2には、パソコン操作再現装置が開示されており、予め作成したマウス操作データ、キー操作データ、操作時間間隔データからなるパソコン操作情報をマイコンのメモリに記憶させ、メモリから再生したパソコン操作情報に基づいて、パソコンを自動操作する技術が開示されている。
【0007】
【特許文献1】特開2003−177847号公報
【特許文献2】特開2000−47796号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献1に開示される技術を利用して操作履歴を画面上に再現しても、実際のソフトウェアの動作を忠実に再現するものではなく、エラーの解析を行なうのにかなりの熟練を要するものと考えられる。また、特許文献2は、予め決められた操作を再現するに過ぎず、エラーの解析のために有用な技術を開示するものではない。
【0009】
本発明は上記実情に鑑みてなされたものであり、その課題は、解析対象のソフトウェアを実際に行なった入力操作をさせながら再現させ、精度のよいエラー解析を行うことが可能なソフトウェア自動再現プログラムを提供することである。
【課題を解決するための手段】
【0010】
上記課題を解決するため本発明に係るソフトウェア自動再現プログラムは、
キャプチャー対象となっているソフトウェアに対して行われ、複数のキーの中から選択される入力操作を再現させるためのソフトウェア自動再現プログラムであって、
コンピュータに、
前記ソフトウェアがアクティブな状態である場合に、そのアクティブ画面の画面データ情報を取得する画面データ情報取得処理ステップと、この画面データ情報と関連付けて、前記入力操作をキー操作データとして保存するキー操作データ保存ステップと、前記保存されたキー操作データに基づいて、前記ソフトウェアの入力操作を再現させる再現ステップと、を実行させることを特徴とするものである。
【0011】
かかる構成によるソフトウェア自動再現プログラムの作用・効果を説明する。キャプチャー対象となっているソフトウェアがアクティブな状態である場合、そのアクティブ画面の画面データ情報を取得する。例えば、アクティブ画面のウインドウハンドルを取得する。すなわち、入力操作がどのような画面の時に行なわれているのかを再現するために必要な情報である。また、複数のキーの中から選択して行なわれる入力操作をキー操作データとして保存するように構成される。キーの具体例として、キーボードに備えられた多数のキーや、マウスに備えられた左キーや右キーなどがあげられる。これらのキー操作データは、画面データ情報と関連付けられて保存される。これにより、どの画面でどのような操作を行なったのかを保存することができる。従って、再現動作を行なうに際して、キー操作データを読み出すことにより、その入力操作を行なった画面と共に再現することが可能になり、忠実にソフトウェアの動作を再現させることができる。
【0012】
本発明において、前記複数のキーには、前記画面上における座標データを入力するために選択される座標入力キーが含まれており、
前記保存ステップにおいて、前記座標入力キーの選択により入力された座標データを保存し、
かつ、前記座標データは、前記アクティブ画面のクライアント領域上に設定された基準座標からの相対座標データとして保存されることが好ましい。
【0013】
複数のキーには、例えば、マウスのように画面上における座標データを入力するために選択される座標入力キーが含まれている。この座標データを保存させる場合に画面全体における座標データではなく、アクティブ画面のクライアント領域上に設定された基準座標(例えば、四隅における左上のポイント)に対する相対座標データとして保存するようにしている。ちなみに、クライアント領域とは、ウィンドウ画面のうち、スクロール・バーや、境界線、タイトル・バー、メニュー・バーなどの非クライアント領域を除いた領域をいう。
【0014】
ソフトウェアの動作を再現するときに、キー操作データや画面データ情報を取り込んだ時とは異なる解像度を有する表示手段で再現すると、モニター解像度の違いにより、実際とは異なった位置にキー操作が再現されてしまい、正確な再現を行なうことができなくなる可能性がある。そこで、上記のように相対座標データを用いることで、正確なキー操作を再現することが可能になり、ソフトウェアの再現動作の精度を上げることができる。
【0015】
本発明において、前記画面データ情報には、アクティブ画面の画面全体に対する位置座標データが含まれることが好ましい。
【0016】
モニター画面の画面全体のどの位置にアクティブ画面が存在していたのかを位置座標データに基づいて、再現することができる。例えば、ソフトウェアの最初の立ち上げ時に、アクティブ画面がどの位置に存在していたのかを特定することができる。その後のウインドウ位置の移動に関しては、キー操作データに基づいて再現可能である。これにより、より精度よく、再現動作をさせることができる。
【発明を実施するための最良の形態】
【0017】
本発明に好適に適用される写真プリント処理システムの一例について、図面を用いて説明する。
【0018】
<システムの全体構成>
図1は、写真プリント処理システムの全体構成の一例を示す模式図である。本実施形態では、1台以上の写真処理装置100が、LANなどのネットワークを介してコントローラ200と接続されている。コントローラ200は、汎用のパソコンで構成され、写真プリント処理システムのアプリケーションソフトプログラムがインストールされている。このアプリケーションソフトプログラムは、画像処理プログラムモジュール、オーダー管理プログラムモジュール、後述するプレジャッジ用プログラムモジュール、その他の各種モジュールの組み合わせで構成されている。このコントローラ200には、ワープロソフト、表計算ソフト、会計ソフト、WEBブラウザソフト等の各種アプリケーションソフトがインストールされている。
【0019】
また、コントローラ200には、ネガフィルムから画像データを読み取るスキャナー300が接続されている。また、このコントローラ200とネットワークを介して、受付端末400、記録装置500、ネット受付端末600が接続されている。なお、受付端末400、記録装置500及びネット受付端末600の設置台数は、それぞれ1台に限定されず、必要に応じて複数台を設置することができる。また、スキャナー300は、写真処理装置100に設置された構成であってもよい。
【0020】
写真処理装置100は、コントローラ200から送信された画像データに基づいて、写真プリントを作成する機能を有する。画像データとしては、スキャナー300から取得される現像済みネガフィルムのコマ画像の画像データや、受付端末400等からネットワーク経由で送信されてくる画像データなどが挙げられる。
【0021】
受付端末400は、例えば店頭に設置され、デジタルカメラの記録メディアやその他の記録メディアに格納された画像データを受け付けることができる。記録メディアの種類としては、コンパクトフラッシュ(登録商標)、スマートメディア(登録商標)、メモリスティック(登録商標)、CD−R、DVD−Rなどが例示される。受付端末400は、主として顧客により操作されるものであり、顧客が持参した記録メディアを挿入して、写真プリントの作成対象となる画像データを選択したり、プリント枚数などを設定したりすることができる。記録装置500は、コントローラ200から送信されてきた画像データ、注文データ等を記録メディアに書き込む機能を有する。
【0022】
ネット受付端末600はパソコンにより構成され、インターネットを経由したオンラインでのプリント注文を受け付ける機能を有する。かかるプリント注文の受け付けは、インターネット上に設置されたサーバ610を介して行われる。即ち、プリント注文に係る画像データは、顧客のパソコン620からサーバ610にアップロードされ、適当なタイミングでネット受付端末600にダウンロードされてプリント処理に用いられる。このようなオンラインでプリント注文を受け付けるシステムは公知である。
【0023】
<写真プリント処理システムの機能ブロック構成>
先ず、コントローラ200の主な機能について以下に説明する。コントローラ200には、写真プリント処理システムに用いられる写真プリント処理システムのアプリケーションソフトウエアプログラム(以下、写真プリント処理システムプログラムと称することがある。)がインストールされている。
【0024】
図1に示すように、写真プリント処理システムプログラムは、主に、スキャナー300、受付端末400、記録装置500及びネット受付端末600等から写真プリント注文に係る画像データおよび注文データからなるオーダー情報を受信するデータ受信処理ステップ(データ受信処理部)と、この受信したオーダー情報を記憶媒体(HDD)に保存するオーダー情報保存処理ステップ(オーダー情報保存処理部)と、このオーダー情報を追加、変更、削除、オーダー順序等の管理処理を行なうオーダー管理処理ステップ(オーダー管理処理部)と、オーダー情報の中の画像データをプレジャッジするプレジャッジ処理ステップ(プレジャッジ処理部)と、プレジャッジ処理ステップで作成されたプレジャッジ補正データに基づいて、画像データを画像処理しプリント作成用画像データを作成する画像処理ステップ(画像処理部)と、プリント作成用画像データを、プリント処理順序に従って、オーダー単位に写真処理装置側に送信するデータ送信ステップ(データ送信処理部)と、をコンピュータに実行させるために機能する。また、写真プリント処理システムプログラムは、写真処理装置の運転状況を問い合わせる処理ステップ、写真処理装置の運転状況を受信し画面に表示する処理ステップ、写真処理装置の各種設定値を設定処理するステップ等のプログラム機能も有している。この写真プリント処理システムプログラムは、インストールされたパソコンのCPU、メモリ等のハードウエア資源と協働して作用し、その機能を発揮する。
【0025】
また、別実施形態として、画像処理ステップをコントローラ200で行なわず、プレジャッジ処理ステップで作成されたプレジャッジ補正データと画像データを写真処理装置側に送信し、写真処理装置に内蔵された、専用回路で構成された画像処理基板で画像処理を行なわせることもできる。また、プレジャッジ処理ステップは全てのオーダーの画像データに対し、必須ではなく、プレジャッジ処理を省略する構成もある。また、スキャナー300から受信された画像データは、プレジャッジ処理後のものであってもよい。
【0026】
本実施形態において、プレジャッジ処理は、画像データに基づいて写真プリントを作成する前に、適切な画質の写真プリントが作成されるか否かを判定するものであり、画像データに対する判定をオペレータが行なうための機能を提供する。
【0027】
プレジャッジ処理は、具体的には、色や濃度を補正するための補正データを入力する機能を提供するものであり、かかる補正データの入力は必要に応じて設定される。その他の補正データの設定としては、赤目補正、逆光補正などの特殊補正の設定が例としてあげられる。
【0028】
また、プリント枚数の設定としては、スキャナー300から取得した画像データに関してはデフォルトで1が設定されているが、オペレータの入力操作により変更することができる。
【0029】
また、オーダー情報の画像データは、1つのコマ画像データで構成されていてもよく、複数のコマ画像データで構成されていてもよい。注文データには、注文ID、注文者識別情報、コマ画像ごとのプリント枚数、コマ画像ごとのプリントサイズの情報等が含まれていてもよい。
【0030】
また、コントローラ200は、各種設定、操作指示入力等のための入力操作部230と、各種設定操作指示表示等のためにモニター240とを備えている。入力操作部230は、キーボード231やマウス232等により構成される。キーボード231は、多数のキーを備えており、これらのキーを操作することによりキー入力を行うことができる。マウス232は、左キーおよび右キーを備えた座標入力装置であり、マウス232を所望の位置に移動させて左キーまたは右キーを操作することにより、モニター240の画面上における座標データを入力することができる。このとき、マウス232の左キーおよび右キーは、モニター240の画面上における座標データを入力するために選択される座標入力キーとして機能する。このようなキーボード231およびマウス232により構成される入力操作部230を用いることにより、複数のキーの中から選択して入力操作を行うことができる。本実施形態のソフトウェア自動再現プログラムの詳細は後述し、スキャナー300、写真処理装置100の構成について以下で説明する。
【0031】
スキャナー300は、現像済みネガフィルムに形成されているコマ画像をスキャニングして、デジタルの画像データを取得する機能を有する。読み取られた画像データは、コントローラ200に送信される。読み取り方法としては、プレスキャニングと本スキャニングの2種類があり、プレスキャニングは、ネガフィルムの全体を低解像度(プレジャッジ用解像度)で一度読み取り、本スキャニングは、プレスキャニングの画像データに基づいたプレジャッジ処理後に行なわれるものであって、高解像度(写真用解像度)での読み取りである。この場合、スキャナー300はプレジャッジ処理機能を提供するプレジャッジ処理手段と接続されて構成される。
【0032】
写真処理装置100は、コントローラ200からプリント作成用画像データを受信する受信部101と、受信されたプリント作成用画像データをマガジン103から繰り出された印画紙104に露光処理するための露光部105と、露光処理された印画紙104を現像処理するための現像部106と、現像処理された印画紙104を乾燥処理するための乾燥部107と、乾燥処理された印画紙104を仕分け処理しながら排出する仕分け排出部108と、を有して構成されている。また、写真処理装置100の全体的な動作を制御するためのメイン制御部120を備えている。
【0033】
マガジン103には、写真感光材料である印画紙104がロール状に収容されている。マガジン103は、2台を設置することができ、例えば、幅の異なる印画紙を予めセットしておくことができる。マガジン103から引き出された長尺状の印画紙104は、設定されたプリントサイズになるようにカッター等の切断手段で切断される。
【0034】
露光部105は、露光エンジンを有し、画像処理基板220の展開メモリから送信されてくるプリント作成用画像データを受け取り、このプリント作成用画像データに基づいて、印画紙の乳剤面に画像を焼付露光する。露光エンジンとしては、特定の方式のものに限定されるものではなく、例えば、レーザーエンジン、CRTエンジン、PLZTエンジンなどを用いることができる。
【0035】
現像部106は、画像が焼付露光された印画紙104の現像処理を行い、乾燥部107は、現像処理された印画紙104の乾燥処理を行なう。仕分け排出部108において、仕上がりの写真プリントが装置本体外部に排出され、所定の集積装置によりオーダー単位で集積可能に構成されている。
【0036】
印画紙センサー109は、仕分け排出部108から排出される印画紙104を検出し、あるオーダーの写真プリントが全て排出されたか否かを検出する。センサー制御部110は、印画紙センサー109の駆動制御を行なうと共に、印画紙センサー109からの信号を受信して解析する。メイン制御部120は、あるオーダーについての写真プリントが全て排出されたとセンサー制御部110により検出された場合、コントローラ200にその通知を行い、そのオーダーについてのオーダー情報を処理済みの管理状態に設定し、さらに、記憶媒体から削除するように構成してもよい。なお、写真処理装置100としては、上記のような構成に限らず、インクジェットプリンタやサーマルプリンタ(昇華型プリンタ)などの各種構成を採用することができる。
【0037】
(ソフトウェア自動再現プログラム)
以下にコントローラ200にインストールされるソフトウェア自動再現プログラム(以下、自動再現プログラムと省略)の機能について説明する。なお、このプログラムは、記憶媒体に記録され、記憶媒体として提供可能であり、また、通信回線を介して提供(ダウンロード提供)されてもよい。通信回線を介して提供される場合、その一部の機能のみが提供されてもよく、他の一部がサーバ装置に残っていてもよい。
【0038】
図1に、自動再現プログラムの処理機能について機能ブロック図で示す。
【0039】
具体的には、所定期間をカウントする(時刻を計測する)カウント部201と、何らかの入力操作が行われた場合に、前記画面に表示された画面データにおけるアクティブな画面データの情報を取得する画面データ情報取得部202と、前記取得された画面データの情報から、前記アクティブな画面データがキャプチャー対象のアプリケーションソフトのものであるか否かを判断する判断部203と、前記判断部203によって、前記アクティブな画面データがキャプチャー対象のアプリケーションソフトのものであると判断された場合に、前記画面データの情報と関連付けてキー操作データをキャプチャーするキャプチャー部204とを有している。保存部205は、当該自動再現プログラムの実行により機能するものであり、前記キャプチャー部204でキャプチャーされたキー操作データを画面データ情報と共に相互に関連付けて保存する。また、キー操作データは、時刻データとも関連付けて保存される。保存部205は、例えば、大容量記憶媒体である。
【0040】
ここでキーとは前述のようにキーボード231に備えられた多数のキーや、マウス232に備えられた左キーおよび右キーなどを指している。マウス232を所望の位置に移動させて左キーまたは右キーを操作(クリック)することにより、モニター240の画面上における座標データを入力することができ、この座標データが保存部205に保存される。これらの入力操作はキー操作データとして保存される。
【0041】
例えば、マウス232で左キーや右キーをクリックすると、画面上におけるクリック位置(座標)における座標データが入力される。また、キーボード231によりデータの入力等を行った場合は、その入力していく過程も合わせて保存される。例えば、画面上に設定されている数値入力枠に数値をキーボード231により入力した場合には、座標データのみならず、数値データ(これらもキー操作データに相当する)も合わせて保存される。
【0042】
画面データ情報と対応付けてキー操作データを保存することにより、保存したデータを再現するに際して、単に入力操作の履歴を表示するのではなく、実際に解析対象のアプリケーションソフトを立ち上げて、入力操作の様子も再現することができる。入力操作も合わせて再現するので、入力操作に伴う動作も合わせて再現可能になる。例えば、周辺機器に対する動作指令(例えば、写真処理装置100に対するプリント作成指令、記録装置500へのデータ書き込み指令など)に関しても再現できるので、実際に周辺機器を動作させながら検証することができる。これにより、エラーが発生した場合の解析をより精度よく行なうことができる。
【0043】
なお、座標データを保存する場合には、画面全体における座標データではなく、アクティブのウィンドウ画面のクライアント領域上に設定された基準座標(図5に図番511で示す)に対する相対座標データとして保存することが好ましい。例えば、マウス232によりクリックした位置が512であるとすると、座標データとしては図5に示すように基準座標に対する(x,y)を相対座標データとして保存する。
【0044】
解析対象のアプリケーションソフトの入力操作の再現を行なう場合に、キー操作データをキャプチャーしたときとは異なるモニター画面で再現することがある。このときに、キー操作データをキャプチャーした時のモニターと再現する時のモニターとで、解像度が異なると、実際とは異なった位置にキー操作が再現されてしまい、正確な再現を行なうことができなくなる可能性がある。そこで、上記のように相対座標データを用いることで、正確なキー操作を再現することが可能になる。
【0045】
また、キャプチャーされたキー操作データや画面データ情報は、圧縮処理されて保存されることが好ましい。圧縮アルゴリズムは公知のものを適用でき、例えば、ランレングス圧縮法、PIC圧縮法等が例示される。かかる場合、自動再現プログラムは、圧縮処理機能(圧縮部207)を有し、圧縮処理ステップをコンピュータに実行させる構成である。
【0046】
また、キャプチャー条件を設定するキャプチャー条件設定部206を有している。キャプチャー条件設定部206は、各種キャプチャー条件を設定することができ、キャプチャー条件としては、例えば、キャプチャーパターンの設定、キャプチャーデータを出力するフォルダの指定、出力するファイルの個数、1ファイルの出力サイズの指定(ファイル数とファイルサイズでキャプチャーデータを保存する容量がきまる)、キャプチャー処理のタイミング等が例示される。これらの詳細は後述する。
【0047】
操作再現部208は、保存されているキー操作データに基づいて、ソフトの入力操作を再現させることができる。この操作再現部208の主要な機能は、既に述べてきたように、エラーが発生した場合などに、その原因解析のために操作状況を再現させることである。操作再現部208は、入力操作に伴う周辺機器の動作などについても合わせて再現させることができる。従って、操作再現部208によれば、より精度のよい詳細な解析・検証を行なうことができる。
【0048】
操作再現部208は、保存部205に保存されているキー操作データに基づいて、対応付けられた時刻に従って、ソフトの再現動作を行なわせる。従って、各入力操作の間隔は、実際に入力操作を行った時の間隔と同じであるが、再生速度設定バー85(図6参照)の操作により変更することもできる。
【0049】
(動作フローチャート)
次に、自動再現プログラムの処理フローについて図2を用いて以下に説明する。コントローラ200はパソコンで構成され、このパソコンはマイクロソフト(登録商標)社のウインドウシステム(例えば、Microsoft Windows(登録商標)2000、XP、VISTA(登録商標))で動作する環境である。なお、他のウインドウシステム、例えば、Mac OS、X Window Systemであってもよいことはいうまでもない。
【0050】
コントローラ200でOSを起動すると、図3(a)に示すように、デスクトップ画面300が表示される。このデスクトップ画面300には、各種アプリケーションソフトの起動ファイルアイコンが表示されている。自動再現プログラムの起動ファイルアイコン301を選択し実行する(S1)。実行されると、図3(a)に示すように、例えば、タスクバーにアイコン302が表示される。アイコンの色によってキャプチャー状態を識別できる。例えば、アイコン背景色が水色であれば一時停止中、赤であればキャプチャー中、橙色であればキャプチャーエラー発生中であることをそれぞれ示す。キャプチャーエラー発生は、例えば、キャプチャーされたキー操作データ等を保存するための記憶媒体(例えばハードディスク)にファイルを出力できない場合がある。初期設定として、起動ファイル実行により、キャプチャー機能が自動的に開始されるように設定してもよく、一時停止の状態にしておいてもよい。
【0051】
起動ファイル実行後(S1)、キャプチャー機能がON状態であるか否かが判断され(S2)、ON状態であれば、次のステップS3以降に進む。ON状態でない場合、キャプチャー機能が一次停止状態である。キャプチャー機能をON状態にするには、図3(a)に示すタスクバーのアイコン302をクリックすることによって、図3(b)に示すように、メニュー303を表示させ、メニュー303から「キャプチャー開始」を選択することで、キャプチャー機能を開始できる。このメニュー303には、「キャプチャー開始」以外に、例えば、「キャプチャー終了」(キャプチャーを停止する機能)、「設定」(キャプチャー条件を設定する機能)、「ソフトの終了」(自動再現プログラムを終了する機能であり、キャプチャー終了してからのみ実行できる)等が選択できるように構成されている。
【0052】
また、一次停止状態において、「設定」が選択されたか否かが判断される(S10)。「設定」が選択された場合、ステップS11において、キャプチャー条件の設定を行える。「設定」は、上記キャプチャー条件設定部206の機能であり、キャプチャー中でない場合に条件を設定できるように構成されている。なお、キャプチャー条件は、推奨条件が予め設定されている場合があるが、写真プリント処理システムが設置される写真店の都合や、コントローラ200として用いられるパソコンの処理能力、ハードディスク容量等によって適宜設定できるように構成され、各種ユーザ条件にカスタマイズできる構成である。
【0053】
(キャプチャー条件設定)
以下でキャプチャー条件の設定について説明する。図4に、キャプチャー条件設定画面400の一例を示す。「キャプチャーパターンの選択401」は、使用するパターンを設定するためのボックスである。すでに設定されているパターンはコンボボックスに表示される。新たにパターンを設定する場合には、新規名称を入力し保存する。保存は、「Regist418」を押下することで確定される。
【0054】
ファイル設定欄の「出力フォルダ402」において、キャプチャーされたキー操作データや画面データ情報等を保存する先のフォルダを指定する。ボックス右側のボタンでフォルダ一覧を表示させ選択できる。「出力ファイル数403」において、出力するファイルの個数を設定する。「出力ファイルサイズ404」において、1ファイルの出力サイズを指定する。ここで指定されたサイズを超えたところで次のファイルに切り換えて出力されるように構成される。「出力ファイル数403」と「出力ファイルサイズ404」とを乗算して得られた値が、キー操作データ等が保存される容量である。したがって、保存部205の大容量記憶媒体(例えばハードディスク)の容量に応じた設定をすることが可能である。
【0055】
「自動キャプチャー開始405」のチェックボックスをチェックすることで、自動再現プログラムを起動したときに自動的にキャプチャー処理を開始するように設定できる。
【0056】
「マウス412」のチェックボックスをチェックすると、マウス操作ログを保存する。マウス操作ログ(キー操作データに対応する)は、取得された画像データに紐付けされている。「キーボード413」のチェックボックスをチェックすると、キーボード操作ログ(キー操作データに対応する)を保存する。キーボード操作ログは、取得された画像データに紐付けされている。「ドライブ414」のチェックボックスをチェックすると、ドライブ変化ログを保存する。
【0057】
「CPU/MEMORY415」のチェックボックスをチェックすると、CPU使用量ログ、メモリの使用量ログを保存する。上記の「周期407」で設定した数値(100ms)と、ここで設定された数値(10)を乗算した値の時間タイミングでサンプリングされる。「Network416」のチェックボックスをチェックすると、ネットワーク状態ログを保存する。上記の「周期407」で設定した数値(100ms)と、ここで設定された数値(600)を乗算した値の時間タイミングでサンプリングされる。「Process417」のチェックボックスをチェックすると、プロセス状態ログを保存する。上記の「周期407」で設定した数値(100ms)と、ここで設定された数値(600)を乗算した値の時間タイミングでサンプリングされる。
【0058】
次にキャプチャー処理について説明する。キャプチャー機能が開始されると、キーボード231やマウス232などの入力操作部230により入力操作が行われたか否かを判断する。入力操作が行われた場合(S3)に、アクティブな画面データの情報を取得する(S4、画面データ情報取得処理ステップ)。例えば、アクティブ画面のウインドウハンドルを取得する。取得されたウインドウハンドルからその実行モジュール名が取得される。これは、ウインドウハンドルと実行モジュール名とが、CPUで紐付けされているためである。また、ウインドウハンドルには当該画面のタイトル名が含まれており、取得されたウインドウハンドルからタイトル名が読み出され、各キー操作データに対応付けて保存部205に保存される。
【0059】
次いで、取得された画面データの情報(ここでは実行モジュール名)が、キャプチャー対象のアプリケーションソフトのものであるか否かが判断される(S5、判断処理ステップ)。キャプチャー対象のアプリケーションソフトは、予めメモリ等に記憶されており、ここでは、上記の写真プリント処理システムプログラムの各種実行モジュールである。
【0060】
取得された画面データの情報が、キャプチャー対象のアプリケーションソフトのものであると判断された場合、キー操作データをキャプチャーする(S6、キャプチャー処理ステップ)。ステップS5において、キャプチャー対象のアプリケーションソフトのものでないと判断された場合、キャプチャー処理を行わず、ステップS4に戻る。すなわち、このタイミングで、キー操作データは取り込まれないことになる。そして、次の入力操作が行なわれるまで待機する。
【0061】
前述のキャプチャー条件設定画面において、「マウス412」や「キーボード413」のチェックボックスをチェックすると、入力操作を行なった結果がキー操作データとして保存部205に保存される。キー操作データは前述のように画面データ情報や時刻データと紐付けされた状態で保存される。なお、「マウス412」か「キーボード413」のいずれか一方のキー操作データのみを保存するようにしてもよいが、検証を精度よく行なうためには、両方ともキャプチャーすることが好ましい。
【0062】
キー操作データと関連付けられるのは時刻データによるものに限定されず、例えば、一番最初にキー操作データを取り込んだ時刻を基準とした相対的な時間値、カウント値などにより紐付けすることもできる。
【0063】
なお、「画面がアクティブである」は、その画面にのみ入力操作が可能であることを意味している。図5に、写真プリント処理システムプログラムの画面がアクティブである一例を示す。画面中央のウインドウ画面が写真プリント処理システムプログラムの画面例(プレジャッジ画面例)であり、アクティブであることを示す。他のアプリケーションソフトの画面は非アクティブであり、画面下部領域のタスクバーで表示されているのみか、プレジャッジ画面背景に隠れている状態である。
【0064】
キャプチャーされたキー操作データ及びその他の画面データ情報等のデータは圧縮部207によって圧縮処理され、保存部205に保存する(S7、保存処理ステップ)。各キー操作データ(前述の座標データや数値入力データなど)は時刻データと関連付けて保存されることにより、種々の入力操作の間隔についても再現可能な状態で、保存部205に保存されることとなる(S9)。なお、ステップS8において圧縮処理は必須ではないが、記憶媒体の容量確保の観点から圧縮処理したほうが好ましい。
【0065】
なお、キー操作データ以外に保存部205に保存されるデータとしては、表示された各画面データの画面番号、各画面データが表示されたときに選択されたキーの番号(ボタン番号)、アクティブ画面の画面全体に対する位置座標データ(例えば、図5の座標(x1,y1)で示される。)などを例示することができる。ただし、これらのデータに限らず、表示された各画面データの名称(画面名称)、各画面データが表示されたときに使用されたリソースの番号(リソース番号)、ダイアログの識別番号(ダイアログID)、実行されたプロセスの名称(プロセス名)といったデータが、各画面データに対応付けて保存部205に保存されるようになっていてもよい。
【0066】
保存部205の記憶媒体としては、大容量データを記憶可能なハードディスクが好ましい。予め記憶媒体に保存できる保存データ量を設定しておき、保存された画面データのデータ量が、その保存データ量に達したら、古い画面データを削除するようにし、記憶媒体の保存データ量を一定以下に保ち、キー操作データ等のデータが保存されないような不具合を生じないように構成することが好ましい。また、データ量が保存データ量に達したら、記憶媒体に保存されたキー操作データ等をメディア(CD−ROM、MO等)に移し、記憶媒体の記憶領域を確保するように構成できる。
【0067】
キャプチャー処理は、上記のとおり、タスクバーのアイコンからメニューを表示させ、「一時停止」を選択することで、停止させることができる。また、キャプチャー処理開始時刻と終了時刻を予め設定しておき、開始時刻から自動的に開始させ、終了時刻の到来で自動的に一次停止させる構成ができる。また、キャプチャー処理終了期間を設定し、キャプチャー開始時刻から一定期間が経過したら自動的に一次停止するように構成することもできる。
【0068】
(入力操作の再現処理)
次に、入力操作の再現方法について説明する。まず、図6は、ソフトウェアを再現した時の画面データ例について示す。キャプチャーされたキー操作データ等が保存されているファイルの一覧から、再現したいファイルを選択する。ファイルを選択すると、記憶媒体からメインメモリにそのファイルが読み込まれ、再現が開始される。図6のウインドウ中央の画面にソフトウェアが再現された状態が示される。マウスのカーソルの動きが再現されている状態が図示されている。キー操作データ等が圧縮されている場合、解凍処理を行い、再現する。
【0069】
図6において、表示ウインドウ下部のバー81と、このバー81の上の逆三角マークは、再現しているファイルのどの位置を表示しているかを示す。ウインドウ下部のバー81の下部には、現在表示している画面データに関する入力操作を行なった時刻82(キャプチャーしたコンピュータのローカル時刻)、その日付83を表示している。この時刻82の右側に、再生・一次停止ボタン(ボタン押下で再生か一時停止かに切り替わる機能ボタン)・現在位置より所定分移動させるためのボタン84、再生速度設定バー85等が表示されている。
【0070】
キー操作データとして、例えば、図6に示すようにマウスが位置520から位置521を経由して位置522へと移動した場合、その移動軌跡についても再現させることができる。また、写真画像の色データを補正するためのカラーデータの補正値を入力した場合には、その補正値の入力過程も再現させることができる。
【0071】
図6に再生された状態を別のコントローラ200のモニター240に再現させることもできる。図6では、自動再現プログラムのウインドウ画面内で画面の状態が再生されているだけであるが、別のモニター240を利用して、図5に示すように実際に入力操作を行なったのと同じ動作を再現させることができる。従って、位置522におけるマウスの操作が写真処理装置100へのプリント作成指令であれば、再現を行うに際して写真処理装置100も同じように動作が再現されることになる。写真処理装置100に限らず、他の周辺機器への動作指令などについても同様に再現させて当該周辺機器も合わせて動作させることができる。
【0072】
以上の構成によれば、エラーが発生した時の状況を実施に作業者が行なった入力操作と同じことを忠実に再現することができる。エラー発生原因を検証するためには、画面データを再生させるのみでは充分な解析を行なうことが難しいが、本発明によれば、実際に行なった操作状況を再現させることができるので、精度のよいエラー解析を行うことが可能になる。
【0073】
以上の実施形態では、自動再現プログラムが写真プリント処理システムにおいて実行される構成について説明したが、このような構成に限らず、本発明は、写真プリント処理システム以外の各種システムおよび装置に適用可能である。
【0074】
本実施形態では、画面データのキャプチャーは行なっていないが、画面データのキャプチャーも同時に行なうようにしてもよい。
【図面の簡単な説明】
【0075】
【図1】写真プリント処理システムの機能構成を説明するための図
【図2】キャプチャー処理の動作フローチャート
【図3】自動再現プログラムの実行画面について説明するための図
【図4】キャプチャー条件設定画面について説明するための図
【図5】自動再現プログラムの実行画面について説明するための図
【図6】自動再現プログラムによる動作再現状態について説明するための図
【符号の説明】
【0076】
100 写真処理装置
200 コントローラ
201 カウント部
202 画面データ情報取得部
203 判断部
204 キャプチャー部
205 保存部
206 キャプチャー条件設定部
208 操作再現部
230 入力操作部
231 キーボード
232 マウス

【特許請求の範囲】
【請求項1】
キャプチャー対象となっているソフトウェアに対して行われ、複数のキーの中から選択される入力操作を再現させるためのソフトウェア自動再現プログラムであって、
コンピュータに、
前記ソフトウェアがアクティブな状態である場合に、そのアクティブ画面の画面データ情報を取得する画面データ情報取得処理ステップと、
この画面データ情報と関連付けて、前記入力操作をキー操作データとして保存するキー操作データ保存ステップと、
前記保存されたキー操作データに基づいて、前記ソフトウェアの入力操作を再現させる再現ステップと、を実行させるためのソフトウェア自動再現プログラム。
【請求項2】
前記複数のキーには、前記画面上における座標データを入力するために選択される座標入力キーが含まれており、
前記保存ステップにおいて、前記座標入力キーの選択により入力された座標データを保存し、
かつ、前記座標データは、前記アクティブ画面のクライアント領域上に設定された基準座標からの相対座標データとして保存されることを特徴とする請求項1に記載のソフトウェア自動再現プログラム。
【請求項3】
前記画面データ情報には、アクティブ画面の画面全体に対する位置座標データが含まれることを特徴とする請求項1又は2に記載のソフトウェア自動再現プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate