(57)【要約】【課題】特定の機能を動作させる複数のアプリケーションプログラムがインストールされており、ユーザにとっては各アプリケーションプログラムの動作条件が不明な状態であっても、アプリケーションプログラムの起動時におけるユーザの待機時間を短くし、利便性および操作性を向上させる。【解決手段】アプリケーション管理部４３は、特定の機能を動作させるための複数のアプリケーションプログラムのそれぞれの動作条件を管理しており、特定の機能を動作させる際に設定部４２における現在の設定状態を取得し、複数のアプリケーションプログラムのそれぞれの動作条件に基づいて、設定部４２において行われる動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択する。【選択図】図３
2011248488.tif 000002
【特許請求の範囲】
【請求項１】
それぞれ異なる動作条件下で特定の機能を動作させる複数のアプリケーションプログラムを記憶する記憶手段と、
前記複数のアプリケーションプログラムのうちから選択される一のアプリケーションプログラムに対応する動作条件を反映させるための設定を行う設定手段と、
前記複数のアプリケーションプログラムのそれぞれの動作条件を管理しており、前記特定の機能を動作させる際に前記設定手段における現在の設定状態を取得し、前記複数のアプリケーションプログラムのそれぞれの動作条件に基づいて、前記設定手段において行われる動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択するアプリケーション管理手段と、
前記アプリケーション管理手段によって選択される一のアプリケーションプログラムを実行することにより前記特定の機能を動作させるアプリケーション実行手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記特定の機能に対し、ユーザによる動作条件の指定を受け付ける操作入力手段をさらに備え、
前記アプリケーション管理手段は、ユーザによって指定された動作条件を満たす少なくとも１つのアプリケーションプログラムの中から、前記設定手段において行われる動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記アプリケーション管理手段は、前記設定手段における現在の設定状態を変更することなく実行可能なアプリケーションプログラムを優先的に選択することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記アプリケーション管理手段は、前記設定手段における現在の設定状態を変更することなく実行可能なアプリケーションプログラムが複数存在する場合、ユーザに対して一のアプリケーションプログラムの選択操作を促し、ユーザによって指定された一のアプリケーションプログラムを選択することを特徴とする請求項３記載の情報処理装置。
【請求項５】
第１の機能と第２の機能とを連続的に動作させることによって一連の処理を実行する情報処理装置であって、
それぞれ異なる動作条件下で前記第１の機能を動作させる複数の第１アプリケーションプログラムを記憶すると共に、それぞれ異なる動作条件下で前記第２の機能を動作させる複数の第２アプリケーションプログラムを記憶する記憶手段と、
前記第１の機能を動作させる際には前記複数の第１アプリケーションプログラムのうちから選択される一の第１アプリケーションプログラムに対応する動作条件を反映させるための設定を行うと共に、前記第２の機能を動作させる際には前記複数の第２アプリケーションプログラムのうちから選択される一の第２アプリケーションプログラムに対応する動作条件を反映させるための設定を行う設定手段と、
前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件を管理しており、前記第１の機能と前記第２の機能とを連続的に動作させる場合、それに先立って前記設定手段における現在の設定状態を取得し、前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件に基づいて、前記第１の機能を動作させる際に前記設定手段において行われる動作条件反映のために要する処理時間と、前記第２の機能を動作させる際に前記設定手段において行われる動作条件反映のために要する処理時間との合計時間が最小となる第１アプリケーションプログラムと第２アプリケーションプログラムとの一の組み合わせを選択するアプリケーション管理手段と、
前記アプリケーション管理手段によって選択される一の組み合わせに基づいて、一の第１アプリケーションプログラムを実行することにより前記第１の機能を動作させると共に、前記第１の機能の動作終了後に、一の第２アプリケーションプログラムを実行することにより前記第２の機能を動作させるアプリケーション実行手段と、
を備えることを特徴とする情報処理装置。
【請求項６】
前記第１の機能および前記第２の機能のそれぞれに対し、ユーザによる動作条件の指定を受け付ける操作入力手段をさらに備え、
前記アプリケーション管理手段は、第１アプリケーションプログラムと第２アプリケーションプログラムとの一の組み合わせを選択する際、前記第１の機能に対してユーザによって指定された動作条件を満たす少なくとも１つの第１アプリケーションプログラムの中から一の第１アプリケーションプログラムを選択すると共に、前記第２の機能に対してユーザによって指定された動作条件を満たす少なくとも１つの第２アプリケーションプログラムの中から一の第２アプリケーションプログラムを選択することを特徴とする請求項５記載の情報処理装置。
【請求項７】
前記アプリケーション管理手段は、前記設定手段における現在の設定状態を変更することなく前記第１の機能および前記第２の機能を連続的に動作させることが可能な第１アプリケーションプログラムおよび第２アプリケーションプログラムの組み合わせを優先的に選択することを特徴とする請求項５又は６に記載の情報処理装置。
【請求項８】
前記アプリケーション管理手段は、前記設定手段における現在の設定状態を変更することなく前記第１の機能および前記第２の機能を連続的に動作させることが可能な第１アプリケーションプログラムおよび第２アプリケーションプログラムの組み合わせが複数存在する場合、ユーザに対して一の組み合わせの選択操作を促し、ユーザによって指定された一の組み合わせを選択することを特徴とする請求項７記載の情報処理装置。
【請求項９】
それぞれ異なる動作条件下で特定の機能を動作させる複数のアプリケーションプログラムを記憶するステップと、
前記複数のアプリケーションプログラムのそれぞれの動作条件を管理しており、前記特定の機能を動作させる際に前記特定の機能に対応する現在の設定状態を取得し、前記複数のアプリケーションプログラムのそれぞれの動作条件に基づいて前記特定の機能を動作させるために行われる動作条件反映のための処理時間が最小となる一のアプリケーションプログラムを選択するステップと、
前記複数のアプリケーションプログラムのうちから選択された一のアプリケーションプログラムに対応する動作条件を反映させるための設定を行うステップと、
前記複数のアプリケーションプログラムのうちから選択された一のアプリケーションプログラムを実行することにより前記特定の機能を動作させるステップと、
を有することを特徴とするアプリケーション実行方法。
【請求項１０】
第１の機能と第２の機能とのそれぞれに対応するアプリケーションプログラムを連続的に実行することによって一連の処理を行うアプリケーション実行方法であって、
それぞれ異なる動作条件下で前記第１の機能を動作させる複数の第１アプリケーションプログラムを記憶すると共に、それぞれ異なる動作条件下で前記第２の機能を動作させる複数の第２アプリケーションプログラムを記憶するステップと、
前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件を管理しており、前記第１の機能と前記第２の機能とを連続的に動作させる場合、それに先立って前記第１の機能と前記第２の機能のそれぞれに対応する現在の設定状態を取得し、前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件に基づいて、前記第１の機能を動作させる際に行われる動作条件反映のための処理時間と、前記第２の機能を動作させる際に行われる動作条件反映のための処理時間との合計時間が最小となる第１アプリケーションプログラムと第２アプリケーションプログラムとの一の組み合わせを選択するステップと、
前記第１の機能を動作させる際には前記一の組み合わせに含まれる一の第１アプリケーションプログラムに対応する動作条件を反映させるための設定を行うと共に、前記第２の機能を動作させる際には前記一の組み合わせに含まれる一の第２アプリケーションプログラムに対応する動作条件を反映させるための設定を行うステップと、
前記一の組み合わせに含まれる一の第１アプリケーションプログラムを実行することにより前記第１の機能を動作させると共に、前記第１の機能の動作終了後に前記一の組み合わせに含まれる一の第２アプリケーションプログラムを実行することにより前記第２の機能を動作させるステップと、
を有することを特徴とするアプリケーション実行方法。
【請求項１１】
それぞれ異なる動作条件下で特定の機能を動作させる複数のアプリケーションプログラムがインストールされた情報処理装置において、前記特定の機能を動作させる際に前記複数のアプリケーションプログラムのうちから一のアプリケーションプログラムを選択して実行させるアプリケーション管理プログラムであって、
前記情報処理装置を、
前記複数のアプリケーションプログラムのうちから選択される一のアプリケーションプログラムに対応する動作条件を反映させるための設定を行う設定手段、
前記複数のアプリケーションプログラムのそれぞれの動作条件を管理しており、前記特定の機能を動作させる際に前記設定手段における現在の設定状態を取得し、前記複数のアプリケーションプログラムのそれぞれの動作条件に基づいて、前記設定手段において行われる動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択するアプリケーション管理手段、および、
前記アプリケーション管理手段によって選択される一のアプリケーションプログラムを実行することにより前記特定の機能を動作させるアプリケーション実行手段、
として機能させることを特徴とするアプリケーション管理プログラム。
【請求項１２】
それぞれ異なる動作条件下で第１の機能を動作させる複数の第１アプリケーションプログラムと、それぞれ異なる動作条件下で第２の機能を動作させる複数の第２アプリケーションプログラムとがインストールされた情報処理装置において、前記第１の機能と前記第２の機能とを連続的に動作させる際に、前記複数の第１アプリケーションプログラムのうちから一の第１アプリケーションプログラムを選択すると共に、前記複数の第２アプリケーションプログラムのうちから一の第２アプリケーションプログラムを選択して実行させるアプリケーション管理プログラムであって、
前記情報処理装置を、
前記第１の機能を動作させる際には前記複数の第１アプリケーションプログラムのうちから選択される一の第１アプリケーションプログラムに対応する動作条件を反映させるための設定を行うと共に、前記第２の機能を動作させる際には前記複数の第２アプリケーションプログラムのうちから選択される一の第２アプリケーションプログラムに対応する動作条件を反映させるための設定を行う設定手段、
前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件を管理しており、前記第１の機能と前記第２の機能とを連続的に動作させる場合、それに先立って前記設定手段における現在の設定状態を取得し、前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件に基づいて、前記第１の機能を動作させる際に前記設定手段において行われる動作条件反映のための処理時間と、前記第２の機能を動作させる際に前記設定手段において行われる動作条件反映のための処理時間との合計時間が最小となる第１アプリケーションプログラムと第２アプリケーションプログラムとの一の組み合わせを選択するアプリケーション管理手段、および、
前記アプリケーション管理手段によって選択される一の組み合わせに基づいて、一の第１アプリケーションプログラムを実行することにより前記第１の機能を動作させると共に、前記第１の機能の動作終了後に、一の第２アプリケーションプログラムを実行することにより前記第２の機能を動作させるアプリケーション実行手段、
として機能させることを特徴とするアプリケーション管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、アプリケーション実行方法およびアプリケーション管理プログラムに関し、特に情報処理装置において特定の機能をそれぞれ異なる動作条件下で動作させるための複数のアプリケーションプログラムがインストールされている場合に、それら複数のアプリケーションプログラムの中から一のアプリケーションプログラムを選択するための技術に関する。
【背景技術】
【０００２】
オフィス環境などに設置されるＭＦＰ（Multifunction Peripheral）などのような情報処理装置は、コピー機能、プリンタ機能、スキャン機能、ＦＡＸ機能といった複数の機能を備えている。従来、この種の情報処理装置には各機能を動作させるための標準プログラムがインストールされており、ユーザが機能の選択操作を行うと、情報処理装置においてその標準プログラムが実行され、ユーザによって選択された機能が動作してジョブが実行されるようになる。
【０００３】
ところで、近年は、情報処理装置を利用することによるソリューション展開の多様化を図るため、情報処理装置に対して標準プログラムとは異なるアプリケーションプログラムを別途インストールすることができるようになってきている（例えば、特許文献１，２）。
【０００４】
このようなアプリケーションプログラムは、例えば情報処理装置の特定の状態に特化させた処理を行うプログラムとして作成されることもある。また標準プログラムではサポートされていない機能を付与するプログラムとして作成されることもある。このようなアプリケーションプログラムが情報処理装置にインストールされると、情報処理装置においてコピー機能、プリンタ機能、スキャン機能、ＦＡＸ機能といった各種機能を動作させるために実行されるアプリケーションプログラムは多様化する。つまり、コピー機能などの特定の機能を動作させるために実行可能なアプリケーションプログラムがひとつではなく、複数のアプリケーションプログラムがインストールされることもある。この場合、各アプリケーションプログラムは、例えば情報処理装置において異なる動作条件下で実行され、情報処理装置の特定の機能を動作させる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−１２９２４６号公報
【特許文献２】特開２００９−９３２２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記のように、情報処理装置においてそれぞれ異なる動作条件下で特定の機能を動作させる複数のアプリケーションプログラムがインストールされている場合、ユーザにより、どのアプリケーションプログラムが選択されるかによってアプリケーションプログラムの起動時間が変動する。例えば、ユーザによって選択されるアプリケーションプログラムの動作条件が情報処理装置の現在の状態に適合している場合、アプリケーションプログラムの起動時にその動作条件を反映させるための処理を行う必要はない。そのため、この場合はアプリケーションプログラムの起動時間が比較的短くなる。
【０００７】
これに対し、ユーザによって選択されるアプリケーションプログラムの動作条件が情報処理装置の現在の状態に適合していない場合、アプリケーションプログラムの起動時にその動作条件を反映させるための処理が行われる。このような動作条件反映処理には一定の処理時間を要する。そのため、情報処理装置においてアプリケーションプログラムが正常に起動され、特定の機能が使用可能な状態となるまでにユーザは長時間待たされることになる。特に、動作条件反映処理によって書き換えられる設定値によっては情報処理装置の再起動が発生することもあり、ユーザの待機時間がより一層長くなって情報処理装置の利便性が低下する。
【０００８】
したがって、アプリケーションプログラムの起動時間を短縮するためには、情報処理装置の現在の状態に適合するアプリケーションプログラムを選択することが必要となる。しかし、ユーザにとっては情報処理装置の現在の状態（設定状態など）を把握することが難しく、複数のアプリケーションプログラムの中からどれを選択すれば良いかが判り難いという問題がある。
【０００９】
また、ユーザが情報処理装置を使用する際、情報処理装置の複数の機能を連続的に動作させたい場合がある。例えば、ユーザが所持する原稿を情報処理装置のスキャナ機能で読み取り、その読み取った原稿を情報処理装置のＯＣＲ（Optical Character Reader）機能でテキスト化したい場合がある。このような場合、ユーザが各機能に対応するアプリケーションプログラムを自由に選択するようにすると、先のスキャナ機能を動作させるアプリケーションプログラムと、後のＯＣＲ機能を動作させるアプリケーションプログラムとの動作条件が互いに異なったものとなってしまう可能性がある。その場合、先のアプリケーションプログラムの実行が完了し、次のアプリケーションプログラムの起動時に上述した動作条件反映処理が行われることになり、複数の機能がスムーズに連続して動作しないという問題がある。特に、スキャナ機能によって出力されるデータフォーマットと、ＯＣＲ機能が読み込み可能なデータフォーマットとが異なっている場合、ＯＣＲ機能が正常に動作するためにはＯＣＲ機能が読み込み可能なデータフォーマットでの原稿の再読み取りが必要になる場合もある。このような原稿の再読み取りを行うためには、ユーザが原稿を再度スキャナ部にセットする必要があり、操作性が著しく低下する。
【００１０】
そこで本発明は、上記従来の問題点を解決することを目的としてなされたものであり、それぞれ特定の機能を動作させる複数のアプリケーションプログラムがインストールされており、ユーザにとっては各アプリケーションプログラムの動作条件が不明な状態であっても、アプリケーションプログラム起動時の待機時間を短くし、利便性および操作性を向上させることができる情報処理装置、アプリケーション実行方法およびアプリケーション管理プログラムを提供するものである。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、請求項１にかかる発明は、情報処理装置であって、それぞれ異なる動作条件下で特定の機能を動作させる複数のアプリケーションプログラムを記憶する記憶手段と、前記複数のアプリケーションプログラムのうちから選択される一のアプリケーションプログラムに対応する動作条件を反映させるための設定を行う設定手段と、前記複数のアプリケーションプログラムのそれぞれの動作条件を管理しており、前記特定の機能を動作させる際に前記設定手段における現在の設定状態を取得し、前記複数のアプリケーションプログラムのそれぞれの動作条件に基づいて、前記設定手段において行われる動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択するアプリケーション管理手段と、前記アプリケーション管理手段によって選択される一のアプリケーションプログラムを実行することにより前記特定の機能を動作させるアプリケーション実行手段と、を備えることを特徴とする構成である。
【００１２】
請求項２にかかる発明は、請求項１に記載の情報処理装置において、前記特定の機能に対し、ユーザによる動作条件の指定を受け付ける操作入力手段をさらに備え、前記アプリケーション管理手段は、ユーザによって指定された動作条件を満たす少なくとも１つのアプリケーションプログラムの中から、前記設定手段において行われる動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択することを特徴とする構成である。
【００１３】
請求項３にかかる発明は、請求項１又は２に記載の情報処理装置において、前記アプリケーション管理手段は、前記設定手段における現在の設定状態を変更することなく実行可能なアプリケーションプログラムを優先的に選択することを特徴とする構成である。
【００１４】
請求項４にかかる発明は、請求項３に記載の情報処理装置において、前記アプリケーション管理手段は、前記設定手段における現在の設定状態を変更することなく実行可能なアプリケーションプログラムが複数存在する場合、ユーザに対して一のアプリケーションプログラムの選択操作を促し、ユーザによって指定された一のアプリケーションプログラムを選択することを特徴とする構成である。
【００１５】
請求項５にかかる発明は、第１の機能と第２の機能とを連続的に動作させることによって一連の処理を実行する情報処理装置であって、それぞれ異なる動作条件下で前記第１の機能を動作させる複数の第１アプリケーションプログラムを記憶すると共に、それぞれ異なる動作条件下で前記第２の機能を動作させる複数の第２アプリケーションプログラムを記憶する記憶手段と、前記第１の機能を動作させる際には前記複数の第１アプリケーションプログラムのうちから選択される一の第１アプリケーションプログラムに対応する動作条件を反映させるための設定を行うと共に、前記第２の機能を動作させる際には前記複数の第２アプリケーションプログラムのうちから選択される一の第２アプリケーションプログラムに対応する動作条件を反映させるための設定を行う設定手段と、前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件を管理しており、前記第１の機能と前記第２の機能とを連続的に動作させる場合、それに先立って前記設定手段における現在の設定状態を取得し、前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件に基づいて、前記第１の機能を動作させる際に前記設定手段において行われる動作条件反映のために要する処理時間と、前記第２の機能を動作させる際に前記設定手段において行われる動作条件反映のために要する処理時間との合計時間が最小となる第１アプリケーションプログラムと第２アプリケーションプログラムとの一の組み合わせを選択するアプリケーション管理手段と、前記アプリケーション管理手段によって選択される一の組み合わせに基づいて、一の第１アプリケーションプログラムを実行することにより前記第１の機能を動作させると共に、前記第１の機能の動作終了後に、一の第２アプリケーションプログラムを実行することにより前記第２の機能を動作させるアプリケーション実行手段と、を備えることを特徴とする構成である。
【００１６】
請求項６にかかる発明は、請求項５に記載の情報処理装置において、前記第１の機能および前記第２の機能のそれぞれに対し、ユーザによる動作条件の指定を受け付ける操作入力手段をさらに備え、前記アプリケーション管理手段は、第１アプリケーションプログラムと第２アプリケーションプログラムとの一の組み合わせを選択する際、前記第１の機能に対してユーザによって指定された動作条件を満たす少なくとも１つの第１アプリケーションプログラムの中から一の第１アプリケーションプログラムを選択すると共に、前記第２の機能に対してユーザによって指定された動作条件を満たす少なくとも１つの第２アプリケーションプログラムの中から一の第２アプリケーションプログラムを選択することを特徴とする構成である。
【００１７】
請求項７にかかる発明は、請求項５又は６に記載の情報処理装置において、前記アプリケーション管理手段は、前記設定手段における現在の設定状態を変更することなく前記第１の機能および前記第２の機能を連続的に動作させることが可能な第１アプリケーションプログラムおよび第２アプリケーションプログラムの組み合わせを優先的に選択することを特徴とする構成である。
【００１８】
請求項８にかかる発明は、請求項７に記載の情報処理装置において、前記アプリケーション管理手段は、前記設定手段における現在の設定状態を変更することなく前記第１の機能および前記第２の機能を連続的に動作させることが可能な第１アプリケーションプログラムおよび第２アプリケーションプログラムの組み合わせが複数存在する場合、ユーザに対して一の組み合わせの選択操作を促し、ユーザによって指定された一の組み合わせを選択することを特徴とする構成である。
【００１９】
請求項９にかかる発明は、アプリケーション実行方法であって、それぞれ異なる動作条件下で特定の機能を動作させる複数のアプリケーションプログラムを記憶するステップと、前記複数のアプリケーションプログラムのそれぞれの動作条件を管理しており、前記特定の機能を動作させる際に前記特定の機能に対応する現在の設定状態を取得し、前記複数のアプリケーションプログラムのそれぞれの動作条件に基づいて前記特定の機能を動作させるために行われる動作条件反映のための処理時間が最小となる一のアプリケーションプログラムを選択するステップと、前記複数のアプリケーションプログラムのうちから選択された一のアプリケーションプログラムに対応する動作条件を反映させるための設定を行うステップと、前記複数のアプリケーションプログラムのうちから選択された一のアプリケーションプログラムを実行することにより前記特定の機能を動作させるステップと、を有することを特徴とする構成である。
【００２０】
請求項１０にかかる発明は、第１の機能と第２の機能とのそれぞれに対応するアプリケーションプログラムを連続的に実行することによって一連の処理を行うアプリケーション実行方法であって、それぞれ異なる動作条件下で前記第１の機能を動作させる複数の第１アプリケーションプログラムを記憶すると共に、それぞれ異なる動作条件下で前記第２の機能を動作させる複数の第２アプリケーションプログラムを記憶するステップと、前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件を管理しており、前記第１の機能と前記第２の機能とを連続的に動作させる場合、それに先立って前記第１の機能と前記第２の機能のそれぞれに対応する現在の設定状態を取得し、前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件に基づいて、前記第１の機能を動作させる際に行われる動作条件反映のための処理時間と、前記第２の機能を動作させる際に行われる動作条件反映のための処理時間との合計時間が最小となる第１アプリケーションプログラムと第２アプリケーションプログラムとの一の組み合わせを選択するステップと、前記第１の機能を動作させる際には前記一の組み合わせに含まれる一の第１アプリケーションプログラムに対応する動作条件を反映させるための設定を行うと共に、前記第２の機能を動作させる際には前記一の組み合わせに含まれる一の第２アプリケーションプログラムに対応する動作条件を反映させるための設定を行うステップと、前記一の組み合わせに含まれる一の第１アプリケーションプログラムを実行することにより前記第１の機能を動作させると共に、前記第１の機能の動作終了後に前記一の組み合わせに含まれる一の第２アプリケーションプログラムを実行することにより前記第２の機能を動作させるステップと、を有することを特徴とする構成である。
【００２１】
請求項１１にかかる発明は、それぞれ異なる動作条件下で特定の機能を動作させる複数のアプリケーションプログラムがインストールされた情報処理装置において、前記特定の機能を動作させる際に前記複数のアプリケーションプログラムのうちから一のアプリケーションプログラムを選択して実行させるアプリケーション管理プログラムであって、前記情報処理装置を、前記複数のアプリケーションプログラムのうちから選択される一のアプリケーションプログラムに対応する動作条件を反映させるための設定を行う設定手段、前記複数のアプリケーションプログラムのそれぞれの動作条件を管理しており、前記特定の機能を動作させる際に前記設定手段における現在の設定状態を取得し、前記複数のアプリケーションプログラムのそれぞれの動作条件に基づいて、前記設定手段において行われる動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択するアプリケーション管理手段、および、前記アプリケーション管理手段によって選択される一のアプリケーションプログラムを実行することにより前記特定の機能を動作させるアプリケーション実行手段、として機能させることを特徴とする構成である。
【００２２】
請求項１２にかかる発明は、それぞれ異なる動作条件下で第１の機能を動作させる複数の第１アプリケーションプログラムと、それぞれ異なる動作条件下で第２の機能を動作させる複数の第２アプリケーションプログラムとがインストールされた情報処理装置において、前記第１の機能と前記第２の機能とを連続的に動作させる際に、前記複数の第１アプリケーションプログラムのうちから一の第１アプリケーションプログラムを選択すると共に、前記複数の第２アプリケーションプログラムのうちから一の第２アプリケーションプログラムを選択して実行させるアプリケーション管理プログラムであって、前記情報処理装置を、前記第１の機能を動作させる際には前記複数の第１アプリケーションプログラムのうちから選択される一の第１アプリケーションプログラムに対応する動作条件を反映させるための設定を行うと共に、前記第２の機能を動作させる際には前記複数の第２アプリケーションプログラムのうちから選択される一の第２アプリケーションプログラムに対応する動作条件を反映させるための設定を行う設定手段、前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件を管理しており、前記第１の機能と前記第２の機能とを連続的に動作させる場合、それに先立って前記設定手段における現在の設定状態を取得し、前記複数の第１アプリケーションプログラム、および、前記複数の第２アプリケーションプログラムのそれぞれの動作条件に基づいて、前記第１の機能を動作させる際に前記設定手段において行われる動作条件反映のための処理時間と、前記第２の機能を動作させる際に前記設定手段において行われる動作条件反映のための処理時間との合計時間が最小となる第１アプリケーションプログラムと第２アプリケーションプログラムとの一の組み合わせを選択するアプリケーション管理手段、および、前記アプリケーション管理手段によって選択される一の組み合わせに基づいて、一の第１アプリケーションプログラムを実行することにより前記第１の機能を動作させると共に、前記第１の機能の動作終了後に、一の第２アプリケーションプログラムを実行することにより前記第２の機能を動作させるアプリケーション実行手段、として機能させることを特徴とする構成である。
【発明の効果】
【００２３】
本発明によれば、特定の機能を動作させる複数のアプリケーションプログラムがインストールされている状態で、その特定の機能を動作させる際、複数のアプリケーションプログラムのそれぞれの動作条件に基づいて動作条件反映のために要する処理時間が最小となるアプリケーションプログラムが自動的に選択される。そのため、ユーザにとっては各アプリケーションプログラムの動作条件が不明な状態であっても、アプリケーションプログラムの起動時に行われる動作条件反映のための処理時間が短くなるので、ユーザの待機時間を短くすることができ、利便性および操作性を向上させることができる。
【００２４】
また本発明によれば、第１の機能と第２の機能とを連続的に動作させることによって一連の処理を実行する場合にも、ユーザの待機時間を短くすることができ、利便性および操作性を向上させることが可能である。
【図面の簡単な説明】
【００２５】
【図１】情報処理装置が含まれるネットワーク構成の一例を示す図である。
【図２】情報処理装置のハードウェア構成の一例を示す図である。
【図３】情報処理装置においてＣＰＵがシステムプログラムとアプリケーション管理プログラムとを起動した状態のシステム構成の一例を示すブロック図である。
【図４】表示部に表示される機能選択画面の一例を示す図である。
【図５】スキャン機能に関する詳細設定画面の一例を示す図である。
【図６】ＯＣＲ機能に関する詳細設定画面の一例を示す図である。
【図７】アプリケーション管理部によって管理される動作条件管理情報の一例を示す図である。
【図８】アプリケーション管理部によって参照される参照テーブルの一例を示す図である。
【図９】スキャン機能とＯＣＲ機能とを連続的に動作させる４つの組み合わせパターンによる処理プロセスの概念を示す図である。
【図１０】アプリケーション選択画面の一例を示す図である。
【図１１】単一の機能を動作させる場合の複数の第１アプリケーションプログラムのそれぞれによる処理プロセスの概念を示す図である。
【図１２】情報処理装置のＣＰＵによって行われる処理手順を示すフローチャートである。
【図１３】組み合わせ選択処理の詳細な処理手順の一例を示すフローチャートである。
【図１４】推奨パターン選択処理の詳細な処理手順の一例を示すフローチャートである。
【図１５】推奨パターン選択処理の詳細な処理手順の一例を示すフローチャートである。
【図１６】アプリケーション選択処理の詳細な処理手順の一例を示すフローチャートである。
【図１７】アプリケーション選択処理の詳細な処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００２６】
以下、本発明に関する好ましい実施形態について図面を参照しつつ詳細に説明する。尚、以下に説明する実施形態において互いに共通する部材には同一符号を付しており、それらについての重複する説明は省略する。
【００２７】
図１は、オフィス環境などに設置される情報処理装置１が含まれるネットワーク構成の一例を示す図である。情報処理装置１は、コンピュータ２およびサーバ３とネットワーク４を介して接続されている。尚、ネットワーク４にはその他の装置が接続されていても良い。尚、サーバ３は、Ｗｅｂサーバやファイルサーバなどである。
【００２８】
この情報処理装置１は、例えばＭＦＰ（Multifunction Peripheral）などと呼ばれる装置であり、コピー機能、プリンタ機能、スキャン機能、ＦＡＸ機能、ＢＯＸ機能、ＯＣＲ（Optical Character Reader）機能などの複数の機能を備えている。これら各機能は、情報処理装置１において常に動作状態にあるのではなく、例えばユーザによって機能選択操作が行われると、それに伴ってその選択された機能が動作するようになる。
【００２９】
コピー機能は、原稿を読み取ってその原稿の複製物を出力する機能である。プリンタ機能は、ネットワーク４を介してコンピュータ２から入力するデータに基づいてプリント出力を行う機能である。スキャン機能は、原稿を読み取って生成する画像データを所定の記憶装置に記憶する機能である。このスキャン機能では、原稿を読み取って生成された画像データを、ネットワーク４を介してコンピュータ２又はサーバ３に送信することも可能である。ＦＡＸ機能は、図示しないＦＡＸ網を介してＦＡＸデータの送受信を行う機能である。ＢＯＸ機能は、所定の記憶領域に対してデータを保存したり、所定の記憶領域に保存されているデータを読み出す機能である。ＯＣＲ機能は、画像データに含まれる文字を抽出することによりテキスト化する機能である。
【００３０】
図２は、情報処理装置１のハードウェア構成の一例を示す図である。情報処理装置１は、各種プログラムを実行するＣＰＵ１０と、ＣＰＵ１０によるプログラム実行に伴って一時的なデータなどを記憶するメモリ１１と、ユーザが情報処理装置１を操作する際のユーザインタフェースとなる操作パネル１２と、原稿を読み取るスキャナ部１５と、印刷物を出力するプリンタ部１６と、ＦＡＸデータの送受信を行うＦＡＸ部１７と、ネットワーク４に接続するためのネットワークインタフェース１８と、ハードディスク装置などの記憶装置１９とを備えており、これら各部がデータバス２０を介して相互にデータの入出力を行うことができる構成である。操作パネル１２は、ユーザに対して各種情報を表示するための液晶ディスプレイなどで構成される表示部１３と、ユーザによる各種指定操作を受け付ける操作部１４とを備えている。操作部１４は、表示部１３の表示画面上に配置されたタッチパネルキーと、表示画面の周囲に配置された押しボタンキーとを備える操作入力手段である。また例えば押しボタンキーには、ジョブの実行を指示するためのスタートキーが含まれる。
【００３１】
記憶装置１９には、情報処理装置１にインストールされている各種プログラムや情報が記憶される他、ＢＯＸ機能を利用するための各種記憶領域が設定されている。図２には、記憶装置１９に記憶されるプログラムや情報などの一例を示している。
【００３２】
図２に示すように、記憶装置１９には、システムプログラム２１と、アプリケーション管理プログラム２２と、第１アプリケーションプログラム群２３と、第２アプリケーションプログラム群２４とが記憶されている。システムプログラム２１は、情報処理装置１のオペレーティングシステムとなる基本プログラムである。アプリケーション管理プログラム２２は、第１アプリケーションプログラム群２３および第２アプリケーションプログラム群２４に含まれる複数のアプリケーションプログラムを管理するための処理を行うプログラムである。
【００３３】
ＣＰＵ１０は、情報処理装置１の電源投入時に、システムプログラム２１を読み出して実行することによりシステムプログラム２１を起動する。またＣＰＵ１０は、システムプログラム２１の起動に伴い、アプリケーション管理プログラム２２を起動する。尚、図例では、アプリケーション管理プログラム２２はシステムプログラム２１とは別のプログラムになっているが、システムプログラム２１の一部を構成するプログラムであっても構わない。
【００３４】
第１アプリケーションプログラム群２３は、情報処理装置１の特定の機能、すなわち、コピー機能、プリンタ機能、スキャン機能、ＦＡＸ機能、ＢＯＸ機能、ＯＣＲ機能などの複数の機能のうちの一の機能に対応したプログラム群である。例えば本実施形態では、この第１アプリケーションプログラム群２３はスキャン機能に対応した処理を行うプログラム群である。
【００３５】
第１アプリケーションプログラム群２３には、複数の第１アプリケーションプログラムＰＡ１，ＰＡ２，ＰＡ３が含まれる。これら複数の第１アプリケーションプログラムＰＡ１，ＰＡ２，ＰＡ３は、それぞれが情報処理装置１においてスキャン機能を動作させるためのプログラムとなっている。ただし、これら複数の第１アプリケーションプログラムＰＡ１，ＰＡ２，ＰＡ３は、情報処理装置１において動作させるスキャン機能の動作条件が互いに異なるものとなっている。例えば、原稿を読み取って生成する画像データのデータフォーマットや、画像データを外部のコンピュータ２やサーバ３などに送信する場合のデータ送信方法（通信プロトコルを含む）などの動作条件が、複数の第１アプリケーションプログラムＰＡ１，ＰＡ２，ＰＡ３のそれぞれで異なったものとなっている。
【００３６】
第２アプリケーションプログラム群２４も同様に、情報処理装置１の特定の機能、すなわち、コピー機能、プリンタ機能、スキャン機能、ＦＡＸ機能、ＢＯＸ機能、ＯＣＲ機能などの複数の機能のうちの一の機能に対応したプログラム群である。例えば本実施形態では、この第２アプリケーションプログラム群２４はＯＣＲ機能に対応した処理を行うプログラム群である。
【００３７】
第２アプリケーションプログラム群２４には、複数の第２アプリケーションプログラムＰＢ１，ＰＢ２，ＰＢ３が含まれる。これら複数の第２アプリケーションプログラムＰＢ１，ＰＢ２，ＰＢ３は、それぞれが情報処理装置１においてＯＣＲ機能を動作させるためのプログラムとなっている。ただし、これら複数の第２アプリケーションプログラムＰＢ１，ＰＢ２，ＰＢ３は、情報処理装置１において動作させるＯＣＲ機能の動作条件が互いに異なるものとなっている。例えば、文字抽出を行うために読み込み可能なデータフォーマット、テキスト化したデータを保存する際の保存フォーマット、或いは、テキスト化したデータを外部のコンピュータ２やサーバ３などに送信する場合のデータ送信方法（通信プロトコルを含む）などの動作条件が、複数の第２アプリケーションプログラムＰＢ１，ＰＢ２，ＰＢ３のそれぞれで異なったものとなっている。
【００３８】
尚、記憶装置１９には、この他にも、コピー機能、プリンタ機能、ＦＡＸ機能、ＢＯＸ機能などの各機能に対応したアプリケーションプログラム群が記憶されるが、それらについては図示および説明を省略する。
【００３９】
また記憶装置１９には、第１アプリケーションプログラム群２３に含まれる各プログラムの動作条件、および、第２アプリケーションプログラム群に含まれる各プログラムの動作条件が登録された動作条件管理情報３１が記憶される。さらに記憶装置１９には、各プログラムの動作条件を反映させるために情報処理装置１において行われる処理時間などが登録された参照テーブル３２が記憶される。これら動作条件管理情報３１および参照テーブル３２の詳細については後述する。
【００４０】
図３は、情報処理装置１においてＣＰＵ１０がシステムプログラム２１とアプリケーション管理プログラム２２とを起動した状態のシステム構成の一例を示すブロック図である。上述したように情報処理装置１に電源が投入されると、ＣＰＵ１０は、システムプログラム２１とアプリケーション管理プログラム２２とを記憶装置１９から読み出して実行する。これにより、ＣＰＵ１０は、図３に示すように、システム制御部４１、アプリケーション管理部４３およびアプリケーション実行部４４として機能する。
【００４１】
システム制御部４１は、システムプログラム２１が実行されることによって機能する処理部であり、操作パネル１２、スキャナ部１５、プリンタ部１６、ＦＡＸ部１７およびネットワークインタフェース１８を制御する。このシステム制御部４１は、アプリケーション管理部４３およびアプリケーション実行部４４と連携して各部を制御する。
【００４２】
アプリケーション管理部４３は、アプリケーション管理プログラム２２が実行されることによって機能する処理部であり、ユーザによって選択された機能に基づいてアプリケーション実行部４４に実行させるアプリケーションプログラムを選択する。アプリケーション管理部４３は、アプリケーションプログラムを選択する際、動作条件管理情報３１と、参照テーブル３２とを参照する。
【００４３】
アプリケーション実行部４４は、主としてシステムプログラム２１が実行されることによって機能する処理部であり、アプリケーション管理部４３によって選択されたアプリケーションプログラムを記憶装置１９から読み出して実行する。このアプリケーション実行部４４が一のアプリケーションプログラムを実行することにより、情報処理装置１においてユーザによって指定された機能が動作するようになる。
【００４４】
アプリケーション実行部４４が、例えば第１アプリケーションプログラム群２３に含まれる複数の第１アプリケーションプログラムＰＡ１，ＰＡ２，ＰＡ３のうちのいずれか一つを読み出して実行すると、情報処理装置１においてスキャナ機能が動作するようになる。この場合、アプリケーション実行部４４は、システム制御部４１を介してスキャナ部１５を制御することにより原稿の読み取り動作を行って画像データを得る。そしてスキャナ部１５から取得する画像データに基づいて所定のデータフォーマットの画像データを生成する。その後、必要に応じて、システム制御部４１を介してネットワークインタフェース１８を制御することにより、所定のデータフォーマットの画像データを外部のコンピュータ２又はサーバ３に送信する。
【００４５】
また、アプリケーション実行部４４が、例えば第２アプリケーションプログラム群２４に含まれる複数の第２アプリケーションプログラムＰＢ１，ＰＢ２，ＰＢ３のうちのいずれか一つを読み出して実行すると、情報処理装置１においてＯＣＲ機能が動作するようになる。この場合、アプリケーション実行部４４は、システム制御部４１を介して文字抽出の対象となる画像データを取得し、その画像データに基づいて文字抽出処理を行うことによりテキスト化された所定のデータフォーマットのテキストデータを生成する。その後、必要に応じて、システム制御部４１を介してネットワークインタフェース１８を制御することにより、所定のデータフォーマットのテキストデータを外部のコンピュータ２又はサーバ３に送信する。
【００４６】
このように本実施形態では、情報処理装置１に電源が投入され、ＣＰＵ１０によってシステムプログラム２１とアプリケーション管理プログラム２２とが起動された状態となったとき、コピー機能、プリンタ機能、スキャン機能、ＦＡＸ機能、ＢＯＸ機能、ＯＣＲ機能などの複数の機能はいずれも未だ動作していない初期状態となっている。この初期状態では、システム制御部４１が操作パネル１２の表示部１３に対して機能選択画面を表示し、ユーザによる機能選択操作を受け付ける。そしてユーザによる機能選択操作が受け付けられると、アプリケーション管理部４３がその機能に対応した複数のアプリケーションプログラムの中から一のアプリケーションプログラムを選択し、アプリケーション実行部４４にその一のアプリケーションプログラムを実行させる。これにより、コピー機能、プリンタ機能、スキャン機能、ＦＡＸ機能、ＢＯＸ機能、ＯＣＲ機能などの複数の機能のうち、ユーザによって選択された機能が情報処理装置１において動作するようになり、アプリケーション実行部４４で行われる処理によってジョブが実行される。
【００４７】
ここで、システム制御部４１は、設定部４２を備えている。設定部４２は、アプリケーション実行部４４によって実行されるアプリケーションプログラムの動作条件を反映させるための各種設定処理を行うものである。例えばアプリケーション実行部４４で実行されるアプリケーションプログラムがネットワークインタフェース１８を介して特定のデータ送信方法（通信プロトコルを含む）でデータを送信するものである場合、アプリケーション実行部４４は、そのアプリケーションプログラムの起動時に、システム制御部４１に対して特定のデータ送信方法を指定したコマンドを出力する。設定部４２は、このようなコマンドに基づいてネットワークインタフェース１８の設定状態を書き換えたり、或いはシステム制御部４１の内部パラメータを書き換えたりすることにより、アプリケーション実行部４４で起動されるアプリケーションプログラムの動作条件に適合するように各部の設定状態を変更する。
【００４８】
また設定部４２は、スキャナ部１５、プリンタ部１６、ＦＡＸ部１７、ネットワークインタフェース１８およびシステム制御部の内部パラメータなど、各部の設定状態を常時管理している。そのため、アプリケーションプログラムの起動時に、アプリケーション実行部４４からアプリケーションプログラムの動作条件を指定したコマンドを入力した場合、設定部４２は、各部における現在の設定状態がコマンドによって指定されている動作条件に適合しているか否かを判断し、適合していれば、動作条件を反映させるための処理は行わない。つまり、設定部４２は、各部における現在の設定状態がコマンドによって指定されている動作条件に適合していない場合にのみ、上述したような動作条件を反映させるための処理を実行する。
【００４９】
上記のようにアプリケーション実行部４４は、アプリケーションプログラムの実行を開始すると、その起動時にアプリケーションプログラムに対応した動作条件を指定したコマンドをシステム制御部４１に出力する。これに伴い、システム制御部４１においてコマンドに対応した動作条件を反映させるための処理が開始されると、その処理が終了するまでに一定の処理時間を要する。この場合、アプリケーション実行部４４がアプリケーションプログラムの起動を完了させて特定の機能を動作可能な状態に移行させるまでに時間がかかることとなる。
【００５０】
一方、設定部４２で管理されている各部の現在の設定状態がコマンドによって指定された動作条件に適合していれば、システム制御部４１においてコマンドに対応した動作条件を反映させるための処理が行われないので、アプリケーション実行部４４がアプリケーションプログラムの起動を完了させて特定の機能を動作可能な状態に移行させるまでの時間は短縮される。
【００５１】
そこでアプリケーション管理部４３は、ユーザによって特定の機能が選択された場合、設定部４２によって管理されている現在の設定状態を取得する。またアプリケーション管理部４３は、動作条件管理情報３１に基づいて特定の機能を動作させるための複数のアプリケーションプログラムのそれぞれに対応した動作条件を取得する。そしてアプリケーション管理部４３は、それらの取得した情報に基づいて、参照テーブル３２を参照しつつ、設定部４２において行われる動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択し、アプリケーション実行部４４に対して実行すべきアプリケーションプログラムを指示する。
【００５２】
これにより、アプリケーション実行部４４は、特定の機能を動作させるための複数のアプリケーションプログラムの中から最も起動時間が短くなるアプリケーションプログラムを読み出して実行することができる。
【００５３】
このような情報処理装置１は、ユーザが機能選択操作を行う際、複数の機能のうちから単一の機能のみを選択することもできるし、情報処理装置１において複数の機能を連続的に動作させるためにそれら複数の機能を同時に選択することもできる。
【００５４】
図４は、操作パネル１２の表示部１３に表示される機能選択画面１３ａの一例を示す図である。この機能選択画面１３ａは、情報処理装置１の初期画面である。機能選択画面１３ａには、情報処理装置１に搭載された複数の機能のそれぞれに対応する操作キー５１ａ〜５１ｆが表示される。ユーザはこれら複数の操作キー５１ａ〜５１ｆのうちから少なくとも１つの操作キーを操作することにより、機能の選択操作を行う。
【００５５】
図例では、スキャン機能に対応する操作キー５１ｄと、ＯＣＲ機能に対応する操作キー５１ｆとの２つの操作キーが選択された場合を示している。例えば、ユーザが所持する原稿を情報処理装置１のスキャナ機能で読み取り、その読み取った原稿を情報処理装置１のＯＣＲ（Optical Character Reader）機能でテキスト化したい場合、上記のようにスキャン機能に対応する操作キー５１ｄと、ＯＣＲ機能に対応する操作キー５１ｆとの２つの操作キーが同時に選択され、スキャナ機能とＯＣＲ機能とを連続的に動作させることが指定される。
【００５６】
情報処理装置１において複数の機能を連続的に動作させる際の動作順序は、例えばユーザが複数の操作キーを選択する際の操作順序によって特定される。例えば上記のように、ユーザが所持する原稿をまず情報処理装置１のスキャナ機能で読み取り、その読み取った原稿を情報処理装置１のＯＣＲ機能でテキスト化したい場合、ユーザはまずスキャン機能に対応する操作キー５１ｄを操作し、その次にＯＣＲ機能に対応する操作キー５１ｆを操作することとなる。
【００５７】
図４に示すように、スキャン機能とＯＣＲ機能との２つの機能が選択された状態で、ＮＥＸＴキー５２が操作されると、表示部１３の表示画面は、スキャン機能又はＯＣＲ機能に関する詳細設定画面に切り替わる。図５は、スキャン機能に関する詳細設定画面１３ｂの一例を示す図である。この詳細設定画面１３ｂでは、例えばスキャン機能によって生成される画像データのデータフォーマットや、スキャン機能によって生成された画像データを外部のコンピュータ２やサーバ３に対してデータ送信するか否かを、ユーザが自由に指定することができる。すなわち、詳細設定画面１３ｂには、スキャン機能によって生成される画像データのデータフォーマットに関する設定をデフォルト設定から変更するための操作キー５３と、データ送信に関する設定をデフォルト設定から変更するための操作キー５４とが表示されている。尚、図例の場合、データフォーマットに関するデフォルト設定は「ＣｏｍｐａｃｔＰＤＦ」となっており、データ送信に関するデフォルト設定は「する」となっている。ユーザは、詳細設定画面１３ｂにおけるスキャン機能のデフォルト設定を変更する場合、操作キー５３，５４を操作することによって所望のデータフォーマットまたはデータ送信に関する設定を行う。そしてユーザによってＮＥＸＴキー５５が操作されると、表示部１３の表示画面は、次の詳細設定画面に切り替わる。
【００５８】
図６は、ＯＣＲ機能に関する詳細設定画面１３ｃの一例を示す図である。この詳細設定画面１３ｃでは、例えばＯＣＲ機能によって生成されるテキストデータを保存する際のデータフォーマットや、ＯＣＲ機能によって生成されるテキストデータを外部のコンピュータ２やサーバ３に対してデータ送信するか否かを、ユーザが自由に指定することができる。すなわち、詳細設定画面１３ｃには、ＯＣＲ機能によって生成されるテキストデータの保存フォーマットに関する設定をデフォルト設定から変更するための操作キー５６と、データ送信に関する設定をデフォルト設定から変更するための操作キー５７とが表示されている。尚、図例の場合、保存フォーマットに関するデフォルト設定は「自動」となっており、データ送信に関するデフォルト設定は「する」となっている。ユーザは、詳細設定画面１３ｃにおけるＯＣＲ機能のデフォルト設定を変更する場合、操作キー５６，５７を操作することによって所望の保存フォーマットまたはデータ送信に関する設定を行う。そしてユーザによってＮＥＸＴキー５８が操作されると、詳細設定は終了する。
【００５９】
このようにして設定された設定情報はメモリ１１に一時的に記憶される。そして、スキャン機能およびＯＣＲ機能を動作させるためにユーザによって指定された動作条件として参照される。
【００６０】
上記のようにしてユーザによる詳細設定操作が終了すると、ＣＰＵ１０においてアプリケーション管理部４３が機能し、ユーザによって選択された機能を動作させるためのアプリケーションプログラムを選択する処理が開始される。このとき、上記のような詳細設定操作によってユーザが動作条件を指定している場合、アプリケーション管理部４３は、ユーザによって指定された動作条件を満たさないアプリケーションプログラムを選択対象から除外する。そして選択対象として残った少なくとも１つのアプリケーションプログラムの中から設定部４２において行われる動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択する。
【００６１】
また上記のように複数の機能を連続的に動作させることが指定されている場合、アプリケーション管理部４３は、第１の機能であるスキャン機能に対応した複数の第１アプリケーションプログラムＰＡ１，ＰＡ２，ＰＡ３の中から、スキャン機能の詳細設定画面１３ｂで指定された動作条件を満たさないアプリケーションプログラムを選択対象から除外する。同様に、第２の機能であるＯＣＲ機能に対応した複数の第２アプリケーションプログラムＰＢ１，ＰＢ２，ＰＢ３の中から、ＯＣＲ機能の詳細設定画面１３ｃで指定された動作条件を満たさないアプリケーションプログラムを選択対象から除外する。そしてアプリケーション管理部４３は、選択対象として残った少なくとも１つの第１アプリケーションプログラムと、少なくとも１つの第２アプリケーションプログラムとを一つずつ組み合わせてスキャン機能とＯＣＲ機能とを連続的に動作させることが可能な少なくとも１つの組み合わせパターンを生成する。
【００６２】
そしてアプリケーション管理部４３は、それぞれに組み合わせパターンに基づいて、スキャン機能を動作させる際に行われる動作条件反映のために要する処理時間と、スキャン機能の動作終了後にＯＣＲ機能を動作させる際に行われる動作条件反映のために要する処理時間とを求める。そして、それら処理時間の合計時間が最小となる第１アプリケーションプログラムと第２アプリケーションプログラムとの一の組み合わせを選択することにより、スキャン機能を動作させるための一の第１アプリケーションプログラムと、ＯＣＲ機能を動作させるための一の第２アプリケーションプログラムとを決定する。
【００６３】
図７は、アプリケーション管理部４３によって管理される動作条件管理情報３１の一例を示す図である。この動作条件管理情報３１には、情報処理装置１に搭載されている機能ごとに、複数のアプリケーションプログラムの動作条件が登録されている。
【００６４】
例えばスキャン機能については、「ＳＣＡＮ１」、「ＳＣＡＮ２」および「ＳＣＡＮ３」という複数のアプリケーションプログラムのそれぞれの動作条件として、生成される画像データのデータフォーマットと、データ送信方法とが登録されている。ここで、「ＳＣＡＮ１」、「ＳＣＡＮ２」および「ＳＣＡＮ３」は、複数の第１アプリケーションプログラムＰＡ１，ＰＡ２，ＰＡ３のそれぞれに対応している。
【００６５】
「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１の動作条件は、原稿を読み取って生成する画像データのデータフォーマットがＰＤＦ又はＣｏｍｐａｃｔＰＤＦであり、データ送信方法が電子メールによる送信であって、データ通信時のＳＳＬ（Secure Socket Layer）の設定がオフである。ここで、ＳＳＬとは、送受信するデータを暗号化するための通信プロトコルであり、オンの場合に暗号化通信が行われ、オンの場合には暗号化通信が行われない設定となっている。
【００６６】
また「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２の動作条件は、データフォーマットがＰＤＦ又はＣｏｍｐａｃｔＰＤＦであり、データ送信方法がＷｅｂＤＡＶ（Web-based Distributed Authoring and Versioning）による送信であってデータ送信時のＳＳＬの設定がオンである。ここで、ＷｅｂＤＡＶとは、Ｗｅｂサーバとして機能するサーバ３とデータ通信を行うための通信プロトコルであり、ＦＴＰ（File Transfer Protocol）のような別の通信プロトコルを利用することなくサーバ３と直接データ通信を行うものである。
【００６７】
また「ＳＣＡＮ３」に対応する第１アプリケーションプログラムＰＡ３の動作条件は、データフォーマットがＪＰＥＧ又はＴＩＦＦであり、データ送信方法がＦＴＰによる送信であってデータ送信時のＳＳＬの設定がオフである。
【００６８】
またＯＣＲ機能については、「ＯＣＲ１」、「ＯＣＲ２」および「ＯＣＲ３」という複数のアプリケーションプログラムのそれぞれの動作条件として、読込可能フォーマットと、保存フォーマットと、データ送信方法とが登録されている。ここで、「ＯＣＲ１」、「ＯＣＲ２」および「ＯＣＲ３」は、複数の第２アプリケーションプログラムＰＢ１，ＰＢ２，ＰＢ３のそれぞれに対応している。
【００６９】
「ＯＣＲ１」に対応する第２アプリケーションプログラムＰＢ１の動作条件は、文字抽出処理を行うために読取可能なデータフォーマットがＰＤＦであり、保存フォーマットがＴＥＸＴである。またデータ送信方法はＷｅｂＤＡＶによる送信であって、データ通信時のＳＳＬの設定がオンである。
【００７０】
また「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＢ２の動作条件は、読取可能なデータフォーマットがＰＤＦ又はＣｏｍｐａｃｔＰＤＦであり、保存フォーマットがＴＥＸＴである。またデータ送信方法はＦＴＰによる送信であって、データ通信時のＳＳＬの設定がオフである。
【００７１】
また「ＯＣＲ３」に対応する第２アプリケーションプログラムＰＢ３の動作条件は、読取可能なデータフォーマットがＪＰＥＧであり、保存フォーマットがＴＥＸＴである。そしてデータ送信方法は不可となっており、この第２アプリケーションプログラムＰＢ３では、ネットワーク４を介して外部にデータ送信を行うことができないようになっている。
【００７２】
尚、このような動作条件管理情報３１は、例えばアプリケーションプログラムを情報処理装置１にインストールする際に、アプリケーション管理部４３によって登録される。
【００７３】
図８は、アプリケーション管理部４３によって参照される参照テーブル３２の一例を示す図である。この参照テーブル３２には、アプリケーションプログラムの動作条件を反映させるために行われる処理の内容に応じて、その処理に要する処理時間と、その処理がシステムの再起動を伴うか否かを示す情報と、その処理を行うためにユーザによる操作が必要であるか否かを示す情報とが含まれる。尚、システムの再起動とは、システムプログラム２１の再起動である。
【００７４】
図８に示すように、この参照テーブル３２には、アプリケーションプログラムの動作条件を反映させるために行われる処理として、データ通信時のＳＳＬのオン／オフの設定変更を行う処理と、ＩＰアドレスの自動取得設定／手動設定の設定変更を行う処理と、原稿の再読み取りを行う処理とが予め登録されている。ただし、これらの処理は単なる一例であり、これら以外の処理が参照テーブル３２に登録されていても良い。
【００７５】
データ通信時のＳＳＬのオン／オフの設定変更は、アプリケーションプログラムの起動時に必要に応じて設定部４２によって行われる処理である。参照テーブル３２には、このＳＳＬの設定変更に要する処理時間として３秒が登録されている。またＳＳＬのオン／オフを設定変更する場合は、システムの再起動は必要でなく、ユーザによる操作も必要でない。
【００７６】
また、ＩＰアドレスの自動取得設定／手動設定の設定変更も、アプリケーションプログラムの起動時に必要に応じて設定部４２によって行われる処理である。参照テーブル３２には、ＩＰアドレスの自動取得設定／手動設定の設定変更に要する処理時間として３０秒が登録されている。この設定変更の場合、システムの再起動が行われるので比較的処理時間が長くなっている。またＩＤアドレスの自動取得設定から手動設定に設定変更が行われると、ユーザはＩＰアドレスを手動設定する必要がある。
【００７７】
また、原稿の再読み取り処理は、上述したようにスキャン機能とＯＣＲ機能とが連続的に動作する場合において、スキャン機能で生成されるデータフォーマットと、ＯＣＲ機能による読取可能フォーマットとが合致していないときに、ＯＣＲ機能に対応したアプリケーションプログラムの起動前、若しくは起動が完了するまでに行われる処理である。参照テーブル３２によれば、この原稿の再読み取り処理に要する処理時間として１２秒以上が登録されている。原稿の再読み取りの場合、原稿の枚数に応じて処理時間が異なる。そのため、参照テーブル３２には、少なくとも１枚の原稿の再読み取りを行うために必要な時間が処理時間として登録されている。原稿の再読み取りを行う場合、システムの再起動は必要でないが、原稿をスキャナ部１５に再度セットする必要があるので、ユーザによる操作が必要となる。
【００７８】
アプリケーション管理部４３は、ユーザによって選択された機能を動作させるためのアプリケーションプログラムを選択する際、上記のような動作条件管理情報３１および参照テーブル３２を参照することによって、動作条件反映のために要する処理時間が最小となるアプリケーションプログラムを選択する。以下、これについて詳しく説明する。
【００７９】
まず、上述したようにユーザがスキャン機能とＯＣＲ機能とを連続して動作させることを指定した場合について説明する。例えば図５に示したように、ユーザがスキャン機能の動作条件としてデータフォーマットをＣｏｍｐａｃｔＰＤＦに指定した場合、アプリケーション管理部４３は、動作条件管理情報３１を参照してデータフォーマットがＣｏｍｐａｃｔＰＤＦに対応していないアプリケーションプログラムを選択対象から除外する。図７に示した動作条件管理情報３１の例では、「ＳＣＡＮ３」に対応する第１アプリケーションプログラムＰＡ３が選択対象から除外される。また、図５に示した画面例では、ユーザがデータ送信を行うことを指定しているので、データ送信を行うことができないアプリケーションプログラムは選択対象から除外される。ただし、図７に示す動作条件管理情報３１の例では、スキャン機能に関してデータ送信を行うことができないアプリケーションプログラムは存在しないので、選択対象から除外されるものはない。
【００８０】
また、図６に示したように、ユーザがＯＣＲ機能の動作条件として保存フォーマットを自動に指定した場合、ユーザは特定の保存フォーマットを指定していないので、これにより選択対象から除外されるものはない。また、図６に示した画面例では、ユーザがデータ送信を行うことを指定しているので、データ送信を行うことができないアプリケーションプログラムは選択対象から除外される。図７に示す動作条件管理情報３１の例では、「ＯＣＲ３」に対応する第２アプリケーションプログラムＰＢ３がデータ送信不可であるので、選択対象から除外される。
【００８１】
上記のようにしてユーザにより指定された動作条件を満たさないアプリケーションプログラムを除外すると、スキャン機能について「ＳＣＡＮ１」および「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ１，ＰＡ２が残し、ＯＣＲ機能について「ＯＣＲ１」および「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＢ１，ＰＢ２が残る。これら選択対象となるアプリケーションプログラムの組み合わせパターンを生成すると、（１）「ＳＣＡＮ１」＋「ＯＣＲ１」、（２）「ＳＣＡＮ１」＋「ＯＣＲ２」、（３）「ＳＣＡＮ２」＋「ＯＣＲ１」、（４）「ＳＣＡＮ２」＋「ＯＣＲ２」の４つパターンとなる。
【００８２】
アプリケーション管理部４３は、上記４つの組み合わせパターンのそれぞれについて、動作条件反映のために要する処理時間の合計値を求める。このとき、アプリケーション管理部４３は、設定部４２から現在の設定状態を取得し、現在の設定状態と各アプリケーションプログラムの動作条件と参照する。そしてユーザによって指定された動作条件を満たしつつ、各組み合わせパターンに含まれるアプリケーションプログラムを起動する際に行われる動作条件を反映させるための処理に要する処理時間の合計値を算出する。
【００８３】
図９は、スキャン機能とＯＣＲ機能とを連続的に動作させる４つの組み合わせパターンによる処理プロセスの概念を示す図である。図例では、設定部４２における現在の設定状態において、データ通信のＳＳＬ設定がオフになっている場合を示している。
【００８４】
まず、組み合わせパターン１では、「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１と、「ＯＣＲ１」に対応する第２アプリケーションプログラムＰＢ１とが順次に実行される。図７に示した動作条件管理情報３１によれば、「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１は、ＳＳＬ設定をオフした状態でデータ送信を行うので、現在の設定状態がそのまま利用可能である。そのため「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１の起動時には動作条件を反映させるための処理は行われず、第１アプリケーションプログラムＰＡ１が速やかに起動された状態となり、スキャン機能が動作する（プロセスＰ１１）。このスキャン機能では、ユーザによって指定された動作条件であるＣｏｍｐａｃｔＰＤＦの画像データが生成される。
【００８５】
一方、図７の動作条件管理情報３１を参照すれば、「ＯＣＲ１」に対応する第２アプリケーションプログラムＰＢ１は、読取可能フォーマットが「ＰＤＦ」のみとなっている。またデータ送信時のＳＳＬ設定はオンとなっている。そのため、組み合わせパターン１では、「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１の実行が終了した後、「ＯＣＲ１」に対応する第２アプリケーションプログラムＰＢ１を起動する際に、第２アプリケーションプログラムＰＢ１の動作条件を反映させるための処理が行われる（プロセスＰ１２）。このとき、ＳＳＬ設定をオフからオンに設定変更されると共に、読取可能な「ＰＤＦ」の画像データを生成するために原稿の再読み取りが行われる。これらの処理に要する時間は、図８の参照テーブル３２を参照すると、１５秒以上となる。
【００８６】
そして組み合わせパターン１では、第２アプリケーションプログラムＰＢ１の動作条件を反映させるための処理が終了した後に、第２アプリケーションプログラムＰＢ１によるＯＣＲ機能が動作するようになる（プロセスＰ１３）。したがって、組み合わせパターン１では、例えば時刻Ｔ０に処理を開始した場合、全ての処理が終了するタイミングは時刻Ｔ１となる。
【００８７】
次に、組み合わせパターン２では、「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１と、「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＢ２とが順次に実行される。「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１は、ＳＳＬ設定をオフした状態でデータ送信を行うので、現在の設定状態がそのまま利用可能である。そのため「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１の起動時には動作条件を反映させるための処理は行われず、第１アプリケーションプログラムＰＡ１が速やかに起動された状態となってスキャン機能が動作する（プロセスＰ２１）。このスキャン機能では、ユーザによって指定された動作条件であるＣｏｍｐａｃｔＰＤＦの画像データが生成される。
【００８８】
また図７の動作条件管理情報３１を参照すれば、「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＢ２は、読取可能フォーマットが「ＰＤＦ又はＣｏｍｐａｃｔＰＤＦ」となっている。そのため、スキャン機能で生成される画像データをそのまま利用して文字抽出を行うことができる。またデータ送信時のＳＳＬ設定はオフとなっている。したがって、組み合わせパターン２では、「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１の実行が終了した後、「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＢ２を起動する際に、第２アプリケーションプログラムＰＢ２の動作条件を反映させるための処理が行う必要がない。それ故、スキャン機能の動作が終了した後、ＯＣＲ機能が速やかに動作するようになる（プロセスＰ２２）。このような組み合わせパターン２では、例えば時刻Ｔ０に処理を開始した場合、全ての処理が終了するタイミングは時刻Ｔ２となる。
【００８９】
次に、組み合わせパターン３では、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２と、「ＯＣＲ１」に対応する第２アプリケーションプログラムＰＢ１とが順次に実行される。図７に示した動作条件管理情報３１によれば、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２は、ＳＳＬ設定をオンにした状態でデータ送信を行うので、現在の設定状態をそのまま利用することはできず、設定部４２による設定変更が行われる。つまり、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２の起動時には、その動作条件を反映させるための処理は行われる（プロセスＰ３１）。参照テーブル３２によると、この処理には３秒の時間がかかる。そして動作条件反映処理が終了すると、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２が起動した状態となり、スキャン機能が動作する（プロセスＰ３２）。このスキャン機能では、ユーザによって指定された動作条件であるＣｏｍｐａｃｔＰＤＦの画像データが生成される。
【００９０】
一方、「ＯＣＲ１」に対応する第２アプリケーションプログラムＰＢ１は、読取可能フォーマットが「ＰＤＦ」のみとなっている。またデータ送信時のＳＳＬ設定はオンとなっている。そのため、組み合わせパターン３では、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２の実行が終了した後、「ＯＣＲ１」に対応する第２アプリケーションプログラムＰＢ１を起動する際に、第２アプリケーションプログラムＰＢ１の動作条件を反映させるための処理が行われる（プロセスＰ３３）。このとき、読取可能な「ＰＤＦ」の画像データを生成するために原稿の再読み取りが行われる。この処理に要する時間は、参照テーブル３２によれば、１２秒以上となる。
【００９１】
そして組み合わせパターン３では、第２アプリケーションプログラムＰＢ１の動作条件を反映させるための処理が終了した後に、第２アプリケーションプログラムＰＢ１によるＯＣＲ機能が動作するようになる（プロセスＰ３４）。したがって、組み合わせパターン３では、例えば時刻Ｔ０に処理を開始した場合、全ての処理が終了するタイミングは時刻Ｔ３となる。
【００９２】
次に、組み合わせパターン４では、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２と、「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＢ２とが順次に実行される。「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２は、ＳＳＬ設定をオンにした状態でデータ送信を行うので、現在の設定状態をそのまま利用することはできず、設定部４２による設定変更が行われる。つまり、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２の起動時には、その動作条件を反映させるための処理は行われる（プロセスＰ４１）。参照テーブル３２によると、この処理には３秒の時間がかかる。そして動作条件反映処理が終了すると、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２が起動した状態となり、スキャン機能が動作する（プロセスＰ４２）。このスキャン機能では、ユーザによって指定された動作条件であるＣｏｍｐａｃｔＰＤＦの画像データが生成される。
【００９３】
また「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＢ２は、読取可能フォーマットが「ＰＤＦ又はＣｏｍｐａｃｔＰＤＦ」となっている。そのため、スキャン機能で生成される画像データをそのまま利用して文字抽出を行うことができる。ただし、データ送信時のＳＳＬ設定はオフである。そのため、「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１の実行が終了した後、「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＢ２を実行するためには、設定部４２がＳＳＬの設定をオンからオフに設定変更する必要がある。つまり、「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＡ２の起動時には、その動作条件を反映させるための処理は行われる（プロセスＰ４３）。参照テーブル３２によると、この処理には３秒の時間がかかる。そして動作条件反映処理が終了すると、「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＢ２が起動した状態となり、ＯＣＲ機能が動作する（プロセスＰ４４）。したがって、組み合わせパターン４では、例えば時刻Ｔ０に処理を開始した場合、全ての処理が終了するタイミングは時刻Ｔ４となる。
【００９４】
上記のように、複数の組み合わせパターンが得られる場合、アプリケーション管理部４３は、それらの中から、動作反映処理に要する時間の合計時間が最小となる組み合わせパターンを選択する。すなわち、図９の場合には、組み合わせパターン２が選択される。尚、図９の例では、スキャン機能が動作する時間（プロセスＰ１１，Ｐ２１，Ｐ３２，Ｐ４２の時間）が同じであり、またＯＣＲ機能が動作する時間（プロセスＰ１３，Ｐ２２，Ｐ３４，Ｐ４４の時間）が同じであると仮定している。
【００９５】
そしてアプリケーション実行部４４は、アプリケーション管理部４３によって選択された組み合わせパターンに含まれるアプリケーションプログラムを読み出して順次実行する。すなわち、図９に示す組み合わせパターン２が選択されると、アプリケーション実行部４４は、「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１を記憶装置１９から読み出して実行し、その実行が終了すると、次に「ＯＣＲ２」に対応する第２アプリケーションプログラムＰＢ２を読み出して実行する。これにより、各機能を動作させる際には、ユーザによる待機時間を短くすることができると共に、全ての処理を終了させるまでに要する時間も短縮することができので、情報処理装置１における処理効率が向上する。
【００９６】
ここで、アプリケーション管理部４３が動作反映処理に要する時間の合計時間が最小となる組み合わせパターンを選択する際、複数の組み合わせパターンにおいて合計時間が最小となることがある。このような場合、アプリケーション管理部４３は、システムの再起動を伴う動作条件反映処理や、ユーザによる操作が必要な動作条件反映処理を行うことが必要な組み合わせパターンがあれば、それらを除外する。つまり、上記のような動作条件反映処理は、情報処理装置１の利便性や操作性を著しく低下させるため、アプリケーションプログラムの起動時にそのような処理が行われることを抑制する。
【００９７】
また上記のような組み合わせパターンの除外を行っても、依然として複数の組み合わせパターンが残ることがある。この場合、アプリケーション管理部４３は、操作パネル１２の表示部１３に、アプリケーション選択画面を表示してユーザに一の組み合わせパターンを選択させる。
【００９８】
図１０は、このアプリケーション選択画面１３ｄの一例を示す図である。アプリケーション管理部４３により最終的に複数の組み合わせパターンが抽出された場合、アプリケーション選択画面１３ｄには、それら複数の組み合わせパターンが表示される。図１０の例では、２つの組み合わせパターンが抽出された場合を示している。各組み合わせパターンには、ユーザが選択操作を行うための操作キー５９ａ，５９ｂが表示される。したがって、ユーザは、いずれかの操作キーを操作することにより、所望の組み合わせパターンを選択することができる。
【００９９】
次に、ユーザがスキャン機能だけを単一で動作させることを指定した場合について説明する。例えば図５に示したように、ユーザがスキャン機能の動作条件としてデータフォーマットをＣｏｍｐａｃｔＰＤＦに指定すると共に、データ送信を行うことを指定した場合、アプリケーション管理部４３は、動作条件管理情報３１を参照することにより、「ＳＣＡＮ３」に対応する第１アプリケーションプログラムＰＡ３を選択対象から除外する。
【０１００】
上記のようにしてユーザにより指定された動作条件を満たさないアプリケーションプログラムを除外すると、スキャン機能について「ＳＣＡＮ１」および「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ１，ＰＡ２が選択対象として残る。アプリケーション管理部４３は、これら２つのアプリケーションプログラムＰＡ１，ＰＡ２のそれぞれについて、動作条件反映のために要する処理時間を求める。このとき、アプリケーション管理部４３は、設定部４２から現在の設定状態を取得し、現在の設定状態と各アプリケーションプログラムの動作条件と参照する。そしてユーザによって指定された動作条件を満たしつつ、各アプリケーションプログラムを起動する際に行われる動作条件を反映させるための処理に要する処理時間を算出する。
【０１０１】
図１１は、複数の第１アプリケーションプログラムＰＡ１，ＰＡ２のそれぞれによる処理プロセスの概念を示す図である。図例では、設定部４２における現在の設定状態において、データ通信のＳＳＬ設定がオフになっている場合を示している。
【０１０２】
まず、「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１を実行する場合、図７に示した動作条件管理情報３１によれば、ＳＳＬ設定をオフにした状態でデータ送信を行うので、現在の設定状態がそのまま利用可能である。そのため「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１の起動時には動作条件を反映させるための処理は行われず、第１アプリケーションプログラムＰＡ１が速やかに起動された状態となり、スキャン機能が動作する（プロセスＰ５１）。このスキャン機能では、ユーザによって指定された動作条件であるＣｏｍｐａｃｔＰＤＦの画像データが生成される。このような処理を、例えば時刻Ｔ５に開始した場合、全ての処理が終了するタイミングは時刻Ｔ６となる。
【０１０３】
次に、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２を実行する場合、図７に示した動作条件管理情報３１によれば、ＳＳＬ設定をオンにした状態でデータ送信を行うので、現在の設定状態をそのまま利用することはできず、設定部４２による設定変更が行われる。つまり、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２の起動時には、その動作条件を反映させるための処理は行われる（プロセスＰ６１）。参照テーブル３２によると、この処理には３秒の時間がかかる。そして動作条件反映処理が終了すると、「ＳＣＡＮ２」に対応する第１アプリケーションプログラムＰＡ２が起動した状態となり、スキャン機能が動作する（プロセスＰ６２）。このスキャン機能では、ユーザによって指定された動作条件であるＣｏｍｐａｃｔＰＤＦの画像データが生成される。このような処理を、例えば時刻Ｔ５に開始した場合、全ての処理が終了するタイミングは時刻Ｔ７となる。
【０１０４】
上記のように、ユーザによって選択された単一の機能を動作させるための複数のアプリケーションプログラムが存在する場合、アプリケーション管理部４３は、ユーザによって指定された動作条件を満たさないものを選択対象から除外し、残った選択対象の中から、動作反映処理に要する時間の合計時間が最小となるアプリケーションプログラムを選択する。すなわち、図１１の場合には、第１アプリケーションプログラムＰＡ１が選択される。
【０１０５】
そしてアプリケーション実行部４４は、アプリケーション管理部４３によって選択されたアプリケーションプログラムを読み出して実行する。すなわち、図１１に示す第１アプリケーションプログラムＰＡ１が選択されると、アプリケーション実行部４４は、「ＳＣＡＮ１」に対応する第１アプリケーションプログラムＰＡ１を記憶装置１９から読み出して実行する。これにより、スキャン機能を動作させる際には、ユーザによる待機時間を短くすることができると共に、スキャン機能による全ての処理を終了させるまでに要する時間も短縮することができので、情報処理装置１における処理効率が向上する。
【０１０６】
尚、アプリケーション管理部４３が、ユーザによって選択された単一の機能を動作させるためのアプリケーションプログラムを選択する際、複数のアプリケーションプログラムにおいて動作条件を反映させるための処理時間が最小となることがある。このような場合には、上述した組み合わせパターンの場合と同様の処理が行われる。
【０１０７】
次に、情報処理装置１においてユーザによって選択された機能に対応するアプリケーションプログラムを選択して実行するための具体的な処理手順について説明する。図１２乃至図１７は、情報処理装置１のＣＰＵ１０によって行われる処理手順を示すフローチャートである。この処理は、主としてＣＰＵ１０がアプリケーション管理プログラム２２を実行することにより行われる。
【０１０８】
図１２に示すように、処理が開始されると、ＣＰＵ１０は、アプリケーション管理部４３として機能し、ユーザによる機能選択操作が行われるまで待機する状態となる（ステップＳ１）。そしてユーザによる機能選択操作が行われると、ＣＰＵ１０は、複数の機能が選択されたか否かを判断する（ステップＳ２）。複数の機能が選択された場合、ＣＰＵ１０は、組み合わせ選択処理を実行する（ステップＳ３）。この組み合わせ選択処理では、ユーザによって選択された複数の機能の動作順序に基づいて各機能を動作させるためのアプリケーションプログラムの一の組み合わせパターンが選択される。一方、単一の機能が選択された場合には、アプリケーション選択処理を実行する（ステップＳ４）。このアプリケーション選択処理では、ユーザによって選択された単一の機能に基づいてその機能を動作させるための一のアプリケーションプログラムが選択される。
【０１０９】
そしてＣＰＵ１０は、アプリケーション実行部４４を機能させ、ステップＳ３又はＳ４で選択されたアプリケーションプログラムの実行を開始する（ステップＳ５）。このとき、上記ステップＳ３又はＳ４において起動時間が短いアプリケーションプログラムが選択されているので、ＣＰＵ１０は、速やかにアプリケーションプログラムの起動を完了させ、ユーザによって選択された機能を動作させる。そしてアプリケーションプログラムの実行が終了すると（ステップＳ６でＹＥＳ）、次に実行すべきアプリケーションプログラムが存在するか否かを判断し（ステップＳ７）、存在すればステップＳ５に戻る。そして次のアプリケーションプログラムが実行される。これに対し、次のアプリケーションプログラムが存在しない場合は、処理が終了する。
【０１１０】
図１３は、組み合わせ選択処理（ステップＳ３）の詳細な処理手順の一例を示すフローチャートである。この処理を開始すると、ＣＰＵ１０は、ユーザによって選択された複数の機能の動作順序を特定する（ステップＳ１１）。例えば、ユーザが最初に選択した機能を１番目に動作させる機能として特定し、その次に選択した機能を２番目に機能させる機能として特定する。尚、ユーザが３つ以上の機能を選択した場合も同様であり、ユーザによって選択された順番に応じて動作順序が特定される。そしてＣＰＵ１０は、記憶装置１９から動作条件管理情報３１を読み出す（ステップＳ１２）。
【０１１１】
次にＣＰＵ１０は、ユーザにより指定された動作条件があるか否かを判断する（ステップＳ１３）。ユーザによる動作条件が指定されている場合（ステップＳ１３でＹＥＳ）、ＣＰＵ１０は、各機能に対応するアプリケーションプログラムの動作条件に基づいて、各機能に対してユーザにより指定された動作条件に適合しないアプリケーションプログラムを選択対象から除外する（ステップＳ１４）。
【０１１２】
次にＣＰＵ１０は、複数の機能の動作順序に基づいて、複数の機能を順次動作させるためのアプリケーションプログラムの組み合わせパターンを抽出する（ステップＳ１５）。そして複数の組み合わせパターンが抽出されたか否かを判断する（ステップＳ１６）。複数の組み合わせパターンが抽出された場合は、それら複数の組み合わせパターンの中から推奨パターンを選択するための推奨パターン選択処理を実行する（ステップＳ１７）。これに対し、ステップＳ１５で抽出された組み合わせパターンが一つである場合は、ステップＳ１７の処理をスキップし、組み合わせ選択処理を終了する。
【０１１３】
図１４および図１５は、推奨パターン選択処理（ステップＳ１７）の詳細な処理手順の一例を示すフローチャートである。この処理を開始すると、ＣＰＵ１０は、まず抽出された複数の組み合わせパターンの中から一の組み合わせパターンを選択する（ステップＳ２１）。そして設定部４２において設定されている現在の設定状態を確認し（ステップＳ２２）、処理時間の合計値を０にリセットする（ステップＳ２３）。
【０１１４】
次にＣＰＵ１０は、動作順序に基づいて組み合わせパターンに含まれるアプリケーションプログラムを一つ選択し（ステップＳ２４）、その選択したアプリケーションプログラムの動作条件と、現在の設定状態とが適合するか否かを判断する（ステップＳ２５）。ここで、アプリケーションプログラムの動作条件が適合しない場合（ステップＳ２５でＮＯ）、ＣＰＵ１０は、その動作条件を反映させるために要する処理時間を参照テーブル３２から抽出する（ステップＳ２６）。その抽出した処理時間を、処理時間の合計値に加算し（ステップＳ２７）、動作条件を反映させた場合の設定状態を仮想的に現在の設定状態として設定する（ステップＳ２８）。一方、アプリケーションプログラムの動作条件が現在の設定状態に適合している場合（ステップＳ２５でＹＥＳ）、ステップＳ２６，Ｓ２７，Ｓ２８の処理はスキップする。
【０１１５】
そしてＣＰＵ１０は、その組み合わせパターンに含まれている次のアプリケーションプログラムが存在するか否かを判断し（ステップＳ２９）、存在する場合はステップＳ２４に戻って上述した処理を繰り返す。このとき、ステップＳ２５では、ステップＳ２８で設定された仮想的な現在の設定状態に基づいて動作条件が適合するか否かが判断される。したがって、ステップＳ２４〜Ｓ２９の処理が、一の組み合わせパターンに含まれる各アプリケーションプログラムに基づいて行われていくことにより、各アプリケーションプログラムの動作条件を反映させるために要する処理時間が合計値に累積されていく。
【０１１６】
そして一の組み合わせパターンに含まれる全てのアプリケーションプログラムについて上記処理が行われると、ＣＰＵ１０は、動作条件を反映させるために要する処理時間の合計値を一時的にメモリ１１に記憶する（ステップＳ３０）。そして次の組み合わせパターンが存在するか否かを判断し（ステップＳ３１）、次の組み合わせパターンがあれば、ステップＳ２１に戻って上記と同様の処理を繰り返す。また次の組み合わせパターンが存在しない場合は、図１５のフローチャートに進む。
【０１１７】
図１５のフローチャートに進むと、ＣＰＵ１０は、処理時間の合計値が０となる組み合わせパターンが存在しているか否かを判断する（ステップＳ４１）。そして処理時間の合計値が０となる組み合わせパターンが存在する場合は（ステップＳ４１でＹＥＳ）、ステップＳ４８へとジャンプする。また処理時間の合計値が０となる組み合わせパターンがない場合（ステップＳ４１でＮＯ）、ＣＰＵ１０は、処理時間の合計値が最小となる組み合わせパターンを抽出する（ステップＳ４２）。そして複数の組み合わせパターンが抽出されたか否かを判断する（ステップＳ４３）。ここで複数の組み合わせパターンが抽出されていない場合は、一の組み合わせパターンが抽出できたことになるため、ステップＳ４８へとジャンプする。これに対し、複数の組み合わせパターンが抽出された場合（ステップＳ４３でＹＥＳ）、ＣＰＵ１０は、それら複数の組み合わせパターンの中に、システムの再起動を伴う動作条件反映処理を行うものが含まれているか否かを判断する（ステップＳ４４）。その結果、システムの再起動を伴う組み合わせパターンが含まれていれば、その組み合わせパターンを除外する（ステップＳ４５）。尚、システムの再起動を伴う組み合わせパターンが含まれていない場合は、ステップＳ４５はスキップする。次に、ＣＰＵ１０は、複数の組み合わせパターンの中に、ユーザによる操作が必要な動作条件反映処理を行うものが含まれているか否かを判断する（ステップＳ４６）。その結果、ユーザによる操作が必要な組み合わせパターンが含まれていれば、その組み合わせパターンを除外する（ステップＳ４７）。尚、ユーザによる操作が必要な組み合わせパターンが含まれていない場合は、ステップＳ４７はスキップする。
【０１１８】
そしてＣＰＵ１０は、上記のような処理を経て得られる組み合わせパターンを推奨組み合わせパターンとして抽出する（ステップＳ４８）。ＣＰＵ１０は、この推奨組み合わせパターンが複数パターン抽出されているか否かを判断する（ステップＳ４９）。そして複数の推奨組み合わせパターンが抽出されている場合には、表示部１３にアプリケーション選択画面を表示し（ステップＳ５０）、ユーザによる選択操作を受け付ける（ステップＳ５１）。そしてユーザによって選択された一の推奨組み合わせパターンを決定する（ステップＳ５２）。一方、ステップＳ４９において既に一の推奨組み合わせパターンが抽出されている場合（ステップＳ４９でＮＯ）、ＣＰＵ１０は、その一の推奨組み合わせパターンを決定する（ステップＳ５２）。
【０１１９】
上記のような処理により、ユーザによって選択された複数の機能を連続的に動作させる場合に、動作条件反映処理に要する処理時間が最小となるアプリケーションプログラムの組み合わせが一つ選択されることになる。そしてアプリケーション実行部４４が、その選択された組み合わせに含まれるアプリケーションプログラムを順次に実行すると、各アプリケーションプログラムの起動時間が短くなる。したがって、ユーザは効率良く情報処理装置１を使用することができる。
【０１２０】
次に図１６および図１７は、アプリケーション選択処理（ステップＳ４）の詳細な処理手順の一例を示すフローチャートである。この処理を開始すると、ＣＰＵ１０は、記憶装置１９から動作条件管理情報３１を読み出す（ステップＳ６２）。そしてＣＰＵ１０は、ユーザにより指定された動作条件があるか否かを判断する（ステップＳ６２）。ユーザによる動作条件が指定されている場合（ステップＳ６２でＹＥＳ）、ＣＰＵ１０は、ユーザにより選択された一の機能に対応するアプリケーションプログラムの動作条件に基づいて、ユーザにより指定された動作条件に適合しないアプリケーションプログラムを選択対象から除外する（ステップＳ６３）。一方、ユーザによる動作条件が指定されていない場合には、ステップＳ６３の処理はスキップする。そしてＣＰＵ１０は、複数のアプリケーションプログラムが選択対象に含まれるか否かを判断する（ステップＳ６４）。
【０１２１】
複数のアプリケーションプログラムが選択対象に含まれる場合（ステップＳ６４でＹＥＳ）、ＣＰＵ１０は、設定部４２において設定されている現在の設定状態を確認する（ステップＳ６５）。そして複数のアプリケーションプログラムの中から、動作条件が現在の設定状態に適合するものを全て抽出する（ステップＳ６６）。これにより、動作条件反映処理を行わずに実行することが可能なアプリケーションプログラムが抽出される。ただし、ステップＳ６６の抽出処理により、必ずしもアプリケーションプログラムが抽出されるとは限らない。そのため、ＣＰＵ１０は、ステップＳ６６の処理により少なくとも１つのアプリケーションプログラムが抽出されたか否かを判断する（ステップＳ６７）。ここで、アプリケーションプログラムが抽出されていない場合（ステップＳ６７でＮＯ）、ＣＰＵ１０は、現在の設定状態に基づいて、動作条件管理情報３１と参照テーブル３２とを参照することにより、複数のアプリケーションプログラムの中から動作条件を反映させるために要する処理時間が最小となるアプリケーションプログラムを抽出する（ステップＳ６８）。このようにしてステップＳ６６又はＳ６８で抽出されるアプリケーションプログラムが推奨アプリケーションプログラムとなる。
【０１２２】
一方、ステップＳ６４において、一のアプリケーションプログラムのみが選択対象に含まれている場合（ステップＳ６４でＮＯ）、上述したステップＳ６５〜Ｓ６８の処理はスキップする。この場合、その一のアプリケーションプログラムが推奨アプリケーションプログラムとなる。そして図１７の処理へと進む。
【０１２３】
図１７のフローチャートに進むと、ＣＰＵ１０は、複数の推奨アプリケーションプログラムが抽出されているか否かを判断する（ステップＳ７１）。そして複数の推奨アプリケーションプログラムが抽出されている場合には、表示部１３にアプリケーション選択画面を表示し（ステップＳ７２）、ユーザによる選択操作を受け付ける（ステップＳ７３）。そしてユーザによって選択された一の推奨アプリケーションプログラムを実行対象のプログラムとして決定する（ステップＳ７４）。一方、ステップＳ７１において既に一の推奨アプリケーションプログラムが抽出されている場合（ステップＳ７１でＮＯ）、ＣＰＵ１０は、その一の推奨アプリケーションプログラムを実行対象のプログラムとして決定する（ステップＳ７４）。
【０１２４】
上記のような処理により、ユーザによって選択された特定の機能を動作させる場合に、動作条件反映処理に要する処理時間が最小となる一のアプリケーションプログラムが選択されることになる。そしてアプリケーション実行部４４が、そのアプリケーションプログラムを実行すると、アプリケーションプログラムの起動時間が短くなり、速やかにユーザによって選択された特定の機能が動作するようになる。したがって、ユーザは効率良く情報処理装置１を使用することができる。
【０１２５】
以上のように本実施形態の情報処理装置１は、コピー機能、プリンタ機能、スキャン機能、ＦＡＸ機能、ＢＯＸ機能、ＯＣＲ機能など、各機能を動作させるためのアプリケーションプログラムをインストール可能である。情報処理装置１にインストールされるアプリケーションプログラムは記憶装置１９に記憶される。ひとつの機能に対して複数のアプリケーションプログラムがインストールされる場合、各アプリケーションプログラムは互いに動作条件が異なったものとなり、それぞれの動作条件に特化した処理を行う。
【０１２６】
そして情報処理装置１は、アプリケーション管理部４３によって、複数のアプリケーションプログラムのそれぞれの動作条件が管理されている。そしてアプリケーション管理部４３は、ユーザによって単一の機能が選択されると、それら複数のアプリケーションプログラムの中から一のアプリケーションプログラムを選択する。このとき、アプリケーション管理部４３は、設定部４２における現在の設定状態を取得し、選択された機能に対応した各アプリケーションプログラムの動作条件に基づいて、設定部４２において行われる動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択する。そしてアプリケーション管理部４３によって選択された一のアプリケーションプログラムがアプリケーション実行部４４によって実行されることにより、情報処理装置１においてユーザの選択した機能が動作する。
【０１２７】
したがって、本実施形態では、特定の機能を動作させるために複数のアプリケーションプログラムがインストールされており、ユーザにとっては各アプリケーションプログラムの動作条件が不明な状態であっても、アプリケーションプログラムを起動する際にその起動時間が最も短くなるアプリケーションプログラムが選択される。それ故、ユーザの待機時間が短くなり、利便性および操作性を向上させることができる。
【０１２８】
また、本実施形態においてアプリケーション管理部４３が、一のアプリケーションプログラムを選択する際、ユーザによって動作条件が指定されていれば、その指定された動作条件を満たす少なくとも１つのアプリケーションプログラムの中から、動作条件反映のために要する処理時間が最小となる一のアプリケーションプログラムを選択する。それ故、ユーザによって指定された動作条件を反映しつつ、ユーザの待機時間を短くすることができる。
【０１２９】
またアプリケーション管理部４３は、設定部４２における現在の設定状態を変更することなく実行可能なアプリケーションプログラムを優先的に選択するので、ユーザの待機時間を可能な限り短くすることができる。
【０１３０】
また本実施形態の情報処理装置１は、上述したように第１の機能と第２の機能とを連続的に動作させることによって一連の処理を実行することも可能である。この場合、アプリケーション管理部４３は、設定部４２における現在の設定状態を取得し、第１の機能を動作させる複数の第１アプリケーションプログラム、および、第２の機能を動作させる複数の第２アプリケーションプログラムのそれぞれの動作条件に基づいて、第１の機能を動作させる際に設定部４２において行われる動作条件反映のために要する処理時間と、第２の機能を動作させる際に設定部４２において行われる動作条件反映のために要する処理時間との合計時間が最小となる第１アプリケーションプログラムと第２アプリケーションプログラムとの一の組み合わせを選択する。また３つ以上の機能を連続的に動作させる場合も同様である。
【０１３１】
したがって、複数の機能を連続的に動作させる際には、各機能に対応するアプリケーションプログラムの起動時において総合的に最小限の動作条件反映処理が行われるだけであり、ユーザがそれぞれのアプリケーションプログラムの動作条件を把握していなくても、それら複数の機能がスムーズに連続して動作するようになる。その結果、ユーザは各機能が動作する際に長時間待機する必要がなくなると共に、全ての機能の動作が終了するまでに要する処理時間が短時間化されるので効率的にジョブの実行が終了する。
【０１３２】
（変形例）
以上、本発明に関する一実施形態について説明したが、本発明は上述した実施形態に限定されるものではない。すなわち、本発明には、上述した実施形態以外にも種々の変形例が適用可能である。
【０１３３】
例えば上記実施形態では、情報処理装置１において複数の機能を連続的に機能させる場合の例として、スキャン機能とＯＣＲ機能とが選択された場合を示したが、これに限られない。すなわち、スキャン機能とＯＣＲ機能の組み合わせ以外であっても、ユーザが複数の機能を連続的に動作させることを指定した場合には、上述したように動作条件反映のために要する処理時間の合計時間が最小となるアプリケーションプログラムの組み合わせを選択することにより、ユーザを待機させることなく、効率的な処理を行うことが可能になる。
【０１３４】
また上記実施形態では、情報処理装置１がＭＦＰなどの複数の機能を備える装置である場合を例示したが、これに限られるものでもない。すなわち、情報処理装置１は、コピー機能のみを有するコピー機、スキャン機能のみを有するスキャナ、プリント機能のみを有するプリンタなど、単機能装置であっても構わない。
【０１３５】
また、上述したＯＣＲ機能は、情報処理装置１だけで処理を実行するものではなく、例えば情報処理装置１がネットワーク４を介してコンピュータ２やサーバ３と連携した処理を実行することにより、ＯＣＲ機能に対応する動作を行うものであっても構わない。またこのような連携動作は、ＯＣＲ機能に限られず、その他の機能についても同様に適用可能である。
【符号の説明】
【０１３６】
１  情報処理装置
１０  ＣＰＵ
１４  操作部（操作入力手段）
１９  記憶装置（記憶手段）
２２  アプリケーション管理プログラム
２３  第１アプリケーションプログラム群
２４  第２アプリケーションプログラム群
３１  動作条件管理情報
３２  参照テーブル
４１  システム制御部
４２  設定部（設定手段）
４３  アプリケーション管理部（アプリケーション管理手段）
４４  アプリケーション実行部（アプリケーション実行手段）
ＰＡ１，ＰＡ２，ＰＡ３  第１アプリケーションプログラム
ＰＢ１，ＰＢ２，ＰＢ３  第２アプリケーションプログラム
【図１】
2011248488.tif 000003
【図２】
2011248488.tif 000004
【図３】
2011248488.tif 000005
【図４】
2011248488.tif 000006
【図５】
2011248488.tif 000007
【図６】
2011248488.tif 000008
【図７】
2011248488.tif 000009
【図８】
2011248488.tif 000010
【図９】
2011248488.tif 000011
【図１０】
2011248488.tif 000012
【図１１】
2011248488.tif 000013
【図１２】
2011248488.tif 000014
【図１３】
2011248488.tif 000015
【図１４】
2011248488.tif 000016
【図１５】
2011248488.tif 000017
【図１６】
2011248488.tif 000018
【図１７】
2011248488.tif 000019