JP4636029B2 - 画像形成装置及びプログラム - Google Patents

画像形成装置及びプログラム Download PDF

Info

Publication number
JP4636029B2
JP4636029B2 JP2007016245A JP2007016245A JP4636029B2 JP 4636029 B2 JP4636029 B2 JP 4636029B2 JP 2007016245 A JP2007016245 A JP 2007016245A JP 2007016245 A JP2007016245 A JP 2007016245A JP 4636029 B2 JP4636029 B2 JP 4636029B2
Authority
JP
Japan
Prior art keywords
information
software component
unit
application module
access
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.)
Expired - Fee Related
Application number
JP2007016245A
Other languages
English (en)
Other versions
JP2008182650A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2007016245A priority Critical patent/JP4636029B2/ja
Publication of JP2008182650A publication Critical patent/JP2008182650A/ja
Application granted granted Critical
Publication of JP4636029B2 publication Critical patent/JP4636029B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)
  • Control Or Security For Electrophotography (AREA)

Description

本発明は、画像形成装置及びプログラムの技術分野に関する。
コピー機能やファクシミリ送受信機能、スキャナ機能、プリンタ機能等を有したいわゆる複合機と呼ばれる画像形成装置、画像処理装置等の情報処理装置では、ユーザの要求に応じて、新規のソフトウェア機能を追加し、或いは、認証機器等のハードウェアを追加する場合がある。
アプリケーションの追加で機能拡張を容易にするものとして、プリンタ、コピー及びファクリミリ機能を備えた複合機において、階層を持つ構成が提案されている。共通の機能を下位の層で機能提供を行うことにより、アプリケーションの追加で機能拡張を容易にする技術が存在する(例えば、特許文献1参照。)。
また、他の公報記載の技術として、アプリケーション及びプラットフォームは診断用に通常とは別のスレッドを用意し、擬似的な(プロセスに閉じた)診断を実施可能とする技術が存在する(例えば、特許文献2参照。)。
特開2002−82806号公報 特開2003−78688号公報
ここで、例えば、認証機器等のハードウェアを追加する場合に、オプションソフトウェアを新規に追加し、或いは、USB等の汎用インターフェースなどを用いて認証機器やスキャナ、ストレージデバイス等のハードウェアを追加する場合に、新たな機能を簡単に追加できる必要がある。
ところで、このように新規に機能を追加した情報処理装置でなんらかの故障が発生した場合、既存の機能だけではなく新規に追加した機能を含む情報処理装置全体の診断を実施する必要がある。これを実現するためには新規に追加した機能を診断するために既存の診断プログラムを修正する必要があるため、新規機能追加の際には、拡張する機能の追加だけでは十分ではなく、診断プログラム等既存のソフトウェアの入れ替えも必要であった。
本発明は、かかる技術的課題を解決するためになされたものであって、その目的とするところは、新規にソフトウェアを追加する際に、既存の診断プログラムを変更することなく、既存のソフトウェアと同様に新規に追加したソフトウェアの情報収集又は診断ができる画像形成装置を提供することにある。
上記課題を解決するために、本発明にかかる画像形成装置は、アプリケーションモジュールとアプリケーションモジュールに対応したインターフェースとを含むソフトウェアコンポーネントを取得する取得手段と、取得手段により取得されるソフトウェアコンポーネントからインターフェースを取得して動作解析又は診断に用いられるインターフェース情報を生成するI/F情報生成手段と、I/F情報生成手段により生成されたインターフェース情報を記憶するI/F情報記憶手段とを含むことを特徴とする。
上記画像形成装置において、異常発生時に出力されるエラーコードに基づいて、異常が発生したアプリケーションモジュールを特定する特定手段と、特定手段により特定されたアプリケーションモジュールに対するインターフェース情報をI/F情報記憶手段から取得するI/F情報取得手段と、I/F情報取得手段により取得されたインターフェース情報に対応するソフトウェアコンポーネントにアクセスして、ソフトウェアコンポーネントの状態情報を収集する情報収集手段とを更に含むことを特徴とする。
上記画像形成装置において、I/F情報記憶手段は、依存関係のある他のソフトウェアコンポーネントのインターフェース情報をI/F情報記憶手段が記憶しているインターフェース情報と関係付けて記憶し、I/F情報取得手段は、特定手段により特定されたアプリケーションモジュールと依存関係のある他のソフトウェアコンポーネントのインターフェース情報をI/F情報記憶手段から取得し、情報収集手段は、I/F情報取得手段により取得された他のソフトウェアコンポーネントにアクセスして状態情報を収集することを特徴とする。
上記画像形成装置において、I/F情報取得手段は、特定手段により特定された他のソフトウェアコンポーネントのうち依存関係が少ない他のソフトウェアコンポーネントから順にインターフェース情報を取得することを特徴とする。
上記画像形成装置において、情報収集手段により収集された状態情報を、依存関係を有するソフトウェアコンポーネントと共に表示する表示手段を更に含むことを特徴とする。
上記画像形成装置において、異常発生時に出力されるエラーコードに基づいて、異常が発生したアプリケーションモジュールを特定する特定手段と、特定手段により特定されたアプリケーションモジュールに対するインターフェース情報をI/F情報記憶手段から取得するI/F情報取得手段と、I/F情報取得手段により取得されたインターフェース情報に対応するソフトウェアコンポーネントにアクセスして、ソフトウェアコンポーネントを診断する診断手段とを更に含むことを特徴とする。
上記画像形成装置において、I/F情報記憶手段は、依存関係のある他のソフトウェアコンポーネントのインターフェース情報をI/F情報記憶手段が記憶しているインターフェース情報と関係付けて記憶し、I/F情報取得手段は、特定手段により特定されたアプリケーションモジュールと依存関係のある他のソフトウェアコンポーネントのインターフェース情報をI/F情報記憶手段から取得し、診断手段は、特定手段により特定されたアプリケーションモジュールのソフトウェアコンポーネントへのアクセスに先行して、I/F情報取得手段により取得された他のソフトウェアコンポーネントにアクセスして診断することを特徴とする。
上記画像形成装置において、診断手段による診断結果を保持する保持手段を更に含み、診断手段は、一回の診断において同じ他のソフトウェアコンポーネントに対して複数回の診断要求がされた場合に、2回目以降の診断要求には保持手段にて保持された初回の診断結果を出力することを特徴とする。
上記課題を解決するために、本発明にかかるプログラムは、コンピュータに、取得されるソフトウェアコンポーネントの中から、ソフトウェアコンポーネントに含まれるインターフェースを取得して動作解析又は診断に用いられるインターフェース情報を生成するI/F情報生成機能と、生成されたインターフェース情報をI/F情報記憶手段に記憶させるI/F情報記憶機能とを実現させることを特徴とする。
上記課題を解決するために、本発明にかかるプログラムは、コンピュータに、異常発生時に出力されるエラーコードに基づいて、異常が発生したアプリケーションモジュールを特定する特定機能と、特定されたアプリケーションモジュールのインターフェース情報を、ソフトウェアコンポーネントの動作解析又は診断に用いられるインターフェース情報を記憶したI/F情報記憶手段から取得するI/F情報取得機能と、取得されたインターフェース情報に対応するソフトウェアコンポーネントにアクセスして、ソフトウェアコンポーネントの状態情報を収集する情報収集機能とを実現させることを特徴とする。
請求項1にかかる発明によれば、動作確認又は診断に用いられるインターフェース情報が記憶されたI/F情報記憶手段を検索するだけでソフトウェアコンポーネントのインターフェースを知ることができ、本発明を採用しない場合に比べて、取得されるソフトウェアコンポーネントの情報収集又は診断が容易となる。
請求項2にかかる発明によれば、本発明を採用しない場合に比べて、異常発生時に特定されたアプリケーションモジュールのソフトウェアコンポーネントからの状態情報の収集が容易となる。
請求項3にかかる発明によれば、本発明を採用しない場合に比べて、アプリケーションモジュールの異常検出時に依存関係のある他のソフトウェアコンポーネントからの状態情報の収集が容易となる。
請求項4にかかる発明によれば、本発明を採用しない場合に比べて、情報収集の対象となるソフトウェアコンポーネントを絞り込むことができ、迅速な情報収集が実現できる。
請求項5にかかる発明によれば、本発明を採用しない場合に比べて、異常検出の原因追及が容易となる。
請求項6にかかる発明によれば、本発明を採用しない場合に比べて、異常発生時に特定されたアプリケーションモジュールのソフトウェアコンポーネントの診断が容易となる。
請求項7にかかる発明によれば、本発明を採用しない場合に比べて、アプリケーションモジュールの異常検出時に依存関係のある他のソフトウェアコンポーネントを先行して診断できる。
請求項8にかかる発明によれば、本発明を採用しない場合に比べて、重複した診断を省くことができる。
請求項9にかかる発明によれば、動作確認又は診断に用いられるインターフェース情報が記憶されたI/F情報記憶手段を検索するだけでソフトウェアコンポーネントのインターフェースを知ることができ、本発明を採用しない場合に比べて、取得されるソフトウェアコンポーネントの情報収集又は診断が容易となる。
請求項10にかかる発明によれば、本発明を採用しない場合に比べて、異常発生時に特定されたアプリケーションモジュールのソフトウェアコンポーネントからの状態情報の収集が容易となる。
(第一の実施例)
以下、本発明を実施するための最良の形態(実施の形態)を図面を用いて説明する。
図1は、本発明にかかる画像形成装置の一例としての複合機10の構成概略を示す図である。
複合機10は、システムと、情報収集用プログラムと、診断用プログラムとを有している。また、複合機10は、工場出荷時に予め既にインストールされた自社製の複数のソフトウェアコンポーネントX,Y,Zと、工場出荷後に追加してインストールされた自社又は他社α、β製の1又は複数のソフトウェアコンポーネントA〜Dとを備えて構成されている。
ここで、システムとは、複合機10にインストールされているソフトウェアコンポーネントの各種情報を管理している部分、ソフト及びハードである。
また、システムは、インストールされているソフトウェアコンポーネントの名称のリスト、ソフトウェアコンポーネントが定義しているI/F、ソフトウェアコンポーネントが依存する他のソフトウェアコンポーネントのリストを管理している。
情報収集用プログラムは、動作解析のために複合機10の状態情報を収集するプログラムである。診断用プログラムは、複合機10にインストールされたソフトウェアコンポーネントの状態を診断するためのプログラムである。情報収集用プログラムと診断用プログラムとはいずれも複合機10に予めインストールされている。これらのプログラムの動作については後述する。
新たなソフトウェアコンポーネントがインストールされると、そのソフトウェアコンポーネントが備えているI/Fがシステムに登録される((1)I/F情報の登録)。そして、情報収集用プログラム又は診断用プログラムは、異常が検出されたときに、システムにアクセスして登録されているI/F情報を検索して取得する((2)I/F情報の検索)。そして、取得したI/F情報を基にして情報収集用プログラム又は診断用プログラムはソフトウェアコンポーネントにアクセスし、ソフトウェアコンポーネントが有するI/Fにアクセスする((3)I/Fへのアクセス)。
(画像形成装置の構成)
図2は、本発明の画像形成装置の一例としての複合機10を説明するための機能ブロック図である。
複合機10は、取得手段の一例としてのソフト記憶部20と、I/F情報生成部22と、I/F情報記憶部23と、I/F情報取得部25と、情報収集部26と、診断部27と、表示部28と、特定部29とを有して構成される。
ソフト記憶部20は、例えばハードディスク等の情報記憶手段により構成される。ソフト記憶部20には、ソフトウェアコンポーネントA11A〜ソフトウェアコンポーネントD11D等が記憶されている。ここで、ソフトウェアコンポーネントA11Aは、例えば、複合機10の制御ソフトウェアを構成するアプリケーションモジュール12Aと、通信を制御するインターフェース(以下、I/Fとする)13Aとを含んで構成される。I/F13Aには、例えば、情報収集用I/Fや診断用I/Fがある。
尚、複合機10にインストールされるソフトウェアコンポーネントA11A〜ソフトウェアコンポーネントD11Dには、複合機10を製造した製造者が作成したソフトウェアコンポーネントの他に、製造者とは関係のないいわゆるサードベンダα、βが製作した制御ソフトウェア等のソフトウェアコンポーネントも含まれる。工場出荷時にインストールされているソフトウェアコンポーネントもあるし、また、出荷後に追加されるソフトウェアコンポーネントもある。
I/F情報生成部22は、例えばCPU(中央処理装置)等がI/F情報生成工程(図4のステップ106)などを実行することにより実現される。I/F情報生成部22は、ソフトウェアコンポーネントA11A等をソフト記憶部20にインストールするとき、ソフト記憶部20に記憶されるソフトウェアコンポーネントA11A等からI/F13Aを取得してI/F情報記憶部23への記憶に適した形式(図3参照)のI/F情報を生成して出力する。
I/F情報記憶部23は、例えばハードディスク等により構成される。I/F情報記憶部23は、複合機10にインストールされてソフト記憶部20に記憶されているすべてのソフトウェアコンポーネントの内訳であるインストール情報と、I/F情報生成部22にて生成されたソフトウェアコンポーネントA11A等のI/F情報とを記憶する。
また、I/F情報記憶部23が記憶するインストール情報が、後述する図3に示す形式にて記憶されている。更に、I/F情報記憶部23は、後述するアクセスオブジェクトを予め記憶している。尚、I/F情報には、例えば、情報収集用I/F情報scan()と診断用I/F情報diag()とがある。
ここで、I/F情報生成部22によって生成されるI/F情報の例を説明する。
図3は、I/F情報生成部22によって生成されるソフトウェアコンポーネントのI/F情報のデータ構造の例を示す図である。
図3に示すように、複合機10にインストールされているソフトウェアコンポーネントのベンダー名、ソフトウェアコンポーネントの名称、各ソフトウェアコンポーネントが依存する他のソフトウェアコンポーネント群のリスト、各ソフトウェアコンポーネントが提供しているI/Fがリスト形式で記憶されている。
図2に戻って、I/F情報取得部25は、例えばCPUが情報取得工程(図5のステップ203,204)などを実行することにより実現される。I/F情報取得部25は、エラーコードに基づくソフトウェアコンポーネントA11A等(目的ソフトウェアコンポーネント)のI/F情報を求めて、I/F情報記憶部23を検索してI/F情報を取得する。
情報収集部26は、例えばCPUが情報収集工程(図5のステップ205)などを起動することにより実現される。情報収集部26は、I/F情報取得部25にて取得されたI/F情報を用いて目的ソフトウェアコンポーネントA11AのI/Fにアクセスし、その目的ソフトウェアコンポーネントA11Aの状態情報を収集する。
診断部27は、例えばCPUが図6に示す診断用プログラムを起動することにより実現される。I/F情報取得部25にて取得されたI/F情報と診断のためのアクセスプログラムであるアクセスオブジェクトとを用いて目的ソフトウェアコンポーネントA11Aにアクセスし、検査プログラムを動作させて目的ソフトウェアコンポーネントA11Aを診断する。
表示部28は、例えば複合機10に備わった液晶表示部などの表示ユニットが該当する。表示部28は、情報収集部26にて情報収集された状態情報又は診断部27にて診断された診断結果を、情報収集又は診断の対象となった目的ソフトウェアコンポーネントA11Aと共に表示する。
特定部29は、例えばCPUがエラーコード取得工程(図5のステップ201,202)などを実行することにより実現される。特定部29は、取得したエラーコードに基づいて情報収集又は診断の対象となるソフトウェアコンポーネント(目的ソフトウェアコンポーネント)を特定する。
(インストール時のI/F情報の登録)
CD−ROM等の情報記録媒体、或いは、インターネットを通じて入手したソフトウェアコンポーネントA11A等を複合機10にインストールするときに、複合機10が内部で行うシステムへのI/F情報の登録を以下に説明する。
図4は、ソフトウェアコンポーネントA11Aを複合機10にインストールする時の登録作業を説明するためのフローチャートである。
複合機10においてソフトウェアコンポーネントA11Aのインストールが開始されると、I/F情報生成部22においてI/F情報生成プログラムが起動する。
ソフト記憶部20は、ソフトウェアコンポーネントA11Aを記憶(インストール)する(インストール工程)(ステップ101)。
インストール工程が終了したとき、I/F情報生成部22は、インストールが完了したソフトウェアコンポーネントA11Aのインストール情報をI/F情報記憶部23に登録する(インストール情報登録工程)(ステップ102)。具体的には、標準オブジェクトファイルを、I/F情報記憶部23内の登録を示す所定のディレクトリに置く。
続いて、I/F情報生成部22は、インストールしたソフトウェアコンポーネントA11A等を取得する(取得工程)(ステップ103)。
I/F情報生成部22は、取得したソフトウェアコンポーネントA11AがI/F13Aを有しているかを判断する(判断工程)(ステップ104)。
そして、ソフトウェアコンポーネントA11AがI/F13Aを有しているとI/F情報生成部22が判断したとき(ステップ104:Y)、I/F情報生成部22はソフトウェアコンポーネントA11AからI/F13Aを取得する(I/F取得工程)(ステップ105)。
I/F情報生成部22は、取得したI/F13Aに基づいてI/F情報を生成する(I/F情報生成工程)(ステップ106)。具体的には、抽出したI/F13Aを図3に示すI/F情報記録部23の記録に適した形式に変換してI/F情報を生成する。
これに対して、判断工程(ステップ104)にてソフトウェアコンポーネントA11AはI/F13Aを有していないとI/F情報生成部22が判断したとき(ステップ104:N)、I/F情報生成部22はソフトウェアコンポーネント名を抽出してI/F情報として出力する(ソフトウェアコンポーネント名抽出工程)(ステップ121)。
I/F情報生成工程(ステップ106)又はソフトウェアコンポーネント名抽出工程(ステップ121)が終了した後、I/F情報生成部22は生成したI/F情報をI/F情報記憶部23に送り、I/F情報記憶部23はI/F情報を記憶する(I/F情報記憶工程)(ステップ107)。以上により、インストールを終了する。
これにより、インストールされたソフトウェアコンポーネントのI/F情報はI/F情報記憶部23に記憶される。後述する異常検出時にI/F情報取得部25がI/F情報記憶部23にアクセスすることで、情報収集又は診断すべき目的ソフトウェアコンポーネントを知ることが可能となる。
(情報収集)
以上でソフトウェアコンポーネントのインストールを説明したので、次に、異常を検出したときに複合機10が行う動作解析のための情報収集の動作を以下に説明する。
図5は、異常を検出したときの複合機10内部での情報収集用プログラムの動作を説明するためのフローチャートである。
異常を検出してユーザが情報収集用プログラムを起動すると、本プログラムは動作を開始する。
特定部29は、異常を検出したときのエラーコードを取得する(エラーコード取得工程)(ステップ201)。
そして、特定部29は、取得したエラーコードに関連するアプリケーションモジュールを特定する(特定のための判断工程)(ステップ202)。具体的には、エラーコードに関連するアプリケーションモジュールは多くの場合予め定まっているので、取得したエラーコードに基づいて関連するアプリケーションモジュールを特定する。
アプリケーションモジュールを特定できた場合(ステップ202:Y)、I/F情報取得部25は、特定したアプリケーションモジュールの情報収集用I/F情報をI/F情報記憶部23から取得する。具体的には、I/F情報取得部25は、特定されたアプリケーションモジュールに基づいてI/F情報記憶部23に記憶されている情報収集用I/F情報を検索し(情報収集用I/F情報検索工程)(ステップ203)、検出したエラーコードに関連するI/Fを有するソフトウェアコンポーネントをすべて抽出して、リスト形式で取得する。このとき、抽出したソフトウェアコンポーネントにアクセスするためのオブジェクト(アクセスオブジェクト)をI/F情報記憶部23から取得する(検索結果取得工程)(ステップ204)。
取得した情報収集用I/F情報に基づいて情報収集部26はソフトウェアコンポーネントにアクセスし、取得したアクセスオブジェクトを用いて特定したアプリケーションモジュールに対応するソフトウェアコンポーネントにアクセスし、アクセスしたソフトウェアコンポーネントのインターフェースを呼び出すオブジェクトを取得する。そして、そのオブジェクトを使ってI/Fを呼び出し、そのソフトウェアコンポーネントの情報を収集する(情報収集工程)(ステップ205)。具体的には、情報収集部26は、エラー発生前のそのソフトウェアコンポーネントの内部データの値を取得する。
ここで、内部データとは、ジョブ管理用ソフトウェアコンポーネントであれば、現在実行しているジョブの情報、動作中のジョブの数などである。情報収集工程(ステップ205)では、監視用スレッドを動作させて、通常動作時の(即ち、エラー発生前の)スレッドのトレース情報やスタックの情報を取得するようにしても良い。
これに対して、関連するアプリケーションモジュールが予め定まっていないエラーコードを取得した場合など、特定部29がアプリケーションモジュールを特定できない場合(ステップ202:N)、情報収集部26はインストールされているすべてのソフトウェアコンポーネントに順次アクセスをする。
まず、I/F情報取得部25はI/F情報記憶部23にアクセスして、ソフト記憶部20にインストールされているすべてのソフトウェアコンポーネントのインストール情報と、I/F情報と、アクセスオブジェクトとを取得する(インストール情報取得工程)(ステップ221)。ここで、インストール情報は複合機10にインストールされているすべてのソフトウェアコンポーネントを含むが、I/F情報とアクセスオブジェクトは本実施の形態の記憶形式に適合した形式のソフトウェアコンポーネントだけを含んでいる。
続いて、情報収集部26がソフトウェアコンポーネントA11A〜ソフトウェアコンポーネントD11Dにアクセスして状態情報を収集する(情報収集工程)(ステップ222)。このとき、アクセスするソフトウェアコンポーネントに対応するI/F情報とアクセスオブジェクトとを取得できていれば、それを用いてソフトウェアコンポーネントにアクセスする。
これに対して、アクセスするソフトウェアコンポーネントに対応するI/F情報とアクセスオブジェクトとを取得していない場合には、情報収集部26は、I/F情報とアクセスオブジェクトを有しない状態で直接ソフトウェアコンポーネントにアクセスする。
すべてのソフトウェアコンポーネントにアクセスしていない場合(判断工程:ステップ223:N)、情報収集工程(ステップ222)を繰り返し実行する。
そして、複合機10にインストールされているすべてのソフトウェアコンポーネントにアクセスして情報を収集し終えたとき(判断工程:ステップ223:Y)、取得したソフトウェアコンポーネントから異常発生の原因となったソフトウェアコンポーネントを推測する(原因コンポ推測工程)(ステップ224)。
具体的には、例えば、収集した状態情報に基づいて、通常動作時とは異なる状態情報を有するソフトウェアコンポーネントに異常が発生しているかも知れないと推測する。或いは、収集した状態情報を別の検査プログラムを用いて解析し、異常発生の原因を推測する。
情報収集工程(ステップ205)の終了後、或いは、原因コンポ推測工程(ステップ224)の終了後、収集した状態情報と動作解析結果とを表示部28が表示して(表示工程)(ステップ206)、情報収集用プログラムを終了する。
以上により、エラーコードに関連するアプリケーションモジュール12Aの情報収集用I/F情報がI/F情報記憶部23に記憶されている場合、I/F情報取得部25がI/F情報記憶部23にアクセスするだけで情報収集用I/F情報を取得でき、情報収集部26の情報収集が容易にできる。また、情報収集用I/F情報がI/F情報記憶部23に記憶されていない場合であっても、従来どおりの方法で、情報収集部26はアプリケーションモジュールにアクセスして状態情報を収集することが可能である。
(診断)
以上に説明した情報収集は、異常検出の前後の動作を示すログや各変数の内容のダンプなどの情報収集を目的とし、収集した状態情報を別の検査プログラムにて解析することを想定している。これに対して、以下に説明する診断は、異常を検出したときに複合機10が異常個所を検出するために、アプリケーションモジュール内で検査プログラムを動作させる点で相違する。
図6は、異常を検出したときの複合機10内部での診断用プログラムの動作を説明するためのフローチャートである。
異常を検出したユーザによって診断用プログラムが診断部27において起動されると、本プログラムは動作を開始する。
特定部29は、異常を検出したときのエラーコードを取得する(エラーコード取得工程)(ステップ301)。
そして、特定部29は、取得したエラーコードに関連するアプリケーションモジュールを特定する(特定のための判断工程)(ステップ302)。例えば、複合機10がコピー実行中にコピーアプリケーションの異常が発生すると、特定部29はコピーの実行ができなかった旨のエラーコードをコピーアプリケーションモジュールから取得する。ユーザが診断部27に対して診断要求をすると、特定部29はエラーコードに基づいてエラーコードに関連するコピーアプリケーションモジュールを特定する。
アプリケーションモジュールを特定できた場合(ステップ302:Y)、I/F情報取得部25はI/F情報記憶部23にアクセスして特定したアプリケーションモジュールの診断用I/F情報diag()を検索し(診断用I/F情報検索工程)(ステップ303)、検出したエラーコードに関連する診断用I/F情報diag()を有するソフトウェアコンポーネントをすべて抽出して、リスト形式で取得する。このとき、I/F情報取得部25は、診断用I/F情報diag()と、抽出したソフトウェアコンポーネントにアクセスするためのアクセスオブジェクトをI/F情報記憶部23から併せて取得する(検索結果取得工程)(ステップ304)。
取得した診断用I/F情報diag()に基づいて、診断部27はソフトウェアコンポーネントA11A〜ソフトウェアコンポーネントD11Dにアクセスし、アクセスしたソフトウェアコンポーネントA11A〜ソフトウェアコンポーネントD11Dが内部に有している検査プログラムを実行させる(検査プログラム実行工程)(ステップ305)。
そして、検査結果である診断結果を取得する(診断結果取得工程)(ステップ306)。
これに対して、アプリケーションモジュールを特定できない場合(ステップ302:N)、診断部27はインストールされているすべてのソフトウェアコンポーネントに順次アクセスをする。
具体的には、I/F情報取得部25がI/F情報記憶部23にアクセスして、ソフト記憶部20にインストールされているすべてのソフトウェアコンポーネントのインストール情報と、I/F情報と、アクセスオブジェクトとを取得する(インストール情報取得工程)(ステップ321)。
続いて、診断部27がソフトウェアコンポーネントにアクセスして診断する(診断工程)(ステップ322)。アクセスするソフトウェアコンポーネントに対応するI/F情報とアクセスオブジェクトとを取得できていれば、それを用いてソフトウェアコンポーネントにアクセスする。
これに対して、アクセスするソフトウェアコンポーネントに対応するI/F情報とアクセスオブジェクトとを取得していない場合には、情報収集部26は、I/F情報とアクセスオブジェクトを有しない状態で直接ソフトウェアコンポーネントにアクセスして診断する。
すべてのソフトウェアコンポーネントにアクセスしていない場合(判断工程:ステップ323:N)、診断工程(ステップ322)を繰り返し実行する。
そして、診断結果を取得したとき(ステップ306)、或いは、複合機10にインストールされているすべてのソフトウェアコンポーネントにアクセスして診断したとき(判断工程:ステップ323:Y)、表示部28は取得した検査結果である診断結果を表示して(表示工程)(ステップ307)、診断用プログラムを終了する。
尚、診断用I/Fを備えていないソフトウェアコンポーネントに関しては、表示工程(ステップ307)において診断結果に替えてそのソフトウェアコンポーネントは診断用I/Fを有しない旨を表示するようにしても良い。
以上により、エラーコードに関連するアプリケーションモジュールの診断用I/F情報がI/F情報記憶部23に記憶されている場合、I/F情報取得部25がI/F情報記憶部23にアクセスするだけで診断用I/F情報を取得でき、診断部27による診断が容易にできる。また、診断用I/F情報がI/F情報記憶部23に記憶されていない場合であっても、診断部27はアプリケーションモジュールにアクセスして診断することが可能である。
第一の実施例によれば、ソフトウェアコンポーネントインストール時にI/F情報生成部22が生成したI/F情報がI/F情報記憶部23に記憶されるので、I/F情報取得部25はI/F情報記憶部23にアクセスするだけでI/F情報の取得が可能となる。
第一の実施例によれば、新規のソフトウェアコンポーネントを追加した場合であっても、追加したソフトウェアコンポーネントに対する情報収集又は診断を既存のソフトウェアコンポーネントと同様に実現することができる。これにより、情報収集用プログラムを変更することなく、新規に追加されたソフトウェアコンポーネントの情報収集が可能となり、機能追加が容易になるとともに、適切な情報収集が可能となる。
第一の実施例によれば、新規ソフトウェアコンポーネントの開発の際に、ソフトウェアコンポーネントに対する情報収集機能または診断機能を容易に作成することが可能になると共に、関連するソフトウェアコンポーネントの開発が少なくて済むので、インストールパッケージの作成簡易化、インストール対象ソフトウェアコンポーネントの削減による管理の簡略化(バージョンの整合を取るなど)が可能となる。
第一の実施例によれば、異常検出時に、特定部29が異常発生に関係するアプリケーションモジュールを特定するので、特定されたアプリケーションモジュールに限定して情報収集や診断を実施することにより、情報収集や診断の時間を短くできる。
尚、第一の実施例では、異常検出時にユーザによる操作をトリガーとして情報収集用プログラム及び診断用プログラムが起動する例を説明したが、必ずしも異常検出時に限定されるわけではない。ソフトウェアコンポーネントの状況を知りたくてユーザがPC(図示省略)を操作して、複合機10内部の情報収集や診断をする場合にも適用可能である。
また、図5又は図6に示すフローチャートのプログラムは、工場出荷後にソフトウェアコンポーネントの新たな追加を行わない複合機にも適用可能である。
(第二の実施例)
上記第一の実施例では、異常が発生したアプリケーションモジュールはそれを含むソフトウェアコンポーネントが異常発生の原因を有している場合であったが、第二の実施例では、他のソフトウェアコンポーネントに依存して動作するソフトウェアコンポーネントに異常が発生した場合に本発明を適用する例を説明する。
(依存関係)
第二の実施例は、ソフトウェアコンポーネントは動作する際に他のソフトウェアコンポーネントと依存関係がある例である。ここで、依存関係とは、あるソフトウェアコンポーネントの動作時に他のソフトウェアコンポーネントの動作を伴う関係をいう。この依存関係は、図3に示したように、I/F情報生成部22によって生成されるI/F情報の各ソフトウェアコンポーネントが依存している他のソフトウェアコンポーネント群のリストに含まれる。依存するソフトウェアコンポーネントの数から、依存関係の多寡がわかる。例えば、各レイヤのソフトウェアコンポーネントは、同列のレイヤ又は下位のレイヤのソフトウェアコンポーネントに依存し、上位のレイヤのソフトウェアコンポーネントには依存しないので、通常は一番下のレイヤのソフトウェアコンポーネントがもっとも依存関係が少ない。
(画像形成装置の構成)
図7は、第二の実施例にかかる複合機15を説明するための機能ブロック図である。
図2に示す第一の実施例と同じ構成部は同じ参照符号を用いることで以下の説明を省略する。
複合機15は、I/F情報記憶部41と、I/F情報取得部42と、保持部43とを有して構成される。
I/F情報記憶部41は、例えばハードディスク等で構成される。I/F情報記憶部41は、アプリケーションモジュールの実行と依存関係のあるソフトウェアコンポーネント(第二ソフトウェアコンポーネント)を、アプリケーションモジュールを含むソフトウェアコンポーネント(第一ソフトウェアコンポーネント)と関係付けて蓄積する。
I/F情報取得部42は、例えばCPUが依存関係抽出工程(図8のステップ406)などを実行することで実現される。I/F情報取得部42は、I/F情報記憶部41を検索して、特定部29により特定された第一ソフトウェアコンポーネントと依存関係のある第二ソフトウェアコンポーネントを抽出する。
保持部43は、例えばメモリ等で構成される。保持部43は、診断のための情報を保持する。
(インストール時の動作)
以上の構成を有する複合機15がソフトウェアコンポーネントA11A等をインストールしたときに、複合機15が内部で行うI/F情報の登録作業を以下に説明する。
図8は、依存関係を有しているソフトウェアコンポーネントのインストール時の登録作業を説明するためのフローチャートである。
複合機15においてソフトウェアコンポーネントA11Aのインストールが開始されると、I/F情報生成部22においてI/F情報生成プログラムが起動する。
ソフト記憶部20は、ソフトウェアコンポーネントA11Aをインストールする(インストール工程)(ステップ401)。
インストール工程(ステップ401)が終了したとき、I/F情報生成部22は、インストールが完了したソフトウェアコンポーネントA11Aのインストール情報をI/F情報記憶部41に登録する(インストール情報登録工程)(ステップ402)。
続いて、I/F情報生成部22が、インストールしたソフトウェアコンポーネントA11A等を取得する(取得工程)(ステップ403)。
I/F情報生成部22は、取得したソフトウェアコンポーネントA11AがI/F13Aを有しているか否かを判断する(判断工程)(ステップ404)。
そして、ソフトウェアコンポーネントA11AがI/F13Aを有しているとI/F情報生成部22が判断したとき(ステップ404:Y)、I/F情報生成部22はソフトウェアコンポーネントA11AからI/F13Aを取得する(I/F取得工程)(ステップ405)。
I/F情報生成部22は、取得したI/F13Aに基づいて、アプリケーションモジュールの実行と依存関係のある他のソフトウェアコンポーネント(第二ソフトウェアコンポーネント)を抽出する(依存関係抽出工程)(ステップ406)。そして、I/F情報生成部22は、抽出した第二ソフトウェアコンポーネントを、アプリケーションモジュールを含む第一ソフトウェアコンポーネントと関係付けて、I/F情報を生成する(I/F情報生成工程)(ステップ407)。
これに対して、判断工程(ステップ404)にてソフトウェアコンポーネントA11AはI/F13Aを有していないとI/F情報生成部22が判断したとき(ステップ404:N)、I/F情報生成部22はソフトウェアコンポーネント名を抽出してI/F情報として出力する(ソフトウェアコンポーネント名抽出工程)(ステップ421)。
I/F情報生成工程(ステップ407)又はソフトウェアコンポーネント名抽出工程(ステップ421)が終了した後、I/F情報生成部22は生成したI/F情報をI/F情報記憶部41に送り、I/F情報記憶部41はI/F情報を記憶する(I/F情報記憶工程)(ステップ408)。以上により、インストールを終了する。
これにより、インストールされた第一ソフトウェアコンポーネントのI/F情報が、依存関係を有する第二ソフトウェアコンポーネントと関係付けられてI/F情報記憶部41に蓄積される。後述する異常検出時にI/F情報取得部42がI/F情報記憶部41にアクセスすることで、情報収集又は診断すべき目的ソフトウェアコンポーネントの依存関係の範囲を知ることが可能となる。
(情報収集)
以上に説明したフローチャートに従って、インストールされた第一ソフトウェアコンポーネントのI/F情報は、依存関係を有する第二ソフトウェアコンポーネントと関係付けられてI/F情報記憶部41に記憶されたので、以下では、複合機15が実際に使用されて異常が発生したときの情報収集の動作を説明する。
図9は、異常が発生したときの複合機15内部での情報収集用プログラムの動作を説明するためのフローチャートである。
異常を検出してユーザが情報収集用プログラムを起動すると、本プログラムは動作を開始する。
特定部29は、異常を検出したときのエラーコードを取得する(エラーコード取得工程)(ステップ501)。
そして、特定部29は、取得したエラーコードに基づいて、関連するアプリケーションモジュールを特定する(特定のための判断工程)(ステップ502)。
アプリケーションモジュールを特定できた場合(ステップ502:Y)、I/F情報取得部42は、特定したアプリケーションモジュールに対応する第一ソフトウェアコンポーネントと依存関係を有する第二ソフトウェアコンポーネントの情報収集用I/F情報を、I/F情報記憶部41から取得する。具体的には、I/F情報取得部42が、I/F情報記憶部41に記憶されている第二ソフトウェアコンポーネントの情報収集用I/F情報を検索し(情報収集用I/F情報検索工程)(ステップ503)、検出したエラーコードに関連する情報収集用I/Fを有する第二ソフトウェアコンポーネントをすべて抽出して、リスト形式で取得する(検索結果取得工程)(ステップ504)。
そして、I/F情報取得部42は、取得した第二ソフトウェアコンポーネントの中で依存関係の少ない第二ソフトウェアコンポーネントを抽出する(依存関係抽出工程)(ステップ505)。具体的には、I/F情報取得部42は、取得したリストの中で依存しているソフトウェアコンポーネントの数とアプリケーションモジュールとを抽出する。
そして、I/F情報取得部42は、抽出したアプリケーションモジュールの情報収集用I/F情報と、アクセスするためのアクセスオブジェクトとを、依存関係の数の少ない順にI/F情報記憶部41から取得する(I/F情報取得工程)(ステップ506)。
取得した情報収集用I/F情報に基づいて情報収集部26は第二ソフトウェアコンポーネントにアクセスし、取得したアクセスオブジェクトを用いて特定したアプリケーションモジュールに対応する第二ソフトウェアコンポーネントにアクセスし、アクセスした第二ソフトウェアコンポーネントのI/Fを呼び出すオブジェクトを取得する。そして、そのオブジェクトを使ってI/Fを呼び出し、エラー発生前の内部データの値等の情報を収集する(情報収集工程)(ステップ507)。或いは、監視用スレッドを動作させて、通常動作時のスレッドのトレース情報やスタックの情報を取得するようにしても良い。
これに対して、アプリケーションモジュールを特定できない場合(ステップ502:N)、情報収集部26はインストールされているすべてのソフトウェアコンポーネントに順次アクセスをする。
まず、I/F情報取得部42がI/F情報記憶部41にアクセスして、ソフト記憶部20にインストールされているすべてのソフトウェアコンポーネントのインストール情報と、I/F情報と、アクセスオブジェクトとを取得する(インストール情報取得工程)(ステップ521)。
続いて、情報収集部26がソフトウェアコンポーネントにアクセスして情報を収集する(情報収集工程)(ステップ522)。このとき、アクセスするソフトウェアコンポーネントに対応するI/F情報とアクセスオブジェクトとを取得できていれば、それを用いてソフトウェアコンポーネントにアクセスする。
これに対して、アクセスするソフトウェアコンポーネントに対応するI/F情報とアクセスオブジェクトとを取得していない場合には、情報収集部26は、I/F情報とアクセスオブジェクトを有しない状態で直接ソフトウェアコンポーネントにアクセスする。
すべてのソフトウェアコンポーネントにアクセスしていない場合(判断工程)(ステップ523:N)、情報収集工程(ステップ522)を繰り返して実行する。
そして、複合機15にインストールされているすべてのソフトウェアコンポーネントにアクセスして情報を収集し終えたとき(判断工程:ステップ523:Y)、取得したソフトウェアコンポーネントから異常発生の原因となったソフトウェアコンポーネントを推測する(原因コンポ推測工程)(ステップ524)。
情報収集工程(ステップ507)の終了後、或いは、原因コンポ推測工程(ステップ524)の終了後、収集した状態情報と動作解析結果とを表示部28が表示して(表示工程)(ステップ508)、情報収集用プログラムを終了する。
以上により、エラーコードに関連するアプリケーションモジュールに対応する第一ソフトウェアコンポーネントと依存関係を有する第二ソフトウェアコンポーネントの情報収集用I/F情報がI/F情報記憶部41に記憶されている場合、I/F情報取得部42がI/F情報記憶部41にアクセスするだけで第二ソフトウェアコンポーネントの情報収集用I/F情報を取得でき、情報収集部26の情報収集が容易にできる。また、情報収集用I/F情報がI/F情報記憶部41に記憶されていない場合であっても、従来どおりの方法で、情報収集部26はアプリケーションモジュールにアクセスして情報を収集することが可能である。
(診断)
次に、異常が発生したときの診断の動作を説明する。
図10は、異常を検出したときの複合機15内部での診断用プログラムの動作を説明するためのフローチャートである。
異常を検出したユーザによって診断用プログラムが診断部27において起動されると、本プログラムは動作を開始する。
特定部29は、異常を検出したときのエラーコードを取得する(エラーコード取得工程)(ステップ601)。
そして、特定部29は、取得したエラーコードに基づいて関連するアプリケーションモジュールを特定する(特定のための判断工程)(ステップ602)。
アプリケーションモジュールを特定できた場合(ステップ602:Y)、I/F情報取得部42はI/F情報記憶部41にアクセスして、特定したアプリケーションモジュールに対応する第一ソフトウェアコンポーネントと依存関係を有する第二ソフトウェアコンポーネントの診断用I/F情報を検索する(診断用I/F情報検索工程)(ステップ603)。
そして、I/F情報取得部42は、検出したエラーコードに関連する第一ソフトウェアコンポーネントと依存関係を有する第二ソフトウェアコンポーネントの診断用I/Fを有する第二ソフトウェアコンポーネントをすべて抽出して、リスト形式でI/F情報記憶部41から取得する(検索結果取得工程)(ステップ604)。
その後、I/F情報取得部42は、取得した第二ソフトウェアコンポーネントの中で依存関係の少ない第二ソフトウェアコンポーネントを抽出する(依存関係抽出工程)(ステップ605)。
そして、I/F情報取得部42は、抽出したアプリケーションモジュールの診断用I/F情報と、アクセスするためのアクセスオブジェクトとを、依存関係の数の少ない順にI/F情報記憶部41から取得する(I/F情報取得工程)(ステップ606)。
取得した診断用I/F情報に基づいて、診断部27は第二ソフトウェアコンポーネントにアクセスし、アクセスした第二ソフトウェアコンポーネントが内部に有している検査プログラムを実行させる(検査プログラム実行工程)(ステップ607)。
そして、診断部27は検査結果である診断結果を取得する(検査結果取得工程)(ステップ608)。具体的には、診断用I/Fから各第二ソフトウェアコンポーネントの内部データを取得する。内部データとは、異常発生時に実行していたジョブの情報やジョブの数などである。
これに対して、アプリケーションモジュールを特定できない場合(ステップ602:N)、診断部27はインストールされているすべてのソフトウェアコンポーネントに順次アクセスをする。
具体的には、I/F情報取得部42がI/F情報記憶部41にアクセスして、ソフト記憶部20にインストールされているすべてのソフトウェアコンポーネントのインストール情報と、I/F情報と、アクセスオブジェクトとを取得する(インストール情報取得工程)(ステップ621)。ここで、インストール情報は複合機10にインストールされているすべてのソフトウェアコンポーネントを含むが、I/F情報とアクセスオブジェクトは本実施の形態の記憶形式に適合した形式のソフトウェアコンポーネントだけを含んでいる。
続いて、診断部27がソフトウェアコンポーネントにアクセスして診断する(診断工程)(ステップ622)。アクセスするソフトウェアコンポーネントに対応するI/F情報とアクセスオブジェクトとを取得できていれば、それを用いてソフトウェアコンポーネントにアクセスする。
これに対して、アクセスするソフトウェアコンポーネントに対応するI/F情報とアクセスオブジェクトとを取得していない場合には、情報収集部26は、I/F情報とアクセスオブジェクトを有しない状態で直接ソフトウェアコンポーネントにアクセスして診断する。
すべてのソフトウェアコンポーネントにアクセスしていない場合(判断工程:ステップ623:N)、診断工程(ステップ622)を繰り返して実行する。
そして、診断結果を取得したとき(ステップ608)、或いは、複合機15にインストールされているすべてのソフトウェアコンポーネントにアクセスして診断したとき(判断工程:ステップ623:Y)、表示部28は診断結果とを表示して(表示工程)(ステップ609)、診断用プログラムを終了する。
以上により、エラーコードに関連するアプリケーションモジュールに対応する第一ソフトウェアコンポーネントと依存関係を有する第二ソフトウェアコンポーネントの診断用I/F情報がI/F情報記憶部41に記憶されている場合、I/F情報取得部42がI/F情報記憶部41にアクセスするだけで第二ソフトウェアコンポーネントの診断用I/F情報を取得でき、診断部27による診断が容易にできる。また、診断用I/F情報がI/F情報記憶部41に記憶されていない場合であっても、診断部27はアプリケーションモジュールにアクセスして診断することが可能である。
尚、第二の実施例において、複合機15は、診断部27による診断結果を保持する保持部43を備える構成としても良い。診断部27は、一回の診断において同じ第二ソフトウェアコンポーネントに対して複数回のアクセス要求がされた際に、2回目以降のアクセス要求には保持部43にて保持された初回の診断結果を用いることもできる。
例えば、上位のレイヤの第一ソフトウェアコンポーネントから診断を行ったとき、各第一ソフトウェアコンポーネントは依存している第二ソフトウェアコンポーネントの診断機能を呼び出すので、複数の第一ソフトウェアコンポーネントから呼び出される第二ソフトウェアコンポーネントも存在し得る。より具体的は、ジョブ管理のソフトウェアコンポーネントは、コピーアプリケーションモジュールからもスキャンアプリケーションモジュールからも呼び出される。これにより、診断の繰り返しを省き、迅速な診断が可能となる。
第二の実施例によれば、エラーコードに関連するアプリケーションモジュールが依存関係を有する場合に、依存関係の少ないレイヤ(下位のレイヤ)から診断を行うので、対象となるソフトウェアコンポーネントを絞り込むことができ、情報収集又は診断が迅速且つ容易に実行することができる。
図4,5,6に示したフローチャートに対応するプログラムをフレキシブルディスク又はハードディスク等の情報記録媒体に記録しておき、又はこれらのプログラムをインターネット等のネットワークを介して配信して記録しておき、これを複合機10が有する汎用のコンピュータ等により読み出して実行させることにより、このコンピュータ等を複合機10の一部として機能させることも可能である。
図8,9,10に示したフローチャートに対応するプログラムをフレキシブルディスク又はハードディスク等の情報記録媒体に記録しておき、又はこれらのプログラムをインターネット等のネットワークを介して配信して記録しておき、これを複合機15が有する汎用のコンピュータ等により読み出して実行させることにより、このコンピュータ等を複合機15の一部として機能させることも可能である。
本発明にかかる画像形成装置の構成概略を示す図である。 本発明の画像形成装置の一例としての複合機を説明するための機能ブロック図である。 I/F情報生成部によって生成されるソフトウェアコンポーネントのI/F情報のデータ構造の例を示す図である。 ソフトウェアコンポーネントをインストールする時の登録作業を説明するためのフローチャートである。 異常を検出したときの複合機内部での情報収集用プログラムの動作を説明するためのフローチャートである。 異常を検出したときの複合機内部での診断用プログラムの動作を説明するためのフローチャートである。 第二の実施例にかかる複合機を説明するための機能ブロック図である。 依存関係を有しているソフトウェアコンポーネントのインストール時の登録作業を説明するためのフローチャートである。 異常が発生したときの複合機内部での情報収集用プログラムの動作を説明するためのフローチャートである。 異常を検出したときの複合機内部での診断用プログラムの動作を説明するためのフローチャートである。
符号の説明
10,15…複合機(画像形成装置)、11A〜11D…ソフトウェアコンポーネント、12A…アプリケーションモジュール、13A…インターフェース(I/F)、20…ソフト記憶部、22…I/F情報生成部、23…I/F情報記憶部、25…I/F情報取得部、26…情報収集部、27…診断部、28…表示部、29…特定部、41…I/F情報記憶部、42…I/F情報取得部、43…保持部

