(57)【要約】【課題】共通する機能についての設定を、異なるアプリ間で共有する。【解決手段】受付部１１１は、操作部１４から利用者の操作を受付け、情報処理装置１でアプリの機能が実行されると、その履歴をサーバ装置２に送り、サーバ装置２によりその履歴を記憶させる。特定部１１２は、起動された第１アプリに含まれる機能のうち、設定がされていない機能を特定する。取得部１１３は、特定された機能の、第１アプリと異なる第２アプリにおける設定情報を取得する。適用部１１４は、特定部１１２が特定した第１アプリの機能に、取得部１１３が取得した設定情報を適用する。受付部１１１は、複数の第２アプリが存在する場合に、これらの第２アプリのそれぞれを提示して利用者の選択を受付けてもよい。【選択図】図８
2020017064.tif 000002
【特許請求の範囲】
【請求項１】
起動された第１アプリに含まれる機能のうち、設定がされていない機能を特定する特定部と、
特定された前記機能の、前記第１アプリと異なる第２アプリにおける設定情報を取得する取得部と、
前記第１アプリの前記機能に、取得した前記設定情報を適用する適用部と、
を有する情報処理装置。
【請求項２】
前記取得部は、前記第１アプリを起動した利用者により設定された、前記第２アプリにおける前記設定情報を取得する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記取得部は、アプリによって実行される機能の履歴に基づいて、複数の前記第２アプリのいずれかにおける前記設定情報を取得する
ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記特定部は、前記第１アプリにおける前記機能の名称である第１名称により該機能を特定し、
前記取得部は、前記第２アプリにおける機能の名称のうち、前記第１名称に対応する第２名称を特定して、該第２名称で示される前記機能の設定情報を取得する
ことを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記取得部は、前記第１名称を複数の文字列に分解して、該文字列を用いて前記第１名称に対応する前記第２名称を特定する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
複数の前記第２アプリが存在する場合に、該第２アプリのそれぞれを提示して利用者の選択を受付ける受付部、を有し、
前記取得部は、受付けた選択により示される第２アプリにおける設定情報を取得する
ことを特徴とする請求項１から５のいずれか１項に記載の情報処理装置。
【請求項７】
コンピュータを、
起動された第１アプリに含まれる機能のうち、設定がされていない機能を特定する特定部と、
特定された前記機能の、前記第１アプリと異なる第２アプリにおける設定情報を取得する取得部と、
前記第１アプリの前記機能に、取得した前記設定情報を適用する適用部、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、及びプログラムに関する。
【背景技術】
【０００２】
情報処理装置で起動されるアプリケーションプログラム（以下、アプリという）を、利用者が使い易くするための設定は、一般にアプリごとに行われる。アプリをインストールする作業を支援する方法として、例えば、特許文献１には、インストールの際に、旧バージョンのアプリの設定項目の設定値を、新バージョンのアプリの設定項目の設定値に継承して、新しいワークフローを作成するワークフロー作成支援方法が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２６９６３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的の一つは、共通する機能についての設定を、異なるアプリ間で共有することである。
【課題を解決するための手段】
【０００５】
本発明の請求項１に係る情報処理装置は、起動された第１アプリに含まれる機能のうち、設定がされていない機能を特定する特定部と、特定された前記機能の、前記第１アプリと異なる第２アプリにおける設定情報を取得する取得部と、前記第１アプリの前記機能に、取得した前記設定情報を適用する適用部と、を有する情報処理装置である。
【０００６】
本発明の請求項２に係る情報処理装置は、請求項１に記載の態様において、前記取得部は、前記第１アプリを起動した利用者により設定された、前記第２アプリにおける前記設定情報を取得することを特徴とする情報処理装置である。
【０００７】
本発明の請求項３に係る情報処理装置は、請求項１又は２に記載の態様において、前記取得部は、アプリによって実行される機能の履歴に基づいて、複数の前記第２アプリのいずれかにおける前記設定情報を取得することを特徴とする情報処理装置である。
【０００８】
本発明の請求項４に係る情報処理装置は、請求項１から３のいずれか１項に記載の態様において、前記特定部は、前記第１アプリにおける前記機能の名称である第１名称により該機能を特定し、前記取得部は、前記第２アプリにおける機能の名称のうち、前記第１名称に対応する第２名称を特定して、該第２名称で示される前記機能の設定情報を取得することを特徴とする情報処理装置である。
【０００９】
本発明の請求項５に係る情報処理装置は、請求項４に記載の態様において、前記取得部は、前記第１名称を複数の文字列に分解して、該文字列を用いて前記第１名称に対応する前記第２名称を特定することを特徴とする情報処理装置である。
【００１０】
本発明の請求項６に係る情報処理装置は、請求項１から５のいずれか１項に記載の態様において、複数の前記第２アプリが存在する場合に、該第２アプリのそれぞれを提示して利用者の選択を受付ける受付部、を有し、前記取得部は、受付けた選択により示される第２アプリにおける設定情報を取得することを特徴とする情報処理装置である。
【００１１】
本発明の請求項７に係るプログラムは、コンピュータを、起動された第１アプリに含まれる機能のうち、設定がされていない機能を特定する特定部と、特定された前記機能の、前記第１アプリと異なる第２アプリにおける設定情報を取得する取得部と、前記第１アプリの前記機能に、取得した前記設定情報を適用する適用部、として機能させるためのプログラムである。
【発明の効果】
【００１２】
請求項１、７に係る発明によれば、共通する機能についての設定が、異なるアプリ間で共有される。
請求項２に係る発明によれば、異なるアプリであっても、共通する機能については、再度、利用者が設定し直す必要がない。
請求項３に係る発明によれば、実行される機能の履歴が考慮された設定が行われる。
請求項４に係る発明によれば、異なるアプリにおいて共通する機能の名称が異なっていても、それらのアプリ間で設定が共有される。
請求項５に係る発明によれば、機能の名称を分解しない場合に比べて、名称が異なる共通の機能が特定される精度が向上する。
請求項６に係る発明によれば、利用者の選択に応じた設定が行われる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態に係る情報処理システム９の構成を示す図。
【図２】サーバ装置２の構成を示す図。
【図３】記憶部２２に記憶される履歴ＤＢ２２１の例を示す図。
【図４】履歴表２２１２の例を示す図。
【図５】情報処理装置１の構成を示す図。
【図６】記憶部１２に記憶される設定ＤＢ１２１の例を示す図。
【図７】記憶部１２に記憶される機能ＤＢ１２２の例を示す図。
【図８】情報処理装置１の機能的構成を示す図。
【図９】設定ＤＢ１２１を表の形式で示した図。
【図１０】情報処理装置１の動作の流れを示すフロー図。
【図１１】第２アプリの探索処理の動作の流れを示すフロー図。
【図１２】第２アプリの選択処理の動作の流れを示すフロー図。
【図１３】異なるアプリにおける設定を適用した旨の表示の例を示す図。
【図１４】未設定の機能に対して新たに設定を促す表示の例を示す図。
【図１５】変形例における情報処理システム９Ａの構成を示す図。
【発明を実施するための形態】
【００１４】
＜実施形態＞
＜情報処理システムの全体構成＞
図１は、本実施形態に係る情報処理システム９の構成を示す図である。情報処理システム９は、複数の情報処理装置１と、サーバ装置２と、を有し、また、これらを通信可能に接続する通信回線３を有する。
【００１５】
情報処理装置１は、利用者がアプリを起動して利用する据え置き型の端末装置である。なお、情報処理装置１は、据え置き型の端末装置のほか、この据え置き型の端末装置を操作するための携帯型の端末装置を含んでもよい。サーバ装置２は、通信回線３を介して情報処理装置１と接続し、情報処理装置１で実行されたアプリの機能の履歴を管理するサーバ装置である。
【００１６】
通信回線３は、例えばＬＡＮ（Local Area Network）のほか、ＷＡＮ（Wide Area Network）であってもよいし、インターネットであってもよいし、これらの組合せであってもよい。また、通信回線３は、公衆交換通信網（ＰＳＴＮ：Public Switched Telephone Networks）やサービス統合デジタル網（ＩＳＤＮ：Integrated Services Digital Network）等を含むものでもよい。
【００１７】
＜サーバ装置の構成＞
図２は、サーバ装置２の構成を示す図である。図２に示す通り、サーバ装置２は、制御部２１、記憶部２２、及び通信部２３を有する。
【００１８】
制御部２１は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）を有し、ＣＰＵがＲＯＭ及び記憶部２２に記憶されているコンピュータプログラム（以下、単にプログラムという）を読み出して実行することによりサーバ装置２の各部を制御する。
【００１９】
通信部２３は、有線又は無線により通信回線３にそれぞれ接続する通信回路である。サーバ装置２は、通信部２３により、通信回線３に接続された情報処理装置１と情報をやり取りする。
【００２０】
記憶部２２は、ハードディスクドライブ等の記憶手段であり、制御部２１のＣＰＵに読み込まれる各種のプログラム、データ等を記憶する。また、記憶部２２は、履歴ＤＢ２２１を記憶する。
【００２１】
＜履歴ＤＢの構成＞
図３は、記憶部２２に記憶される履歴ＤＢ２２１の例を示す図である。図３に示す履歴ＤＢ２２１は、情報処理装置１で実行されたアプリの機能の履歴を記憶するデータベースである。履歴ＤＢ２２１は、利用者ＩＤリスト２２１１と、履歴表２２１２と、を有する。利用者ＩＤリスト２２１１は、情報処理装置１を操作する利用者の識別情報である利用者ＩＤを記憶するリストである。履歴表２２１２は、利用者ＩＤごとに設けられ、対象となる利用者ＩＤで識別される利用者が、情報処理装置１において実行したアプリの機能の履歴を記憶する。
【００２２】
図４は、履歴表２２１２の例を示す図である。履歴は、例えば、機能が実行された日時、アプリ名、機能の名称（機能名という）の組で記憶される。図４に示す履歴表２２１２の例は、利用者ＩＤが「Ｕ０１」の利用者が情報処理装置１で実行したアプリの機能の履歴を示している。例えば、履歴番号「＃５０１」には、「Ｕ０１」の利用者によって、日時「２０１８年６月９日  １０時３１分」に、「ＳｃａｎＴｏＦＴＰ」というアプリ名の、「二次元バーコード読み取り領域」という機能名の機能が実行されたことが示されている。
【００２３】
なお、履歴ＤＢ２２１には、上述した機能の履歴を、その機能が実行された情報処理装置１の識別情報とともに記憶してもよい。例えば、利用者ＩＤリスト２２１１は、利用者ＩＤと情報処理装置１の識別情報との組を記憶し、この組ごとに履歴表２２１２が記憶されてもよい。また、履歴表２２１２に、情報処理装置１の識別情報を示すフィールドが設けられていてもよい。
【００２４】
＜情報処理装置の構成＞
図５は、情報処理装置１の構成を示す図である。図５に示す情報処理装置１は、制御部１１、記憶部１２、通信部１３、操作部１４、表示部１５、及び画像処理部１６を有する。この情報処理装置１は、画像の形成、読取り、及び送信の機能を備えた画像処理装置である。
【００２５】
なお、情報処理装置１が、例えば通信回線３や近距離無線通信等を経由して他の据え置き型の情報処理装置１を操作する端末装置である場合、画像処理部１６を有しなくてもよい。
【００２６】
制御部１１は、ＣＰＵ、ＲＯＭ、ＲＡＭを有し、ＣＰＵがＲＯＭ及び記憶部１２に記憶されているプログラムを読み出して実行することにより情報処理装置１の各部を制御する。
【００２７】
通信部１３は、有線又は無線により通信回線３に接続する通信回路である。情報処理装置１は、通信部１３により通信回線３に接続された情報処理装置１と情報をやり取りする。また、通信部１３は、近距離無線通信の機能を備えていてもよい。図５に示す情報処理装置１は、例えば破線で示す通り、近距離無線通信により他の情報処理装置１と情報をやり取りする。
【００２８】
操作部１４は、各種の指示をするための操作ボタン、キーボード、タッチパネル等の操作子を備えており、利用者による操作を受付けてその操作内容に応じた信号を制御部１１に送る。
【００２９】
情報処理装置１の制御部１１は、操作部１４で利用者から操作を受付けると、通信部１３及び通信回線３を介して、その操作を示す操作情報をサーバ装置２に供給する。また、制御部１１は、利用者の操作に応じてアプリの機能が実行されると、実行された日時、アプリを示すアプリ名、機能を示す機能名、をそれぞれ示す情報をサーバ装置２に供給する。
【００３０】
表示部１５は、液晶ディスプレイ等の表示画面を有しており、制御部１１の制御の下、画像を表示する。表示画面の上には、操作部１４の透明のタッチパネルが重ねて配置されてもよい。
【００３１】
画像処理部１６は、制御部１１の制御の下、紙等の媒体に画像を形成し、媒体に形成された画像を読取り、また画像を示す画像データを送信する。制御部１１は、例えば、利用者に起動されたアプリの機能により、画像処理部１６に上述した処理を行わせる。
【００３２】
記憶部１２は、ソリッドステートドライブ、ハードディスクドライブ等の記憶手段であり、制御部１１のＣＰＵに読み込まれる各種のプログラム、データ等を記憶する。また、記憶部１２は、設定ＤＢ１２１及び機能ＤＢ１２２を記憶する。
【００３３】
＜設定ＤＢの構成＞
図６は、記憶部１２に記憶される設定ＤＢ１２１の例を示す図である。設定ＤＢ１２１は、アプリにより実行される機能ごとに、利用者の設定情報が記憶されているデータベースである。図６に示す設定ＤＢ１２１は、アプリ名リスト１２１１、利用者ＩＤリスト１２１２、及び設定表１２１３を有する。
【００３４】
アプリ名リスト１２１１は、アプリを示すアプリ名を記憶するリストである。利用者ＩＤリスト１２１２は、利用者の識別情報である利用者ＩＤを記憶するリストである。設定表１２１３は、アプリごと、利用者ごとに、そのアプリが有する各機能についての利用者の設定情報を記憶する表である。
【００３５】
図６に示す設定ＤＢ１２１の例では、アプリ名「ＳｃａｎＴｏＣｌｏｕｄ」で示されるアプリの、利用者ＩＤ「Ｕ０１」で示される利用者の設定のうち、「二次元コード読取り座標」で示される機能の設定情報は、「読取有無：ｔｒｕｅ」と、「読取座標（横）：５０〜１００」と、「読取座標（縦）：３０〜８０」と、である。なお、この設定情報は３つの設定値の並び（タプル）で構成される。これらの設定値は、例えば「：」に続く文字列が示す情報が使用され、「：」の前までの文字列が示す情報は無視されてもよい。
【００３６】
なお、アプリのいずれかの機能が設定されていないとき、設定ＤＢ１２１における設定表１２１３では、その機能に対応付けられた設定情報に、設定がされていないことを示すデータが記憶される。
【００３７】
＜機能ＤＢの構成＞
図７は、記憶部１２に記憶される機能ＤＢ１２２の例を示す図である。機能ＤＢ１２２は、機能を、その機能に含まれる要素ごとに分解して、各要素とその要素に関連する文字列とを対応付けるデータベースである。図７に示す機能ＤＢ１２２は、要素の識別情報である要素ＩＤ、要素が属する分類、要素の名称である要素名、及び、その要素に関連する文字列、の４つのフィールドを含む表である。
【００３８】
図７に示す機能ＤＢ１２２の例では、要素ＩＤ「Ｆ１１」で識別される要素に関連する文字列は「読取、スキャン、出力、印字」である。また、要素ＩＤ「Ｆ２３」で識別される要素に関連する文字列は「座標、位置、領域、ゾーン」である。
【００３９】
＜情報処理装置の機能的構成＞
図８は、情報処理装置１の機能的構成を示す図である。図８において、情報処理装置１の通信部１３、通信回線３、サーバ装置２の各構成についての記載は省かれている。
【００４０】
情報処理装置１の制御部１１は、記憶部１２に記憶されているプログラムを読み出して実行することにより、受付部１１１、特定部１１２、取得部１１３、及び適用部１１４として機能する。
【００４１】
受付部１１１は、操作部１４から利用者の操作を受付け、情報処理装置１でアプリの機能が実行されると、その履歴をサーバ装置２に送り、サーバ装置２によりその履歴を記憶させる。
【００４２】
特定部１１２は、受付部１１１が受付けた操作が、情報処理装置１に、いずれかのアプリを起動させるための操作であるとき、そのアプリ（第１アプリという）を特定する。
【００４３】
そして、特定部１１２は、設定ＤＢ１２１を参照して、特定した第１アプリの機能のうち、設定がされていない機能を、例えば、その機能を示す機能名により特定する。すなわち、特定部１１２は、起動された第１アプリに含まれる機能のうち、設定がされていない機能を特定する。
【００４４】
図９は、設定ＤＢ１２１を表の形式で示した図である。特定部１１２は、受付部１１１から利用者を示す利用者ＩＤと、その利用者により起動の指示がされたアプリを示すアプリ名とを受け取ると、設定ＤＢ１２１で、そのアプリ名で示されるアプリの機能のうち、その利用者ＩＤで示される利用者によって設定されていない機能を特定する。
【００４５】
例えば、受付部１１１が利用者ＩＤ「Ｕ０１」で示される利用者から、アプリ名「ＸＹＺスキャンＶ５」で示されるアプリの起動の指示を受付けると、特定部１１２は、起動を指示されたこのアプリを第１アプリとして特定し、図９に示す設定ＤＢ１２１を参照することにより、この第１アプリにおいて機能名「２次元コード読取位置」で示される機能が、上述した利用者により設定のされていない機能であることを特定する。この場合、特定部１１２は、第１アプリにおける、設定がされていない機能の名称である第１名称により、この機能を特定する。
【００４６】
取得部１１３は、機能ＤＢ１２２を参照することにより、特定部１１２により特定された機能を有している、第１アプリと異なるアプリのうち、その機能の設定がされているアプリ（第２アプリという）を特定し、その第２アプリにおいて上述した機能に設定された設定情報を取得する。すなわち、取得部１１３は、特定された機能の、第１アプリと異なる第２アプリにおける設定情報を取得する。
【００４７】
取得部１１３は、情報処理装置１において第１アプリを起動した利用者と異なる利用者により設定された設定情報を取得してもよいが、第１アプリを起動した利用者により設定された、第２アプリにおける設定情報を取得することが望ましい。これにより、第１アプリを起動した利用者が以前に設定したことのある設定情報により、その利用者にとっての、第１アプリの未設定の機能に対する設定がなされ、利用者は自身の好みや習慣に関して一貫した設定を得ることとなる。
【００４８】
また、取得部１１３は、例えば第１アプリと異なる複数の第２アプリが存在する場合に、サーバ装置２に対して上述した利用者が今までに起動させたアプリの機能の履歴を示す履歴情報を要求し、この履歴情報を取得してもよい。そして、取得部１１３は、取得した履歴情報に基づいて、複数の第２アプリのいずれかを選択し、選択したその第２アプリにおける設定情報を取得すればよい。この場合の取得部１１３は、アプリによって実行される機能の履歴に基づいて、複数の第２アプリのいずれかにおける設定情報を取得する取得部の一例である。
【００４９】
また、特定部１１２が、第１アプリにおける、設定がされていない機能の名称である第１名称により、この機能を特定する場合、取得部１１３は、第２アプリにおける機能の名称のうち、第１名称に対応する第２名称を特定して、この第２名称で示される機能の設定情報を取得するとよい。
【００５０】
第１名称に対応する第２名称を特定する方法は、例えば、第１名称を複数の文字列に分解して、これらのうち１以上の文字列を用いて行う。この場合の取得部１１３は、第１名称を複数の文字列に分解して、この文字列を用いて第１名称に対応する第２名称を特定する取得部の一例である。
【００５１】
第１名称を複数の文字列に分解する方法には、例えば、形態素解析による分節等が挙げられる。第１名称は、複数の文字列に分解される前に、例えば表記ゆれを記述した辞書によって正規化されてもよい。正規化とは、共通の概念を示す文字列が、異なった表記でそれぞれ表現される際に、これらの表記を統一することである。
【００５２】
適用部１１４は、特定部１１２が第１アプリの機能を特定し、取得部１１３が、この機能の、第１アプリと異なる第２アプリにおける設定情報を取得すると、設定ＤＢ１２１を書き換えることで、上述した第１アプリの機能に、上述した第２アプリの設定情報を適用する。すなわち、適用部１１４は、特定部１１２が特定した第１アプリの機能に、取得部１１３が取得した設定情報を適用する。
【００５３】
なお、受付部１１１は、複数の第２アプリが存在する場合に、これらの第２アプリのそれぞれを提示して利用者の選択を受付けてもよい。例えば、図８に示す受付部１１１は、複数の第２アプリの各アプリ名をそれぞれ表示部１５に表示することにより、第２アプリのそれぞれを利用者に提示する。この場合、取得部１１３は、受付部１１１が受付けた選択により示される第２アプリにおける設定情報を取得すればよい。
【００５４】
＜情報処理装置の動作＞
図１０は、情報処理装置１の動作の流れを示すフロー図である。図１０に示す通り、情報処理装置１の制御部１１は、操作部１４から第１アプリの起動の指示を受付けたか否かを判定し（ステップＳ１０１）、指示を受付けていないと判定する場合（ステップＳ１０１；ＮＯ）、この判定を続ける。
【００５５】
一方、指示を受付けたと判定する場合（ステップＳ１０１；ＹＥＳ）、制御部１１は、利用者の第１アプリの各機能についての設定を特定し（ステップＳ１０２）、第１アプリにおいて未設定の機能があるか否かを判定する（ステップＳ１０３）。
【００５６】
第１アプリにおいて未設定の機能がないと判定する場合（ステップＳ１０３；ＮＯ）、制御部１１は、処理を終了する。
【００５７】
一方、第１アプリにおいて未設定の機能があると判定する場合（ステップＳ１０３；ＹＥＳ）、制御部１１は、その未設定の機能を特定し（ステップＳ１０４）、第２アプリの探索処理を実行する（ステップＳ２００）。
【００５８】
図１１は、情報処理装置１による第２アプリの探索処理の動作の流れを示すフロー図である。制御部１１は、未設定の機能を示す機能名を特定すると（ステップＳ２０１）、表記ゆれを記憶した辞書を参照すること等によって、この機能名を正規化する（ステップＳ２０２）。
【００５９】
例えば、第１アプリにおける未設定の機能を示す機能名、すなわち第１名称として、制御部１１が「２次元コード読取位置」を特定した場合、正規化により、この文字列のうち「２次元」とうい文字列が「二次元」に置換される。また、第１名称として制御部１１が「二次元バーコード読み取り領域」を特定した場合、正規化により、この文字列のうち「読み取り」という文字列が「読取」に置換される。この正規化によって、特定された第１名称の表記が統一される。
【００６０】
制御部１１は、正規化された第１名称を、形態素解析によって分節する（ステップＳ２０３）。分節とは、文字列を、この文字列に含まれる複数の文字列に分解することである。形態素解析による分節とは、文字列を複数の形態素に分解することである。なお、形態素とは、意味を持つ表現要素の最小単位である。
【００６１】
例えば、上述した「２次元コード読取位置」の正規化により「二次元コード読取位置」が得られているとき、制御部１１は、これを形態素解析により「二」「次元」「コード」「読取」「位置」という５つの形態素に分節する。
【００６２】
また、例えば、上述した「二次元バーコード読み取り領域」の正規化により「二次元バーコード読取領域」が得られているとき、制御部１１は、これを形態素解析により「二」「次元」「バー」「コード」「読取」「位置」という６つの形態素に分節する。
【００６３】
制御部１１は、第１名称を分節した結果を機能ＤＢ１２２と照合して、第１名称に関連する要素ＩＤの配列を特定する（ステップＳ２０４）。照合は、分節された１以上の形態素の並びと、機能ＤＢ１２２に記述されている文字列と、を比較して行う。
【００６４】
制御部１１は、第１名称に含まれる形態素の並びが機能ＤＢ１２２に記述されている文字列である場合に、その文字列に対応付けられた要素ＩＤを特定する。制御部１１は、第１名称に含まれる全ての形態素について要素ＩＤを特定して、要素ＩＤの配列を得る。
【００６５】
例えば、第１名称として、制御部１１が「２次元コード読取位置」を特定した場合、正規化を経てこの第１名称は「二次元コード読取位置」となる。制御部１１は、この第１名称に対して形態素解析による分節を行い、分節された各形態素と図７に示した機能ＤＢ１２２とを照合する。
【００６６】
図７に示した機能ＤＢ１２２によると「二次元コード読取位置」のうち、「二次元コード」は「Ｆ２２」に対応し、「読取」は「Ｆ１１」、「Ｆ１３」、又は「Ｆ１４」に対応し、「位置」は「Ｆ２３」に対応している。
【００６７】
したがって、制御部１１は、上述した正規化された後の第１名称に対応する要素ＩＤの配列として、「Ｆ２２」→「Ｆ１１／Ｆ１３／Ｆ１４」→「Ｆ２３」を得る。ここで、「Ｆ１１／Ｆ１３／Ｆ１４」は、「Ｆ１１」、「Ｆ１３」、又は「Ｆ１４」を意味する。
【００６８】
制御部１１は、第１アプリ以外のアプリについても、機能名に対する正規化及び分節を行っており、これらのアプリの機能ごとに、要素ＩＤの配列を特定している。
【００６９】
例えば、上述した「二次元バーコード読み取り領域」という機能名は、正規化されて「二次元バーコード読取領域」となる。図７に示した機能ＤＢ１２２によれば、「二次元バーコード読取領域」のうち、「二次元バーコード」は「Ｆ２２」に対応し、「読取」は「Ｆ１１」、「Ｆ１３」、又は「Ｆ１４」に対応し、「領域」は「Ｆ２３」に対応している。すなわち、制御部１１は、「二次元バーコード読み取り領域」という機能名に対応する要素ＩＤの配列として、「Ｆ２２」→「Ｆ１１／Ｆ１３／Ｆ１４」→「Ｆ２３」を得る。
【００７０】
制御部１１は、これら機能ごとに特定された要素ＩＤの配列が、ステップＳ２０４で特定した要素ＩＤの配列と決められた条件を満たす機能について、設定済みのアプリを探索する（ステップＳ２０５）。この探索処理により見つかるアプリが第２アプリである。
【００７１】
なお、上述した「条件」とは、要素ＩＤの配列が初めから終わりまで共通するという条件であってもよいし、決められた閾値を超えた割合で共通するという条件であってもよい。上述した例では、機能名「２次元コード読取位置」で示される機能が未設定のアプリに対し、機能名「二次元バーコード読み取り領域」で示される機能が設定済みのアプリは、それぞれの機能名から特定される要素ＩＤの配列が共通しているため、制御部１１はこれらが対応関係にある、と判定する。したがって、前者を第１アプリとした場合に、後者は第２アプリである。
【００７２】
ステップＳ２００の探索処理が完了すると、図１０に示す通り、制御部１１は、第２アプリが存在するか否かを判定する（ステップＳ１０５）。
【００７３】
第２アプリが存在しないと判定する場合（ステップＳ１０５；ＮＯ）、制御部１１は、ステップＳ１０４で特定した未設定の機能に対して、利用者による新規の設定を受付ける（ステップＳ１０９）。
【００７４】
一方、第２アプリが存在すると判定する場合（ステップＳ１０５；ＹＥＳ）、制御部１１は、存在する第２アプリが複数であるか否かを判定する（ステップＳ１０６）。
【００７５】
第２アプリが複数であると判定する場合（ステップＳ１０６；ＹＥＳ）、制御部１１は、複数の第２アプリのうち、１つを選択する選択処理を実行する（ステップＳ３００）。
【００７６】
図１２は、情報処理装置１による第２アプリの選択処理の動作の流れを示すフロー図である。
【００７７】
図１２（ａ）に示す通り、制御部１１は、第２アプリが複数であると判定したことを受けて、サーバ装置２に利用者の履歴情報を要求し、この要求に応じるサーバ装置２からこの履歴情報を取得する（ステップＳ３０１）。
【００７８】
制御部１１は、取得した履歴情報に応じて、複数の第２アプリのいずれかを選択する（ステップＳ３０２）。例えば、制御部１１は、取得した履歴情報により利用者が実行したアプリ及び機能を集計して統計処理を行い、複数の第２アプリのうち、上述した機能を実行した頻度が閾値を超えたものを選択してもよい。また、制御部１１は、例えば、複数の第２アプリのうち、上述した機能を最後に実行したものを選択してもよい。以上がステップＳ３００の選択処理の例である。
【００７９】
なお、制御部１１は、第２アプリの選択処理として、上述したステップＳ３００の選択処理に代えて、存在する複数の第２アプリのそれぞれを提示して利用者の選択を受付ける選択処理（ステップＳ３００Ａ）を実行してもよい。
【００８０】
図１２（ｂ）に示す通り、制御部１１は、第２アプリが複数であると判定したことを受けて、これら複数の第２アプリの各アプリ名をそれぞれ表示部１５に表示することにより、第２アプリのそれぞれを利用者に提示する（ステップＳ３０１Ａ）。
【００８１】
制御部１１は、上述した提示に対する利用者の選択操作を受付ける（ステップＳ３０２Ａ）。以上がステップＳ３００Ａの選択処理の例である。
【００８２】
ステップＳ３００の選択処理が完了した後、及びステップＳ１０６において第２アプリが複数ではないと判定された場合（ステップＳ１０６；ＮＯ）、制御部１１は、ステップＳ１０４で特定した未設定の機能についての第２アプリにおける設定情報を取得する（ステップＳ１０７）。
【００８３】
そして、制御部１１は、第１アプリにおける上述した機能についての設定に、取得した設定情報で示される設定を適用する（ステップＳ１０８）。なお、制御部１１は、第１アプリにおける未設定の機能に対して、第２アプリにおける機能の設定を適用した旨を利用者に提示してもよい。
【００８４】
図１３は、未設定の機能に対して異なるアプリにおける設定を適用した旨の表示の例を示す図である。図１３に示す画面は、情報処理装置１の表示部１５により利用者に表示される画面であり、情報処理装置１では、アプリ名「ＸＹＺスキャンＶ５」で示されるアプリが第１アプリとして起動している。情報処理装置１の制御部１１は、図９に示す設定ＤＢ１２１を参照して、この第１アプリの設定されていない機能を示す機能名として「２次元コード読取位置」を特定する。そして、制御部１１は、上述した通り、この機能名に対応する要素ＩＤの配列として、「Ｆ２２」→「Ｆ１１／Ｆ１３／Ｆ１４」→「Ｆ２３」を特定する。
【００８５】
一方、第１アプリ以外のアプリのうち、アプリ名「ＳｃａｎＴｏＦＴＰ」の、機能名「二次元バーコード読み取り領域」と、アプリ名「ＳｃａｎＴｏＣｌｏｕｄ」の、機能名「二次元コード読取り座標」とは、いずれも対応する要素ＩＤの配列として、「Ｆ２２」→「Ｆ１１／Ｆ１３／Ｆ１４」→「Ｆ２３」が特定されるものである。
【００８６】
つまり、この２つの機能名は、上述した第１アプリの未設定の機能を示す機能名と、対応関係にあるので、アプリ名「ＸＹＺスキャンＶ５」で示されるアプリが第１アプリとして起動している場合、アプリ名「ＳｃａｎＴｏＦＴＰ」で示されるアプリと、アプリ名「ＳｃａｎＴｏＣｌｏｕｄ」で示されるアプリと、はいずれも第２アプリである。
【００８７】
制御部１１は、第１アプリに対する複数の第２アプリが存在していると判定するので、サーバ装置２から履歴情報を取得して、この履歴情報に応じてこれらのいずれかを選択する。図４に示す通り、利用者ＩＤ「Ｕ０１」の利用者は上述したこの機能を、「ＳｃａｎＴｏＦＴＰ」から実行するよりも多く「ＳｃａｎＴｏＣｌｏｕｄ」から実行している。したがって、制御部１１は、第２アプリとして、アプリ名「ＳｃａｎＴｏＣｌｏｕｄ」で示されるアプリを選択する。
【００８８】
制御部１１は、図６に示す通り、選択した「ＳｃａｎＴｏＣｌｏｕｄ」の、「Ｕ０１」による、「二次元コード読取り座標」の設定情報を、「ＸＹＺスキャンＶ５」の、「Ｕ０１」による、「２次元コード読取位置」の設定に適用する。その結果、図１３に示した通り、「横範囲：５０〜１００  縦範囲：３０〜８０」という設定情報が、未設定であった機能に対して設定される。
【００８９】
図１４は、未設定の機能に対して新たに設定を促す表示の例を示す図である。情報処理装置１の制御部１１は、第１アプリに対応する第２アプリが存在しない場合、第１アプリにおいて未設定の機能に対して流用すべき設定がない。この場合、制御部１１は、図１４に示す表示をすることで、利用者に新たな設定を促す。
【００９０】
以上、説明した動作により、情報処理装置１は、起動された第１アプリに設定されていない機能があっても、この機能と共通の機能が、第１アプリと異なる第２アプリにおいて既に設定されている場合には、この第２アプリの設定情報を取得して第１アプリに適用する。これにより、共通する機能についての設定は、異なるアプリ間で共有される。
【００９１】
特に、タイトルが異なるアプリ間に限らず、タイトルが共通するアプリであっても、そのアプリの新しいバージョンで追加されたため、古いバージョンではサポートされていない機能が存在することがある。
【００９２】
この情報処理装置１において、共通する機能についての設定は、単なるバージョン違いのアプリ間に限られず、異なるアプリ間であっても適用される。したがって、利用者は、過去に第２アプリにおいて設定のための操作を行っていれば、第１アプリの起動の際に、第１アプリのために別途、設定の操作をする必要がない。
【００９３】
＜変形例＞
以上が実施形態の説明であるが、この実施形態の内容は以下のように変形し得る。また、以下の変形例は、組合されてもよい。
【００９４】
＜変形例１＞
上述した実施形態において、情報処理システム９は、１台のサーバ装置２を有していたが、複数のサーバ装置２Ａで構成されるクラウドでサーバ装置２の機能を提供してもよい。
【００９５】
図１５は、変形例における情報処理システム９Ａの構成を示す図である。図１５に示す情報処理システム９Ａでは、１台のサーバ装置２に代えて、クラウド２Ｃが備えられている。
【００９６】
クラウド２Ｃは、複数のサーバ装置２Ａと、少なくとも１台のゲートウェイ装置２Ｂと、これらを繋ぐ第２通信回線６と、を有する。
【００９７】
第２通信回線６は、インターネット等の公衆が利用可能な通信回線である。ゲートウェイ装置２Ｂは、第２通信回線６を介して、例えばＶＰＮ（Virtual Private Network）等と呼ばれる仮想的な専用回線を構築して、ＬＡＮである第１通信回線３Ａに対してサーバ装置２Ａの機能の提供を仲介する装置である。
【００９８】
この場合、複数のサーバ装置２Ａのうち、トラブル等によって、いずれかが機能しなくても、クラウド２Ｃは、上述した情報処理システム９Ａにおけるサーバ装置２Ａに相当する機能を提供する。
【００９９】
この構成においても、情報処理システム９Ａの情報処理装置１は、起動された第１アプリに設定されていない機能があっても、この機能と共通の機能が、第１アプリと異なる第２アプリにおいて既に設定されている場合には、この第２アプリの設定情報を取得して第１アプリに適用する。したがって、利用者は、過去に第２アプリにおいて設定のための操作を行っていれば、第１アプリの起動の際に、第１アプリのために別途、設定の操作をする必要がない。
【０１００】
＜変形例２＞
情報処理装置１の制御部１１によって実行されるプログラムは、磁気テープ及び磁気ディスク等の磁気記録媒体、光ディスク等の光記録媒体、光磁気記録媒体、半導体メモリ等の、コンピュータ装置が読取り可能な記録媒体に記憶された状態で提供し得る。また、このプログラムは、インターネット等の通信回線経由でダウンロードされてもよい。なお、上述した制御部１１によって例示した制御手段としてはＣＰＵ以外にも種々の装置が適用される場合があり、例えば、専用のプロセッサ等が用いられる。
【符号の説明】
【０１０１】
１…情報処理装置、１１…制御部、１１１…受付部、１１２…特定部、１１３…取得部、１１４…適用部、１２…記憶部、１２１…設定ＤＢ、１２１１…アプリ名リスト、１２１２…利用者ＩＤリスト、１２１３…設定表、１２２…機能ＤＢ、１３…通信部、１４…操作部、１５…表示部、１６…画像処理部、２、２Ａ…サーバ装置、２Ｂ…ゲートウェイ装置、２Ｃ…クラウド、２１…制御部、２２…記憶部、２２１…履歴ＤＢ、２２１１…利用者ＩＤリスト、２２１２…履歴表、２３…通信部、３…通信回線、３Ａ…第１通信回線、６…第２通信回線、９、９Ａ…情報処理システム。
【図１】
2020017064.tif 000003
【図２】
2020017064.tif 000004
【図３】
2020017064.tif 000005
【図４】
2020017064.tif 000006
【図５】
2020017064.tif 000007
【図６】
2020017064.tif 000008
【図７】
2020017064.tif 000009
【図８】
2020017064.tif 000010
【図９】
2020017064.tif 000011
【図１０】
2020017064.tif 000012
【図１１】
2020017064.tif 000013
【図１２】
2020017064.tif 000014
【図１３】
2020017064.tif 000015
【図１４】
2020017064.tif 000016
【図１５】
2020017064.tif 000017