JP6547392B2 - アプリケーション修正装置、アプリケーション修正方法、およびコンピュータプログラム - Google Patents

アプリケーション修正装置、アプリケーション修正方法、およびコンピュータプログラム Download PDF

Info

Publication number
JP6547392B2
JP6547392B2 JP2015089232A JP2015089232A JP6547392B2 JP 6547392 B2 JP6547392 B2 JP 6547392B2 JP 2015089232 A JP2015089232 A JP 2015089232A JP 2015089232 A JP2015089232 A JP 2015089232A JP 6547392 B2 JP6547392 B2 JP 6547392B2
Authority
JP
Japan
Prior art keywords
application
job
defect
condition
image forming
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.)
Active
Application number
JP2015089232A
Other languages
English (en)
Other versions
JP2016207008A (ja
Inventor
晴奈 笹隈
晴奈 笹隈
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 JP2015089232A priority Critical patent/JP6547392B2/ja
Publication of JP2016207008A publication Critical patent/JP2016207008A/ja
Application granted granted Critical
Publication of JP6547392B2 publication Critical patent/JP6547392B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)

Description

本発明は、画像形成装置にインストールされているアプリケーションを書き換える技術に関する。
近年、コピー、スキャン、ファックス、ドキュメント管理など様々な機能が備わった画像形成装置が普及している。このような画像形成装置は、「複合機」または「MFP(Multi Function Peripherals)」と呼ばれることもある。
さらに、画像形成装置にウェブブラウザが備えられるようになった。ウェブブラウザでウェブサーバへアクセスし、ウェブアプリケーションをウェブサーバに実行させることによって、様々なサービスを受けることができるようになった。
また、「IWS(Internal Web Server)」というウェブサーバを画像形成装置に設ける技術が、提案されている。画像形成装置のメーカ以外の企業またはユーザが、広く知られているHTML(Hypertext Markup Language)またはJavaScript(登録商標)などの言語を用いてウェブアプリケーションを作成して画像形成装置にインストールし、IWSに実行させることができる。よって、IWSによると、画像形成装置の機能の拡張性を従来よりも容易に向上させることができる。
そのほか、アプリケーションをインストールする作業の負担を軽減する技術として、次の技術が提案されている。インストールする新規アプリケーションの初期設定値として、既存アプリケーションの設定値を取得して自動的に反映する(特許文献1)。
特開2008−269632号公報
メーカによって作成され画像形成装置に予めインストールされているアプリケーションに比べて、IWS上で動作するアプリケーションは、不具合が生じやすい。メーカ以外の企業またはユーザが自由に作成することができるからである。
不具合が生じるアプリケーションを画像形成装置に適するように書き換えることができれば、便利である。
本発明は、このような課題に鑑み、不具合が生じるアプリケーションを従来よりも容易に画像形成装置に適するように書き換えることを、目的とする。
本発明の一形態に係るアプリケーション修正装置は、画像形成装置において実行される複数のアプリケーションのうちのエラーを生じるアプリケーションである不具合アプリケーションを修正するアプリケーション修正装置であって、前記不具合アプリケーションを前記画像形成装置が実行した際の第一の条件と、前記複数のアプリケーションのうちの、当該不具合アプリケーションとの共通点を有する当該不具合アプリケーション以外のアプリケーションを当該不具合アプリケーションよりも後にエラーを生じることなく前記画像形成装置が実行した際の第二の条件と、に基づいて、当該不具合アプリケーションの中の不具合がある可能性のある不具合可能性個所を抽出する、抽出手段と、前記第二の条件に基づいて前記不具合可能性個所を更新することによって前記不具合アプリケーションを修正する修正手段と、を有する。
好ましくは、前記不具合アプリケーションは、特定の種類のジョブを実行するためのアプリケーションであって、前記共通点は、前記特定の種類のジョブを実行するためのアプリケーションであることである。
または、前記特定の種類のジョブは、データを特定の宛先へ送信するジョブであって、前記抽出手段は、前記特定の宛先へデータを送信することが含まれる条件を前記第二の条件として用いて前記不具合可能性個所を抽出する。
または、前記特定の種類のジョブは、画像を出力するジョブであって、前記抽出手段は、前記複数のアプリケーションのうちの、前記不具合アプリケーションにおける出力の対象の画像と同一の画像を出力するために用いられたアプリケーションが実行された際の条件を、前記第二の条件として用いて前記不具合可能性個所を抽出する。
または、前記修正手段は、前記不具合可能性個所を更新することをユーザが許可した場合に、前記不具合アプリケーションを修正する。
または、前記修正手段は、さらに、前記複数のアプリケーションのうち、前記不具合アプリケーション以外の、前記共通点を有するアプリケーションを修正する。
本発明によると、不具合が生じるアプリケーションを従来よりも容易に画像形成装置に適するように書き換えることができる。
アプリケーションシステムの全体的な構成の例を示す図である。 画像形成装置のハードウェア構成の例を示す図である。 画像形成装置のプラットフォームの例を示す図である。 メニュー画面の例を示す図である。 条件設定画面の例を示す図である。 ワンタッチ指令画面の例を示す図である。 条件設定画面の例を示す図である。 ワンタッチ指令画面の例を示す図である。 メニュー画面の例を示す図である。 修正用プログラムによって実現される機能的構成の例を示す図である。 ジョブ実績データ61の例を示す図である。 変更選択画面の例を示す図である。 ソースコードの例を示す図である。 修正用プログラムによる画像形成装置の全体的な処理の流れの例を説明するフローチャートである。
図1は、アプリケーションシステム100の全体的な構成の例を示す図である。図2は、画像形成装置1のハードウェア構成の例を示す図である。図3は、画像形成装置1のプラットフォームの例を示す図である。図4は、メニュー画面50の例を示す図である。図5は、条件設定画面531の例を示す図である。図6は、ワンタッチ指令画面532の例を示す図である。図7は、条件設定画面541の例を示す図である。図8は、ワンタッチ指令画面542の例を示す図である。図9は、メニュー画面57の例を示す図である。図10は、修正用プログラム48によって実現される機能的構成の例を示す図である。
図1に示すように、アプリケーションシステム100は、画像形成装置1、サーバ装置21、端末装置22、印刷専用機23、および通信回線29などによって構成される。
画像形成装置1は、通信回線29を介してサーバ装置21、端末装置22、および印刷専用機23と通信することができる。通信回線29として、LAN(Local Area Network)回線、インターネット、公衆回線、または専用線などが用いられる。
画像形成装置1は、コピー、PCプリント、ファックス、スキャン、ボックス、およびユビキタスなどのサービスを提供する機能を集約した装置である。一般に、「複合機」または「MFP(Multi Function Peripherals)」などと呼ばれることがある。
PCプリントのサービスは、端末装置22から受信した画像データに基づいて画像を用紙に印刷するサービスである。「ネットワークプリンティング」または「ネットワークプリント」などと呼ばれることもある。
ボックスのサービスは、ユーザごとに「ボックス」または「パーソナルボックス」などと呼ばれる記憶領域を与えておき、各ユーザが自分の記憶領域によって画像データなどを保存し管理するためのサービスである。ボックスは、パーソナルコンピュータにおける「フォルダ」または「ディレクトリ」に相当する。
スキャンのサービスは、用紙に記されている画像を読み取って画像データを生成し、記録媒体に保存しまたは他の装置へ送信するサービスである。保存先または送信先によって、サービスが細分化されている。例えば、保存先がボックスである「SCAN_TO_BOX」、送信先が電子メールアドレスである「SCAN_TO_EMAIL」、および送信先がFTP(File Transfer Protocol)サーバである「SCAN_TO_FTP」などのサービスがある。
ユビキタスサービスは、他の画像形成装置と連携してユーザのログインおよびデータの管理などを行うサービスである。
サーバ装置21は、FTPサーバであって、FTPによって他の装置へファイルを提供したり他の装置から受信したファイルを管理したりする。
端末装置22は、画像形成装置1の上述のサービスを遠隔的に使用するためのクライアントである。端末装置22として、パーソナルコンピュータ、スマートフォン、またはタブレットコンピュータなどが用いられる。
画像形成装置1は、図2に示すように、CPU(Central Processing Unit)10a、RAM(Random Access Memory)10b、VRAM(Video RAM)10c、ROM(Read Only Memory)10d、大容量記憶装置10e、タッチパネルディスプレイ10f、操作キーパネル10g、NIC(Network Interface Card)10h、モデム10i、スキャンユニット10j、プリントユニット10k、およびフィニッシャ10mなどによって構成される。
タッチパネルディスプレイ10fは、ユーザに対するメッセージを示す画面、ユーザがコマンドまたは情報を入力するための画面、およびCPU10aが実行した処理の結果を示す画面などを表示する。また、タッチパネルディスプレイ10fは、タッチされた位置を示す信号をCPU10aへ送る。
VRAM10cは、タッチパネルディスプレイ10fに表示させる画面のデータを記憶するために用いられる。
操作キーパネル10gは、いわゆるハードウェアキーボードであって、テンキー、スタートキー、ストップキー、およびファンクションキーなどによって構成される。
NIC10hは、TCP/IP(Transmission Control Protocol/Internet Protocol)などのプロトコルで他の装置との通信を行う。
モデム10iは、ファクシミリ端末との間でG3などのプロトコルで画像データをやり取りする。
スキャンユニット10jは、プラテンガラスの上にセットされたシートに記されている画像を読み取って画像データを生成する。
プリントユニット10kは、スキャンユニット10jによって読み取られた画像のほか、NIC10hまたはモデム10iによって他の装置から受信した画像を用紙に印刷する。
フィニッシャ10mは、プリントユニット10kによって画像が印刷された用紙つまり印刷物をステープラで綴じたり、パンチ穴を開けたりする。フィニッシャ10mは、いわゆるオプション装置であって、取り外すことができる。
ROM10dまたは大容量記憶装置10eには、画像形成装置1の全体的な管理または基本的な処理を行ったりユーザインタフェースを提供したりするソフトウェアとして、図3に示すオペレーティングシステム101およびMFPシステム102がインストールされている。オペレーティングシステム101またはMFPシステム102の機能をアプリケーションに提供するために、ネイティブアプリケーショプラットフォーム103が用意されている。
さらに、大容量記憶装置10eには、コピーアプリケーション401、スキャンアプリケーション402、およびボックスアプリケーション403のほか、ブラウザアプリケーション404、およびメニューアプリケーション405などがインストールされている。コピーアプリケーション401ないしメニューアプリケーション405などは、ネイティブアプリケーショプラットフォーム103を介して動作する。
また、大容量記憶装置10eには、IWS(Internal Web Server)用のソフトウェアであるウェブサーバシステム105がインストールされている。さらに、簡易設定コピーアプリケーション471、ワンタッチコピーアプリケーション472、スキャン送信アプリケーション473、ワンタッチスキャン送信アプリケーション474、およびメニューウェブアプリケーション475のほか、電子掲示板のアプリケーション、翻訳のアプリケーション、およびオンラインストレージのアプリケーションなどがインストールされている。これらのアプリケーションは、ウェブサーバシステム105を介して動作する。
このように、アプリケーションには、ネイティブアプリケーショプラットフォーム103を介して実行されるものもあれば、ウェブサーバシステム105を介して実行されるものもある。
以下、これらのアプリケーションを区別するために、ネイティブアプリケーショプラットフォーム103を介して実行されるアプリケーションを「ネイティブアプリケーション40」と記載する。一方、ウェブサーバシステム105を介して実行されるアプリケーションを「IWSアプリケーション47」と記載する。
コピーアプリケーション401、スキャンアプリケーション402、およびボックスアプリケーション403は、それぞれ、上述のコピー、スキャン、およびボックスの各サービスを提供するためのアプリケーションである。
コピーアプリケーション401によると、ユーザは、コピーに関するすべての項目(部数、カラー、用紙サイズ、倍率、読取解像度、出力解像度、印刷面、集約印刷、および仕上げなど)の条件を任意に設定し、コピーのジョブを画像形成装置1に実行させることができる。
スキャンアプリケーション402によると、ユーザは、スキャンに関するすべての項目の条件を任意に設定し、スキャンのジョブ(用紙から画像をスキャンして画像データを生成しそれを保存しまたは送信するジョブ)を画像形成装置1に実行させることができる。
ブラウザアプリケーション404は、ウェブブラウザである。メニューアプリケーション405は、図4のような、ネイティブアプリケーション40のボタンを含むメニュー画面50を表示し、ユーザが選択したボタンのネイティブアプリケーション40を起動するアプリケーションである。
ネイティブアプリケーション40は、基本的に画像形成装置1に固定的にインストールされている。
簡易設定コピーアプリケーション471は、コピーアプリケーション401と同様に、コピーのサービスをユーザへ提供する。上述の通りコピーアプリケーション401によるとコピーに関するすべての項目の条件を任意に設定することができたが、簡易設定コピーアプリケーション471によると、図5のような条件設定画面531がタッチパネルディスプレイ10fに表示される。ユーザは、特定の一部の項目の条件のみを、条件設定画面531を介して設定し、コピーのジョブを画像形成装置1に実行させることができる。
ワンタッチコピーアプリケーション472も、コピーアプリケーション401と同様に、コピーのサービスをユーザへ提供する。ワンタッチコピーアプリケーション472によると、図6のようなワンタッチ指令画面532がタッチパネルディスプレイ10fに表示される。ユーザは、中央のボタンを押すだけでジョブの指令を与えることができるが、予め決められた条件の通りにしかコピーのジョブを行わせることができない。
スキャン送信アプリケーション473は、スキャンアプリケーション402と同様に、スキャンのサービスをユーザへ提供する。上述の通りスキャンアプリケーション402によるとスキャンに関するすべての項目の条件を任意に設定することができたが、スキャン送信アプリケーション473によると、図7のような条件設定画面541がタッチパネルディスプレイ10fに表示される。ユーザは、特定の一部の項目の条件のみを、条件設定画面541を介して設定し、スキャンのジョブを実行させることができる。
ワンタッチスキャン送信アプリケーション474も、スキャンアプリケーション402と同様に、スキャンのサービスをユーザへ提供する。ワンタッチスキャン送信アプリケーション474によると、図8のようなワンタッチ指令画面542がタッチパネルディスプレイ10fに表示される。ユーザは、中央のボタンを押すだけでジョブの指令を与えることができるが、予め決められた条件の通りにしかスキャンのジョブを実行させることができない。
メニューウェブアプリケーション475は、図9のような、上に例示したネイティブアプリケーション40およびIWSアプリケーション47のうちの特定のアプリケーションのボタンを含むメニュー画面57を表示し、ユーザが選択したボタンのアプリケーションを起動するアプリケーションである。ユーザは、どのアプリケーションのボタンを配置するのかをカスタマイズすることができる。
IWSアプリケーション47は、主にソースファイルによって構成される画像ファイルまたは音声ファイルが含まれることもある。ソースファイルとして、ウェブページファイルまたはプログラムファイルが用いられる。
ウェブページファイルは、そのIWSアプリケーション47のウェブページを表示するためのファイルであって、マークアップ言語(例えば、HTML(Hypertext Markup Language)またはXML(Extensible Markup Language))またはスクリプト言語(例えば、PythonまたはJavaScript(登録商標))によって記述される。
プログラムファイルは、CGI(Common Gateway Interface)、例えば、PythonのWSGI(Web Server Gateway Interface)によって記述される。
1つのIWSアプリケーション47にソースファイルが複数用意されていることもある。また、ウェブページファイルが予め用意されておらず、ウェブブラウザからアクセスがあるごとにプログラムファイルによって新たに生成されることも、ある。
ユーザは、IWSアプリケーション47のインストールおよびアンインストールを自由に行うことができる。
さらに、大容量記憶装置10eには、ジョブマネージャ49がインストールされている。ジョブマネージャ49は、ユーザがネイティブアプリケーション40またはIWSアプリケーション47を用いてジョブの実行を指令すると、そのジョブをキューに登録する。そして、各ハードウェアの状況などに応じて、キューに登録されているジョブを順次、実行させる。
これらのソフトウェアを構成するモジュールまたはプログラムファイルは、必要に応じてRAM10bにロードされ、CPU10aによって実行される。大容量記憶装置10eとして、ハードディスクドライブまたはSSD(Solid State Drive)などが用いられる。
なお、オペレーティングシステム101、MFPシステム102、およびネイティブアプリケーショプラットフォーム103は、一般的な画像形成装置の従来のプラットフォームの要素の一部である。機種によっては、これらのすべての部分または一部分がファームウェアに相当する。一方、ウェブサーバシステム105は、ウェブアプリケーションを実行するために拡張した要素である。
さらに、IWSアプリケーション47は、正常に動作しない場合に、修正用プログラム48によって、正常に動作するように修正される。修正用プログラム48は、大容量記憶装置10eに予めインストールされている。そして、必要に応じてRAM10bにロードされ、CPU10aによって実行される。
修正用プログラム48は、ファームウェアの1つとして画像形成装置1にインストールされている。
以下、修正用プログラム48によるIWSアプリケーション47の修正の仕組みについて説明する。
修正用プログラム48は、図10に示すジョブ実績保存部481、ジョブ実績書込部482、失敗ジョブ検索部483、成功ジョブ検索部484、条件差異抽出部485、変更選択画面表示部486、ソースファイル読出部487、不具合個所更新部488、およびソースファイル書換部489などの機能を実現するプログラムである。
〔修正に必要な情報の収集〕
図11は、ジョブ実績データ61の例を示す図である。
ジョブ実績保存部481には、図11に示すように、画像形成装置1に与えられたジョブごとのジョブ実績データ61が保存される。
ジョブ実績データ61には、次の事項が示される。「ジョブ番号」は、そのジョブ実績データ61に係るジョブを識別するための番号であって、実行された順に付される。「サービス」は、上に例示したコピー、PCプリント、ファックス、SCAN_TO_BOX、SCAN_TO_EMAIL、およびSCAN_TO_FTPなど、画像形成装置1が提供するサービスのうち、そのジョブによって提供されるサービスである。
「使用アプリケーション」は、そのジョブのために使用されたアプリケーションである。「結果」は、ジョブの実行の成否である。「成功」は、そのジョブが成功したことを意味し、「エラー」は、失敗したことを意味する。「ジョブ条件」は、そのジョブの条件である。
ジョブ実績書込部482は、ジョブが実行されるごとに、そのジョブのジョブ実績データ61を生成し、ジョブ実績保存部481に書き込む。
このようにジョブが実行されるごとにジョブ実績書込部482によってジョブ実績データ61が生成され、ジョブ実績保存部481にジョブ実績データ61が蓄積される。
〔IWSアプリケーション47の修正の処理〕
図12は、変更選択画面55の例を示す図である。図13は、ソースコード47cの例を示す図である。
失敗ジョブ検索部483ないしソースファイル書換部489は、所定のタイミングでIWSアプリケーション47の書換えの処理を実行する。例えば、画像形成装置1の電源がオンになりオペレーティングシステムが起動したタイミングで実行する。または、画像形成装置1がスリープモードになる直前に実行する。
失敗ジョブ検索部483は、ジョブ実績保存部481から、結果として「エラー」を示しかつ使用アプリケーションとしていずれかのIWSアプリケーション47を示すものを検索する。以下、失敗ジョブ検索部483によって検索されたジョブ実績データ61を「失敗ジョブ実績データ61F」と記載する。
成功ジョブ検索部484は、失敗ジョブ実績データ61Fに示されるサービスと同じサービスを示しかつ結果として「成功」を示すジョブ実績データ61をジョブ実績保存部481から検索する。ただし、検索の対象を、その失敗ジョブ実績データ61Fに係るジョブよりも後に実行されたジョブのジョブ実績データ61に限定する。以下、成功ジョブ検索部484によって検索されたジョブ実績データ61を「成功ジョブ実績データ61S」と記載する。
なお、ジョブマネージャ49が、実行されたジョブの実績のデータをデータベース(例えば、ジョブ情報格納領域43)へ記録する場合は、ジョブ実績保存部481およびジョブ実績書込部482の代わりにジョブマネージャ49およびジョブ情報格納領域43を用いてもよい。この場合は、失敗ジョブ検索部483および成功ジョブ検索部484は、ジョブ実績データ61に相当するデータをジョブ情報格納領域43から検索すればよい。
条件差異抽出部485は、失敗ジョブ実績データ61Fに示されるジョブ条件および成功ジョブ実績データ61Sに示されるジョブ条件を比較することによって、相違する部分のデータを抽出する。
例えば、ジョブ番号が「0001」であるジョブ実績データ61が失敗ジョブ実績データ61Fであり、ジョブ番号が「0002」であるジョブ実績データ61が成功ジョブ実績データ61Sである場合は、失敗ジョブ実績データ61Fから「punch setting:true」および「output tray:Tray3」が抽出され、成功ジョブ実績データ61Sから「punch setting:false」および「output tray:Tray1」が抽出される。
「:」の左側つまり「punch setting」および「output tray」は、アプリケーションにおける処理用の項目名である。右側つまり「true」、「false」、「Tray3」、および「Tray1」は、項目に設定されている条件を示す値(いわゆる条件値)である。
つまり、条件差異抽出部485は、失敗ジョブ実績データ61Fおよび成功ジョブ実績データ61Sから、項目名は同一であるが条件値が相違するデータを抽出する。
変更選択画面表示部486は、失敗ジョブ実績データ61Fおよび成功ジョブ実績データ61Sから条件差異抽出部485によって抽出されたデータに基づいて、図12のような変更選択画面55をタッチパネルディスプレイ10fに表示させる。
「パンチ穴」および「排紙トレイ」は、ともに表示用の項目名であって、失敗ジョブ実績データ61Fから抽出された「punch setting:true」の「punch setting」および「output tray:Tray3」の「output tray」に基づいている。各項目について、表示用の項目名と処理用の項目名との対応関係が予め変更選択画面表示部486に用意されている。この対応関係に基づいて、表示用の項目名が変更選択画面55に配置される。後述する「あり」および「なし」などの条件値についても、同様である。
なお、表示用の項目名の代わりに処理用の項目名をそのまま変更選択画面55に配置してもよい。
「あり→なし」の矢印(→)の左側はつまり「あり」は、表示用の条件値であって、失敗ジョブ実績データ61Fの「punch setting:true」の「true」に対応している。同様に、右側つまり「なし」も表示用の条件値であって、成功ジョブ実績データ61Sの「punch setting:false」の「false」に対応している。
「あり→なし」は、パンチ穴を複写物に開ける項目の条件を「あり」から「なし」に変更するか否かをユーザに問い合せるためのメッセージである。
そのメッセージの右に、変更選択ボタン551および変更非選択ボタン552が1つずつ配置される。
ユーザは、「あり」から「なし」に変更したい場合は、変更選択ボタン551を押す。変更したくない場合は、変更非選択ボタン552を押す。
「トレイ3→トレイ1」についても、同様の仕組みによって変更選択画面55に各オブジェクト(メッセージおよびボタン)が配置される。ユーザは、複写物を排出するための排紙トレイを「トレイ3」から「トレイ1」に変更したい場合は、その項目に対応する変更選択ボタン551を押し、変更したくない場合は、その項目に対応する変更非選択ボタン552を押す。
ユーザは、各項目について条件を変更するか否かを決め、それに応じて変更選択ボタン551または変更非選択ボタン552を押す操作を行ったら、実行ボタン553を押す。
すると、ソースファイル読出部487は、失敗ジョブ実績データ61Fに使用アプリケーションとして示されるIWSアプリケーション47のソースファイルを大容量記憶装置10eから読み出す。
不具合個所更新部488は、ソースファイル読出部487によって読み出されたソースファイルを次のように更新する。以下、ワンタッチコピーアプリケーション472のソースファイルが読み出された場合を例に説明する。
不具合個所更新部488は、そのソースファイルに示されるソースコードの中から、更新対象項目に対応する個所を検索する。「更新対象項目」は、変更選択画面表示部486が失敗ジョブ実績データ61Fから抽出したデータに項目名が示されかつユーザが図12の変更選択画面55において変更選択ボタン551を押した項目である。成功ジョブ実績データ61Sから、その更新対象項目に対して設定されている条件値を抽出する。そして、そのソースコードの中の、その更新対象項目に対して設定されている条件値を、抽出した条件値に置き換える。
例えば、そのソースファイルにソースコードとして、図13(A)のようなソースコード47cが示されており、失敗ジョブ実績データ61Fおよび成功ジョブ実績データ61Sがそれぞれ、図11の通りジョブ番号が「0001」であるジョブ実績データ61およびジョブ番号が「0002」であるジョブ実績データ61であり、かつパンチ穴(punch setting)についてのみ変更選択ボタン551が押された場合は、「punch setting:true」の「true」を「false」に置き換える。
または、パンチ穴だけでなく排出トレイ(output tray)についても変更選択ボタン551が押された場合は、図13(B)のように、さらにソースコード47cの中の「output tray:Tray3」の「Tray3」を「Tray1」に置き換える。
このようにソースコードに対する条件値の置換えがなされることによって、ソースファイルが更新される。
ソースファイル書換部489は、大容量記憶装置10eに記憶されている古いソースファイル(例えば、図13(A)のソースコード47cのソースファイル)を、更新されたソースファイル(例えば、図13(B)のソースコード47cのソースファイル)に置き換える。つまり、ソースファイルの書換えを行う。これにより、ワンタッチコピーアプリケーション472が修正される。
なお、1つのIWSアプリケーション47について複数のソースファイルがある場合は、それぞれについて、上述の処理を行う。これにより、これらのソースファイルの一部または全部が書き換えられる。
ワンタッチコピーアプリケーション472によって実行されるジョブが、ワンタッチコピーアプリケーション472がインストールされた当初はエラーが生じないが、後にエラーが生じることがある。その原因の1つとして、フィニッシャ10mが画像形成装置1から取り外されたことが、考えられる。
しかし、修正用プログラム48によると、エラーが発生した後、同じサービスを提供する他のアプリケーション(ネイティブアプリケーション40またはIWSアプリケーション47)を用いて正常に実行されたジョブの情報に基づいてワンタッチコピーアプリケーション472を修正することができる。本例では、パンチ穴を開けないようにワンタッチコピーアプリケーション472が修正される。よって、修正後、エラーを生じることなくジョブを実行させることができる。
または、ワンタッチスキャン送信アプリケーション474によって実行されるジョブが、ワンタッチスキャン送信アプリケーション474がインストールされた当初はエラーが生じないが、後にエラーが生じることがある。その原因の1つとして、サーバ装置21へのログインに使用するパスワードが、インストールの後、しばらく経ってから変更されたことが、考えられる。
しかし、修正用プログラム48によると、エラーが発生した後、同じサービスを提供する他のアプリケーション(ネイティブアプリケーション40またはIWSアプリケーション47)を用いて正常に実行されたジョブの情報に基づいてワンタッチスキャン送信アプリケーション474を修正することができる。例えば、図11に示す、ジョブ番号が「0004」であるジョブ実績データ61を失敗ジョブ実績データ61Fとして用い、ジョブ番号が「0005」であるジョブ実績データ61を成功ジョブ実績データ61Sとして用いて、パスワードが変更後のもの(「efg987aaa」)になるようにワンタッチコピーアプリケーション472が修正される。よって、修正後、エラーを生じることなくジョブを実行させることができる。
図14は、修正用プログラム48による画像形成装置1の全体的な処理の流れの例を説明するフローチャートである。
次に、画像形成装置1が修正用プログラム48に基づいて実行する全体的な処理の流れを、図14のフローチャートを参照しながら説明する。
画像形成装置1は、電源がオンになりオペレーティングシステムが起動するなど、所定のタイミングが訪れると(#701でYes)、ジョブ実績保存部481の中から、「エラー」を結果として示すジョブ実績データ61を検索する(#702)。検索されたジョブ実績データ61は、以下、失敗ジョブ実績データ61Fとして用いられる。
検索した失敗ジョブ実績データ61Fに係るジョブがIWSアプリケーション47によって実行されたものであれば(#703でYes)、画像形成装置1は、その失敗ジョブ実績データ61Fに示されるサービスと同一のサービスを示しかつ結果として「成功」を示すジョブ実績データ61を検索する(#704)。ただし、検索の対象を、その失敗ジョブ実績データ61Fに係るジョブよりも後に実行されたジョブのジョブ実績データ61に限定する。検索されたジョブ実績データ61は、以下、成功ジョブ実績データ61Sとして用いられる。
成功ジョブ実績データ61Sがあった場合は(#705でYes)、画像形成装置1は、その失敗ジョブ実績データ61Fに示されるジョブ条件およびその成功ジョブ実績データ61Sに示されるジョブ条件を比較することによって、相違する部分のデータを抽出する(#706)。
そして、画像形成装置1は、抽出したデータに基づいて、変更選択画面55(図12参照)を表示する(#707)。
ここで、ユーザは、条件値を変更したい項目については、それに対応する変更選択ボタン551を押す。変更したくない項目については、それに対応する変更非選択ボタン552を押す。そして、実行ボタン553を押すことによって、変更を指令する。
すると、画像形成装置1は、変更選択画面55に対してなされた指定を受け付ける(#708)。少なくとも1つの項目について変更選択ボタン551が押された場合は(#709でYes)、その失敗ジョブ実績データ61Fに示されるIWSアプリケーション47のソースファイルを読み出し(#710)、ステップ#706で抽出したデータに示される項目(更新対象項目)に対応する個所を検索する(#711)。そして、その成功ジョブ実績データ61Sの中からその更新対象項目に対して設定されている条件値を抽出し、そのソースファイルに示されるソースコードの中の、その更新対象項目に対して設定されている条件値を、抽出した条件値に置き換える(#712)。
これにより、ソースファイルが更新される。画像形成装置1は、大容量記憶装置10eに記憶されている古いソースファイルを、更新したソースファイルに置き換える(#713)。
ステップ#702において複数のジョブ実績データ61が失敗ジョブ実績データ61Fとして得られた場合は、画像形成装置1は、それぞれの失敗ジョブ実績データ61Fについてステップ#703〜#713の処理および#714〜#715の処理を適宜、実行する。
または、画像形成装置1は、ジョブを実行するごとに(#714でYes)、そのジョブのジョブ実績データ61を生成し、ジョブ実績保存部481によって保存する(#715)。
画像形成装置1は、電源がオフになるまで、ステップ#701〜#715の処理を適宜、実行する。
なお、修正の際に失敗ジョブ実績データ61Fとして使用されたジョブ実績データ61をジョブ実績保存部481から削除してもよい。
本実施形態によると、不具合が生じるアプリケーションを従来よりも容易に画像形成装置に適するように修正することができる。
本実施形態では、失敗ジョブ実績データ61Fに対応する成功ジョブ実績データ61Sとして、(1)失敗ジョブ実績データ61Fに係るジョブ(失敗ジョブ)と同一のサービスを提供するためのジョブであること、(2)失敗ジョブよりも後に実行されたジョブであること、(3)成功したジョブであること、の3つの要件を満たすジョブのジョブ実績データ61を使用し、IWSアプリケーション47の修正を行った。
しかし、成功ジョブ実績データ61Sとして使用するジョブ実績データ61を例えば次のように、さらに限定してもよい。
上記の3つの要件に該当するジョブ実績データ61が複数ある場合は、最も古いジョブ実績データ61、つまり、失敗ジョブの後において最も先に実行されたジョブのジョブ実績データ61を使用する。
または、(4)宛先が失敗ジョブと同一であるジョブであることを、さらに要件として加えてもよい。または、(5)失敗ジョブにおける複写または送信の対象である画像データと同一の画像データを複写しまたは送信したジョブであることを、さらに要件として加えてもよい。または、(6)失敗ジョブの実行後、所定の時間以内に実行されたジョブであることを、さらに要件として加えてもよい。または、(4)〜(6)のいずれか2つまたはすべてを、さらに要件として加えてもよい。
(5)の要件を用いる場合は、画像データまたはその特徴を表わすデータ(例えば、ハッシュデータ)をジョブ実績データ61に含めてジョブ実績保存部481に記録しておく。そして、それに基づいて(5)の要件を満たすか否かを判別する。
(4)または(5)の要件を課すことによって、不具合のあるIWSアプリケーション47の修正を、そのIWSアプリケーション47の代わりにユーザが使用したアプリケーションのジョブ実績データ61を成功ジョブ実績データ61Sとして使用して行うことができる。よって、修正の正確性を高めることができる。
本実施形態では、画像形成装置1は、変更選択画面55においてユーザが変更選択ボタン551を選択した項目についてのみ、ソースコードの書換えを行ったが、ユーザに選択させることなく、条件値が相違するすべての項目について、書換えを行ってもよい。
本実施形態では、IWSアプリケーション47を画像形成装置1が修正したが、他の装置、例えばメンテナンス用のコンピュータが修正してもよい。
本実施形態では、画像形成装置1は、実行するのに失敗したIWSアプリケーション47を修正したが、このIWSアプリケーション47と同一のサービスを提供しかつエラーの原因として同一の条件値が設定されている他のIWSアプリケーション47も、修正してもよい。これにより、未だエラーを発生させていないが、不具合があると考えられる他のIWSアプリケーション47を予め修正することができる。
その他、アプリケーションシステム100、画像形成装置1の全体または各部の構成、処理内容、処理順序、データの構成、画面の構成などは、本発明の趣旨に沿って適宜変更することができる。
1 画像形成装置(アプリケーション修正装置)
40 ネイティブアプリケーション
47 IWSアプリケーション
472 ワンタッチコピーアプリケーション(不具合アプリケーション)
474 ワンタッチスキャン送信アプリケーション(不具合アプリケーション)
485 条件差異抽出部(抽出手段)
488 不具合個所更新部(修正手段)
61F 失敗ジョブ実績データ(第一の条件)
61S 成功ジョブ実績データ(第二の条件)

Claims (8)

  1. 画像形成装置において実行される複数のアプリケーションのうちのエラーを生じるアプリケーションである不具合アプリケーションを修正するアプリケーション修正装置であって、
    前記不具合アプリケーションを前記画像形成装置が実行した際の第一の条件と、前記複数のアプリケーションのうちの、当該不具合アプリケーションとの共通点を有する当該不具合アプリケーション以外のアプリケーションを当該不具合アプリケーションよりも後にエラーを生じることなく前記画像形成装置が実行した際の第二の条件と、に基づいて、当該不具合アプリケーションの中の不具合がある可能性のある不具合可能性個所を抽出する、抽出手段と、
    前記第二の条件に基づいて前記不具合可能性個所を更新することによって前記不具合アプリケーションを修正する修正手段と、
    を有することを特徴とするアプリケーション修正装置。
  2. 前記不具合アプリケーションは、特定の種類のジョブを実行するためのアプリケーションであって、
    前記共通点は、前記特定の種類のジョブを実行するためのアプリケーションであることである、
    請求項1に記載のアプリケーション修正装置。
  3. 前記特定の種類のジョブは、データを特定の宛先へ送信するジョブであって、
    前記抽出手段は、前記特定の宛先へデータを送信することが含まれる条件を前記第二の条件として用いて前記不具合可能性個所を抽出する、
    請求項2に記載のアプリケーション修正装置。
  4. 前記特定の種類のジョブは、画像を出力するジョブであって、
    前記抽出手段は、前記複数のアプリケーションのうちの、前記不具合アプリケーションにおける出力の対象の画像と同一の画像を出力するために用いられたアプリケーションが実行された際の条件を、前記第二の条件として用いて前記不具合可能性個所を抽出する、
    請求項2に記載のアプリケーション修正装置。
  5. 前記修正手段は、前記不具合可能性個所を更新することをユーザが許可した場合に、前記不具合アプリケーションを修正する、
    請求項1ないし請求項4のいずれかに記載のアプリケーション修正装置。
  6. 前記修正手段は、さらに、前記複数のアプリケーションのうち、前記不具合アプリケーション以外の、前記共通点を有するアプリケーションを修正する、
    請求項2に記載のアプリケーション修正装置。
  7. 画像形成装置において実行される複数のアプリケーションのうちのエラーを生じるアプリケーションである不具合アプリケーションを修正するアプリケーション修正方法であって、
    前記不具合アプリケーションを前記画像形成装置が実行した際の第一の条件と、前記複数のアプリケーションのうちの、当該不具合アプリケーションとの共通点を有する当該不具合アプリケーション以外のアプリケーションを当該不具合アプリケーションよりも後にエラーを生じることなく前記画像形成装置が実行した際の第二の条件と、に基づいて、当該不具合アプリケーションの中の不具合がある可能性のある不具合可能性個所を抽出し、
    前記第二の条件に基づいて前記不具合可能性個所を更新することによって前記不具合アプリケーションを修正する、
    ことを特徴とするアプリケーション修正方法。
  8. 画像形成装置において実行される複数のアプリケーションのうちのエラーを生じるアプリケーションである不具合アプリケーションを修正するコンピュータに用いられるコンピュータプログラムであって、
    前記コンピュータに、
    前記不具合アプリケーションを前記画像形成装置が実行した際の第一の条件と、前記複数のアプリケーションのうちの、当該不具合アプリケーションとの共通点を有する当該不具合アプリケーション以外のアプリケーションを当該不具合アプリケーションよりも後にエラーを生じることなく前記画像形成装置が実行した際の第二の条件と、に基づいて、当該不具合アプリケーションの中の不具合がある可能性のある不具合可能性個所を抽出する抽出処理を実行させ、
    前記第二の条件に基づいて前記不具合可能性個所を更新することによって前記不具合アプリケーションを修正する修正処理を実行させる、
    ことを特徴とするコンピュータプログラム。
JP2015089232A 2015-04-24 2015-04-24 アプリケーション修正装置、アプリケーション修正方法、およびコンピュータプログラム Active JP6547392B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015089232A JP6547392B2 (ja) 2015-04-24 2015-04-24 アプリケーション修正装置、アプリケーション修正方法、およびコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015089232A JP6547392B2 (ja) 2015-04-24 2015-04-24 アプリケーション修正装置、アプリケーション修正方法、およびコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2016207008A JP2016207008A (ja) 2016-12-08
JP6547392B2 true JP6547392B2 (ja) 2019-07-24

Family

ID=57487201

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015089232A Active JP6547392B2 (ja) 2015-04-24 2015-04-24 アプリケーション修正装置、アプリケーション修正方法、およびコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP6547392B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4636933B2 (ja) * 2005-05-09 2011-02-23 キヤノン株式会社 印刷制御装置および印刷制御方法
JP5028752B2 (ja) * 2005-06-10 2012-09-19 コニカミノルタビジネステクノロジーズ株式会社 自動アップデート機能付き処理装置、プログラムアップデート方法、およびコンピュータプログラム
JP5039414B2 (ja) * 2007-04-02 2012-10-03 キヤノン株式会社 制御装置、プログラム作成方法、及びプログラム
JP2011194634A (ja) * 2010-03-18 2011-10-06 Ricoh Co Ltd 画像形成装置、画像形成システム、画像形成制御方法、画像形成制御プログラム及び記録媒体

Also Published As

Publication number Publication date
JP2016207008A (ja) 2016-12-08

Similar Documents

Publication Publication Date Title
JP6455195B2 (ja) 操作画面提供システム、中継装置及びプログラム
JP4944812B2 (ja) 情報処理システムと情報処理方法とプログラム
JP4976021B2 (ja) ダウンロードシステム、拠点サーバ及びプログラム
JP4556978B2 (ja) 画像形成装置、公開情報利用方法、およびコンピュータプログラム
US10659652B2 (en) Communication system, communication device, method of controlling communication device, and program
JP2008135966A (ja) 画像処理装置、画像処理システム、画像処理装置におけるデータの管理方法、およびコンピュータプログラム
JP4244984B2 (ja) 情報処理システム、印刷装置、コンテンツアクセスシステム、情報処理システム用プログラム、印刷装置用プログラム、およびコンテンツアクセスシステム用プログラム
CN100432860C (zh) 图象形成装置及其控制方法
JP6547392B2 (ja) アプリケーション修正装置、アプリケーション修正方法、およびコンピュータプログラム
JP6617564B2 (ja) 画像形成装置、アプリケーション実行方法、アプリケーション書換方法、およびコンピュータプログラム
JP6801238B2 (ja) 画像形成装置、プログラム提供装置、プログラム提供方法、およびコンピュータプログラム
JP2020170984A (ja) 情報処理装置、画像処理装置及びプログラム
JP2007279988A (ja) 情報処理装置およびドライバプログラム
JP4986234B2 (ja) 情報処理装置
JP2003241932A (ja) プリンタおよびプリンタシステム
JP5140351B2 (ja) 情報処理装置
JP2007257516A (ja) 情報処理装置、画像処理装置、情報処理方法、プログラム、および記録媒体
JP6127696B2 (ja) 処理装置、表示方法、およびコンピュータプログラム
JP6435902B2 (ja) ランチャ提供装置、画像形成装置、ランチャ提供方法、およびコンピュータプログラム
JP2020057071A (ja) 印刷方法、印刷指示装置及び印刷指示プログラム
JP2019153870A (ja) 画像形成装置、ウェブページ表示方法、およびコンピュータプログラム
JP6623813B2 (ja) 画像形成装置、メッセージ表示方法、およびコンピュータプログラム
JP6273798B2 (ja) アプリケーションシステム、画像形成装置、ウェブサーバ、アプリケーション起動方法、およびコンピュータプログラム
JP2019091215A (ja) サーバー、アプリケーション管理方法およびアプリケーション管理プログラム
JP6672591B2 (ja) 情報処理装置、サービス享受方法、およびコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180319

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181212

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20181212

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: 20190528

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190610

R150 Certificate of patent or registration of utility model

Ref document number: 6547392

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150