Claims (8)

  1. アプリケーションモジュールと、エラー発生前のソフトウェアコンポーネントの情報を収集する情報収集手段が当該ソフトウェアコンポーネントにアクセスするために用いる情報とから構成される当該ソフトウェアコンポーネントを自装置に新たに追加する追加手段と、
    前記ソフトウェアコンポーネントが自装置に追加される際に、追加された当該ソフトウェアコンポーネントに前記情報収集手段がアクセスするために用いる情報を、追加された当該ソフトウェアコンポーネントから取得する第1の情報取得手段と、
    前記第1の情報取得手段により取得された、前記情報収集手段がアクセスするために用いる情報を記憶する情報記憶手段と、
    異常発生時に出力されるエラーコードに基づいて、前記エラーが発生したソフトウェアコンポーネントのアプリケーションモジュールを特定する特定手段と、
    前記特定手段により特定された前記アプリケーションモジュールに基づいて、当該アプリケーションモジュールに関連するソフトウェアコンポーネントに前記情報収集手段がアクセスするために用いる情報を前記情報記憶手段から取得する第2の情報取得手段とを備え、
    前記情報収集手段は、前記第2の情報取得手段により取得された、当該情報収集手段がアクセスするために用いる情報を使用することにより、前記エラーが発生したソフトウェアコンポーネントにアクセスして、当該エラー発生前の当該ソフトウェアコンポーネントの情報を取得することを特徴とする画像形成装置。
  2. 前記情報記憶手段は、前記情報収集手段がアクセスするために用いる情報が当該情報記憶手段に記憶されている一のソフトウェアコンポーネントと依存関係のある他のソフトウェアコンポーネントにおける、当該情報収集手段がアクセスするために用いる情報を、当該一のソフトウェアコンポーネントにおける、当該情報収集手段がアクセスするために用いる情報と関係付けて記憶し、
    前記第2の情報取得手段は、前記特定手段により特定された前記アプリケーションモジュールと依存関係のある前記他のソフトウェアコンポーネントにおける、前記情報収集手段がアクセスするために用いる情報を、前記情報記憶手段から取得し、
    前記情報収集手段は、前記第2の情報取得手段により取得された前記他のソフトウェアコンポーネントにアクセスして当該他のソフトウェアコンポーネントの情報を収集することを特徴とする請求項に記載の画像形成装置。
  3. 前記第2の情報取得手段は、前記特定手段により特定された前記アプリケーションモジュールと依存関係のある前記他のソフトウェアコンポーネントのそれぞれについて、当該他のソフトウェアコンポーネントと当該依存関係にあるソフトウェアコンポーネントの数が少ない当該他のソフトウェアコンポーネントから順に、前記情報収集手段がアクセスするために用いる情報を取得することを特徴とする請求項に記載の画像形成装置。
  4. 前記情報収集手段により収集された前記情報を、前記依存関係を有する前記ソフトウェアコンポーネントと共に表示する表示手段を更に含むことを特徴とする請求項に記載の画像形成装置。
  5. アプリケーションモジュールと、エラー発生前のソフトウェアコンポーネントの情報を収集する診断手段が当該ソフトウェアコンポーネントにアクセスするために用いる情報とから構成される当該ソフトウェアコンポーネントを自装置に新たに追加する追加手段と、
    前記ソフトウェアコンポーネントが自装置に追加される際に、追加された当該ソフトウェアコンポーネントに前記診断手段がアクセスするために用いる情報を、追加された当該ソフトウェアコンポーネントから取得する第1の情報取得手段と、
    前記第1の情報取得手段により取得された、前記診断手段がアクセスするために用いる情報を記憶する情報記憶手段と、
    異常発生時に出力されるエラーコードに基づいて、前記エラーが発生したソフトウェアコンポーネントのアプリケーションモジュールを特定する特定手段と、
    前記特定手段により特定された前記アプリケーションモジュールに基づいて、当該アプリケーションモジュールに関連するソフトウェアコンポーネントに前記診断手段がアクセスするために用いる情報を前記情報記憶手段から取得する第2の情報取得手段とを備え
    前記診断手段は、前記第2の情報取得手段により取得された、当該診断手段がアクセスするために用いる情報を使用することにより、前記エラーが発生したソフトウェアコンポーネントにアクセスして、当該エラー発生前の当該ソフトウェアコンポーネントを診断することを特徴とする画像形成装置。
  6. 前記情報記憶手段は、前記診断手段がアクセスするために用いる情報が当該情報記憶手段に記憶されている一のソフトウェアコンポーネントと依存関係のある他のソフトウェアコンポーネントにおける、当該診断手段がアクセスするために用いる情報を、当該一のソフトウェアコンポーネントにおける、当該診断手段がアクセスするために用いる情報と関係付けて記憶し、
    前記第2の情報取得手段は、前記特定手段により特定された前記アプリケーションモジュールと依存関係のある前記他のソフトウェアコンポーネントにおける、前記診断手段がアクセスするために用いる情報を、前記情報記憶手段から取得し、
    前記診断手段は、前記特定手段により特定された前記アプリケーションモジュールの前記ソフトウェアコンポーネントへのアクセスに先行して、前記第2の情報取得手段により取得された前記他のソフトウェアコンポーネントにアクセスして診断することを特徴とする請求項に記載の画像形成装置。
  7. 前記診断手段による診断結果を保持する保持手段を更に含み、
    前記診断手段は、一回の診断において同じ前記他のソフトウェアコンポーネントに対して複数回の診断要求がされた場合に、2回目以降の当該診断要求には前記保持手段にて保持された初回の前記診断結果を出力することを特徴とする請求項に記載の画像形成装置。
  8. コンピュータに、
    アプリケーションモジュールと、エラー発生前のソフトウェアコンポーネントの情報を収集する情報収集機能が当該ソフトウェアコンポーネントにアクセスするために用いる情報とから構成される当該ソフトウェアコンポーネントが画像形成装置に新たに追加される際に、追加された当該ソフトウェアコンポーネントに当該情報収集機能がアクセスするために用いる情報を、追加された当該ソフトウェアコンポーネントから取得する第1の情報取得機能と、
    前記第1の情報取得機能により取得された、前記情報収集機能がアクセスするために用いる情報を情報記憶手段に記憶させる情報記憶機能と、
    異常発生時に出力されるエラーコードに基づいて、前記エラーが発生したソフトウェアコンポーネントのアプリケーションモジュールを特定する特定機能と、
    特定された前記アプリケーションモジュールに基づいて、当該アプリケーションモジュールに関連するソフトウェアコンポーネントに前記情報収集機能がアクセスするために用いる情報を前記情報記憶手段から取得する第2の情報取得機能とを実現させ
    前記情報収集機能は、前記第2の情報取得機能により取得された、当該情報収集機能がアクセスするために用いる情報を使用することにより、前記エラーが発生したソフトウェアコンポーネントにアクセスして、当該エラー発生前の当該ソフトウェアコンポーネントの情報を取得することを特徴とするプログラム。
