JP2015041260A - プログラム開発支援装置及びプログラム開発支援方法 - Google Patents

プログラム開発支援装置及びプログラム開発支援方法 Download PDF

Info

Publication number
JP2015041260A
JP2015041260A JP2013172184A JP2013172184A JP2015041260A JP 2015041260 A JP2015041260 A JP 2015041260A JP 2013172184 A JP2013172184 A JP 2013172184A JP 2013172184 A JP2013172184 A JP 2013172184A JP 2015041260 A JP2015041260 A JP 2015041260A
Authority
JP
Japan
Prior art keywords
browser
program
unit
control
development support
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013172184A
Other languages
English (en)
Other versions
JP6119507B2 (ja
Inventor
前田 敏博
Toshihiro Maeda
敏博 前田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2013172184A priority Critical patent/JP6119507B2/ja
Publication of JP2015041260A publication Critical patent/JP2015041260A/ja
Application granted granted Critical
Publication of JP6119507B2 publication Critical patent/JP6119507B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】PCをMFPにおける操作画面の確認のために用いることができるようにするプログラム開発支援装置を提供する。
【解決手段】プログラム開発支援装置は、複数のブラウザーの中から、特定のMFPが有するブラウザー機能を含むブラウザーが存在するか否かを判定し、当該MFPが有するブラウザー機能を含むブラウザーを選択するブラウザー判定部と、選択されたブラウザーにより、制御プログラムに従って描画させることにより、画像データを生成させるブラウザー制御部608と、生成した前記画像データを送信する通信部605とを備える。
【選択図】図10

Description

本発明は、画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援する技術に関し、特に、操作パネルにおいて表示されるべき操作画面の確認を支援する技術に関する。
特許文献1によると、画像形成装置は、ブラウザー機能を有し、ブラウザー機能により、画面データを画像形成装置の操作パネルに表示する。
また、特許文献2によると、画像形成装置において、様々なアプリケーションプログラムが用いられる。このようなアプリケーションプログラムの開発においては、実際の画像形成装置ではなく、画像形成装置の動作をソフトウェアを用いて模擬的に実行するシミュレーターにより、アプリケーションプログラムに関する各種の動作確認テストが行われる。
このような先行技術を用いて、画像形成装置のブラウザー機能により操作パネルに表示される画像の確認テストを行う際に、実際の画像形成装置に代えて、パーソナルコンピューター(以下、PC)等の情報処理装置により、操作パネルに表示されるべき画像の確認が行われる。
特開2008−37105号公報 特開2013−4007号公報 特開2010−39815号公報
しかし、情報処理装置が有するブラウザー機能と画像形成装置が有するブラウザー機能とが異なる種類や異なる版数のものである場合には、それぞれのブラウザー機能により表示される画面のレイアウトが異なることがある。例えば、情報処理装置が有するブラウザー機能を用いて画像が設計通り表示されることが確認された場合であっても、実際に画像形成装置のブラウザー機能を用いて操作パネルに表示すると、画像が操作パネルからはみ出したり、文字を囲むべき枠が文字に重なったりすることがある。このため、情報処理装置を画像形成装置における操作画面の確認のために用いることができないという問題がある。
上記の問題を解決するため、本発明は、情報処理装置を画像形成装置における操作画面の確認のために用いることができるようにするプログラム開発支援装置、プログラム開発支援方法及びコンピュータープログラムを記録している記録媒体を提供することを目的とする。
上記目的を達成するため、本発明の一態様は、画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置であって、前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得手段と、前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザー手段と、複数の前記ブラウザー手段の中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザー手段が存在するか否かを判定するブラウザー判定手段と、前記ブラウザー判定手段により存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザー手段により、前記制御プログラムに従って描画させることにより、画像データを生成させる制御手段と、生成した前記画像データを、表示させるため前記情報処理装置に送信する送信手段とを備えることを特徴とする。
この態様によると、制御プログラムに従って描画され生成された画像データが情報処理装置に送信されるので、情報処理装置において、画像形成装置の操作パネルにおいて表示されるべき画像と同一の画像を表示できる。このため、情報処理装置を画像形成装置の操作パネルにおける操作画面の確認のために用いることができるという優れた効果を奏する。
ここで、前記プログラム開発支援装置は、さらに、前記制御プログラム中に、前記画像形成装置に固有の動作を要求する内部コマンドが含まれるか否かを判定する内部コマンド判定手段と、前記内部コマンドが含まれると判定される場合に、当該内部コマンドに従って、前記画像形成装置の動作をシミュレートし、当該動作直後の前記操作パネルにおける表示動作を規定する第2制御プログラムを生成するシミュレート手段を含み、前記制御手段は、さらに、前記ブラウザー手段により、前記第2制御プログラムに従って描画させることにより、第2画像データを生成させ、前記送信手段は、さらに、生成した前記第2画像データを、表示させるために前記情報処理装置に送信してもよい。
この態様によると、制御プログラムに含まれる内部コマンドに従って、前記画像形成装置の動作をシミュレートして得られた第2画像データが前記情報処理装置に送信される。この結果、情報処理装置において、画像形成装置の操作パネルにおいて表示されるべき画像と同一の画像を表示できる。このため、制御プログラムに内部コマンドが含まれる場合においても、情報処理装置を画像形成装置の操作パネルにおける操作画面の確認のために用いることができるという優れた効果を奏する。
ここで、前記取得手段は、さらに、前記情報処理装置から、前記制御プログラムに含まれる表示項目の使用許否を示すライセンス情報を取得し、前記プログラム開発支援装置は、さらに、取得した前記ライセンス情報により、前記制御プログラムに含まれる表示項目について、使用許可がされているか否かを判定する許可判定手段と、使用許可がされていないと判定される場合、代替表示項目を取得する代替表示項目取得手段と、前記表示項目を取得した前記代替表示項目に差し替える差替手段とを含み、前記制御手段は、前記差替手段により、前記表示項目を取得した前記代替表示項目に差し替えさせ、前記ブラウザー手段により、前記代替表示項目を含む前記画像データを生成させるとしてもよい。
この態様によると、制御プログラムに含まれる表示項目について、使用許可がされていない場合、表示項目を代替表示項目に差し替える。この結果、表示項目のライセンスに違反することがない。
ここで、当該プログラム開発支援装置又は外部のサーバー装置は、前記代替表示項目を保持し、前記代替表示項目取得手段は、当該プログラム開発支援装置又は外部のサーバー装置から、前記代替表示項目を取得してもよい。
ここで、前記ブラウザー判定手段は、複数の前記ブラウザー手段に対応付けて、それぞれ、複数の画像形成装置の機種を示す機種識別子を記憶しており、取得した前記機種識別子が記憶している前記機種識別子のいずれかと一致するか否かを判定することにより、前記ブラウザー手段が存在するか否かを判定してもよい。また、前記取得手段は、前記機種識別子として、前記画像形成装置が有するブラウザーの種類及び版数を示すブラウザー識別子を取得し、前記ブラウザー判定手段は、複数の前記ブラウザー手段に対応付けて、それぞれ、複数の機種の画像形成装置が有するブラウザーの種類及び版数を示すブラウザー識別子を記憶しており、取得した前記ブラウザー識別子が記憶している前記ブラウザー識別子のいずれかと一致するか否かを判定することにより、前記ブラウザー手段が存在するか否かを判定してもよい。
これらの態様によると、画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザー手段が存在するか否かを判定することができる。
ここで、前記プログラム開発支援装置は、コンピュータープログラムを記憶している記憶手段と、前記コンピュータープログラムを実行するプロセッサーとを含むコンピューターシステムであり、前記プログラム開発支援装置は、前記プロセッサーが前記コンピュータープログラムを実行することにより、前記取得手段、複数の前記ブラウザー手段、前記ブラウザー判定手段、前記制御手段及び前記送信手段を動作させ、前記記憶手段は、複数の前記ブラウザー手段に対応して、複数の異なる仕様のブラウザープログラムをそれぞれ含む複数の仮想クライアントプログラムを記憶しており、前記ブラウザー判定手段は、複数の仮想クライアントプログラムの中から、前記機種識別子により示される画像形成装置が有するブラウザープログラムを含む仮想クライアントプログラムが存在するか判定し、前記制御手段は、前記画像形成装置が有するブラウザープログラムを含む前記仮想クライアントプログラムを実行状態にし、実行状態の前記仮想クライアントプログラムに含まれるブラウザープログラムを用いて、前記制御プログラムに従って描画させるとしてもよい。
この態様によると、前記ブラウザー手段を、実行状態のブラウザープログラムにより実現できる。
ここで、前記プログラム開発支援装置は、前記プロセッサーが前記コンピュータープログラムを実行することにより、さらに、前記内部コマンド判定手段及び前記シミュレート手段を動作させ、前記記憶手段は、仮想シミュレートプログラムを、前記シミュレート手段に対応して、記憶しており、前記仮想シミュレートプログラムは、前記内部コマンドが含まれると判定される場合に、当該内部コマンドに従って、前記画像形成装置の動作をシミュレートし、当該動作直後の前記操作パネルにおける表示動作を規定する第2制御プログラムを生成するプログラムであり、前記制御手段は、前記シミュレート手段として、仮想シミュレートプログラムを実行状態にしてもよい。
この態様によると、前記シミュレート手段を、実行状態の仮想シミュレートプログラムにより実現できる。
また、本発明の一態様は、画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置において用いられるプログラム開発支援方法であって、前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得ステップと、前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザーステップと、複数の前記ブラウザーステップの中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザーステップが存在するか否かを判定するブラウザー判定ステップと、前記ブラウザー判定ステップにより存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザーステップにより、前記制御プログラムに従って描画させることにより、画像データを生成させる制御ステップと、生成した前記画像データを、表示させるため前記情報処理装置に送信する送信ステップとを含むことを特徴とする。
この方法をプログラム開発支援装置において用いることにより、制御プログラムに従って描画され生成された画像データが情報処理装置に送信される。この結果、情報処理装置において、画像形成装置の操作パネルにおいて表示されるべき画像と同一の画像を表示できる。このため、情報処理装置を画像形成装置の操作パネルにおける操作画面の確認のために用いることができるという優れた効果を奏する。
また、本発明の一態様は、画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置において用いられるコンピュータープログラムを記録しているコンピューター読み取り可能な記録媒体であって、コンピューターである前記プログラム開発支援装置に、前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得ステップと、前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザーステップと、複数の前記ブラウザーステップの中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザーステップが存在するか否かを判定するブラウザー判定ステップと、前記ブラウザー判定ステップにより存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザーステップにより、前記制御プログラムに従って描画させることにより、画像データを生成させる制御ステップと、生成した前記画像データを、表示させるため前記情報処理装置に送信する送信ステップとを実行させるためのコンピュータープログラムを記録していることを特徴とする。
このプログラムを、コンピューターであるプログラム開発支援装置において用いることにより、制御プログラムに従って描画され生成された画像データが情報処理装置に送信される。この結果、情報処理装置において、画像形成装置の操作パネルにおいて表示されるべき画像と同一の画像を表示できる。このため、情報処理装置を画像形成装置の操作パネルにおける操作画面の確認のために用いることができるという優れた効果を奏する。
プログラム開発支援システム10の全体構成を示す。 クライアントPC(100)の構成を示すブロック図である。 プログラム作成サーバー装置200の構成を示すブロック図である。 プログラム作成サーバー装置200により生成される制御プログラム221を示す。 制御プログラム221に基づいて表示される画面イメージを示す。 プログラム開発支援装置300の構成を示すブロック図である。 仮想制御装置400の構成を示すブロック図である。 対応表421のデータ構造の一例を示す。 仮想サーバー装置500の構成を示すブロック図である。 仮想クライアント装置600の構成を示すブロック図である。 仮想シミュレーター700の構成を示すブロック図である。 仮想シミュレーター700により生成されるメッセージを表示する画面741を示す。 外部サーバー装置800の構成を示すブロック図である。 プログラム開発支援システム10の動作を示すシーケンス図(その1)である。図15へ続く。 プログラム開発支援システム10の動作を示すシーケンス図(その2)である。図16へ続く。 プログラム開発支援システム10の動作を示すシーケンス図(その3)である。
1.実施の形態
本発明に係る一の実施の形態としてのプログラム開発支援システム10について、説明する。
1.1 プログラム開発支援システム10
プログラム開発支援システム10は、図1に示すように、クライアントPC(100)、クラウドシステム30及び外部サーバー装置800から構成されている。また、クラウドシステム30は、プログラム作成サーバー装置200及びプログラム開発支援装置300から構成されている。クライアントPC(100)、外部サーバー装置800、プログラム作成サーバー装置200及びプログラム開発支援装置300は、インターネットを代表とするネットワーク20を介して、接続されている。
ユーザーは、クライアントPC(100)を用いて、ネットワーク20を介して、プログラム作成サーバー装置200に接続して、制御プログラムを作成する。ここで、制御プログラムは、複合機(MFP:Multi-Functional Peripheral、以下、MFPと呼ぶ。)が有する操作パネルにおける表示動作及びMFPの内部処理を規定し、マークアップ言語であるHTML(HyperText Markup Language )により記述されたプログラムである。また、MFPは、プリンター、コピー機、ファクシミリ及びスキャナー等の各装置の機能を一体化した装置である。
制御プログラムの作成が終了すると、ユーザーは、クライアントPC(100)を用いて、プログラム作成サーバー装置200からプログラム開発支援装置300に対して、制御プログラムのプレビュー画像の生成を依頼する。
プログラム開発支援装置300は、図1に示すように、仮想的に、仮想制御装置400、仮想サーバー装置500、仮想クライアント装置600及び仮想シミュレーター700から構成される。仮想制御装置400、仮想サーバー装置500、仮想クライアント装置600及び仮想シミュレーター700は、プログラム開発支援サービス40を提供する。
仮想制御装置400は、仮想サーバー装置500、仮想クライアント装置600及び仮想シミュレーター700を制御する。仮想クライアント装置600は、制御プログラムに従って、MFPに表示されるべき画像を描画し、描画された画像から、画像データを生成する。また、仮想シミュレーター700により、実際のMFPの動作をシミュレートして、MFPの操作パネルにおける表示動作を規定する制御プログラムを生成する。プログラム開発支援装置300は、画像データをクライアントPC(100)に送信する。クライアントPC(100)は、画像データを受信し、受信した画像データを表示する。
1.2 クライアントPC(100)
クライアントPC(100)は、図2に示すように、マイクロプロセッサー101、ROM(102)、RAM(103)、ハードディスクデバイス104、通信部105及び入出力制御部106から構成されている。入出力制御部106には、モニター107及びキーボード108が接続されている。マイクロプロセッサー101、ROM(102)、RAM(103)、ハードディスクデバイス104、通信部105及び入出力制御部106は、バス109を介して、接続されている。
(1)ハードディスクデバイス104、ROM(102)及びRAM(103)
ハードディスクデバイス104は、ブラウザーアプリケーションプログラム(以下、ブラウザーアプリと称する。)121及びその他のコンピュータープログラムを記憶している。ブラウザーアプリ121は、HTMLにより記述された制御プログラムに従って表示動作をするためのコンピュータープログラムである。その他のコンピュータープログラムは、オペレーティングシステム、ネットワークへ接続し他の端末装置と通信を行うためのコンピュータープログラム等である。
また、ハードディスクデバイス104は、制御プログラムに含まれる表示項目の使用許否を示すライセンス情報122を記憶している。ライセンス情報122が表示項目の使用許可を示す場合、表示項目を使用することができる。一方、ライセンス情報122が表示項目の使用禁止を示す場合、表示項目を使用することができない。
表示項目の一例は、フォントである。一例として、ライセンス情報122は、フォントを識別するフォント識別名称を含む。制御プログラムにより表示を行う際に、ライセンス情報に含まれるフォント識別情報により識別されるフォントの使用が許可される。ライセンス情報に含まれないフォント識別情報により識別されるフォントの使用は、許可されない。
表示項目は、静止画及び動画であるとしてもよい。一例として、ライセンス情報122がこれらの静止画又は動画を識別する識別情報を含むとき、これらの静止画又は動画の使用が許可される。
ライセンス情報は、ライセンス番号、フォント識別情報、ライセンス発行日、有効期限及び署名データを含むとしてもよい。ライセンス番号は、当該ライセンス情報を一意に識別する識別番号である。フォント識別情報については、上述した通りである。有効期限は、当該ライセンス情報を用いることができる期限を示す。例えば、2015年10月31日までなどと指定される。署名データは、当該フォントのライセンスの発行者に割り当てられた私有鍵(秘密鍵)を用いて、ライセンス番号、フォント識別情報、ライセンス発行日及び有効期限の結合体に対して、公開鍵暗号方式によるデジタル署名を施して、生成した署名データである。なお、ライセンスの正当性を確認する装置、例えば、後述する仮想クライアント装置600は、前記私有鍵に対応する公開鍵を用いて、ライセンス情報の正当性を検証する。検証に成功した場合に、ライセンスが正しいと判定する。検証に失敗した場合に、ライセンスは不正と判定する。
ROM(102)及びRAM(103)は、データやプログラムを記憶するための、半導体メモリである。
(2)マイクロプロセッサー101
マイクロプロセッサー101は、コンピュータープログラムに従って、動作する。特に、マイクロプロセッサー101は、ユーザーによるブラウザーアプリ121の起動の指示により、ブラウザーアプリ121を実行させる。これにより、マイクロプロセッサー101は、ブラウザーを実行状態にする。
(3)通信部105
通信部105は、ネットワーク20を介して、他の装置との間で情報の送受信を行う。
具体的には、通信部105は、ユーザーから受け付けたプログラム作成のリクエスト及びプログラム作成のための情報を、ネットワーク20を介して、プログラム作成サーバー装置200に対して、送信する。また、通信部105は、ユーザーの指示により、制御プログラムのプレビュー要求を、ネットワーク20を介して、プログラム作成サーバー装置200に対して送信する。また、通信部105は、URLを指定して、MPF機種ID及びライセンス情報を、プログラム開発支援装置300に対して、送信する。
また、通信部105は、プログラム作成サーバー装置200から、プログラム作成のための情報及び制御プログラムの作成が完了したことを示す完了通知を受け取る。また、通信部105は、プログラム作成サーバー装置200から、ネットワーク20を介して、プログラム開発支援装置300のネットワーク20上における存在位置を示すURLを受け取る。また、通信部105は、プログラム開発支援装置300から、メッセージ、フレーム及び画像データを受け取る。
(4)入出力制御部106、モニター107及びキーボード108
入出力制御部106は、モニター107及びキーボード108に接続されている。
モニター107は、様々な情報を表示する。
キーボード108は、操作者による入力を受け付ける。具体的には、キーボード108は、ユーザーから、ブラウザーアプリ121を起動する指示、プログラム作成のリクエスト、プログラム作成のための情報、制御プログラムのプレビュー要求を受け付ける。また、キーボード108は、ユーザーからURLの指定とともに、MPF機種ID及びライセンス情報の送信の指示を受け付ける。
(5)実行状態にあるブラウザー
キーボード108がユーザーからブラウザーアプリ121を起動する指示を受け付け、次に、マイクロプロセッサー101がハードディスクデバイス104に記憶されているブラウザーアプリ121を実行する。これにより、クライアントPC(100)において、ブラウザーが実行状態となる。
実行状態にあるブラウザー(以下、PCのブラウザーと呼ぶ。)と、プログラム作成サーバー装置200とは、ネットワーク20を介して、情報を送受信する。これにより、プログラム作成サーバー装置200において、制御プログラムが作成される。
また、PCのブラウザーは、通信部105から、ネットワーク20を介して、制御プログラムの作成が完了したことを示す完了通知を受け取る。完了通知を受け取ると、PCのブラウザーは、ユーザーの指示により、制御プログラムのプレビュー要求を、通信部105及びネットワーク20を介して、プログラム作成サーバー装置200に対して送信する。
また、PCのブラウザーは、プログラム作成サーバー装置200から、ネットワーク20及び通信部105を介して、プログラム開発支援装置300のネットワーク20における存在位置を示すURLを受け取る。
また、PCのブラウザーは、ユーザーからMFPの機種を示すMFP機種IDの入力を受け付ける。また、制御プログラムに含まれる表示項目の使用許否を示すライセンス情報122をハードディスクデバイス104から読み出す。また、PCのブラウザーは、受け取ったURLを指定して、入力を受け付けたMFP機種ID及び読み出したライセンス情報を、通信部105及びネットワーク20を介して、プログラム開発支援装置300に対して送信する。
また、PCのブラウザーは、プログラム開発支援装置300から、ネットワーク20及び通信部105を介して、MFP機種が対応表421に含まれていないことを示すメッセージを受信する。次に、PCのブラウザーは、受信したメッセージを表示する。
また、PCのブラウザーは、プログラム開発支援装置300から、通信部105を介して、フレームを受信する。ここで、フレームは、PCのブラウザーにおいて、表示されるべき画像のフレームである。次に、PCのブラウザーは、フレームを、入出力制御部106を介して、モニター107に出力することにより、フレームを表示する。
また、PCのブラウザーは、仮想クライアント装置600から、仮想制御装置400を介して、画像データを受信する。次に、PCのブラウザーは、画像データを、入出力制御部106を介して、モニター107に出力することにより、画像データを表示する。
1.3 プログラム作成サーバー装置200
プログラム作成サーバー装置200は、図3に示すように、ウェブサービスインタフェース部201、サービスユーザーインタフェース部202、プレビュー制御部203、記憶部204、通信部205、HTMLエディタ部206及びIWSコマンド生成部207から構成されている。
プログラム作成サーバー装置200は、具体的には、マイクロプロセッサー、ROM、RAM、ハードディスクデバイスなどから構成されるコンピューターシステムである。前記ハードディスクデバイスには、コンピュータープログラムが記憶されている。前記マイクロプロセッサーが、前記コンピュータープログラムに従って動作することにより、プログラム作成サーバー装置200は、その機能を達成する。
(1)記憶部204
記憶部204は、一例として、ハードディスクデバイスから構成され、制御プログラム221を記憶するための領域を備えている。制御プログラム221は、クライアントPC(100)のユーザーにより、クライアントPC(100)とプログラム作成サーバー装置200とを用いて、作成されたプログラムである。
(2)ウェブサービスインタフェース部201、サービスユーザーインタフェース部202及び通信部205
通信部205は、ネットワーク20を介して、他の装置との間で情報の送受信を行う。
ウェブサービスインタフェース部201は、通信部205及びネットワーク20を介して、他の装置との間で、World Wide Web関連技術を用いて、プログラム作成サーバー装置200が有する機能を利用できるようにする。
サービスユーザーインタフェース部202は、HTMLエディタ部206及びプレビュー制御部203に対して、ユーザーインタフェースを提供する。
(3)HTMLエディタ部206及びIWSコマンド生成部207
HTMLエディタ部206は、サービスユーザーインタフェース部202、ウェブサービスインタフェース部201、通信部205及びネットワーク20を介して、クライアントPC(100)のユーザーに対して、HTMLに基づいて記述される制御プログラムの作成、更新、編集、削除などのエディタ機能を提供する。
HTMLエディタ部206は、通信部205、ウェブサービスインタフェース部201及びサービスユーザーインタフェース部202を介して、プログラム作成のリクエストを受け付ける。リクエストを受け付けると、HTMLエディタ部206は、クライアントPC(100)との間で、情報を送受信して、制御プログラムの作成を開始する。
HTMLエディタ部206は、作成、更新、編集、削除などの操作がされた制御プログラムを、記憶部204に記憶する。
制御プログラムの作成が完了すると、HTMLエディタ部206は、制御プログラムの作成が完了したことを示す完了通知を生成する。次に、HTMLエディタ部206は、制御プログラムの作成が完了したことを示す完了通知を、ネットワーク20を介して、クライアントPC(100)に対して送信する。
IWSコマンド生成部207は、制御プログラムに含まれるIWS(Internal Web Service)コマンドを生成する。
制御プログラムの一例を図4に示す。図4に示す制御プログラム221は、HTMLにより記述されたものである。スキャン条件を設定するための複数の入力フィールドとスキャン操作のための操作ボタンを含む画面の表示動作を規定している。この図に示すように、制御プログラム221は、複数のタグを含んでいる。
これらのタグのうち、タグ222は、後述する内部コマンドとして、「scan.py」を含んでいる。「scan.py」は、MFPに対して、スキャンをするよう要求する命令である。
制御プログラム221は、表示されるべき文字のフォントの種類の指定を含むとしてもよい。フォントには、使用する際に対価を要求される有償フォントと、対価を要求されない無償フォントが存在する。フォントとして、有償フォントが指定されている場合には、当該有償フォントを使用するための許可を必要とする。上述したライセンス情報により、有償フォントの使用が許可される。すなわち、ライセンス情報に、当該有償フォントを識別するフォント識別情報が含まれる場合には、当該有償フォントの使用が許可される。
制御プログラム221は、表示されるべき静止画や動画の指定を含むとしてもよい。静止画や動画にも、フォントと同様に、使用する際に対価を要求されるものと、対価を要求されないものが存在する。対価を要求される静止画や動画を使用する場合には、フォントと同様に、ライセンス情報によりその許可が示される。
また、制御プログラム221に基づいて、MFPの操作パネルに表示される画面のイメージを図5に示す。図5に示す画面261は、スキャンのための条件を設定するための入力フィールド262、263、264、265とスキャン操作のための操作ボタン266を含んでいる。
入力フィールド262は、電子メールアドレスを入力するためのフィールドである。入力フィールド263は、スキャンを行う際の解像度を設定するためのフィールドである。入力フィールド264は、スキャンされた原稿をファイルするときのファイルタイプを設定するためフィールドである。入力フィールド265は、原稿のスキャン面を設定するためのフィールドである。片面又は両面が設定される。
(4)プレビュー制御部203
プレビュー制御部203は、クライアントPC(100)から、ネットワーク20、通信部205、ウェブサービスインタフェース部201及びサービスユーザーインタフェース部202を介して、プレビュー要求を受け取る。
プレビュー要求を受け取ると、プレビュー制御部203は、記憶部204から作成が完了した制御プログラム221を読み出す。次に、プレビュー制御部203は、サービスユーザーインタフェース部202、ウェブサービスインタフェース部201、通信部205及びネットワーク20を介して、読み出した制御プログラムを、制御プログラムのプレビュー画面の生成の指示とともに、プログラム開発支援装置300に対して、送信する。
プレビュー要求を受け取ると、プレビュー制御部203は、プログラム開発支援装置300のネットワーク20における存在位置を示すURLを内部から読み出す。次に、読み出したURLを、サービスユーザーインタフェース部202、ウェブサービスインタフェース部201、通信部205及びネットワーク20を介して、クライアントPC(100)に対して送信する。
1.4 プログラム開発支援装置300
プログラム開発支援装置300は、図6に示すように、マイクロプロセッサー301、ROM(302)、RAM(303)、ハードディスクデバイス304及び通信部305から構成されている。マイクロプロセッサー301、ROM(302)、RAM(303)、ハードディスクデバイス304及び通信部305は、バス309を介して、接続されている。
(1)ハードディスクデバイス304、ROM(302)及びRAM(303)
ハードディスクデバイス304は、仮想サーバーアプリケーションプログラム(以下、仮想サーバーアプリと称する。)331、仮想制御アプリケーションプログラム(以下、仮想制御アプリと称する。)333、仮想シミュレーターアプリケーションプログラム(以下、仮想シミュレーターアプリと称する。)334及びその他のコンピュータープログラムを記憶している。仮想サーバーアプリ331、仮想制御アプリ333及び仮想シミュレーターアプリ334については、後述する。
その他のコンピュータープログラムは、オペレーティングシステム、ネットワークへ接続し他の端末装置と通信を行うためのコンピュータープログラム等である。
ROM(302)及びRAM(303)は、データやプログラムを記憶するための、半導体メモリである。
(2)マイクロプロセッサー301
マイクロプロセッサー301は、それぞれのコンピュータープログラムに従って、動作する。
仮想サーバーアプリ331、仮想制御アプリ333及び仮想シミュレーターアプリ334が、それぞれ、マイクロプロセッサー301により、実行状態になることにより、仮想的に、仮想サーバー装置500、仮想制御装置400及び仮想シミュレーター700を実現する。仮想サーバー装置500、仮想制御装置400及び仮想シミュレーター700については、後述する。
なお、プログラム開発支援装置300に対して、電源の投入がされた直後に、仮想サーバーアプリ331、仮想制御アプリ333及び仮想シミュレーターアプリ334が実行され、仮想サーバー装置500、仮想制御装置400及び仮想シミュレーター700が実行状態となる。
(3)通信部305
通信部305は、ネットワーク20を介して、他の装置との間で情報の送受信を行う。
1.5 仮想制御装置400
仮想制御装置400は、上述したように、プログラム開発支援装置300において、仮想制御アプリ333が実行状態になることにより、仮想的に実現される装置である。
仮想制御装置400は、図7に示すように、制御部401、ブラウザー判定部402、記憶部404、通信部405及び実行部406から構成されている。
制御部401、ブラウザー判定部402、通信部405及び実行部406は、マイクロプロセッサー301が仮想制御アプリ333を実行することにより、仮想的に実現される。
(1)記憶部404
記憶部404は、ハードディスクデバイス304により、実現される。
記憶部404は、図7に示すように、対応表421、仮想クライアントアプリケーションプログラム(以下、仮想クライアントアプリと称する。)431、432、・・・を記憶している。
仮想クライアントアプリ431、432、・・・のいずれか一つが、マイクロプロセッサー301により、実行状態になることにより、仮想的に、仮想クライアント装置600、・・・のいずれか1台を実現する。仮想クライアント装置600、・・・については、後述する。
対応表421は、図8に示すように、複数の対応データを含んでいる。各対応データは、仮想クライアントID及び1個以上のMFP機種IDから構成される。仮想クライアントIDは、仮想クライアントアプリを識別する識別子である。MFP機種IDは、MFPの機種を識別する識別子である。
対応表421は、図7に示すように、対応データ424を含む。対応データ424は、仮想クライアントID(422)「1」及びMFP機種ID(423)「1001」を含む。対応データ424は、仮想クライアント装置に含まれるブラウザープログラムと同一仕様のブラウザープログラムが、MFP機種ID(423)「1001」により識別されるMFPに含まれていることを示している。言い換えると、対応データ424は、仮想クライアント装置に含まれるブラウザー機能と同一仕様のブラウザー機能が、MFP機種ID(423)「1001」により識別されるMFPに含まれていることを示している。当該仮想クライアント装置は、仮想クライアントID(422)「1」により識別される仮想クライアントアプリが実行されることにより仮想的に実現される。
(2)ブラウザー判定部402
ブラウザー判定部402は、以下に示すようにして、複数のブラウザーの中から、MFP機種IDにより示されるMFPが有するブラウザーと同一仕様のブラウザーが存在するか否かを判定する。
ブラウザー判定部402は、制御部401からMFP機種IDを受け取る。
次に、ブラウザー判定部402は、受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれているか否かを判定する。
受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれていないと判定する場合、ブラウザー判定部402は、通信部405及びネットワーク20を介して、MFP機種IDが対応表421に含まれていないことを示すメッセージを、クライアントPC(100)に対して、送信する。
受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれていると判定する場合、ブラウザー判定部402は、対応表421から、受け取ったMFP機種IDと同一のMFP機種IDと対応する仮想クライアントIDを読み出す。これにより、仮想クライアントアプリが選択される。次に、ブラウザー判定部402は、読み出した仮想クライアントIDを実行部406に対して、出力する。
(3)実行部406
実行部406は、ブラウザー判定部402から、仮想クライアントIDを受け取る。次に、実行部406は、記憶部404に記憶されている仮想クライアントアプリ431、432、・・・のうち、受け取った仮想クライアントIDにより識別される前記仮想クライアントアプリを読み出す。次に、読み出した仮想クライアントアプリを起動して実行状態とする。これにより、仮想クライアント装置600が実行状態となる。こうして、仮想クライアント装置600が仮想的に実現される。
(4)通信部405
通信部405は、クライアントPC(100)との間で、情報の送受信を行い、プログラム作成サーバー装置200との間で、情報の送受信を行う。また、通信部405は、仮想サーバー装置500との間で、情報の送受信を行い、また、仮想クライアント装置600との間で、情報の送受信を行う。
(5)制御部401
制御部401は、プログラム作成サーバー装置200から、制御プログラムのプレビュー画面の生成の指示とともに、制御プログラムを受信する。次に、制御部401は、受信した制御プログラムを仮想サーバー装置500に対して送信する。
制御部401は、クライアントPC(100)から、MFP機種ID及びライセンス情報を受信する。次に、制御部401は、MFP機種IDをブラウザー判定部402に対して出力する。
ブラウザー判定部402により、受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれていると判定される場合、制御部401は、通信部405及びネットワーク20を介して、クライアントPC(100)に対して、フレームを送信する。ここで、フレームは、クライアントPC(100)で実行状態のブラウザーにおいて、表示されるべき画像のフレームである。
制御部401は、仮想クライアント装置600に対して、制御プログラムを識別するプログラム識別番号を出力することにより、制御プログラムを指定する。また、制御部401は、仮想クライアント装置600に対して、MFP機種ID及びライセンス情報を出力する。
制御部401は、実行状態の前記仮想クライアントアプリ、つまり、仮想クライアント装置600に対して、仮想クライアント装置600が有するブラウザープログラムを用いて、前記制御プログラムに従って描画させ、画像データを生成させる。
1.6 仮想サーバー装置500
仮想サーバー装置500は、上述したように、プログラム開発支援装置300において、仮想サーバーアプリ331が実行状態になることにより、仮想的に実現される装置である。
仮想サーバー装置500は、図9に示すように、制御部501、記憶部504及び通信部505から構成されている。
制御部501及び通信部505は、マイクロプロセッサー301が仮想サーバーアプリ331を実行することにより、仮想的に実現される。
(1)記憶部504
記憶部504は、ハードディスクデバイス304から構成されている。記憶部504は、制御プログラム521を記憶するための領域を備えている。
(2)制御部501
制御部501は、通信部505を介して、仮想制御装置400から制御プログラムを受け取る。次に、受け取った制御プログラムを、制御プログラム521として、記憶部504に書き込む。
また、制御部501は、仮想クライアント装置600から、通信部505を介して、制御プログラムを識別するプログラム識別番号を受信する。次に、制御部501は、記憶部504から、受信したプログラム識別番号により識別される制御プログラムを読み出す。次に、読み出した制御プログラムを、通信部505を介して、仮想クライアント装置600に対して送信する。
(3)通信部505
通信部505は、仮想制御装置400との間で、また、仮想クライアント装置との間で、情報の送受信を行う。
1.7 仮想クライアント装置600
仮想クライアント装置600は、上述したように、プログラム開発支援装置300において、仮想クライアントアプリ431、432、・・・のいずれか一つが実行状態になることにより、仮想的に実現される装置である。
仮想クライアント装置600は、図10に示すように、制御部601、画像データ生成部602、シミュレーター制御部603、記憶部604、通信部605、差替判定部606、画像差替部607及びブラウザー制御部608から構成されている。シミュレーター制御部603は、内部コマンド判定部611を含む。
制御部601、画像データ生成部602、シミュレーター制御部603、通信部605、差替判定部606、画像差替部607、ブラウザー制御部608及び内部コマンド判定部611は、マイクロプロセッサー301が仮想クライアントアプリ431、432、・・・のいずれか一つを実行することにより、仮想的に実現される。
(1)記憶部604
記憶部604は、ハードディスクデバイス304から構成されている。記憶部604は、制御プログラム631、ブラウザーアプリ632及び画像データ634を記憶するための領域を備えている。
制御プログラム631は、仮想サーバー装置500から受け取った制御プログラムである。
ブラウザーアプリ632は、マークアップ言語により記述された制御プログラムに従って、表示動作をするブラウザーアプリケーションプログラムである。
画像データ634は、ブラウザーアプリ632を実行状態としたブラウザーにより描画された画像を表すデータである。
(2)シミュレーター制御部603
シミュレーター制御部603は、内部コマンド判定部611を含む。
内部コマンド判定部611は、以下に示すようにして、記憶部604に記憶されている制御プログラムの中に、MFPに固有の動作を要求する内部コマンドが含まれるか否かを判定する。
内部コマンドには、例えば、印刷を要求するコマンド、スキャンを要求するコマンド、ファクシミリによる送信を要求するコマンドがある。また、内部コマンドの別の一例は、MFPが保持するトナーの残量を取得するコマンドであり、さらに、別の一例は、MFPにセットされた用紙の残り枚数を取得するコマンドである。
内部コマンド判定部611は、あらかじめ、これらの内部コマンドを記載したコマンドリスト651を保持している。
内部コマンド判定部611は、制御プログラムに含まれるコマンドが、コマンドリスト651に記載されている内部コマンドと一致するか否かを確認する。これにより、制御プログラムの中に内部コマンドが含まれるか否かを判定する。
制御プログラムの中に、MFPに固有の動作を要求する内部コマンドが含まれると判定される場合、シミュレーター制御部603は、シミュレートのリクエストを、通信部605を介して、仮想シミュレーター700に対して送信する。また、シミュレーター制御部603は、制御プログラムのうち、内部コマンドを含むタグを、ブラウザー制御部608が受信したMFP機種IDとともに、通信部605を介して、仮想シミュレーター700に対して送信する。なお、制御プログラムが内部コマンドを含む場合、当該制御プログラムを仮想シミュレーター700に対して送信してもよい。
制御プログラムの中に、MFPの状態に応じた動作をする内部コマンドが含まれないと判定される場合、シミュレーター制御部603は、シミュレートのリクエストを仮想シミュレーター700に対して送信しない。
差替判定部606により、前記制御プログラム内に差替領域が存在すると判定される場合、シミュレーター制御部603は、以下のようにして、仮想シミュレーター700が差替画像を保持しているか否かを判定する。
シミュレーター制御部603は、あらかじめ、表示項目を示す表示項目識別子と、仮想シミュレーター700に保持されている差替画像を示す差替画像識別子とを対応付けて含むリストを保持している。シミュレーター制御部603は、このリストを用いて、前記制御プログラムに含まれる表示項目を示す表示項目識別子が、このリストに含まれるか否かを判定する。前記制御プログラムに含まれる表示項目を示す表示項目識別子が、このリストに含まれる場合、シミュレーター制御部603は、仮想シミュレーター700が差替画像を保持していると判定する。
シミュレーター制御部603は、仮想シミュレーター700が差替画像を保持していると判定する場合、差替画像のリクエストを、通信部605を介して、仮想シミュレーター700に対して送信する。
シミュレーター制御部603は、仮想シミュレーター700が差替画像を保持していないと判定する場合、差替画像のリクエストを、通信部605及びネットワーク20を介して、外部サーバー装置800に対して送信する。
差替判定部606により、前記制御プログラム内に差替領域が存在しないと判定される場合、シミュレーター制御部603は、上記の差替画像の取得を行わない。
(3)差替判定部606
差替判定部606は、仮想制御装置400から仮想クライアント装置600に対して、ライセンス情報が送信された場合、ブラウザー制御部608から当該ライセンス情報を受け取る。
差替判定部606は、以下に示すようにして、受け取ったライセンス情報を用いて、記憶部604に記憶されている制御プログラム631内に差替領域が存在するか否かを、判定する。
差替判定部606は、記憶部604に記憶されている制御プログラム631から、フォント識別名称を抽出する。次に、抽出したフォント識別名称がライセンス情報に含まれているか否かを判定する。
抽出したフォント識別名称がライセンス情報に含まれていないと判定する場合、又は、差替判定部606がライセンス情報を受け取っていない場合、差替判定部606は、差替領域が存在すると判定する。言い換えると、差替判定部606は、前記制御プログラムに含まれる表示項目について、ライセンス情報を取得できていない場合、又は、取得した前記ライセンス情報により、使用許可がされていないと判定する場合、前記制御プログラム内に差替領域が存在すると判定する。
抽出したフォント識別名称がライセンス情報に含まれていると判定される場合、差替判定部606は、差替領域が存在しないと判定する。言い換えると、差替判定部606は、前記制御プログラムに含まれる表示項目について、取得した前記ライセンス情報により、使用許可がされていると判定する場合、前記制御プログラム内に差替領域が存在しないと判定する。
(4)画像差替部607
画像差替部607は、仮想シミュレーター700から、又は、外部サーバー装置800から、差替画像を受信する。仮想シミュレーター700から、又は、外部サーバー装置800から、差替画像を受信した場合、画像差替部607は、制御プログラムにより含まれる表示項目について、受信した差替画像に差し替える。
(5)ブラウザー制御部608
ブラウザー制御部608は、以下に示すようにして、仮想制御装置401のブラウザー判定部402により、複数のブラウザーの中から、MFP機種IDにより示されるMFPが有するブラウザーと同一仕様のブラウザーが存在すると判定される場合、前記MFPが有するブラウザー機能と同一仕様のブラウザー機能を有する仮想クライアント装置600により、前記制御プログラムに従って描画させることにより、画像データを生成させる。
ブラウザー制御部608は、記憶部604に記憶されているブラウザーアプリ632を起動し、実行状態にする。
また、ブラウザー制御部608は、仮想制御装置400から、制御プログラムを識別するプログラム識別番号を受信する。次に、制御部601の制御により、受信したプログラム識別番号を仮想サーバー装置500に送信する。また、ブラウザー制御部608は、仮想制御装置400から、MFP機種ID及びライセンス情報を受信する。受信したライセンス情報を差替判定部606に対して出力し、受信したMFP機種IDをシミュレーター制御部603に対して出力する。
また、ブラウザー制御部608は、仮想サーバー装置500から、通信部605を介して、制御プログラムを受信する。次に、受信した制御プログラムを記憶部604に書き込む。
また、ブラウザー制御部608は、仮想シミュレーター700から、通信部605を介して、状態表示のための制御プログラムを受信する
さらに、ブラウザー制御部608は、実行状態のブラウザーに対して、記憶部604に記憶されている制御プログラム631及び仮想シミュレーター700から受信した制御プログラムに従って、MPFの操作パネルに表示されるべき画像を描画するように、制御する。
(6)画像データ生成部602
画像データ生成部602は、ブラウザーにより描画される画像から、画像データを生成する。次に、通信部605は、画像データを仮想制御装置400を介して、クライアントPC(100)に対して、送信する。
(7)制御部601
制御部601は、仮想サーバー装置500に対して、通信部605を介して、制御プログラムを識別するプログラム識別番号を出力することにより、制御プログラムを指定する。
(8)通信部605
通信部605は、仮想制御装置400との間で、仮想サーバー装置500との間で、仮想シミュレーター700との間で、及び、外部サーバー装置800との間で、情報の送受信を行う。
通信部605は、画像データ生成部602により生成された画像データを仮想制御装置400を介して、クライアントPC(100)に対して、送信する。
1.8 仮想シミュレーター700
仮想シミュレーター700は、上述したように、プログラム開発支援装置300において、仮想シミュレーターアプリ334が実行状態になることにより、仮想的に実現される装置である。
仮想シミュレーター700は、図11に示すように、制御部701、MFPシミュレート部702、記憶部704及び通信部705から構成されている。制御部701、MFPシミュレート部702及び通信部705は、マイクロプロセッサー301が仮想シミュレーターアプリ334を実行することにより、仮想的に実現される。
(1)記憶部704
記憶部704は、ハードディスクデバイス304から構成されている。記憶部704は、タグ731及び差替画像732を記憶するための領域を備えている。
タグ731は、仮想クライアント装置600が仮想サーバー装置500から受け取った制御プログラムのうちの一部分であり、内部コマンドを含む。
差替画像732は、制御プログラムに含まれる表示項目について、差し替えられるべき画像である。
(2)MFPシミュレート部702
MFPシミュレート部702は、仮想クライアント装置600から、通信部705を介して、リクエスト、MFP機種ID及びタグを受信する。次に、MFPシミュレート部702は、受信したタグに含まれる内部コマンドに従って、MFP機種IDにより示されるMFPにおける動作を、模擬的に行う。なお、MFPに対して、現実の動作を要求するのではなく、また、MFPが現実に動作するのではないことに、注意を要する。
MFPシミュレート部702は、図11に示すように、プロトコル制御部711、MFP機能制御部712、Fax部713、Scan部714及びPrint部715を含む。
プロトコル制御部711は、受け取ったタグをプロトコルに従って処理する。MFP機能制御部712は、Fax部713、Scan部714及びPrint部715を制御する。Fax部713は、MFPのファクシミリ機能をシミュレートし、Scan部714は、MFPのスキャン機能をシミュレートし、Print部715は、MFPの印刷機能をシミュレートする。
一例として、内部コマンドが、原稿のスキャンを要求するコマンドである場合、当該内部コマンドに従って、Scan部714は、模擬的に原稿のスキャンを行う。このとき、Scan部714は、スキャンの際の設定項目のチェックを行う。例えば、設定された解像度が、設定されたファイル形式のタイプにおいて存在しないものである場合には、セッティングの不正であると判定し、セッティングの不正を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、当該内部コマンドによる動作直後のMFPの操作パネルにおける表示動作を規定し、マークアップ言語により記述された状態表示のための制御プログラムである。
こうして生成された制御プログラムにより表示される画面の一例を図12に示す。
図12に示す画面741は、セッティングが不正であることを示すメッセージを含んでいる。
また、例えば、Scan部714は、一例として、模擬的にスキャンされたデータを格納するメモリの不足を検出し、メモリ不足を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。
また、例えば、MFP機種IDにより示されるMFPが、100dpi×100dpi、200dpi×200dpi及び400dpi×400dpiの解像度によるスキャン機能を有している場合に、100dpi×100dpi、200dpi×200dpi、300dpi×300dpi及び400dpi×400dpiの解像度の選択肢が設定されている場合、Scan部714は、スキャンの際の設定項目のチェックを行い、セッティングの不正であると判定し、セッティングの不正を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。
別の一例として、内部コマンドが、印刷を要求するコマンドである場合、当該内部コマンドに従って、Print部715は、模擬的に印刷を行う。次に、Print部715は、一例として、模擬的に用紙切れを検出し、用紙切れを示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。
別の一例として、内部コマンドが、原稿のファクシミリによる送信を要求するコマンドである場合、当該内部コマンドに従って、Fax部713は、模擬的に原稿の送信を試みる。次に、Fax部713は、一例として、模擬的に、送信先が通話中であることを検出し、通話中を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。
別の一例として、内部コマンドが、MFPが保持するトナーの残量を取得するコマンドである場合、当該内部コマンドに従って、Print部715は、模擬的にMFPのトナーの残量を取得する。例えば、Print部715は、乱数を生成し、生成した乱数に基づいて、トナーの残量を算出する。次に、Print部715は、取得したトナーの残量が20パーセント未満であれば、その旨を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。
別の一例として、内部コマンドがMFPにセットされた用紙の残り枚数を取得するコマンドである場合、当該内部コマンドに従って、Print部715は、模擬的に用紙の残り枚数を取得する。例えば、Print部715は、乱数を生成し、生成した乱数に基づいて、残り枚数を算出する。次に、Print部715は、取得した用紙の残り枚数が10パーセント未満であれば、その旨を示すメッセージを表示する制御プログラムを生成する。この制御プログラムは、マークアップ言語により記述される。
次に、MFPシミュレート部702は、生成した制御プログラムを、通信部705を介して、仮想クライアント装置600に対して送信する。
(3)制御部701
制御部701は、通信部705を介して、仮想クライアント装置600から、差替画像のリクエストを受信する。次に、リクエストを受信すると、制御部701は、リクエストに応じて、記憶部704から差替画像732を読み出す。次に、制御部701は、読み出した差替画像を、通信部705を介して、仮想クライアント装置600に対して、送信する。
(4)通信部705
通信部705は、仮想制御装置400との間で、及び、仮想クライアント装置600との間で、情報の送受信を行う。
1.9 外部サーバー装置800
外部サーバー装置800は、図13に示すように、制御部801、記憶部804及び通信部805から構成されている。
外部サーバー装置800は、具体的には、マイクロプロセッサー、ROM、RAM、ハードディスクデバイスなどから構成されるコンピューターシステムである。前記ハードディスクデバイスには、コンピュータープログラムが記憶されている。前記マイクロプロセッサーが、前記コンピュータープログラムに従って動作することにより、外部サーバー装置800は、その機能を達成する。
(1)記憶部804
記憶部804は、一例として、ハードディスクデバイスから構成されている。記憶部804は、差替画像831を記憶している。差替画像831は、制御プログラムに含まれる表示項目について、差し替えられるべき画像である。
(2)制御部801
制御部801は、通信部805を介して、仮想クライアント装置600から、差替画像のリクエストを受信する。
次に、リクエストを受信すると、制御部801は、リクエストに応じて、記憶部804から差替画像831を読み出す。次に、制御部801は、読み出した差替画像を、通信部805を介して、仮想クライアント装置600に対して、送信する。
(3)通信部805
通信部805は、ネットワーク20を介して、仮想クライアント装置600との間で、情報の送受信を行う。
1.10 プログラム開発支援システム10の動作
プログラム開発支援システム10の動作について、図14〜図16に示すシーケンス図を用いて、説明する。
クライアントPC(100)のキーボード108は、ユーザーからブラウザーアプリ121を起動する指示を受け付ける。次に、マイクロプロセッサー101は、ブラウザーアプリ121を実行する。これにより、クライアントPC(100)において、ブラウザーが実行状態となる(ステップS101)。
次に、キーボード108は、ユーザーから制御プログラムの作成のリクエストを受け付ける。次に、通信部105は、受け付けたリクエストを、ネットワーク20を介して、プログラム作成サーバー装置200に対して、送信する(ステップS102)。プログラム作成サーバー装置200のHTMLエディタ部206は、クライアントPC(100)から、ネットワーク20、通信部205、ウェブサービスインタフェース部201及びサービスユーザーインタフェース部202を介して、プログラム作成のリクエストを受け取る(ステップS102)。
次に、クライアントPC(100)とプログラム作成サーバー装置200とは、ネットワーク20を介して、情報を送受信し、プログラム作成サーバー装置200のHTMLエディタ部206は、制御プログラムを作成する(ステップS103、S104、S105、S106、・・・)。
制御プログラムの作成が完了すると、HTMLエディタ部206は、制御プログラムの作成が完了したことを示す完了通知を生成する。次に、生成した完了通知を、ネットワーク20を介して、クライアントPC(100)に対して送信する(ステップS107)。通信部105は、ネットワーク20を介して、完了通知を受け取る(ステップS107)。
完了通知を受け取ると、クライアントPC(100)の実行状態のブラウザーは、ユーザーの指示により、制御プログラムのプレビュー要求を、通信部105及びネットワーク20を介して、プログラム作成サーバー装置200に対して送信する(ステップS108)。プログラム作成サーバー装置200のプレビュー制御部203は、クライアントPC(100)から、ネットワーク20、通信部205、ウェブサービスインタフェース部201及びサービスユーザーインタフェース部202を介して、プレビュー要求を受け取る(ステップS108)。
次に、プレビュー要求を受け取ると、プログラム作成サーバー装置200のプレビュー制御部203は、サービスユーザーインタフェース部202、ウェブサービスインタフェース部201及び通信部205を介して、作成が完了した制御プログラムを、プログラム開発支援装置300に対して、送信する(ステップS109)。仮想制御装置400の制御部401は、通信部405を介して、制御プログラムを受信する(ステップS109)。次に、制御部401は、受信した制御プログラムを仮想サーバー装置500に対して送信する(ステップS110)。仮想サーバー装置500の通信部505は、仮想制御装置400から制御プログラムを受信し(ステップS110)、受信した制御プログラムを記憶部504に書き込む(ステップS111)。
次に、プレビュー要求を受け取ると、プログラム作成サーバー装置200のプレビュー制御部203は、プログラム開発支援装置300のネットワーク20における存在位置を示すURLを内部から読み出す。次に、読み出したURLを、サービスユーザーインタフェース部202、ウェブサービスインタフェース部201及び通信部205を介して、クライアントPC(100)に対して送信する(ステップS112)。クライアントPC(100)で実行状態にあるブラウザーは、プログラム作成サーバー装置200から、ネットワーク20及び通信部105を介して、URLを受け取る(ステップS112)。
次に、クライアントPC(100)で実行状態にあるブラウザーは、ユーザーからMFPの機種を示すMFP機種IDの入力を受け付ける。また、制御プログラムに含まれる表示項目について、使用許否を示すライセンス情報122をハードディスクデバイス104から読み出す。次に、クライアントPC(100)で実行状態にあるブラウザーは、受け取ったURLを指定して、入力を受け付けたMFP機種ID及び読み出したライセンス情報を、通信部105及びネットワーク20を介して、プログラム開発支援装置300に対して送信する(ステップS113)。仮想制御装置400のブラウザー判定部402は、クライアントPC(100)から、ネットワーク20及び通信部405を介して、MFP機種ID及びライセンス情報を受け取る(ステップS113)。
ブラウザー判定部402は、受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれているか否かを判定する(ステップS114)。受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれていないと判定する場合(ステップS115で「無し」)、ブラウザー判定部402は、通信部405及びネットワーク20を介して、MFP機種IDが対応表421に含まれていないことを示すメッセージを、クライアントPC(100)に対して、送信する(ステップS116)。クライアントPC(100)で実行状態にあるブラウザーは、プログラム開発支援装置300から、ネットワーク20及び通信部105を介して、メッセージを受信する(ステップS116)。次に、クライアントPC(100)で実行中のブラウザーは、受信したメッセージを表示する(ステップS117)。次に、クライアントPC(100)で実行中のブラウザーは、処理を終了する。
受け取ったMFP機種IDと同一のMFP機種IDが、記憶部404に記憶されている対応表421に含まれていると判定する場合(ステップS115で「有り」)、制御部401は、通信部405及びネットワーク20を介して、クライアントPC(100)に対して、フレームを送信する(ステップS118)。フレームは、クライアントPC(100)で実行状態のブラウザーにおいて、表示されるべき画像のフレームである。クライアントPC(100)で実行状態のブラウザーは、プログラム開発支援装置300から、通信部105を介して、フレームを受信する(ステップS118)。次に、ブラウザーは、フレームを表示する(ステップS119)。
受け取ったMFP機種IDと同一のMFP機種IDが、記憶部404に記憶されている対応表421に含まれていると判定する場合(ステップS115で「有り」)、ブラウザー判定部402は、対応表421から、受け取ったMFP機種IDと同一のMFP機種IDと対応する仮想クライアントIDを読み出す。これにより、仮想クライアントアプリを選択する(ステップS120)。次に、ブラウザー判定部402は、読み出した仮想クライアントIDを実行部406に対して、出力する。実行部406は、仮想クライアントIDを受け取り、受け取った仮想クライアントIDにより識別される仮想クライアントアプリを、記憶部404から読み出し、読み出した仮想クライアントアプリを起動して実行状態とする(ステップS121)。これにより、仮想クライアント装置600が実行状態となる。
次に、制御部401は、仮想クライアント装置600に対して、制御プログラムを識別するプログラム識別番号を出力することにより、制御プログラムを指定する(ステップS122)。仮想クライアント装置600のブラウザー制御部608は、仮想制御装置400から、プログラム識別番号を受信する(ステップS122)。次に、制御部401は、仮想クライアント装置600に対して、MFP機種ID及びライセンス情報を出力する(ステップS123)。仮想クライアント装置600のブラウザー制御部608は、仮想制御装置400から、MFP機種ID及びライセンス情報を受信する(ステップS123)。
次に、仮想クライアント装置600の制御部601は、仮想サーバー装置500に対して、通信部605を介して、制御プログラムを識別するプログラム識別番号を出力することにより、制御プログラムを指定する(ステップS124)。次に、制御部501は、仮想クライアント装置600から、通信部505を介して、プログラム識別番号を受信する(ステップS124)。次に、制御部501は、記憶部504から受信したプログラム識別番号により識別される制御プログラムを読み出す(ステップS125)。次に、読み出した制御プログラムを、通信部505を介して、仮想クライアント装置600に対して送信する(ステップS126)。次に、仮想クライアント装置600のブラウザー制御部608は、仮想サーバー装置500から、通信部605を介して、制御プログラムを受信する(ステップS126)。
シミュレーター制御部603の内部コマンド判定部611は、制御プログラムの中に、MFPに固有の動作を要求する内部コマンドが含まれるか否かを判定する(ステップS127)。
制御プログラムの中に、MFPに固有の動作を要求する内部コマンドが含まれると判定される場合(ステップS127で「有り」)、シミュレーター制御部603は、シミュレートのリクエスト、MFP機種ID及び制御プログラムのうち内部コマンドを含むタグを、通信部605を介して、仮想シミュレーター700に対して送信する(ステップS128)。仮想シミュレーター700のMFPシミュレート部702は、仮想クライアント装置600から、通信部705を介して、リクエスト、MFP機種ID及びタグを受信する(ステップS128)。
次に、MFPシミュレート部702は、受信したタグに含まれる内部コマンドに従って、MFP機種IDにより示されるMFPを模擬的に動作させる。次に、当該内部コマンドによる動作直後のMFPの操作パネルにおける表示動作を規定し、マークアップ言語により記述された状態表示のための制御プログラムを生成する(ステップS129)。
次に、MFPシミュレート部702は、生成した状態表示のための制御プログラムを、通信部705を介して、仮想クライアント装置600に対して送信する(ステップS130)。仮想クライアント装置600のブラウザー制御部608は、仮想シミュレーター700から、通信部605を介して、状態表示のための制御プログラムを受信する(ステップS130)。
制御プログラムの中に、MFPに固有の動作を要求する内部コマンドが含まれないと判定される場合(ステップS127で「無し」)、シミュレーター制御部603は、シミュレートのリクエストを仮想シミュレーター700に対して送信しない。
次に、差替判定部606は、前記制御プログラム内に差替領域が存在するか否かを判定する(ステップS131)。
前記制御プログラム内に差替領域が存在すると判定される場合(ステップS131で「有り」)、シミュレーター制御部603は、仮想シミュレーター700に差替画像が存在するか否かを判定する(ステップS132)。シミュレーター制御部603は、仮想シミュレーター700に差替画像が存在すると判定する場合(ステップS132で「有り」)、差替画像のリクエストを、通信部605を介して、仮想シミュレーター700に対して送信する(ステップS133)。仮想シミュレーター700の制御部701は、通信部705を介して、仮想クライアント装置600から、差替画像のリクエストを受信する(ステップS133)。
次に、リクエストを受信すると、制御部701は、リクエストに応じて、記憶部704から差替画像732を読み出す(ステップS134)。次に、制御部701は、読み出した差替画像を、通信部705を介して、仮想クライアント装置600に対して、送信する(ステップS135)。次に、仮想クライアント装置600の画像差替部607は、仮想シミュレーター700から、通信部605を介して、差替画像を受信する(ステップS135)。
シミュレーター制御部603は、仮想シミュレーター700に差替画像が存在しないと判定する場合(ステップS132で「無し」)、差替画像のリクエストを、通信部605及びネットワーク20を介して、外部サーバー装置800に対して送信する(ステップS136)。外部サーバー装置800の制御部801は、通信部805を介して、仮想クライアント装置600から、差替画像のリクエストを受信する(ステップS136)。
次に、リクエストを受信すると、制御部801は、リクエストに応じて、記憶部804から差替画像831を読み出す(ステップS137)。次に、制御部801は、読み出した差替画像を、通信部805を介して、仮想クライアント装置600に対して、送信する(ステップS138)。次に、仮想クライアント装置600の画像差替部607は、外部サーバー装置800から、通信部605を介して、差替画像を受信する(ステップS138)。
仮想シミュレーター700から、又は、外部サーバー装置800から、差替画像を受信した場合、画像差替部607は、制御プログラムに含まれる表示項目について、受信した差替画像に差し替える(ステップS139)。
仮想クライアント装置600の差替判定部606により、前記制御プログラム内に差替領域が存在しないと判定される場合(ステップS131で「無し」)、シミュレーター制御部603は、上記の差替画像の取得を行わない。
次に、仮想クライアント装置600の画像データ生成部602は、ブラウザーにより描画される画像から、画像データを生成する(ステップS140)。次に、通信部605は、画像データを仮想制御装置400を介して、クライアントPC(100)に対して、送信する(ステップS141〜S142)。
クライアントPC(100)は、仮想クライアント装置600から、仮想制御装置400を介して、画像データを受信する(ステップS141〜S142)。次に、クライアントPC(100)で実行状態にあるブラウザーは、画像データを、入出力制御部106を介して、モニター107に出力することにより、画像データを表示する(ステップS143)。
2.その他の変形例
本発明について、上記の実施の形態に基づいて説明しているが、上記の実施の形態に限定されない。以下に示すようにしてもよい。
(1)上記のプログラム開発支援システム10においては、クライアントPC(100)とプログラム作成サーバー装置200とは、別々の装置により構成されている。しかし、このような構成には、限定されない。
クライアントPC(100)とプログラム作成サーバー装置200とは、一体として、一台の装置により構成されているとしてもよい。
(2)上記のプログラム開発支援システム10においては、仮想制御装置400は、図8に示す対応表421を保持している。ブラウザー判定部402は、クライアントPC(100)から、MFP機種IDを受け取る。次に、ブラウザー判定部402は、受け取ったMFP機種IDと同一のMFP機種IDが、対応表421に含まれているか否かを判定する。これにより、MFPが有するブラウザー機能と同一のブラウザー機能を有する仮想クライアントアプリが存在するか否かを判定する。
しかし、このような構成には、限定されない。
対応表421に記憶されている対応データは、仮想クライアントID及びMFP機種IDに代えて、仮想クライアントID、ブラウザーの種類及び版数を含むとしてもよい。
ここで、仮想クライアントIDは、仮想クライアントアプリを識別する識別情報である。また、ブラウザーの種類及び版数は、仮想クライアントアプリが有するブラウザーの種類及び版数を示す。
ブラウザー判定部402は、クライアントPC(100)から、MFPが有するブラウザーの種類及び版数を受け取る。次に、ブラウザー判定部402は、受け取ったブラウザーの種類及び版数と同一の種類及び版数が、対応表421に含まれているか否かを判定する。これにより、MFPが有するブラウザーの種類と版数と同一のブラウザーの種類と版数を有する仮想クライアントアプリが存在するか否かを判定する。
(3)上記の実施の形態においては、仮想クライアント装置600において、画像データが生成される。生成された画像データは、仮想制御装置400を介して、クライアントPC(100)に送信される。クライアントPC(100)は、画像データを表示する。
しかし、このような構成には、限定されない。
仮想クライアント装置600は、画像データを生成し、生成した画像データを高効率に圧縮してもよい。こうして、仮想クライアント装置600は、圧縮画像データを生成する。圧縮画像データは、一例として、JPEG(Joint Photographic Experts Group)に基づいて生成される。生成された圧縮画像データは、仮想制御装置400を介して、クライアントPC(100)に送信される。クライアントPC(100)は、圧縮画像データを伸張して、元の画像データを生成し、生成した画像データを表示する。
(4)上記の実施の形態においては、プログラム開発支援装置300において、仮想的に、仮想制御装置400、仮想サーバー装置500、仮想クライアント装置600及び仮想シミュレーター700が生成される。しかし、このような構成には、限定されない。
クラウドシステム30は、プログラム開発支援装置300に代えて、制御装置400a、サーバー装置500a、クライアント装置600a及びシミュレーター700aを含むとしてもよい。
制御装置400a、サーバー装置500a、クライアント装置600a及びシミュレーター700aは、それぞれ、プログラム開発支援装置300上で動作するコンピュータープログラムではない。制御装置400a、サーバー装置500a、クライアント装置600a及びシミュレーター700aは、それぞれ、図7、図9、図10及び図11に示すように、実体のある要素から構成される装置である。
また、制御装置400a、サーバー装置500a、クライアント装置600a及びシミュレーター700aは、それぞれ、コンピュータープログラムを記憶している記憶手段と、前記コンピュータープログラムを実行するプロセッサーとを含むコンピューターシステムである。
(5)上述したように、プログラム開発支援装置は、情報処理装置をMFPにおける操作画面の確認のために用いることができる。しかし、これには限定されない。プログラム開発支援装置は、プリンター、コピー機、ファクシミリ及びスキャナー等における操作画面の確認のために用いることができるとしてもよい。
(6)上述したように、各装置は、マイクロプロセッサーとメモリとを備えたコンピューターシステムである。前記メモリは、コンピュータープログラムを記憶しており、前記マイクロプロセッサーは、前記コンピュータープログラムに従って動作するとしてもよい。
ここで、コンピュータープログラムは、所定の機能を達成するために、コンピューターに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
また、前記コンピュータープログラムは、コンピューター読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD―ROM、MO、DVD、DVD−ROM、DVD−RAM、ブルーレィディスク、半導体メモリなどに記録されているとしてもよい。
また、前記コンピュータープログラムを、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するとしてもよい。
また、前記コンピュータープログラムを前記記録媒体に記録して移送することにより、又は前記コンピュータープログラムをネットワーク等を経由して移送することにより、独立した他のコンピューターシステムにより実行するとしてもよい。
(7)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
本発明にかかるプログラム開発支援装置は、情報処理装置を画像形成装置における操作画面の確認のために用いることができるという優れた効果を奏し、画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援する技術、特に、操作パネルにおいて表示されるべき操作画面の確認を支援する技術として有用である。
10 プログラム開発支援システム
20 ネットワーク
30 クラウドシステム
100 クライアントPC
101 マイクロプロセッサー
102 ROM
103 RAM
104 ハードディスクデバイス
105 通信部
106 入出力制御部
107 モニター
108 キーボード
200 プログラム作成サーバー装置
201 ウェブサービスインタフェース部
202 サービスユーザーインタフェース部
203 プレビュー制御部
204 記憶部
205 通信部
206 HTMLエディタ部
207 IWSコマンド生成部
300 プログラム開発支援装置
301 マイクロプロセッサー
302 ROM
303 RAM
304 ハードディスクデバイス
305 通信部
400 仮想制御装置
401 制御部
402 ブラウザー判定部
404 記憶部
405 通信部
406 実行部
500 仮想サーバー装置
501 制御部
504 記憶部
505 通信部
600 仮想クライアント装置
601 制御部
602 画像データ生成部
603 シミュレーター制御部
604 記憶部
605 通信部
606 差替判定部
607 画像差替部
608 ブラウザー制御部
611 内部コマンド判定部
700 仮想シミュレーター
701 制御部
702 MFPシミュレート部
704 記憶部
705 通信部
711 プロトコル制御部
712 MFP機能制御部
713 Fax部
714 Scan部
715 Print部
800 外部サーバー装置
801 制御部
804 記憶部
805 通信部

Claims (10)

  1. 画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置であって、
    前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得手段と、
    前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザー手段と、
    複数の前記ブラウザー手段の中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザー手段が存在するか否かを判定するブラウザー判定手段と、
    前記ブラウザー判定手段により存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザー手段により、前記制御プログラムに従って描画させることにより、画像データを生成させる制御手段と、
    生成した前記画像データを、表示させるため前記情報処理装置に送信する送信手段と
    を備えることを特徴とするプログラム開発支援装置。
  2. 前記プログラム開発支援装置は、さらに、
    前記制御プログラム中に、前記画像形成装置に固有の動作を要求する内部コマンドが含まれるか否かを判定する内部コマンド判定手段と、
    前記内部コマンドが含まれると判定される場合に、当該内部コマンドに従って、前記画像形成装置の動作をシミュレートし、当該動作直後の前記操作パネルにおける表示動作を規定する第2制御プログラムを生成するシミュレート手段を含み、
    前記制御手段は、さらに、前記ブラウザー手段により、前記第2制御プログラムに従って描画させることにより、第2画像データを生成させ、
    前記送信手段は、さらに、生成した前記第2画像データを、表示させるために前記情報処理装置に送信する
    ことを特徴とする請求項1に記載のプログラム開発支援装置。
  3. 前記取得手段は、さらに、前記情報処理装置から、前記制御プログラムに含まれる表示項目の使用許否を示すライセンス情報を取得し、
    前記プログラム開発支援装置は、さらに、
    取得した前記ライセンス情報により、前記制御プログラムに含まれる表示項目について、使用許可がされているか否かを判定する許可判定手段と、
    使用許可がされていないと判定される場合、代替表示項目を取得する代替表示項目取得手段と、
    前記表示項目を取得した前記代替表示項目に差し替える差替手段とを含み、
    前記制御手段は、前記差替手段により、前記表示項目を取得した前記代替表示項目に差し替えさせ、前記ブラウザー手段により、前記代替表示項目を含む前記画像データを生成させる
    ことを特徴とする請求項1に記載のプログラム開発支援装置。
  4. 当該プログラム開発支援装置又は外部のサーバー装置は、前記代替表示項目を保持し、
    前記代替表示項目取得手段は、当該プログラム開発支援装置又は外部のサーバー装置から、前記代替表示項目を取得する
    ことを特徴とする請求項3に記載のプログラム開発支援装置。
  5. 前記ブラウザー判定手段は、複数の前記ブラウザー手段に対応付けて、それぞれ、複数の画像形成装置の機種を示す機種識別子を記憶しており、取得した前記機種識別子が記憶している前記機種識別子のいずれかと一致するか否かを判定することにより、前記ブラウザー手段が存在するか否かを判定する
    ことを特徴とする請求項1に記載のプログラム開発支援装置。
  6. 前記取得手段は、前記機種識別子として、前記画像形成装置が有するブラウザーの種類及び版数を示すブラウザー識別子を取得し、
    前記ブラウザー判定手段は、複数の前記ブラウザー手段に対応付けて、それぞれ、複数の機種の画像形成装置が有するブラウザーの種類及び版数を示すブラウザー識別子を記憶しており、取得した前記ブラウザー識別子が記憶している前記ブラウザー識別子のいずれかと一致するか否かを判定することにより、前記ブラウザー手段が存在するか否かを判定する
    ことを特徴とする請求項1に記載のプログラム開発支援装置。
  7. 前記プログラム開発支援装置は、コンピュータープログラムを記憶している記憶手段と、前記コンピュータープログラムを実行するプロセッサーとを含むコンピューターシステムであり、
    前記プログラム開発支援装置は、前記プロセッサーが前記コンピュータープログラムを実行することにより、前記取得手段、複数の前記ブラウザー手段、前記ブラウザー判定手段、前記制御手段及び前記送信手段を動作させ、
    前記記憶手段は、複数の前記ブラウザー手段に対応して、複数の異なる仕様のブラウザープログラムをそれぞれ含む複数の仮想クライアントプログラムを記憶しており、
    前記ブラウザー判定手段は、複数の仮想クライアントプログラムの中から、前記機種識別子により示される画像形成装置が有するブラウザープログラムを含む仮想クライアントプログラムが存在するか判定し、
    前記制御手段は、前記画像形成装置が有するブラウザープログラムを含む前記仮想クライアントプログラムを実行状態にし、実行状態の前記仮想クライアントプログラムに含まれるブラウザープログラムを用いて、前記制御プログラムに従って描画させる
    ことを特徴とする請求項2に記載のプログラム開発支援装置。
  8. 前記プログラム開発支援装置は、前記プロセッサーが前記コンピュータープログラムを実行することにより、さらに、前記内部コマンド判定手段及び前記シミュレート手段を動作させ、
    前記記憶手段は、仮想シミュレートプログラムを、前記シミュレート手段に対応して、記憶しており、
    前記仮想シミュレートプログラムは、前記内部コマンドが含まれると判定される場合に、当該内部コマンドに従って、前記画像形成装置の動作をシミュレートし、当該動作直後の前記操作パネルにおける表示動作を規定する第2制御プログラムを生成するプログラムであり、
    前記制御手段は、前記シミュレート手段として、仮想シミュレートプログラムを実行状態にする
    ことを特徴とする請求項7に記載のプログラム開発支援装置。
  9. 画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置において用いられるプログラム開発支援方法であって、
    前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得ステップと、
    前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザーステップと、
    複数の前記ブラウザーステップの中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザーステップが存在するか否かを判定するブラウザー判定ステップと、
    前記ブラウザー判定ステップにより存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザーステップにより、前記制御プログラムに従って描画させることにより、画像データを生成させる制御ステップと、
    生成した前記画像データを、表示させるため前記情報処理装置に送信する送信ステップと
    を含むことを特徴とするプログラム開発支援方法。
  10. 画像形成装置の操作パネルにおける表示動作を規定する制御プログラムの、情報処理装置による開発を支援するプログラム開発支援装置において用いられるコンピュータープログラムを記録しているコンピューター読み取り可能な記録媒体であって、
    コンピューターである前記プログラム開発支援装置に、
    前記情報処理装置から、前記画像形成装置の機種を示す機種識別子及び前記制御プログラムを取得する取得ステップと、
    前記制御プログラムに従って前記操作パネルに表示されるべき画像を描画し、異なる仕様のブラウザー機能をそれぞれ有する複数のブラウザーステップと、
    複数の前記ブラウザーステップの中から、前記機種識別子により示される画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有するブラウザーステップが存在するか否かを判定するブラウザー判定ステップと、
    前記ブラウザー判定ステップにより存在すると判定される場合、前記画像形成装置が有するブラウザー機能と同一仕様のブラウザー機能を有する前記ブラウザーステップにより、前記制御プログラムに従って描画させることにより、画像データを生成させる制御ステップと、
    生成した前記画像データを、表示させるため前記情報処理装置に送信する送信ステップと
    を実行させるためのコンピュータープログラムを記録している記録媒体。
JP2013172184A 2013-08-22 2013-08-22 プログラム開発支援装置及びプログラム開発支援方法 Expired - Fee Related JP6119507B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013172184A JP6119507B2 (ja) 2013-08-22 2013-08-22 プログラム開発支援装置及びプログラム開発支援方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013172184A JP6119507B2 (ja) 2013-08-22 2013-08-22 プログラム開発支援装置及びプログラム開発支援方法

Publications (2)

Publication Number Publication Date
JP2015041260A true JP2015041260A (ja) 2015-03-02
JP6119507B2 JP6119507B2 (ja) 2017-04-26

Family

ID=52695383

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013172184A Expired - Fee Related JP6119507B2 (ja) 2013-08-22 2013-08-22 プログラム開発支援装置及びプログラム開発支援方法

Country Status (1)

Country Link
JP (1) JP6119507B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11282840A (ja) * 1998-03-26 1999-10-15 Hitachi Software Eng Co Ltd 文書作成編集支援システムおよび記録媒体
JP2011215851A (ja) * 2010-03-31 2011-10-27 Yahoo Japan Corp 確認システム及び方法
JP2013054693A (ja) * 2011-09-06 2013-03-21 Fujitsu Ltd リグレッションテスト支援プログラム及びリグレッションテスト支援装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11282840A (ja) * 1998-03-26 1999-10-15 Hitachi Software Eng Co Ltd 文書作成編集支援システムおよび記録媒体
JP2011215851A (ja) * 2010-03-31 2011-10-27 Yahoo Japan Corp 確認システム及び方法
JP2013054693A (ja) * 2011-09-06 2013-03-21 Fujitsu Ltd リグレッションテスト支援プログラム及びリグレッションテスト支援装置

Also Published As

Publication number Publication date
JP6119507B2 (ja) 2017-04-26

Similar Documents

Publication Publication Date Title
US9092704B2 (en) Image forming system, image forming apparatus, and recording medium
CN107077544B (zh) 信息处理系统、信息处理装置和信息处理方法
JP2004288026A (ja) サービス処理システム、サービス処理システムの処理結果確認方法、及びサービス処理プログラム
JP6387740B2 (ja) サーバ装置、画像形成装置、プログラム、及び通信システム
JP2018129767A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
US8984623B2 (en) Image processing system, image processing apparatus and computer-readable recording medium
JP5548607B2 (ja) 画像処理装置、及び画像処理システム
JP6492711B2 (ja) 中継装置、操作画面提供装置及びプログラム
JP2012034277A (ja) 画像処理システム、その制御方法およびプログラム
JP5476998B2 (ja) 情報管理装置、情報管理方法、及び情報管理システム
JP6464712B2 (ja) 情報処理装置および情報処理方法
JP2016140044A (ja) 記入フォーム提供装置、画像形成装置及びプログラム
JP2011039613A (ja) ワークフローシステム
JP2010165101A (ja) ネットワーク装置、アプリケーション取得方法
JP6119507B2 (ja) プログラム開発支援装置及びプログラム開発支援方法
JP5831695B2 (ja) 情報処理装置、情報処理システムおよびプログラム
JP2009232113A (ja) 画像形成装置及び画像形成システム
JP2012243286A (ja) 情報処理装置、ドキュメントデータ更新方法、およびコンピュータープログラム
JP5978780B2 (ja) 情報処理装置およびその制御プログラム、携帯端末の制御プログラム、ならびに、印刷システム
JP5821194B2 (ja) 出力装置、出力情報送信装置、出力システム、及びプログラム
JP2009065238A (ja) 情報処理装置
US20120050775A1 (en) Image delivery system, image forming apparatus, and delivery management apparatus
JP5140350B2 (ja) 情報処理装置
JP2009223671A (ja) 印刷システムおよび印刷装置
JP5389343B2 (ja) 情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170217

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170228

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170313

R150 Certificate of patent or registration of utility model

Ref document number: 6119507

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees