(57)【要約】【課題】比較的簡単な構成で、ファイアウォールが有効にされていてもインターネットを介し画像形成装置のアプリケーションを容易にリモートデバッグする。【解決手段】情報処理端末１０から仲介サーバとしてのクラウド２０に対しデバッグコマンド情報２４を送信し、画像形成装置３０からクラウド２０に対し動作ログ情報２５を送信する。デバッグコマンドとその動作ログとがそれぞれデバッグコマンド情報２４及び動作ログ情報２５に含まれるＵＵＩＤで対応付けられ、また、これら情報に先方（送り先）のＩＰアドレスが含まれている。【選択図】図１
2014167720.tif 000002
【特許請求の範囲】
【請求項１】
Ｗｅｂサービスを提供する仲介サーバと、
該仲介サーバに対しＷｅｂサービスを要求する第１クライアントを備えた情報処理端末と、
アプリケーションと該アプリケーションのデバッグを支援するデバッガと該仲介サーバに対しＷｅｂサービスを要求する第２クライアントとを備えた画像形成装置と、
がインターネットを介し結合されたリモートデバッグシステムであって、
該第１クライアントは、入力手段からの入力に応答して該仲介サーバにデバッグコマンドとユニークＩＤと該画像形成装置のアドレスに関する情報とを含むデバッグコマンド情報を送信し、
該第２クライアントは、該仲介サーバに対し定期的にデバッグコマンド情報を要求し、該仲介サーバから該デバッグコマンド情報を受信し、そのデバッグコマンドで、該アプリケーションを動作させて得られる動作ログを該デバッガから取得し、該動作ログと該デバッグコマンド情報に含まれるユニークＩＤと該情報処理端末のアドレスに関する情報とを含む動作ログ情報を該仲介サーバに送信し、
該第１クライアントはさらに、該仲介サーバに対し定期的に動作ログ情報を要求し、該仲介サーバから該動作ログ情報を受信し、該動作ログ情報に含まれるユニークＩＤと該デバッグコマンド情報に含まれるユニークＩＤとが一致するものについて、デバッグコマンドと動作ログとを対応させて該情報処理端末の記憶部に格納させる、
ことにより、該仲介サーバを介し該アプリケーションをリモートデバッグすることを特徴とするリモートデバッグシステム。
【請求項２】
該画像形成装置のアドレスに関する情報は、該画像形成装置のＩＰアドレスを含み、
該情報処理端末のアドレスに関する情報は、該情報処理端末のＩＰアドレスを含む、
ことを特徴とする請求項１に記載のリモートデバッグシステム。
【請求項３】
該画像形成装置のアドレスに関する情報は、該画像形成装置又はそのユーザのユニークＩＤを含み、
該情報処理端末のアドレスに関する情報は、該情報処理端末又はそのユーザのユニークＩＤを含み、
該仲介サーバは、該画像形成装置又はそのユーザのユニークＩＤと該画像形成装置のＩＰアドレスとを対応付け、該情報処理端末又はそのユーザのユニークＩＤと該情報処理端末のＩＰアドレスとを対応付けるテーブルを備え、該テーブルを参照して送信先ＩＰアドレスを取得することを特徴とする請求項１に記載のリモートデバッグシステム。
【請求項４】
該仲介サーバは、該第１及び第２のクライアントとの間で暗号化通信を行って該Ｗｅｂサービスを提供するクラウドであることを特徴とする請求項１乃至３のいずれか１つに記載のリモートデバッグシステム。
【請求項５】
該画像形成装置は、該画像形成装置の販社又はユーザ側に設置されたものであり、
該情報処理端末は、該画像形成装置のメーカに設置されたものである、
ことを特徴とする請求項１乃至４のいずれか１つに記載のリモートデバッグシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットを介し画像形成装置のアプリケーションをリモートデバッグするリモートデバッグシステムに関する。
【背景技術】
【０００２】
画像形成装置は、その出荷前にアプリケーションのテストが行われているものの、多機能化でアプリケーションの構成が複雑化しているので、出荷後に特殊条件の下で、バグによりエラーが発生する場合がある。この特殊条件をメーカ側で再現しようとすると、長時間、再現できないことがある。
【０００３】
この問題は、エラーが発生したユーザの画像形成装置でエラー発生条件を再現し、又は、販社のサービスマンがユーザの画像形成装置でエラー発生を確認し、その条件を販社の画像形成装置で再現し、メーカの担当者が、インターネットを介し、この画像形成装置のアプリケーションをリモートデバッグすることにより、解決することが可能となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２０８３３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、ファイアウォールにより、例えＨＴＴＰプロトコルの８０番ポートであっても、一般に、外からのアクセスを拒否する設定になっているので、画像形成装置のアプリケーションをリモートデバッグすることができない。
【０００６】
本発明の目的は、このような問題点に鑑み、比較的簡単な構成で、ファイアウォールが有効にされていても、インターネットを介し画像形成装置のアプリケーションを容易にリモートデバッグすることが可能なリモートデバッグシステムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の一態様では、
Ｗｅｂサービスを提供する仲介サーバと、
該仲介サーバに対しＷｅｂサービスを要求する第１クライアントを備えた情報処理端末と、
アプリケーションと該アプリケーションのデバッグを支援するデバッガと該仲介サーバに対しＷｅｂサービスを要求する第２クライアントとを備えた画像形成装置と、
がインターネットを介し結合されたリモートデバッグシステムであって、
該第１クライアントは、入力手段からの入力に応答して該仲介サーバにデバッグコマンドとユニークＩＤと該画像形成装置のアドレスに関する情報とを含むデバッグコマンド情報を送信し、
該第２クライアントは、該仲介サーバに対し定期的にデバッグコマンド情報を要求し、該仲介サーバから該デバッグコマンド情報を受信し、そのデバッグコマンドで、該アプリケーションを動作させて得られる動作ログを該デバッガから取得し、該動作ログと該デバッグコマンド情報に含まれるユニークＩＤと該情報処理端末のアドレスに関する情報とを含む動作ログ情報を該仲介サーバに送信し、
該第１クライアントはさらに、該仲介サーバに対し定期的に動作ログ情報を要求し、該仲介サーバから該動作ログ情報を受信し、該動作ログ情報に含まれるユニークＩＤと該デバッグコマンド情報に含まれるユニークＩＤとが一致するものについて、デバッグコマンドと動作ログとを対応させて該情報処理端末の記憶部に格納させることにより、該仲介サーバを介し該アプリケーションをリモートデバッグする。
【発明の効果】
【０００８】
上記態様の構成によれば、デバッグコマンドとその動作ログとがそれぞれデバッグコマンド情報及び動作ログ情報に含まれるユニークＩＤで対応付けられ、また、これら情報に先方（送り先）のアドレスに関する情報が含まれているので、情報処理端末から仲介サーバに対しデバッグコマンド情報を送信し、画像形成装置から仲介サーバに対し動作ログ情報を送信することにより、すなわち、情報処理端末及び画像形成装置からそれぞれ外向きの要求を送信することにより、結果として、情報処理端末から仲介サーバを介し画像形成装置のアプリケーションをリモートデバッグすることが可能となる。
【０００９】
これにより、情報処理端末、仲介サーバ及び画像形成装置のそれぞれに通常のファイアウォールが有効に設定されていても、リモートデバッグが可能となり、早期にエラー発生原因を究明してアプリケーションを修正することが可能となるという効果を奏する。
【００１０】
本発明の他の目的、特徴的な構成及び効果は、以下の説明を特許請求の範囲及び図面の記載と関係づけて読むことにより明らかになる。 
【図面の簡単な説明】
【００１１】
【図１】本発明のリモートデバッグシステムに係る実施例１の、実機デバッグ時における概略機能ブロック図である。
【図２】実機デバッガとアプリケーションとの関係を示す概略説明図である。
【図３】情報処理端末側の担当者と情報処理端末とクラウドと画像形成装置との間の関係を示すシーケンス図である。
【実施例１】
【００１２】
図１は、本発明のリモートデバッグシステムに係る実施例１の、実機デバッグ時における概略機能ブロック図である。
【００１３】
情報処理端末１０は、インターネット上の仲介サーバとしてのクラウド２０を介して、遠隔の画像形成装置３０に結合されている。
【００１４】
情報処理端末１０は、例えばメーカに設置されたパーソナルコンピュータであり、会話型入出力装置としての入力部１１及び表示部１２と、制御部としてのユーザインタフェース１３、デバッガインタフェース１４及びＷＳ（Ｗｅｂサービス）クライアント１５と、インターネットに結合された通信部１６とを備えている。
【００１５】
クラウド２０は、インターネットに結合された通信部２１と、制御部としてのＷＳサーバ２２と、バックエンドとしてのデータベース２３とを備えている。
【００１６】
画像形成装置３０は、その販社又はユーザ側に設置されたものであり、インターネットに結合された通信部３１と、制御部としてのＷＳクライアント３２、実機のデバッガ３３及びアプリケーション３４とを備えている。上記デバッガインタフェース１４は、このデバッガ３３に対するインターフェイスである。
【００１７】
これら情報処理端末１０、クラウド２０及び画像形成装置３０の上記制御部は何れも、プログラム及びデータを記憶する記憶部と、プログラムを実行するプロセッサとを備えて構成されている。記憶部は、ブートストラップが格納されたＲＯＭと、オペレーティングシステム（ＯＳ）、各種ドライバ、アプリケーション及びデータが格納された大容量の補助記憶装置と、主記憶装置としてのＲＡＭとを備えており、仮想記憶方式によりプログラム及びデータが適時ＲＡＭ上にロードされて、ＲＡＭ上のプログラムが実行される。
【００１８】
また、これら情報処理端末１０、クラウド２０及び画像形成装置３０の通信部は何れも、通信インターフェイスと、ソフトウェアドライバと、ＯＳのプロトコルスタック部とを備えている。プロトコルスタック部は、例えばＳＯＡＰプロトコルによるＷｅｂサービスの通信を可能にするものであり、ＳＯＡＰ／ＨＴＴＰ／ＴＣＰ／ＩＰの階層化プロトコル部で構成されている。
【００１９】
情報処理端末１０、クラウド２０及び画像形成装置３０はそれぞれ、ファイアウォールが有効に設定されており、それぞれ必要なポート番号のみ開けられ、また、情報処理端末１０及び画像形成装置３０のファイアウォールは、外向きのアクセスのみ「許可」に設定され、内向きのアクセスは「拒否」に設定されている。クラウド２０のファイアウォールは、これらとは逆に、内向きのアクセスのみ「許可」に設定され、外向きのアクセスは「拒否」に設定されている。
【００２０】
また、情報処理端末１０とクラウド２０との間及びクラウド２０と画像形成装置３０との間は、ＳＳＬによる暗号化通信が行われる。
【００２１】
図２は、実機デバッガ３３とアプリケーション３４との関係を示す概略説明図である。
【００２２】
この例では、アプリケーション３４において、通常はステップＲ１及びＲ３がこの順に連続的に実行される。アプリケーション３４の処理によるデータの変化の前後を、デバッガ３３により取得可能にするため、アプリケーション３４には、ステップＲ１とステップＲ３との間に、ブレーク判定ステップＲ２が介在され、ステップＲ３の次にブレーク判定ステップＲ４が介在されている。
【００２３】
記憶部には、データＤ０、Ｄ１及びフラグ群Ｄ２が格納される。フラグ群Ｄ２は、（ｎ＋１）個のフラグＦ０〜Ｆｎからなり、通常はそれぞれゼロクリア（リセット）されていて、ステップＲ２及びＲ４でそれぞれ肯定判定されて処理が連続的に流れていく。
【００２４】
アプリケーション３４を実行中に原因不明のエラーが発生した場合、販社のサービスマンは、ユーザの画像形成装置３０でエラー発生条件を確認し、その場で、又は、販社のユーザの画像形成装置でこの条件下にして再度エラー発生を確認し、エラー発生の前後におけるエラー発生前の状況を再現させ、メーカの担当者に通知する。
【００２５】
メーカの担当者は、アプリケーション３４内のエラーの発生箇所を予測し、情報処理端末１０を起動させ、入力部１１を操作してデバッグコマンドを入力し、後に詳述するように、クラウド２０を介し、この画像形成装置３０のアプリケーション３４をリモートデバッグする。
【００２６】
このデバッグコマンドには、フラグ群Ｄ２を設定するものも含まれ、デバッガ３３により、例えばフラグＦ２及びＦ３が何れも‘１’に設定される。この状態で、デバッガ３３により又はサービスマンによりアプリケーション３４の動作がオンにされて、ステップＲ１によりデータＤ０が記憶部から読み込まれて処理され、その結果がデータＤ１として記憶部に書き込まれた後、ステップＲ２で停止し、ブレークイベントがデバッガ３３に通知される。
【００２７】
デバッガ３３はこれに応答して、上記デバッグコマンドに基づき、データＤ０及びＤ１を読取り、これらと、ステップＲ２で動作が停止していることを示す情報とを含む情報を、動作ログ情報２５として、クラウド２０を介し情報処理端末１０に送信する。
【００２８】
情報処理端末１０は、実機のデバッガ３３とは異なる、アプリケーション３４のソースコードに対する統合開発環境のデバッガ（不図示）で、データＤ０を設定し、ソースコード上でブレークポイントを設定し、ステップＲ１を実行させた後、データＤ１が得られることを確認する。次に、ソースコード上でブレークポイントをより細かく設定し、同一条件下で動作を再開させ、ブレークポイントで停止した後、変数やデータの変化を確認し、ステップ動作等を行いながら変数やデータの変化を確認し、原因を究明する。そして、ソースコード上のエラーを修正し、アプリケーション３４に対するパッチプログラムを作成し、サービスマン又はクラウド２０を介して、画像形成装置３０にインストールする（この部分は不図示）。
【００２９】
図３は、情報処理端末１０側の担当者４０と、情報処理端末１０と、クラウド２０と、画像形成装置３０との間の関係を示すシーケンス図である。図３は、情報処理端末１０及び画像形成装置３０が起動され、情報処理端末１０及び画像形成装置３０並びにそれぞれの担当者がクラウド２０に対し認証された後の動作を示す。
【００３０】
デバッガインタフェース１４は、ユーザインタフェース１３を介して表示部１２にデバッグコマンド入力画面を表示させる。以下、括弧内は図３中のステップ識別符号である。
【００３１】
（Ｓ４０）担当者４０は、表示部１２で確認しながら入力部１１を操作して、デバッグコマンド（ＤＧＣ）を入力する。
【００３２】
（Ｓ１０）ユーザインタフェース１３は、これを受け付けて、デバッガインタフェース１４にデバッグコマンドを供給する。デバッガインタフェース１４はこれに応答して、ＵＵＩＤ（Universally Unique Identifier）を生成させ、これと、前記デバッグコマンドと、画像形成装置３０のＩＰアドレス（先方ＩＰＡ）とをデバッグコマンド情報２４として、ＷＳクライアント１５に供給する。ＷＳクライアント１５はこれに応答して、デバッグコマンド情報２４を、ＸＭＬシリアライズされたＳＯＡＰメッセージの形にし、通信部１６を介し、ＳＯＡＰメッセージ転送プロトコルとしてのＨＴＴＰプロトコルにより、クラウド２０の通信部２１に送信する。
【００３３】
（Ｓ２０）通信部２１はこれを受け付けてＷＳサーバ２２に渡し、ＷＳサーバ２２はこれをＸＭＬデシリアライズして元のデバッグコマンド情報２４を再生し、データベース２３に格納させる。
【００３４】
（Ｓ３０、Ｓ３３、Ｓ３４）一方、画像形成装置３０は定期的に、クラウド２０に対しデバッグコマンド情報２４を要求する。この要求は、画像形成装置３０のＩＰアドレスを含んでいる。
【００３５】
（Ｓ２１）ＷＳサーバ２２は、データベース２３からこのＩＰアドレスを持つデバッグコマンド情報２４を読み出し、これを、ＸＭＬシリアライズされたＳＯＡＰメッセージの形にし、通信部２１に供給するとともに、データベース２３から当該デバッグコマンド情報２４を削除する。通信部２１はデバッグコマンド情報２４をＨＴＴＰプロトコルで画像形成装置３０の通信部３１に送信する。
【００３６】
（Ｓ３１）通信部３１はこれをＷＳクライアント３２に渡し、ＷＳクライアント３２はこれをＸＭＬデシリアライズしてデバッガ３３に渡す。デバッガ３３は、デバッグコマンド情報２４に基づき、上記のような動作を行い、その結果を、上記デバッグコマンド情報２４に含まれるＵＵＩＤと、１０のＩＰアドレス（先方ＩＰＡ）とともに、動作ログ情報２５（ＬＯＧ）として、ＷＳクライアント３２に渡す。ＷＳクライアント３２は、ＷＳクライアント１５の場合と同様に動作ログ情報２５をＳＯＡＰメッセージにし、通信部３１及びクラウド２０の通信部２１を介しＷＳサーバ２２に送信する。
【００３７】
（Ｓ２４）ＷＳサーバ２２はこれをＸＭＬデシリアライズしてデータベース２３に保存する。
【００３８】
（Ｓ１２、Ｓ１５、Ｓ１６）他方、情報処理端末１０は定期的に、クラウド２０に対し動作ログ情報２５を要求する。この要求は、情報処理端末１０のＩＰアドレスを含んでいる。
【００３９】
（Ｓ２５）ＷＳサーバ２２は、データベース２３からこのＩＰアドレスを持つ動作ログ情報２５を読み出し、これを、ＸＭＬシリアライズされたＳＯＡＰメッセージの形にし、通信部２１に供給するとともに、データベース２３から当該動作ログ情報２５を削除する。通信部２１は動作ログ情報２５をＨＴＴＰプロトコルで情報処理端末１０の通信部１６に送信する。
【００４０】
（Ｓ１３）通信部１６はこれをＷＳクライアント１５に渡し、ＷＳクライアント１５はこれをＸＭＬデシリアライズしてデバッガインタフェース１４に渡す。デバッガインタフェース１４は、動作ログ情報２５に基づき、その内容を、そのＵＵＩＤと同一のデバッグコマンド情報２４と対応させて、ユーザインタフェース１３を介し表示部１２に表示させるとともに、上記ソースコードを用いたデバッグで使用するため、情報処理端末１０の記憶部に格納させる。
【００４１】
（Ｓ４１〜Ｓ１７）その後、上記同様の処理が必要に応じ繰り返される。
【００４２】
本実施例１によれば、デバッグコマンドとその動作ログとがそれぞれデバッグコマンド情報２４及び動作ログ情報２５に含まれるユニークＩＤとしてのＵＵＩＤで対応付けられ、また、これら情報に先方（送り先）のＩＰアドレスが含まれているので、情報処理端末１０から仲介サーバとしてのクラウド２０に対しデバッグコマンド情報２４を送信し、画像形成装置３０からクラウド２０に対し動作ログ情報２５を送信することにより、すなわち、情報処理端末１０及び画像形成装置３０からそれぞれ外向きの要求を送信することにより、結果として、情報処理端末１０からクラウド２０を介し画像形成装置３０のアプリケーション３４をリモートデバッグすることが可能となる。
【００４３】
これにより、情報処理端末１０、クラウド２０及び画像形成装置３０のそれぞれに通常のファイアウォールが有効に設定されていても、リモートデバッグが可能となり、早期にエラー発生原因を究明してアプリケーション３４を修正することが可能となるという効果を奏する。
【００４４】
以上において、本発明の好適な実施例を説明したが、本発明には他にも種々の変形例が含まれ、上記実施例で述べた各構成要素の機能を実現する他の構成を用いたもの、当業者であればこれらの構成又は機能から想到するであろう他の構成も、本発明に含まれる。
【００４５】
例えば、デバッグコマンド情報２４及び動作ログ情報２５に含まれる、先方アドレスに関する情報として、先方ＩＰアドレスの替わりに先方の装置又はユーザのユニークＩＤを用い、データベース２３内に、該先方の装置又はユーザのユニークＩＤとＩＰアドレスとを対応付けたテーブルを保持しておき、これを参照して該ユニークＩＤからＩＰアドレスを取得する構成であってもよい。
【００４６】
また、仲介サーバはクラウド２０に限定されず、上記クラウド２０と同様の機能を備えたサーバであればよい。
【符号の説明】
【００４７】
１０  情報処理端末
１１  入力部
１２  表示部
１３  ユーザインタフェース
１４  デバッガインタフェース
１５、３２  ＷＳクライアント
１６、２１、３１  通信部
２０  クラウド
２２  ＷＳサーバ
２３  データベース
２４  デバッグコマンド情報
２５  動作ログ情報
３０  画像形成装置
３３  デバッガ
３４  アプリケーション
Ｒ１〜Ｒ４  ステップ
Ｄ０、Ｄ１  データ
Ｄ２  フラグ群
【図１】
2014167720.tif 000003
【図２】
2014167720.tif 000004
【図３】
2014167720.tif 000005