JP2007016245A 2007-01-26 2007-01-26 画像形成装置及びプログラム Expired - Fee Related JP4636029B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007016245A JP4636029B2 (ja) 2007-01-26 2007-01-26 画像形成装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007016245A JP4636029B2 (ja) 2007-01-26 2007-01-26 画像形成装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2008182650A JP2008182650A (ja) 2008-08-07
JP4636029B2 true JP4636029B2 (ja) 2011-02-23

Family

ID=39726192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007016245A Expired - Fee Related JP4636029B2 (ja) 2007-01-26 2007-01-26 画像形成装置及びプログラム

Country Status (1)

Country Link
JP (1) JP4636029B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103034577B (zh) * 2011-10-08 2015-10-07 腾讯科技(深圳)有限公司 一种定位关机慢的方法及装置
JP5923934B2 (ja) * 2011-11-08 2016-05-25 株式会社リコー 画像処理装置及びプログラム
US9405601B2 (en) 2012-12-20 2016-08-02 Mitsubishi Electric Corporation In-vehicle apparatus and program
JP7127378B2 (ja) * 2018-06-19 2022-08-30 コニカミノルタ株式会社 画像処理装置、自己診断方法及びプログラム

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001243089A (ja) * 2000-02-25 2001-09-07 Mitsubishi Electric Corp ソフトウェア検証装置及びソフトウェア検証方法
JP2001282671A (ja) * 2000-01-24 2001-10-12 Fujitsu Ltd 障害情報収集装置及び記録媒体及びプログラム
JP2002082806A (ja) * 2000-07-05 2002-03-22 Ricoh Co Ltd 画像形成装置、画像形成方法およびプログラム
JP2002333996A (ja) * 2001-02-14 2002-11-22 Ricoh Co Ltd 遠隔情報収集の方法及びシステム
JP2003044322A (ja) * 2001-07-27 2003-02-14 Nec Soft Ltd 障害解析支援システム及び方法
JP2003078688A (ja) * 2001-08-31 2003-03-14 Ricoh Co Ltd 画像形成装置およびソフトウェア診断方法
JP3570395B2 (ja) * 2001-06-06 2004-09-29 日本電気株式会社 故障解析情報自動採取システム及び故障解析情報自動採取プログラム
JP3701303B2 (ja) * 1991-06-20 2005-09-28 アイシーエル システムズ アーベー コンピュータシステムの監視方法及び装置
JP2007018332A (ja) * 2005-07-08 2007-01-25 Toshiba Corp ソフトウェアの異常検出システム
JP2008026937A (ja) * 2006-07-18 2008-02-07 Hitachi Electronics Service Co Ltd 保守情報採取プログラム、保守情報採取方法、情報機器、及び外部記憶媒体

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06266686A (ja) * 1993-03-11 1994-09-22 Hitachi Ltd プログラムの保守情報取得方法
JPH08212177A (ja) * 1995-02-03 1996-08-20 Shinnittetsu Joho Tsushin Syst Kk 分散処理システムにおけるアプリケーションプログラムの監視方式
JPH11143737A (ja) * 1997-11-07 1999-05-28 Hitachi Ltd オブジェクト管理方法
JPH11306032A (ja) * 1998-04-21 1999-11-05 Mitsubishi Electric Corp 障害発生状態処理方法およびオペレーティングシステム

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3701303B2 (ja) * 1991-06-20 2005-09-28 アイシーエル システムズ アーベー コンピュータシステムの監視方法及び装置
JP2001282671A (ja) * 2000-01-24 2001-10-12 Fujitsu Ltd 障害情報収集装置及び記録媒体及びプログラム
JP2001243089A (ja) * 2000-02-25 2001-09-07 Mitsubishi Electric Corp ソフトウェア検証装置及びソフトウェア検証方法
JP2002082806A (ja) * 2000-07-05 2002-03-22 Ricoh Co Ltd 画像形成装置、画像形成方法およびプログラム
JP2002333996A (ja) * 2001-02-14 2002-11-22 Ricoh Co Ltd 遠隔情報収集の方法及びシステム
JP3570395B2 (ja) * 2001-06-06 2004-09-29 日本電気株式会社 故障解析情報自動採取システム及び故障解析情報自動採取プログラム
JP2003044322A (ja) * 2001-07-27 2003-02-14 Nec Soft Ltd 障害解析支援システム及び方法
JP2003078688A (ja) * 2001-08-31 2003-03-14 Ricoh Co Ltd 画像形成装置およびソフトウェア診断方法
JP2007018332A (ja) * 2005-07-08 2007-01-25 Toshiba Corp ソフトウェアの異常検出システム
JP2008026937A (ja) * 2006-07-18 2008-02-07 Hitachi Electronics Service Co Ltd 保守情報採取プログラム、保守情報採取方法、情報機器、及び外部記憶媒体

