(57)【要約】【課題】ユーザのニーズやレベルにあったソフトウェアを起動させる。【解決手段】ソフトウェア情報を記憶する記憶手段と、通信ネットワークに接続された第１の外部装置から得られるソフトウェアを使用するユーザのレベルに対応させて、前記通信ネットワークに接続された第２の外部装置から得られるソフトウェア情報及び前記記憶手段に記憶されたソフトウェア情報から前記ユーザに推奨するソフトウェア情報を生成する推奨情報生成手段と、前記ユーザから使用したいソフトウェアに関する情報の入力を受け付ける入力手段と、入力情報と前記記憶手段に予め登録されたキーワード判定用の文字列とを比較し、前記文字列に関連するキーワードを判定するキーワード判定手段と、前記推奨情報生成手段により得られる推奨情報と、前記キーワードとを照合し、推奨するソフトウェアを取得する推奨判定手段と、取得したソフトウェアを起動するソフトウェア起動手段とを有する。【選択図】図１
2014032457.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェア情報を記憶する記憶手段と、
通信ネットワークに接続された第１の外部装置から得られるソフトウェアを使用するユーザのレベルに対応させて、前記通信ネットワークに接続された第２の外部装置から得られるソフトウェア情報及び前記記憶手段に記憶されたソフトウェア情報から前記ユーザに推奨するソフトウェア情報を生成する推奨情報生成手段と、
前記ユーザから使用したいソフトウェアに関する情報の入力を受け付ける入力手段と、
前記入力手段から得られる入力情報と、前記記憶手段に予め登録されたキーワード判定用の文字列とを比較し、比較結果から前記文字列に関連するキーワードを判定するキーワード判定手段と、
前記推奨情報生成手段により得られる推奨情報と、前記キーワード判定手段により得られるキーワードとを照合し、推奨するソフトウェアを取得する推奨判定手段と、
前記推奨判定手段により得られるソフトウェアを起動するソフトウェア起動手段とを有することを特徴とする情報処理装置。
【請求項２】
前記推奨情報生成手段は、
前記第１の外部装置により変更された前記ユーザのレベルに対応させて推奨するソフトウェア情報が変更されることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記推奨判定手段により複数のソフトウェアが選択された場合には、複数のソフトウェアのうちの１つを前記ユーザに選択させるための画面を生成する画面生成手段を有することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記画面生成手段は、
前記推奨判定手段により得られるソフトウェアが未ダウンロードのソフトウェアである場合には、前記ソフトウェアの使用を誘導する画面を生成することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
通信ネットワークに接続された第１の外部装置から得られるソフトウェアを使用するユーザのレベルに対応させて、前記通信ネットワークに接続された第２の外部装置から得られるソフトウェア情報及び記憶手段に記憶されたソフトウェア情報から前記ユーザに推奨するソフトウェア情報を生成し、
前記ユーザから使用したいソフトウェア情報の入力を受け付け、受けつけた入力情報と、前記記憶手段に予め登録されたキーワード判定用の文字列とを比較し、比較結果から前記文字列に関連するキーワードを判定し、
前記推奨情報と、前記キーワードとを照合し、推奨するソフトウェアを取得し、取得したソフトウェアを起動する、処理をコンピュータに実行させるためのソフトウェア起動プログラム。
【請求項６】
通信ネットワークに接続された第１の外部装置から得られるソフトウェアを使用するユーザのレベルに対応させて、前記通信ネットワークに接続された第２の外部装置から得られるソフトウェア情報及び記憶手段に記憶されたソフトウェア情報から前記ユーザに推奨するソフトウェア情報を生成する推奨情報生成ステップと、
前記ユーザから使用したいソフトウェアに関する情報の入力を受け付ける入力ステップと、
前記入力ステップにより得られる入力情報と、前記記憶手段に予め登録されたキーワード判定用の文字列とを比較し、比較結果から前記文字列に関連するキーワードを判定するキーワード判定ステップと、
前記推奨情報生成ステップにより得られる推奨情報と、前記キーワード判定ステップにより得られるキーワードとを照合し、推奨するソフトウェアを取得する推奨判定ステップと、
前記推奨判定ステップにより得られるソフトウェアを起動するソフトウェア起動ステップとを有することを特徴とするソフトウェア起動方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、ユーザのニーズやレベルにあったソフトウェアを起動させるための情報処理装置、ソフトウェア起動プログラム、及びソフトウェア起動方法に関する。
【背景技術】
【０００２】
従来、ユーザが使用するＰｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ（ＰＣ）等の情報処理装置には、様々なソフトウェア（アプリケーションも含む）がインストールされている。ユーザは、インストールされたソフトウェアの中から使用目的に応じたソフトウェアを選択し、選択したソフトウェアを起動させて情報の入力や取得等を行っている。
【０００３】
なお、ソフトウェアには、類似した機能を有するものも多く、またユーザが使用目的に合ったソフトウェア自体の存在を知らなかったり、ソフトウェアの存在を忘れている場合もあるため、使用目的に応じた適切なソフトウェアの選択するのは困難であった。そこで、従来では、ソフトウェアを選択する様々な手法が存在する。
【０００４】
例えば、従来では、ユーザが入力した要求を示す文章の文字列を解析し、その要求に応じたソフトウェアを選択する手法が存在する。また、従来では、音声認識によりユーザを特定し、更に入力された単語を識別して、起動すべきソフトウェアを判定し、ユーザ固有のソフトウェア環境の設定を行う手法が存在する。また、従来では、各ソフトウェアの機能を表現する説明文とそれらのソフトウェアに対応するアイコンとを記憶し、ユーザの入力に基づいて、その記憶内容を曖昧検索することで最適なソフトウェアの絞り込みを行う手法が存在する。更に、従来では、ユーザの情報処理装置において実行される第１のソフトウェアに対応するその他の推奨ソフトウェアのリストを表示したり、機器プロファイルやユーザプロファイルを適用して機器及びユーザに最適なソフトウェアを選択する手法が存在する（例えば、特許文献１〜４参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００３−２７１３８９号公報
【特許文献２】特開２０００−９９０７６号公報
【特許文献３】特開平１１−１３４３６０号公報
【特許文献４】特開２０１０−１５７２０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来手法では、ユーザのレベルに関係なく、選択されたソフトウェアを起動するものであった。したがって、従来では、例えば表計算ソフトや描画ソフト等のようにユーザが普段使用しない分野（カテゴリ）のソフトウェアであっても区別なく選択されてしまうため、選択されたソフトウェアがユーザにとって使いづらい場合があった。また、ユーザが、ある程度使用したことがある分野のソフトウェアであれば、多少複雑な操作があっても機能が充実したソフトウェアが起動される方が好ましい。しかしながら、従来では、上述したようにユーザレベルを考慮したソフトウェアを選択するものではなかったため、ユーザのニーズやレベルにあったソフトウェアが存在しても、そのソフトウェアをユーザに気づかせたり、起動させることができなかった。
【０００７】
開示の技術は、かかる問題を鑑み、ユーザのニーズやレベルにあったソフトウェアを起動させることを目的とする。
【課題を解決するための手段】
【０００８】
開示の一態様における情報処理装置は、ソフトウェア情報を記憶する記憶手段と、通信ネットワークに接続された第１の外部装置から得られるソフトウェアを使用するユーザのレベルに対応させて、前記通信ネットワークに接続された第２の外部装置から得られるソフトウェア情報及び前記記憶手段に記憶されたソフトウェア情報から前記ユーザに推奨するソフトウェア情報を生成する推奨情報生成手段と、前記ユーザから使用したいソフトウェアに関する情報の入力を受け付ける入力手段と、前記入力手段から得られる入力情報と、前記記憶手段に予め登録されたキーワード判定用の文字列とを比較し、比較結果から前記文字列に関連するキーワードを判定するキーワード判定手段と、前記推奨情報生成手段により得られる推奨情報と、前記キーワード判定手段により得られるキーワードとを照合し、推奨するソフトウェアを取得する推奨判定手段と、前記推奨判定手段により得られるソフトウェアを起動するソフトウェア起動手段とを有する。
【発明の効果】
【０００９】
開示の技術によれば、ユーザのニーズやレベルにあったソフトウェアを起動させることができる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態における情報処理装置の機能構成の一例を示す図である。
【図２】本実施形態におけるソフトウェア起動処理が実現可能なハードウェア構成の一例を示す図である。
【図３】各種データベースの一例を示す図である。
【図４】本実施形態におけるソフトウェア起動処理の一例を示すフローチャートである。
【図５】推奨リスト生成処理の一例を示すフローチャートである。
【図６】推奨リストデータ生成処理の一例を示すフローチャートである。
【図７】ソフトウェア起動処理の一例を示すフローチャートである。
【図８】入力情報認識処理の一例を示すフローチャートである。
【図９】ソフトウェア選定処理の一例を示すフローチャートである。
【図１０】本実施形態における画面例を示す図である。
【図１１】本実施形態における別の画面例を説明するための図である。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照しながら実施例について詳細に説明する。
【００１２】
＜情報処理装置の機能構成例＞
図１は、本実施形態における情報処理装置の機能構成の一例を示す図である。図１に示す情報処理装置１０は、入力手段１１と、出力手段１２と、記憶手段１３と、音声処理手段１４と、キーワード判定手段１５と、推奨リスト生成手段（推奨情報生成手段）１６と、推奨判定手段１７と、ソフトウェア起動手段１８と、画面生成手段１９と、送受信手段２０と、制御手段２１とを有する。
【００１３】
入力手段１１は、情報処理装置１０を使用するユーザ等からの各種指示の開始／終了、設定の入力等の各種入力を受け付ける。具体的には、入力手段１１は、例えば本実施形態におけるソフトウェア起動処理の実行指示の入力を受け付けたり、ユーザが使用したいソフトウェアに関する情報（ニーズ）の入力を受け付ける。なお、入力手段１１により取得される情報の入力は、例えばキーボードやマウス等の入力インターフェース等による入力でもよく、また画面を用いたタッチパネル形式の入力でもよく、操作キー等を用いての入力でもよい。更に、入力手段１１は、例えばマイクロフォン等により音声を入力する音声入力手段を有していてもよい。
【００１４】
出力手段１２は、入力手段１１により入力された内容や、入力内容に基づいて実行された内容等の出力を行う。なお、出力手段１２は、例えば画面表示により出力する場合には、ディスプレイやモニタ等の表示手段（グラフィックインターフェース）を有し、音声により出力する場合には、例えばスピーカ等の音声出力手段を有していてもよい。また、入力手段１１と出力手段１２とは、例えばタッチパネル等のように入出力が一体型であってもよい。
【００１５】
記憶手段１３は、本実施形態において必要となる各種情報を記憶する。具体的には、キーワードデータベース（以下、データベースを「ＤＢ」と略称する）３１と、ユーザ情報ＤＢ３２と、レジストリ情報３３と、ソフトウェアＤＢ３４と、推奨ルール一覧３５と、推奨リストＤＢ３６とを有するが、これに限定されるものではない。
【００１６】
キーワードＤＢ３１は、ユーザが入力した自然言語等からなる音声情報や文字情報等から、起動させたり、推奨ソフトウェアとしてユーザに提示するソフトウェア毎に所定のキーワードが記憶されている。具体的には、キーワードＤＢ３１は、例えば音声情報や文字情報からユーザの使用目的又はソフトウェア名を認識するための単語（登録語）を記憶すると共に、その単語に関連するソフトウェアの分野（カテゴリ）を示すキーワードを記憶する。
【００１７】
また、ユーザ情報ＤＢ３２は、ユーザを識別するための情報（例えば、ユーザＩＤ、パスワード等）や、ユーザの年齢、性別、住所、メールアドレス等の個人情報が記憶されている。更に、ユーザ情報ＤＢ３２は、ソフトウェアの分野や機能（例えば、文書編集、表計算、描画、メール）毎のユーザの使用（技術）レベルが記憶されていてもよい。また、ユーザ情報ＤＢ３２は、ユーザが使用したいソフトウェアに関する情報（ニーズ）等が記憶されていてもよい。なお、ユーザ情報ＤＢ３２は、例えば送受信手段２０からインターネット等の通信ネットワーク４１を介してデータの送受信が可能な状態で接続されているユーザ登録サーバ４２等から取得することができるが、これに限定されるものではなく、予め設定されていてもよい。
【００１８】
また、レジストリ情報３３は、情報処理装置１０内のオペレーティングシステムの基本情報やソフトウェアの拡張情報等が記憶されている。また、レジストリ情報３３は、オペレーティングシステムやアプリケーションの設定、拡張子の関連付け情報等がハードディスク内の記憶領域に記憶される。更に、レジストリ情報３３には、情報処理装置１０内にすでにインストールされているソフトウェアの情報を含む。したがって、本実施形態では、レジストリ情報３３から、情報処理装置１０内にどのようなソフトウェアがインストール済みであるかを取得することができる。
【００１９】
ソフトウェアＤＢ３４は、インストール又はプレインストールされているソフトウェアの情報等が記憶されている。また、ソフトウェアＤＢ３４は、バンドル状態又はダウンロード済みのソフトウェアの情報も記憶されている。つまり、ソフトウェアＤＢ３４は、起動可能なソフトウェアの情報やユーザに推奨可能なソフトウェアの情報が記憶されている。また、ソフトウェアＤＢ３４には、レジストリ情報３３により得られるインストール又はプレインストールされたソフトウェアの情報が記憶されている。
【００２０】
推奨ルール一覧３５は、複数のソフトウェアからどのような基準で推奨ソフトウェアを選択するかのルール（規則）が予め１又は複数設定されている。推奨リストＤＢ３６は、推奨リスト生成手段１６等によって生成されたソフトウェアの推奨リストが記憶されている。なお、上述した各情報の具体例については、後述する。また、記憶手段１３に記憶される情報は、これに限定されるものではなく、本実施形態における情報処理において必要となる設定情報や、処理の実行結果等の情報も記憶される。
【００２１】
また、記憶手段１３は、記憶された各種情報を必要に応じて所定のタイミングで読み出したり、書き込んだりすることができる。また、記憶手段１３は、上述したような多種の情報の集合物であり、それらの情報を、例えばキーワード等を用いて検索し、抽出することができるように体系的に構成されているデータベースとしての機能を有していてもよい。なお、記憶手段１３は、例えばハードディスクやメモリ等からなる。
【００２２】
音声処理手段１４は、入力手段１１のマイクロフォン等により入力された音声情報に対してデジタル信号処理を行い、音声に含まれる文字や単語、文章等を取得する。なお、音声を認識するタイミングについては、例えば所定のトリガーを認識する。具体的には、マイクロフォンからの音声情報の取得や、カメラ（撮像手段）で撮影したユーザの口の動き等を読み取ることで、上述した音声処理を開始することができる。なお、入力される音声情報は、例えばユーザが使用したいソフトウェアに関する情報（ニーズ）等である。デジタル信号処理された文字情報等は、記憶手段１３等により記憶される。
【００２３】
キーワード判定手段１５は、音声処理手段１４等により得られる文字情報や、入力手段１１のキーボード等により入力された文字情報等を解析し、文字情報に含まれる単語（文字列）と、キーワードＤＢ３１に記憶された登録語（文字列）とを比較する。具体的には、キーワード判定手段１５は、文字情報に含まれる単語と登録語との比較により、文字情報に含まれる単語が登録語に一致するか否かを判定する。また、キーワード判定手段１５は、判定した結果、文字情報に含まれる単語と登録語とが一致した場合に、その登録語に対応づけて記憶されているキーワードを推奨判定手段１７に出力する。なお、一致とは、完全一致に限定されるものではなく、所定範囲以上（例えば、単語と登録語との類似度８０％以上）の類似を含むものとする。
【００２４】
推奨リスト生成手段１６は、ソフトウェアＤＢ３４やレジストリ情報３３から取得したソフトウェア情報と、ユーザ情報ＤＢ３２に記憶されているユーザレベルとに基づいて、推奨ルール一覧３５の条件に対応する推奨情報（例えば、推奨リスト）を生成する。なお、ソフトウェアＤＢ３４やレジストリ情報３３から取得したソフトウェア情報には、例えばインストール又はプレインストールされているソフトウェア情報だけでなく、バンドル状態又は未ダウンロードのソフトウェア情報等が含まれる。したがって、推奨リスト生成手段１６は、例えばユーザ登録サーバ４２から得られるソフトウェアを使用するレベルに対応させて、インストール、プレインストール、バンドル状態、未ダウンロードの各ソフトウェア情報から推奨リストを生成することができる。また、推奨リスト生成手段１６は、ソフトウェアの優先順位を含む推奨リストを生成してもよい。生成された推奨リストは、推奨リストＤＢ３６に記憶される。
【００２５】
推奨判定手段１７は、キーワード判定手段１５により得られる判定結果のキーワードと、推奨リストＤＢ３６とを照合し、推奨する優先順位の高いソフトウェアを１又は複数選定し、選定したソフトウェアをソフトウェア起動手段１８に出力する。
【００２６】
ソフトウェア起動手段１８は、推奨判定手段１７により得られるソフトウェアを所定の起動方式により起動したり、ユーザに対して所定の操作を誘導する処理を行う。なお、上述した所定の起動方式とは、例えばユーザからの指示を受けずにソフトウェアを直接起動する「直接起動」や、ユーザからの選択指示等を受けてからソフトウェアを起動する「選択起動」等があるが、これに限定されるものではない。また、所定の操作を誘導する処理とは、例えばまだユーザのＰＣ等にインストールされていないが、使用目的にあったソフトウェアがある場合に、そのソフトウェアがダウンロード可能なダウンロードサーバ４３にアクセスさせる等の処理が含まれる。なお、所定の操作を誘導する処理については、これに限定されるものではない。
【００２７】
画面生成手段１９は、出力手段１２の画面に表示させる内容を生成する。具体的には、画面生成手段１９は、音声や文字情報等を入力する画面や、キーワード判定画面、推奨リスト表示画面、ソフトウェア起動画面、その他の各種設定画面等を生成することができるが、これに限定されるものではない。画面生成手段１９は、生成した各画面を出力手段１２から出力させる。
【００２８】
送受信手段２０は、例えばインターネットやＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等に代表される通信ネットワーク４１を介して外部装置とデータの送受信を行うための通信手段である。なお、図１の例では、外部装置の一例としてユーザ登録サーバ４２（第１の外部装置）と、ダウンロードサーバ４３（第２の外部装置）が存在するが、これに限定されるものではない。
【００２９】
ユーザ登録サーバ４２は、例えば情報処理装置１０を購入したユーザの管理を行う。また、ユーザ登録サーバ４２は、例えば情報処理装置１０の製造メーカーや本実施形態におけるソフトウェア起動プログラム等の提供者等によって管理される。ユーザは、情報処理装置１０の最初の起動時やプログラムのインストール後の初期設定等において、通信ネットワーク４１を介してユーザ登録サーバ４２にアクセスし、ユーザ情報の登録を行う。なお、本実施形態では、情報処理装置１０における制御手段２１の制御により、ユーザ登録サーバ４２から、その情報処理装置１０を使用するユーザ情報を取得し、取得した情報が記憶手段１３にユーザ情報ＤＢ３２として記憶される。また、本実施形態では、ユーザ登録時にユーザ登録サーバ４２に入力した情報を直接ユーザ情報ＤＢ３２に記憶させてもよい。
【００３０】
また、ダウンロードサーバ４３には、ダウンロード可能な１又は複数のソフトウェアが記憶されている。ダウンロードサーバ４３は、複数のソフトウェアを最新のものに並び替えて管理したり、複数のユーザによるダウンロード数に応じてランキングして管理することができる。本実施形態では、情報処理装置１０における制御手段２１の制御により、通信ネットワーク４１を介してダウンロードサーバ４３から所定のソフトウェア情報のダウンロードを行う。なお、所定のソフトウェア情報とは、例えば、各分野毎のダウンロードランキングの第１〜１０位までのソフトウェア情報、新作ソフトウェア情報等が含まれるが、これに限定されるものではない。
【００３１】
ダウンロードされたソフトウェア情報は、ソフトウェアＤＢ３４に蓄積される。また、ダウンロードサーバ４３は、実際にソフトウェア自体の管理もしているため、情報処理装置１０からの所定のソフトウェアのダウンロード要求があった場合には、該当ソフトウェアを抽出して、通信ネットワーク４１を介して情報処理装置１０に送信する。
【００３２】
ここで、送受信手段２０は、外部装置等にすでに記憶されている各種情報等を受信することができ、また情報処理装置１０で処理された結果を、通信ネットワーク４１を介して外部装置に送信することもできる。
【００３３】
制御手段２１は、情報処理装置１０の各構成部全体の制御を行う。具体的には、制御手段２１は、例えばユーザ等による入力手段１１からの指示等に基づいて、ソフトウェア起動に関する各制御を行う。ここで、各制御とは、例えば上述した音声処理手段１４による音声認識やキーワード判定手段１５によるキーワード判定、推奨リスト生成手段１６による推奨リスト生成、推奨判定手段１７による推奨判定等の実行制御を含む。また、各制御とは、例えば上述したソフトウェア起動手段１８によるソフトウェア起動又は所定の操作への誘導、画面生成手段１９による画面生成等の実行制御を含む。また、制御手段２１は、送受信手段２０により通信ネットワーク４１を介して接続されるユーザ登録サーバ４２及びダウンロードサーバ４３からユーザ情報やソフトウェア情報、ソフトウェア自体を取得（ダウンロード）するための制御等を行う。なお、これらの制御は、プログラムの実行やユーザの指示等による所定のイベントの発生に基づいて行われてもよく、所定の時間間隔で定期的に行われてもよい。
【００３４】
ここで、上述した情報処理装置１０としては、例えばＰＣやノート型ＰＣ等を用いることができるが、これに限定されるものではなく、例えばスマートフォンや携帯電話、タブレット端末等の携帯情報端末、ゲーム機器、音楽再生装置等であってもよい。
【００３５】
＜情報処理装置１０：ハードウェア構成＞
ここで、上述した情報処理装置１０においては、各機能をコンピュータに実行させることができる実行プログラム（ソフトウェア起動プログラム）を生成し、例えば汎用のＰＣ等にその実行プログラムをインストールすることにより、本実施形態におけるソフトウェア起動処理を実現することができる。ここで、本実施形態におけるソフトウェア起動処理が実現可能なコンピュータのハードウェア構成例について図を用いて説明する。
【００３６】
図２は、本実施形態におけるソフトウェア起動処理が実現可能なハードウェア構成の一例を示す図である。図２におけるコンピュータ本体には、入力装置５１と、出力装置５２と、ドライブ装置５３と、補助記憶装置５４と、メモリ５５と、各種制御を行うＣｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）５６と、ネットワーク接続装置５７とを有するよう構成されており、これらはシステムバスＢで相互に接続されている。
【００３７】
入力装置５１は、ユーザ等が操作するキーボード及びマウス等のポインティングデバイスや、マイクロフォン等の音声入力デバイスを有しており、ユーザ等からのプログラムの実行指示、各種操作情報、ソフトウェアを起動するための情報等を入力する。
【００３８】
出力装置５２は、本実施形態における処理を行うためのコンピュータ本体を操作するのに必要な各種ウィンドウやデータ等を表示するディスプレイを有し、ＣＰＵ５６が有する制御プログラムによりプログラムの実行経過や結果等を表示することができる。また、出力装置５２は、上述の処理結果等を紙等の印刷媒体に印刷して、ユーザ等に提示することができる。
【００３９】
ここで、本実施形態においてコンピュータ本体にインストールされる実行プログラムは、例えば、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ（ＵＳＢ）メモリやＣＤ−ＲＯＭ、ＤＶＤ等の可搬型の記録媒体５８等により提供される。プログラムを記録した記録媒体５８は、ドライブ装置５３にセット可能であり、ＣＰＵ５６からの制御信号に基づき、記録媒体５８に含まれる実行プログラムが、記録媒体５８からドライブ装置５３を介して補助記憶装置５４にインストールされる。
【００４０】
補助記憶装置５４は、ハードディスク等のストレージ手段であり、ＣＰＵ５６からの制御信号に基づき、本実施形態における実行プログラムや、コンピュータに設けられた制御プログラム等を蓄積し、必要に応じて入出力を行うことができる。なお、補助記憶装置５４は、例えば上述した記憶手段１３に対応しており、上述したキーワードＤＢ３１やユーザ情報ＤＢ３２、レジストリ情報３３、ソフトウェアＤＢ３４、推奨ルール一覧３５、推奨リストＤＢ３６等が記憶される。補助記憶装置５４は、ＣＰＵ５６からの制御信号等に基づいて、記憶された各情報から必要な情報を読み出したり、書き込むことができる。
【００４１】
メモリ５５は、ＣＰＵ５６により補助記憶装置５４から読み出された実行プログラム等を格納する。なお、メモリ５５は、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）やＲａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）等からなる。
【００４２】
ＣＰＵ５６は、オペレーティングシステム等の制御プログラム、及びメモリ５５に格納されている実行プログラムに基づいて、各種演算や各ハードウェア構成部とのデータの入出力等、コンピュータ全体の処理を制御して各処理を実現することができる。なお、プログラムの実行中に必要な各種情報等は、補助記憶装置５４から取得することができ、また実行結果等を格納することもできる。
【００４３】
具体的には、ＣＰＵ５６は、例えば入力装置５１から得られるプログラムの実行指示等に基づき、補助記憶装置５４にインストールされたソフトウェア起動プログラムを実行させることにより、メモリ５５上でプログラムに対応する処理を行う。例えば、ＣＰＵ５６は、上述したようにソフトウェア起動プログラムを実行させることで、上述した音声処理手段１４による音声認識やキーワード判定手段１５によるキーワード判定等の処理を行う。また、ＣＰＵ５６は、上述したようにソフトウェア起動プログラムを実行させることで、推奨リスト生成手段１６による推奨リスト生成や推奨判定手段１７による推奨判定等の実行制御等の処理を行う。また、ＣＰＵ５６は、上述したようにソフトウェア起動プログラムを実行させることで、ソフトウェア起動手段１８によるソフトウェア起動又は所定の操作への誘導、画面生成手段１９による画面生成等の処理を行う。なお、ＣＰＵ５６における処理内容は、これに限定されるものではない。ＣＰＵ５６により実行された内容は、必要に応じて補助記憶装置５４に記憶させることができる。
【００４４】
ネットワーク接続装置５７は、ＣＰＵ５６からの制御信号に基づき、通信ネットワーク４１等と接続することにより、実行プログラムやソフトウェア、ユーザ情報等を、通信ネットワーク４１に接続されている外部装置等から取得する。なお、外部装置とは、例えば上述したユーザ登録サーバ４２やダウンロードサーバ４３等があるが、これに限定されるものではない。また、ネットワーク接続装置５７は、プログラムを実行することで得られた実行結果又は本実施形態における実行プログラム自体を外部装置等に提供することができる。
【００４５】
上述したようなハードウェア構成により、本実施形態におけるソフトウェア起動処理を実行することができる。また、プログラムをインストールすることにより、汎用のＰＣ等で本実施形態におけるソフトウェア起動処理を容易に実現することができる。
【００４６】
＜データベース例＞
次に、上述した本実施形態で使用される各種データベース例について図を用いて説明する。図３は、各種データベースの一例を示す図である。なお、図３（ａ）は、キーワードＤＢ３１の一例を示し、図３（ｂ），（ｃ）は、ユーザ情報ＤＢ３２の一例を示し、図３（ｄ）は、ソフトウェアＤＢ３４の一例を示す図であり、図３（ｅ）は、推奨リストＤＢ３６の一例を示す図である。
【００４７】
図３（ａ）の例では、音声キーワードに対するＤＢの一例を示している。図３（ａ）に示すキーワードＤＢ３１の例では、項目として、例えば「音声ＩＤ」、「表示名」、「発音」、「キーワード」等を含むがこれに限定されるものではない。「音声ＩＤ」は、例えば登録語を一意に特定するための固有の値である。「表示名」は、例えば登録語を画面上に表示する必要がある場合に使用する単語（文字列）である。「発音」は、例えば音声処理手段１４における音声認識等によって得られる音声情報に含まれる文字（単語）とマッチングをとるための文字列である。
【００４８】
上述したキーワード判定手段１５は、音声情報（入力情報）に含まれる単語と、「発音」に含まれる単語との間で一致しているかの判定を行う。つまり、上述した「登録語」は、図３（ａ）の例では「表示名」及び「発音」の情報に対応している。なお、ここでの判定では、一致だけでなく、例えば類似する単語も含まれる。また、「発音」には、複数の文字列を設定してもよく、例えば表示名が「筆まめ（登録商標）」に対して、図３（ａ）に示す「ふでまめ」だけでもよく、「ひつまめ」等のようにユーザが間違え易い発音（登録語）を含めてもよい。また、本実施形態では、例えば表示名が「ｏｕｔｌｏｏｋ（登録商標）」に対して、図３（ａ）に示す「あうとるっく」だけでもよく、「あうとるく」、「あうとるーく」等のように、人によって読み方が異なるような発音（登録語）を含めてもよい。なお、これらの発音の誤差は、例えば予め設定された用語統一処理により１つの発音（登録語）に変換してもよい。なお、用語統一処理は、例えば上述したキーワード判定手段１５により処理される。
【００４９】
また、図３（ａ）に示す「キーワード」は、例えば音声情報に含まれる単語に一致（類似も含む）した「発音」が存在する場合に、推奨判定手段１７等に出力する情報が記憶される。なお、図３（ａ）の例では、音声情報に対するキーワードＤＢ３１を示したが、これに限定されるものではなく、例えば文字情報に対するキーワードＤＢ３１も同様に生成することができる。この場合、例えば図３（ａ）に示す「表示名」が「登録語」として扱われる。
【００５０】
図３（ｂ）に示すユーザ情報ＤＢ３２の例では、項目として、「ユーザＩＤ」、「ユーザレベル」、「設定日（最終更新日）」等を含むがこれに限定されるものではない。「ユーザＩＤ」は、ユーザがユーザ登録サーバ４２に対してユーザ登録を行った際に付与されるＩＤであり、ユーザを一意に特定するための固有の値である。ユーザ登録を行った場合には、ユーザ登録サーバ４２に個人情報等が登録されると共に、例えばユーザのＰＣ（情報処理装置１０）内のＢａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ（ＢＩＯＳ）等にも情報が記憶される。
【００５１】
「ユーザレベル」は、ＰＣ操作や所定の分野に対応するソフトウェア等の技術的なレベルが設定される。例えば、ＰＣ操作が初心者と判断された場合にはレベル１とし、中級者と判断された場合にはレベル２とし、上級者と判断された場合にはレベル３とするが、これに限定されるものではない。ユーザレベルの値は、例えばＰＣ起動時等に、ユーザＩＤをキーとして、ユーザ登録サーバ４２より入手することができる。ここで、ユーザレベルのレベル分けについては、例えばユーザがユーザ登録時に自己申告するか、又はユーザがサポートセンタ等に問い合わせをして何らかのサポートを受けたときに、サポート担当者がレベルを判断し、ユーザ登録サーバ４２に登録する。また、ユーザレベルの設定を行っていない場合には、初期値「レベル１」が設定されてもよく、ユーザに問い合わせる処理を実行してもよい。
【００５２】
また、図３（ｂ）に示す「設定日（最終更新日）」は、ユーザ登録サーバ４２よりユーザレベルを設定した日又はユーザレベルの変更による最終の更新日が記憶される。ここで、ユーザレベルの変更は、例えばユーザが初心者「レベル１」で使用開始し、その後、特定のソフトウェアの使用時間や使用回数が所定量を超えた場合や、予め設定された難易度の高い機能を使用した場合に、中級者「レベル２」としてレベルの変更を行う。また、他の例としては、例えばユーザがサポートセンタ等に問い合わせた際に、サポート担当者が問い合わせの対応を行う中でユーザレベルを判断し、ユーザレベルを修正した場合等があるが、これに限定されるものではない。
【００５３】
ここで、上述したユーザ情報ＤＢ３２は、例えば図３（ｂ）に示すようなデータ例に限定されるものではなく、例えば図３（ｃ）に示すように、ソフトウェアの分野（カテゴリ）毎にユーザレベルを設定してもよい。この場合、項目としては、「キーワード」、「レベル」、「設定日（最終更新日）」等が含まれるが、これに限定されるものではなく、例えば図３（ｂ）に示すようにユーザを識別するユーザＩＤ等が含まれていてもよい。
【００５４】
図３（ｃ）の例では、キーワードとして設定されたハガキ作成、メーラー、アドレス帳の３つの分野に対して、各ユーザレベルとそのユーザレベルの設定日（最終更新日）が記憶される。なお、図３（ｂ），（ｃ）に示すユーザ情報ＤＢ３２には、その他にもユーザを識別するための情報（例えば、ユーザＩＤ、パスワード等）や、ユーザの年齢、性別、住所、メールアドレス等の個人情報が含まれていてもよい。また、ユーザ情報ＤＢ３２には、ユーザが使用したいソフトウェアに関する情報（ニーズ）等が含まれていてもよい。
【００５５】
図３（ｄ）に示すソフトウェアＤＢ３４の例では、項目として「ソフトＩＤ」、「表示名」、「バージョン」、「キーワード」、「対象レベル」、「評価」、「ダウンロード数」、「状態」、「格納先（リンク先）」、「使用回数」、「使用時間（累計）」、「最終使用日」等が含まれるがこれに限定されるものではない。
【００５６】
「ソフトＩＤ」は、対象ソフトウェアのＩＤであり、ソフトウェアを一意に特定するための固有の値である。「表示名」は、ソフトウェアを画面上に表示する必要がある場合に使用する文字列である。「バージョン」は、そのソフトウェアのバージョンを区別するための版数である。「キーワード」は、そのソフトウェアが対象とする分野を示すものである。「対象レベル」は、そのソフトウェアを使用するのに適したユーザレベルを示すものである。なお、「対象レベル」には、対象のユーザレベルを複数登録することができる。例えば、初心者（レベル１）と中級者（レベル２）とを対象としている場合には、「１、２」が格納される。また、例えばインストール又はプレインストールソフトの場合は、出荷時に予め登録しておいてもよい。
【００５７】
また、図３（ｄ）に示す「評価」は、ソフトウェアの使い勝手の評価であり、例えば最もよい場合が「５」、最も悪い場合が「１」等と段階的に設定されるが、これに限定されるものではない。なお、この「評価」は、例えばダウンロードサーバ４３等の場合、一般的には、サイト上に表示されるソフトウェアの評価数値や星の数等で表される情報を用いることができる。なお、例えばインストール又はプレインストールソフトの場合は、出荷時に予め登録しておいてもよい。
【００５８】
また、図３（ｄ）に示す「ダウンロード数」は、例えばダウンロードサーバ４３等のサイトから複数のユーザ等によりダウンロードされた回数である。なお、例えばインストール又はプレインストールソフトの場合は、例えば空白とすることができるが、これに限定されるものではない。また、図３（ｄ）に示す「状態」は、ソフトウェア毎のＰＣ（情報処理装置１０）内における状態を示すものである。例えば、対象のソフトウェアが、すでにインストールされている状態の場合には「インストール済」と記憶する。なお、「インストール済」とは、購入時にすでにインストールされているもの（プレインストール）やユーザがインストールしたものを含む。また、購入時にハードディスク（記憶手段１３）内にバンドルされており、まだインストールされていない状態の場合には、「バンドル」と記憶する。また、対象のソフトウェアが、ダウンロードサーバ４３からダウンロード済みではあるがインストールしていない場合には「ダウンロード済」と記憶し、ダウンロードしてない場合には「未ダウンロード」として記憶して区別する。なお、「未ダウンロード」のソフトウェアは、例えばダウンロードサーバ４３におけるダウンロード数が高い人気のソフトウェアであったり、最新のソフトウェアであるが、これに限定されるものではない。また、上述した「状態」に記憶される内容については、これに限定されるものではない。
【００５９】
また、図３（ｄ）に示す「格納先（リンク先）」の内容は、「状態」の内容によって異なる。例えば「状態」が「インストール済」である場合には、そのソフトウェアは購入時にプレインストールされているか、又は、ユーザがインストール済みの状態である。したがって、「格納先（リンク先）」には、実行ファイルの格納先、又は、実行ファイル名が記憶される。また、「状態」が「バンドル」の場合には、購入時にハードディスク内にバンドルされており、まだインストールされていない状態である。したがって、「格納先（リンク先）」には、例えばバンドルされているファイルの格納先又はインストールファイル名が記憶される。また、「状態」が「ダウンロード済」の場合には、ダウンロード済だが、まだインストールしていない状態である。したがって、「格納先（リンク先）」には、ダウンロードされたファイルの格納先又はインストールファイル名が記憶される。更に、「状態」が「未ダウンロード」の場合には、ダウンロードしていない状態である。したがって、「格納先（リンク先）」の内容は、ダウンロードサイトのＵｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ（ＵＲＬ）等を記憶する。上述したようにＵＲＬを設定しておくことで、ユーザが、そのアドレス先のサイトにアクセスして対象のソフトウェアをダウンロードするように、所定の操作を誘導することができる。なお、上述の例は、一例であり、これに限定されるものではない。
【００６０】
また、図３（ｄ）に示す「使用回数」は、ユーザが情報処理装置１０内で使用したソフトウェア毎の使用回数である。また、図３（ｄ）に示す「使用時間（累計）」は、ユーザが情報処理装置１０内で使用したソフトウェア毎の累計使用時間である。更に、図３（ｄ）に示す「最終使用日」は、ソフトウェア毎の使用した最終使用日である。
【００６１】
また、図３（ｅ）に示す推奨リストＤＢ３６の例では、項目として、「キーワード」、「優先順位」等が含まれるがこれに限定されるものではない。図３（ｅ）の例では、キーワードとして「ハガキ作成」、「ブラウザ」、「メーラー」に対する優先順位の高い順にソフトウェアが格納されている。本実施形態では、上述したようにキーワード毎にソフトウェアの優先順位が付けられて、その内容が格納されている。
【００６２】
なお、優先順位の決め方については、例えばユーザのユーザレベルを入手し、更に推奨ルール一覧３５から選択される推奨ルールに基づいて該当するソフトウェアを対象とする。また、本実施形態では、例えばソフトウェアの起動方法に応じて、優先順位を変動させることができる。例えば、ソフトウェアを直接起動させる場合には、優先順位が１位のソフトウェアをすぐに起動する。この場合には、例えば上述した図３（ｄ）に示すソフトウェアＤＢ３４の「状態」が「インストール済」のソフトウェアのみが対象となる。また、例えば、ソフトウェアを選択起動させる場合には、優先順位の高いものから所定数のソフトウェアの候補を表示し、その中からユーザが選んだソフトウェアを起動させる。したがって、この場合には、「状態」が「インストール済」されていないソフトウェアも対象とすることができる。具体的には、図３（ｄ）に示すソフトウェアＤＢ３４の「状態」が「インストール済」、「バンドル」、「ダウンロード済」、「未ダウンロード」のものが含まれるが、これに限定されるものではない。
【００６３】
なお、上述した「状態」に対して優先順位を設定する場合には、例えば予め設定された条件に基づく数値の高い(例えば、頻度の高い)ものから順位を設定する。具体的には、例えば、上述した図３（ｄ）に示すソフトウェアＤＢ３４の項目に含まれる「評価」→「状態」→「使用回数」→「ダウンロード数」の順序で重み付け（優先度の付与）を行い、優先順位を設定することができるが、これに限定されるものではない。なお、「状態」については、例えば「インストール済＞バンドル＞ダウンロード済＞未ダウンロード」の順序で重み付けを行うことができる。また、「使用回数」については、例えば「最終使用日」と比較して、「最近使ったもの＞回数」の条件で重み付けを行ってもよい。なお、図３（ｅ）に示す優先順位の設定は、上述した推奨リスト生成手段１６等により行われる。
【００６４】
なお、データベース例については、これに限定されるものではない。例えば、使用したいソフトウェアの登録情報や、サポートセンタへの問い合せ記録、ウェブでの購入記録、よく使われるソフトウェア、売れているソフトウェア等の情報を記憶してもよい。また、上述した各情報は、例えば、情報処理装置１０の電源投入時や、画面復帰のタイミング、所定時間のタイミング等に応じて、常にアップデートされる。
【００６５】
＜レジストリ情報３３の具体例＞
次に、レジストリ情報３３の具体例について説明する。本実施形態では、レジストリ内にレジストリキーがあるかどうかに基づいて、ソフトウェアがインストールされているかを判断することができる。なお、レジストリキーの例としては、例えば、「ＨＫＥＹ＿ＬＯＣＡＬ＿ＭＡＣＨＩＮＥ￥ＳＯＦＴＷＡＲＥ￥Ｆｕｊｉｔｓｕ￥ｓａ」等があるが、これに限定されるものではない。本実施形態では、上述した手法によりインストールされているソフトウェアを取得した後、記憶手段１３にそのソフトウェア情報を記憶させることができる。
【００６６】
＜推奨ルール一覧３５の具体例＞
次に、推奨ルール一覧３５の具体例について説明する。本実施形態では、複数の推奨ルールを設定しておき、その推奨ルールに基づいて推奨リスト生成手段１６により推奨リストが生成される。なお、推奨ルールとしては、例えばキーワード毎にどのように優先順位を設定するかのルールや、ユーザレベルを取得するルール、各ソフトウェアに対してどのような重み付けを行うかのルール等を設定する。本実施形態では、上述したルールを一覧として管理し、このルールのうちの１つ又は複数を組み合わせた複合ルールに基づいて推奨リストが作成される。なお、本実施形態では、推奨ルールは、任意に設定することができ、例えば新たに追加された推奨ルールに対する推奨リストの生成が未処理の場合に、その未処理分に対する処理を行うことができる。
【００６７】
＜本実施形態におけるソフトウェア起動処理例＞
次に、上述した情報処理装置１０等を用いた本実施形態におけるソフトウェア起動処理例について具体的に説明する。図４は、本実施形態におけるソフトウェア起動処理の一例を示すフローチャートである。なお、図４に示すソフトウェア起動処理の例では、情報処理装置１０を起動させると、イベントハンドラが常駐する。このイベントハンドラは、各種オペレーティングシステムに備わっているものであり、定期的又は不定期のイベント通知に反応して、各種処理を実行する。
【００６８】
ソフトウェア起動処理は、まずイベント指示を取得したか否かを判断する（Ｓ０１）。なお、イベント指示の取得は、例えば入力手段１１によりユーザからの指示が入力された場合や音声処理手段１４により音声処理された場合等が含まれるが、これに限定されるものではない。
【００６９】
ここで、ソフトウェア起動処理は、イベント指示を取得していない場合（Ｓ０１において、ＮＯ）、Ｓ０１に戻り、イベントが入力されるまで待機（常駐）状態となる。また、ソフトウェア起動処理は、イベント指示を取得した場合（Ｓ０１において、ＹＥＳ）、そのイベントによって推奨リスト生成イベントが指示されたか否かを判断する（Ｓ０２）。なお、本実施形態では、推奨リスト生成イベントである場合には、例えば定期的にある一定の時間間隔をおいてイベントを発行したり、起動時に一度だけ発行したり、日付が変わったときに一度だけ発行してもよい。また、本実施形態では、情報処理装置１０において所定のソフトウェアを起動したときに推奨リスト生成イベントを発行してもよい。これらの発行タイミングは、任意に設定することができる。
【００７０】
ソフトウェア起動処理は、推奨リスト生成イベントが指示された場合（Ｓ０２において、ＹＥＳ）、推奨リスト生成処理を実行する（Ｓ０３）。
【００７１】
また、ソフトウェア起動処理は、Ｓ０２の処理において、推奨リスト生成イベントが指示されていない場合（Ｓ０２において、ＮＯ）、Ｓ０１の処理により指示されたイベントによって、ソフトウェア起動イベントが指示されたか否かを判断する（Ｓ０４）。ソフトウェア起動処理は、ソフトウェア起動イベントが指示された場合（Ｓ０４において、ＹＥＳ）、ソフトウェア起動処理を実行する（Ｓ０５）。また、ソフトウェア起動処理は、ソフトウェア起動イベントが指示されていない場合（Ｓ０４において、ＮＯ）、Ｓ０１の処理によって、終了イベントが指示されたか否かを判断する（Ｓ０６）。ソフトウェア起動処理は、終了イベントが指示された場合（Ｓ０６において、ＹＥＳ）、処理を終了する。
【００７２】
また、ソフトウェア起動処理は、Ｓ０３の推奨リスト生成処理の処理終了後、Ｓ０５のソフトウェア起動処理終了後、又は、Ｓ０６の処理において、終了イベントが指示されていない場合（Ｓ０６において、ＮＯ）、Ｓ０１の処理に戻る。
【００７３】
なお、本実施形態では、上述した推奨リスト生成処理の終了に連動してソフトウェア起動イベントが発行されてもよい。また、上述した終了イベントが通知されたときは、オペレーティングシステム自体を終了させてもよい。
【００７４】
＜推奨リスト生成処理例＞
次に、上述した推奨リスト生成処理例について、フローチャートを用いて説明する。図５は、推奨リスト生成処理の一例を示すフローチャートである。図５の処理において、推奨リスト生成処理は、例えば通信ネットワーク４１を介して上述したユーザ登録サーバ４２にアクセスし、ユーザ登録サーバ４２からユーザレベル等を取得し、ユーザ情報ＤＢ３２に記憶する（Ｓ１１）。
【００７５】
次に、推奨リスト生成処理は、通信ネットワーク４１を介して上述したダウンロードサーバ４３にアクセスし、ダウンロードサーバ４３からダウンロードソフトの情報を取得し、ソフトウェアＤＢ３４に記憶する（Ｓ１２）。次に、推奨リスト生成処理は、上述したレジストリ情報３３を参照して、例えばプレインストールソフトの情報を取得し、取得した情報をソフトウェアＤＢ３４に記憶する（Ｓ１３）。なお、Ｓ１３の処理では、インストールソフトの情報を取得してもよい。また、推奨リスト生成処理は、推奨ルール一覧３５を取得し、推奨ルール一覧３５を取得し（Ｓ１４）、未処理の推奨ルールが存在するか否かを判断する（Ｓ１５）。推奨リスト生成処理は、未処理の推奨ルールが存在する場合（Ｓ１５において、ＹＥＳ）、推奨リストデータ生成処理を行い（Ｓ１６）、推奨リストデータ生成処理を実行後にＳ１４の処理に戻る。
【００７６】
また、推奨リスト生成処理は、Ｓ１５の処理において、未処理の推奨ルールが存在しない場合（Ｓ１５において、ＮＯ）、生成された推奨リストを推奨リストＤＢ３６に記憶し（Ｓ１７）、処理を終了する。
【００７７】
＜推奨リストデータ生成処理例＞
次に、上述した推奨リストデータ生成処理例について、図を用いて説明する。図６は、推奨リストデータ生成処理の一例を示すフローチャートである。図６の例において、推奨リストデータ生成処理は、上述した未処理の推奨ルールに示された条件に一致するソフトウェアを、ソフトウェアＤＢ３４から検索する（Ｓ２１）。
【００７８】
また、推奨リストデータ生成処理は、条件に一致するソフトウェアが存在するか否かを判断し（Ｓ２２）、条件に一致するソフトウェアが存在する場合（Ｓ２２において、ＹＥＳ）、一致したソフトウェアをソフトウェアＤＢ３４に記憶する（Ｓ２３）。また、推奨リストデータ生成処理は、Ｓ２２の処理において、条件に一致するソフトウェアが存在しない場合（Ｓ２２において、ＮＯ）、処理を終了する。
【００７９】
＜ソフトウェア起動処理例＞
次に、上述したソフトウェア起動処理例について、フローチャートを用いて説明する。図７は、ソフトウェア起動処理の一例を示すフローチャートである。図７に示すソフトウェア起動処理の例では、まず入力認識モジュールの常駐を開始する(Ｓ３１)。なお、入力認識モジュールとは、例えば音声認識であってもよく、文字解析等であってもよい。音声認識の場合には、Ｓ３１の処理によって、例えばマイクロフォン等の入力手段１１から音声を受信するように設定し、音声処理手段１４において音声を逐次解析できるように準備する。また、文字解析の場合には、Ｓ３１の処理によって、例えばキーボード等の入力手段１１から入力された文字を逐次解析できるように準備する。
【００８０】
次に、ソフトウェア起動処理は、ユーザによる終了指示、又は、システムからの終了指示があるか否かを判断し（Ｓ３２）、終了指示がない場合（Ｓ３２において、ＮＯ）、次に、ユーザからの入力情報があるか否かを判断する（Ｓ３３）。なお、ユーザからの入力情報とは、例えば起動させるソフトウェア名でもよく、使用目的であってもよい。ソフトウェア起動処理は、ユーザからの入力情報があった場合（Ｓ３３において、ＹＥＳ）、キーワードＤＢ３１から上述した登録語の一覧を取得し（Ｓ３４）、入力情報認識処理を行う（Ｓ３５）。また、ソフトウェア起動処理は、Ｓ３５における入力情報認識処理の終了後、又は、Ｓ３３において、ユーザからの入力情報がない場合（Ｓ３３において、ＮＯ）、Ｓ３２の処理に戻る。
【００８１】
また、ソフトウェア起動処理は、Ｓ３２の処理において、終了指示があった場合（Ｓ３２において、ＹＥＳ）、入力認識モジュールの常駐を終了し（Ｓ３６）、処理を終了する。
【００８２】
＜入力認識モジュールにおける入力情報認識処理例＞
次に、上述した入力情報認識処理例について、フローチャートを用いて説明する。図８は、入力情報認識処理の一例を示すフローチャートである。図８に示す入力情報認識処理は、まず、ユーザからの入力情報を取得する（Ｓ４１）。なお、ユーザからの入力情報としては、例えば使用したいソフトウェアに関する情報（ニーズ）等がある。また、Ｓ４１の処理では、例えばユーザが音声を発して、それを入力手段１１が入力情報として取得した場合に、音声認識モジュールが実行されて、音声に含まれる単語（文字列）を取得する。また、Ｓ４１の処理では、例えばユーザが入力した文字を入力し、それを入力手段１１が入力情報として取得した場合に、文字解析モジュールが実行されて、入力文字に含まれる単語（文字列）を取得する。
【００８３】
なお、音声認識とは、音響信号中の発話の内容を単語（文字データ）として取り出す処理のことである。具体的には、例えばマイクロフォン等で外部環境から音響信号を受け付けて電気信号である音声信号に変換し、当該音声信号から人の発話を含む区間である発話区間を検出し、発話区間に音響モデルと語彙辞書に基づく音声照合を行って文字データを取り出す。また、文字解析とは、入力された文章等を形態素解析し、形態素解析された文章を文字単位に分割する。また、分割された単語は、１単語で１つの意味を持たせてもよく、複数単語で１つの意味を持たせてもよい。なお、音声認識や文字解析については、これに限定されるものではない。
【００８４】
次に、入力情報認識処理は、取得した入力情報が、登録語に一致しているか否かを判断し（Ｓ４２）、入力情報が登録語に一致していない場合（Ｓ４２において、ＮＯ）、処理を終了する。また、入力情報認識処理は、受信した入力情報が登録語に一致する場合（Ｓ４２において、ＹＥＳ）、キーワードＤＢ３１から登録語に関連するキーワードを取得し（Ｓ４３）、ソフトウェア選定処理を行う（Ｓ４４）。
【００８５】
なお、上述した入力情報認識処理は、例えば常駐開始されると、音声に関連したイベントや終了イベントを受信するための音声受信ハンドラが起動するようにしてもよい。この場合、音声受信ハンドラは、発生したイベントに応じたメッセージを受信するための待機処理が行われる。また、常駐終了イベントを受信した場合には、常駐を終了する。また、図８に示す入力情報認識処理は、上述したソフトウェア選定処理が終了すると、そのまま処理を終了しているが、これに限定されるものではなく、例えばソフトウェア選定処理の終了後にＳ４１に戻り、再び受信待ち状態にしてもよい。
【００８６】
＜ソフトウェア選定処理例＞
次に、上述したソフトウェア選定処理例について、フローチャートを用いて説明する。図９は、ソフトウェア選定処理の一例を示すフローチャートである。なお、以下の説明では、ソフトウェア起動の条件の一例として、直接起動と間接起動との２種類を有するものとし、直接起動でない場合には、間接起動を行うものとして説明しているが、これに限定されるものではなく、他の起動方法を有していてもよい。
【００８７】
図９において、ソフトウェア選定処理は、まず取得したキーワードに対応する推奨リスト（例えば、優先順位付けがされた複数ソフトウェア情報等）を、推奨リストＤＢ３６から取得する（Ｓ５１）。
【００８８】
次に、ソフトウェア選定処理は、Ｓ５１の処理で取得した推奨リストにソフトウェアが存在する否かを判断し（Ｓ５２）、ソフトウェアが少なくとも１つ存在する場合（Ｓ５２において、ＹＥＳ）、起動の設定が直接起動であるか否かを判断する（Ｓ５３）。
【００８９】
ソフトウェア選定処理は、起動の設定が直接起動である場合（Ｓ５３において、ＹＥＳ）、予め設定されている優先順位が１位のソフトウェアを起動させる（Ｓ５４）。また、ソフトウェア選定処理は、起動の設定が直接起動でない場合（Ｓ５３において、ＮＯ）、優先順位が１〜３位までのソフトウェアを提示し、ユーザに選択させる画面を表示する（Ｓ５５）。
【００９０】
次に、ソフトウェア選定処理は、ユーザからの選択情報を取得し、選択されたソフトウェアがインストール又はプレインストールされているか否かを判断する（Ｓ５６）。ソフトウェア選定処理は、インストール又はプレインストールされている場合（Ｓ５６において、ＹＥＳ）、選択されたソフトウェアを起動する（Ｓ５７）。また、ソフトウェア選定処理は、選択されたソフトウェアがインストール又はプレインストールされていない場合（Ｓ５６において、ＮＯ）、例えばダウンロードサイトに誘導する画面を表示し、ブラウザ等を起動してダウンロードサイトに接続する（Ｓ５８）。ダウンロードサイトに誘導する画面には、ダウンロードサイトのＵＲＬと、ユーザにダウンロードさせるためのメッセージ等が表示される。
【００９１】
なお、上述したＳ５８の処理では、選択したソフトウェアが未ダウンロード時の処理を示している。しかしながら、Ｓ５８の処理においては、これに限定されるものではなく、選択されたソフトウェアの状態に応じて異なる処理を行うことができる。例えば、選択されたソフトウェアがバンドル状態のものやダウンロード済みのものである場合には、インストールを促す画面を表示したり、インストールファイルの格納先のフォルダを表示させる処理を行ってもよい。
【００９２】
＜ユーザレベルが変更されるときの具体例＞
ここで、本実施形態において、ユーザレベルが変更されるときの具体例について説明する。ユーザレベルの設定は、例えば「ユーザ自身が、ユーザ登録時に設定する場合」、「ユーザ自身が、ユーザ登録情報更新時に変更する場合」、「ユーザがサポートを受けた際に、サポート担当者が設定／更新する場合」、「特定の機能を実行した場合」等にレベルをアップするように変更することができる。
【００９３】
例えば、表計算ソフトウェアに含まれるマクロ機能を実行した場合に、ユーザレベルが２以下だったときは、レベルを３に変更する等の変更を行う。また、例えば、あるソフトウェアの起動回数が、一定回数を超えたときに、ユーザレベル（例えば、キーワード毎にレベルを設定する場合は該当するキーワードのユーザレベル）を１段階アップする。また、例えば、あるソフトウェアの使用時間数が、一定時間を超えたときに、ユーザレベル（例えば、キーワード毎にレベルを設定する場合は該当するキーワードのユーザレベル）を1段階アップする。
【００９４】
更に、例えば、同一キーワード内のソフトの使用時間を合計し、一定時間を超えたときに、ユーザレベル（例えば、キーワード毎にレベルを設定する場合は該当するキーワードのユーザレベル）を１段階アップする。
【００９５】
また、所定のキーワード（例えば、ハガキ作成）に関連するソフトウェアについて、最終使用日から一定期間以上使用されていなかった場合には、同一キーワードに対する現時点のユーザレベルから１段階ダウンさせる変更を行うこともできる。このように、本実施形態では、ユーザレベルをその時点での使用状況等に応じて増減させることで、より適切なソフトウェアの起動を行うことができる。
【００９６】
＜画面例＞
次に、本実施形態において、ユーザに提示される画面例について、図を用いて説明する。図１０は、本実施形態における画面例を示す図である。図１０に示す画面例では、選択起動時の画面例を示している。直接起動時には、選択されたソフトウェアが直接起動されるため、図１０のような画面は表示されない。
【００９７】
図１０の例では、選択起動する場合の画面例として、表示画面６１に複数のおすすめソフトが表示され、そのうちの１つを選択できるような領域を有している。なお、図１０の例では、表示画面６１に表示されているソフトウェアとして３種類のソフトウェアが表示されているが、これに限定されるものではなく、少なくとも２つのソフトウェアが表示されていればよい。また、本実施形態では、図１０の例に示すように、表示されている各ソフトウェアの状態（例えば、インストール済み、ダウンロード済み、未ダウンロード等）も表示することができる。
【００９８】
ここで、ユーザが表示画面６１に表示されているソフトウェアのうち、１つを選択して実行ボタンを押下すると、選択されたソフトウェアの状態を判断し、インストール済みであれば、選択されたソフトウェアを起動して画面が終了する。また、選択されたソフトウェアがダウンロード済みであるか、又はバンドル状態である場合には、別の表示画面６２が表示され、ユーザにインストールを促すメッセージを表示させることができる。また、この場合には、「選択されたソフトウェアは、まだインストールが完了していません。インストールを行って下さい。」等のようなメッセージに限定されず、表示画面６２に「インストールを開始しますか？」等のメッセージを表示してもよい。「インストールを開始しますか？」のメッセージに対してＯＫボタンが押下された場合には、インストールが開始される。
【００９９】
また、表示画面６１にて選択されたソフトウェアが未ダウンロードである場合には、別の表示画面６３が表示され、「下記ＵＲＬをクリックして、ダウンロードしてご利用ください。」等のように表示して、ブラウザを起動し、ダウンロードサイトを表示する処理等を行うことができるが、これに限定されるものではない。
【０１００】
また、図１１は、本実施形態における別の画面例を説明するための図である。図１１の例では、複数のキーワードを認識した場合の推奨リストの画面例を示している。
【０１０１】
なお、図１１の例では、ユーザの音声（発音）から複数のキーワードが抽出されたときの動作の具体例を示している。つまり、図１１（ａ）〜（ｃ）の例では、推奨リストの優先順位がどのように変化するか、又は画面にどのように表示されるか等の具体例を示している。
【０１０２】
＜具体例１＞
具体例１では、まず１回の発音で複数のキーワードが順番に認識された場合について説明する。例えば、発音例として「年賀状メールを出したい」と使用目的を発音した場合、「ねんがじょう」という発音から「ハガキ作成」というキーワードを認識し、「めーる」という発音から「メーラー」というキーワードが認識される。
【０１０３】
このような場合には、例えばユーザが予め設定された起動方法のうち、少なくとも１つを設定できるようにすることも可能とする。例えば、第１の起動方法として、取得したキーワードのうち、最後に認識されたキーワードのみを有効とする。これにより、上述の発音例に対しては、「メーラー」が有効となる。
【０１０４】
また、第２の起動方法としては、例えば、該当するキーワードを順番に提示する。提示する順番は、例えば一致度が高いと思われる後出のキーワードから順に提示する。上記の発音例では、例えば、推奨リストを表示する場合、図１１の表示画面７１に示すように、「メーラー」の推奨リストを表示する際に、画面内に他にもキーワード候補があること示し、別のキーワード「ハガキ作成」の推奨リストに切り替えを可能にする。
【０１０５】
また、推奨リストを表示しない場合には、例えば、図１１（ｂ）に示す表示画面７２に示すように、「メーラー」の起動を確認するメッセージを表示し、「ＯＫ」なら「メーラー」を起動、「次の候補」なら「ハガキ作成」の起動を確認するメッセージを表示する。つまり、図１１（ｂ）の例では、優先順位の高い順に、起動してよいか否かの確認をユーザに対して行う。
【０１０６】
また、第３の起動方法としては、例えば、キーワードに相当する選択肢を提示して、選択されたものを起動する。ここで、提示する順番は、一致度が高いと思われる後出のキーワードから順に並べる。上記の発音例では、例えば図１１（ｃ）に示すような表示画面７３に、「メーラー」、「ハガキ作成」の順に選択肢を並べ、ユーザが何れかの選択肢を選択した場合に、対応するソフトウェアが実行される。なお、表示画面７３には、「キャンセル」ボタンを押下することにより、ソフトウェアの選択や実行を中止することができる。
【０１０７】
＜具体例２＞
次に、具体例２として、１単語の発音に複数のキーワードが設定されていた場合について説明する。例えば、発音例として「連絡を取りたい」と発音した場合、「れんらく」という１単語の発音が「アドレス帳」、「メール」、「ハガキ作成」等の複数のキーワードで設定されていることが考えられる。このとき、以下の起動方法によりソフトウェアを起動する。
【０１０８】
第１の起動方法としては、各キーワードの推奨リストに登録されているソフトのうち、直近で起動したソフトウェア、又は、より多くの回数を起動したソフトが含まれるキーワードを有効とする。
【０１０９】
また、第２の起動方法としては、該当するキーワードを順番に提示する。提示する順番は、直近で起動したソフトウェア、又は、より多くの回数を起動したソフトウェアが含まれるキーワードの順に提示する。
【０１１０】
また、第３の起動方法としては、キーワードに相当する選択肢を提示して、選択されたものを起動する。提示する順番は、直近で起動したソフトウェア、又は、より多くの回数を起動したソフトウェアが含まれるキーワードの順に、相当する選択肢を並べる。
【０１１１】
本実施形態では、上述した表示画面７１〜７３の何れかの画面を表示することにより、ユーザにソフトウェアの存在を伝えることができ、ユーザに対して容易に適切なソフトウェアの起動を行わせることができる。なお、画面例については、上述した内容に限定されるものではなく、レイアウト等についてもこれに限定されない。
【０１１２】
なお、起動方法については、ソフトウェアそのものを起動するだけでなく、例えばソフトウェアを起動し、よく使っているフォーマットや、推奨フォーマットを表示したり、ユーザレベルにあった推奨ソフトウェアを購入させる処理に誘導することもできる。また、
上述した実施形態によれば、ユーザのニーズやレベルにあったソフトウェアを起動させることができる。具体的には、本実施形態では、ユーザレベルを取得し、取得したユーザレベルにあったソフトウェアを起動させることができる。また、本実施形態では、ユーザレベルの上がるに連れて適切なソフトウェアを起動する。また、本実施形態では、特定のダウンロードサイトと連携し、ダウンロード履歴から、プレインストール以外のソフトも候補に追加する。更に、本実施形態では、特定のダウンロードサイトと連携し、プレインストール又はダウンロード以外のソフトウェアも推奨ソフトの候補に追加することができる。
【０１１３】
また、本実施形態では、ユーザがＰＣを操作しなくても、ユーザが話す自然言語等を分析して目的のソフトウェアを起動させることができる。また、ソフトウェアの名称が分かっている場合はソフトウェア名を入力し、名称が不明な場合には何がしたいかの使用目的等を入力することで、目的のソフトウェアを起動させることができる。また、対象のソフトウェアが複数ある場合は、ユーザレベルとユーザニーズから最適なソフトウェアを選別して起動させることができる。
【０１１４】
以上、各実施例について詳述したが、特定の実施例に限定されるものではなく、特許請求の範囲に記載された範囲内において、上記変形例以外にも種々の変形及び変更が可能である。
【０１１５】
なお、以上の実施例に関し、更に以下の付記を開示する。
（付記１）
ソフトウェア情報を記憶する記憶手段と、
通信ネットワークに接続された第１の外部装置から得られるソフトウェアを使用するユーザのレベルに対応させて、前記通信ネットワークに接続された第２の外部装置から得られるソフトウェア情報及び前記記憶手段に記憶されたソフトウェア情報から前記ユーザに推奨するソフトウェア情報を生成する推奨情報生成手段と、
前記ユーザから使用したいソフトウェアに関する情報の入力を受け付ける入力手段と、
前記入力手段から得られる入力情報と、前記記憶手段に予め登録されたキーワード判定用の文字列とを比較し、比較結果から前記文字列に関連するキーワードを判定するキーワード判定手段と、
前記推奨情報生成手段により得られる推奨情報と、前記キーワード判定手段により得られるキーワードとを照合し、推奨するソフトウェアを取得する推奨判定手段と、
前記推奨判定手段により得られるソフトウェアを起動するソフトウェア起動手段とを有することを特徴とする情報処理装置。
（付記２）
前記推奨情報生成手段は、
前記第１の外部装置により変更された前記ユーザのレベルに対応させて推奨するソフトウェア情報が変更されることを特徴とする付記１に記載の情報処理装置。
（付記３）
前記推奨情報生成手段は、
前記ユーザのレベルが上がると共に、推奨するソフトウェアの優先度が変更されることを特徴とする付記１又は２に記載の情報処理装置。
（付記４）
前記推奨判定手段により複数のソフトウェアが選択された場合には、複数のソフトウェアのうちの１つを前記ユーザに選択させるための画面を生成する画面生成手段を有することを特徴とする付記１乃至３の何れか１項に記載の情報処理装置。
（付記５）
前記画面生成手段は、
前記複数のソフトウェアの前記情報処理装置に対するインストール状態を表示することを特徴とする付記４に記載の情報処理装置。
（付記６）
前記画面生成手段は、
前記推奨判定手段により得られるソフトウェアが未ダウンロードのソフトウェアである場合には、前記ソフトウェアの使用を誘導する画面を生成することを特徴とする付記４又は５に記載の情報処理装置。
（付記７）
通信ネットワークに接続された第１の外部装置から得られるソフトウェアを使用するユーザのレベルに対応させて、前記通信ネットワークに接続された第２の外部装置から得られるソフトウェア情報及び記憶手段に記憶されたソフトウェア情報から前記ユーザに推奨するソフトウェア情報を生成し、
前記ユーザから使用したいソフトウェア情報の入力を受け付け、受けつけた入力情報と、前記記憶手段に予め登録されたキーワード判定用の文字列とを比較し、比較結果から前記文字列に関連するキーワードを判定し、
前記推奨情報と、前記キーワードとを照合し、推奨するソフトウェアを取得し、取得したソフトウェアを起動する、処理をコンピュータに実行させるためのソフトウェア起動プログラム。
（付記８）
通信ネットワークに接続された第１の外部装置から得られるソフトウェアを使用するユーザのレベルに対応させて、前記通信ネットワークに接続された第２の外部装置から得られるソフトウェア情報及び記憶手段に記憶されたソフトウェア情報から前記ユーザに推奨するソフトウェア情報を生成する推奨情報生成ステップと、
前記ユーザから使用したいソフトウェアに関する情報の入力を受け付ける入力ステップと、
前記入力ステップにより得られる入力情報と、前記記憶手段に予め登録されたキーワード判定用の文字列とを比較し、比較結果から前記文字列に関連するキーワードを判定するキーワード判定ステップと、
前記推奨情報生成ステップにより得られる推奨情報と、前記キーワード判定ステップにより得られるキーワードとを照合し、推奨するソフトウェアを取得する推奨判定ステップと、
前記推奨判定ステップにより得られるソフトウェアを起動するソフトウェア起動ステップとを有することを特徴とするソフトウェア起動方法。
【符号の説明】
【０１１６】
１０  情報処理装置
１１  入力手段
１２  出力手段
１３  記憶手段
１４  音声処理手段
１５  キーワード判定手段
１６  推奨リスト生成手段（推奨情報生成手段）
１７  推奨判定手段
１８  ソフトウェア起動手段
１９  画面生成手段
２０  送受信手段
２１  制御手段
３１  キーワードＤＢ
３２  ユーザ情報ＤＢ
３３  レジストリ情報
３４  ソフトウェアＤＢ
３５  推奨ルール一覧
３６  推奨リスト
４１  通信ネットワーク
４２  ユーザ登録サーバ（第１の外部装置）
４３  ダウンロードサーバ（第２の外部装置）
５１  入力装置
５２  出力装置
５３  ドライブ装置
５４  補助記憶装置
５５  メモリ
５６  ＣＰＵ
５７  ネットワーク接続装置
５８  記録媒体
６１〜６３，７１〜７３  表示画面
【図１】
2014032457.tif 000003
【図２】
2014032457.tif 000004
【図３】
2014032457.tif 000005
【図４】
2014032457.tif 000006
【図５】
2014032457.tif 000007
【図６】
2014032457.tif 000008
【図７】
2014032457.tif 000009
【図８】
2014032457.tif 000010
【図９】
2014032457.tif 000011
【図１０】
2014032457.tif 000012
【図１１】
2014032457.tif 000013