Also Published As

Publication number Publication date
JP2008182650A (ja) 2008-08-07

Similar Documents

Publication Publication Date Title
US11307961B2 (en) Techniques for traversing representations of source code
US7908525B2 (en) Data processor, data processing program, and data processing system
JP2007087112A (ja) 故障診断装置
US20170255456A1 (en) System, management device, information processing device, control method for management device, control method for information processing device, and computer-readable storage medium
US9892019B2 (en) Use case driven stepping component automation framework
JP4636029B2 (ja) 画像形成装置及びプログラム
JP6478965B2 (ja) 情報処理装置、その方法及びプログラム
JP6163707B2 (ja) 組み込み機器、プログラム作成装置、プログラム
JP2013182445A (ja) 障害対応支援装置、障害対応支援システム、障害対応支援方法、及び障害対応支援プログラム
EP1891522A1 (en) Integrated instrument driver network
CN110716874A (zh) 一种国产操作***硬件兼容性测试方法
US8327189B1 (en) Diagnosing an incident on a computer system using a diagnostics analyzer database
JP4037079B2 (ja) 画像形成装置、プロセス監視方法およびこの方法をコンピュータに実行させるプログラム
JP2017201736A (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
WO2012067034A1 (ja) 設計・開発支援システム
JP2009237749A (ja) 障害情報収集方式
JP5379911B2 (ja) 動作検証装置、動作検証方法および動作検証プログラム
CN115344490A (zh) 一种测试软件产品的方法、装置、存储介质及电子设备
JP5758544B2 (ja) 画面情報収集計算機、画面情報収集方法及び計算機読み取り可能な記憶媒体
JP2014056547A (ja) 障害対応支援装置、障害対応支援システム、障害対応支援方法、及び障害対応支援プログラム
JP4957506B2 (ja) 管理プログラム、情報処理装置および情報処理システム
JP2004192293A (ja) ソフトウェア検証支援ツール
JP4903278B2 (ja) 動作検証装置、動作検証方法および動作検証プログラム
JP2010102433A (ja) 情報処理装置及びプログラム
JP2002342119A (ja) 画像形成装置用プログラム生成方法、画像形成装置用カバレージ測定方法、これらの方法をコンピュータに実行させるプログラム、カバレージ測定装置、カバレージ測定プログラムおよび情報記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100803

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100930

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101108

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131203

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4636029

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S802 Written request for registration of partial abandonment of right

Free format text: JAPANESE INTERMEDIATE CODE: R311802

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees