(57)【要約】【課題】  インストール時、インストールするソフトウェアの選択とネットワークに関する設定をユーザが容易かつ正確にできるようにすること。【解決手段】  ソフトウェア相互の依存関係を表すテーブルと、該テーブルとソフトウェアの選択状態に基づきネットワーク構成ガイダンス画面を表示するステップからなる。【選択図】  図１
2009020819.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークで相互に通信しあう複数のソフトウェアをインストールするインストールプログラムであって、
インストールするソフトウェアをユーザに選択させる画面を表示するステップと、
ネットワーク構成を表す図を表示するためのガイダンス画面を表示するステップと、
該ガイダンス画面上に該インストールプログラムを実行している計算機を表す図形と別の計算機を表す図形を描画するステップと、
該ユーザが選択したソフトウェアを表す図形を該インストールプログラムを実行している計算機を表す該図形内に描画するステップと、
該ユーザが選択したソフトウェアと予め指定したソフトウェア相互の依存関係を表すテーブルを比較して不足するソフトウェアを割り出すステップと、
該不足するソフトウェアを表す図形を該別の計算機を現す図形内に描画するステップと、
該予め指定したソフトウェア相互の依存関係を表すテーブルに基づき該ソフトウェアを表す図形群を相互に結ぶ線を描画するステップと、
を具備するインストールプログラム。
【請求項２】
請求項１のインストールプログラムであって、
該ユーザが選択したソフトウェアと予め指定したソフトウェア相互の依存関係とともに依存の方向を表すテーブルを比較して不足するソフトウェアを割り出すステップと、
依存の方向に応じて該ソフトウェアを表す図形群を相互に結ぶ線に方向を示す図形を付加して描画するステップと、
を具備するインストールプログラム。
【請求項３】
請求項１のインストールプログラムであって、
予め指定した各ソフトウェアのネットワーク設定項目テーブルから該ユーザが選択したソフトウェアのネットワーク設定項目を抽出するステップと、
該ネットワーク設定項目を対応するソフトウェアを表す図形内に表示するステップと、
を具備するインストールプログラム。
【請求項４】
請求項１のインストールプログラムであって、
該ユーザが選択したソフトウェアと予め指定したソフトウェア相互の依存関係とともに依存の強さを表すテーブルを比較して不足するソフトウェアを割り出すステップと、
依存の強さに応じて該不足するソフトウェアを表す図形と図形群を相互に結ぶ線の描画方法を変更するステップと、
を具備するインストールプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアを計算機に導入するインストーラに関するものである。
【背景技術】
【０００２】
最近、ネットワーク技術が激しく進歩している。そのような環境変化を受けて、プログラムに通信機能を持たせ、複数の計算機上にプログラムを分散して配置し、協調動作させるシステムが実現されている。
【０００３】
そして、このようなプログラム群を計算機にインストールするために、チェックボックスなどのグラフィカルユーザインターフェースにより、インストーラが動作している計算機にどのプログラムをインストールするか選択する方法が実現されている。
【０００４】
そのようなプログラムは、自分から相手を定めて通信を開始する型（クライアント型）と、特定の通信ポートを開きクライアント型が通信してくるのを待つ型（サーバ型）に大別できる。また、プログラムは、通信の相手方がいないと自分の機能が全く動作させられない型と相手方がいないと機能の一部が動作させられないもののその他の機能は正常に処理を実行できる型に大別できる。
【０００５】
一般にこのようなプログラムは計算機のＯＳ起動時に同時に起動し、ＯＳが終了するまで動作し続けることから、常駐プログラムとかサービスなどと呼ばれる。以下の説明では、サービスの名称で統一する。
【０００６】
従来例としては、VISIOのようなGUIドローツールで、ネットワーク上にPC/プリンタなどのネットワークデバイスを配置し、そのデバイスにインストールすべきサービスを決定して、サービスに必要な情報を記入して、ネットワーク構成図を作成し、そのネットワーク構成図をもとに、それぞれのネットワークデバイス用のインストーラを自動作成すものがある（特許文献１参照）。また、サーバアプリとクライアントアプリのインストール方法で、サーバを先にインストールして、そのネットワーク構成情報をＵＳＢメモリに保存して、次に別のマシンにクライアントをインストールする際、その情報を入力することで、別途ユーザが入力することを省くものがある（特許文献２参照）。
【特許文献１】特開平７−２１０４８２号公報
【特許文献２】特開２００３−５９７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
インストール時に、サービス選択画面で、あるサービス（サービスＡ）を選択した場合に、サービスＡの依存関係の情報をユーザが知ることができず、どれを選択すれば良いか分からない・分かりにくいという問題がある。
【０００８】
また、サービス選択画面で、サービスＢに依存するサービスＡを選択するとする。その後の画面で、サービスＡとサービスＢが通信するためのネットワーク設定情報の入力を要求される。このときユーザは、ネットワーク構成を思い浮かべつつ、何と何を結ぶ設定か、どちらからどちらへ向けての設定かを想起しながら入力する必要があり、正しく設定することが難しいという課題がある。
【課題を解決するための手段】
【０００９】
上記２つの課題を解決するために、インストール時に選択したサービスと選択しなかったサービスの依存関係を表示して明らかにし、その画面上でネットワーク設定を可能にして設定を容易化する「ネットワーク構成ガイダンス画面」を表示するようにする。
【００１０】
その表示内容と表示ロジックは、実施例１で図を参照しつつ、詳細に述べる。
【発明の効果】
【００１１】
インストール時、ユーザが「容易に」かつ「正確に」ネットワーク設定できるようになった。
【発明を実施するための最良の形態】
【００１２】
（実施例１）
図を参照しつつ、実施例を説明する。本実施例では、インストーラはサービスＡ、サービスＢ、サービスＣ、サービスＤ、の４つのサービスを選択して必要な設定を実施してインストールするものである。
【００１３】
まず、図１のサービス相互関係テーブルを参照しつつ、サービス間の相互関係を説明する。このサービス相互関係テーブルはインストーラのリソースの一部としてインストーラ内部に組み込まれている。サービスＡはクライアント型でサービスＢに接続する。サービスＡにとってサービスＢは必須である。サービスＢはサーバ型でサービスＡと接続する。サービスＢにとってサービスＡは必須ではない。サービスＣは、サーバ型でサービスＤと接続する。サービスＣにとってサービスＤは必須ではない。サービスＤは、クライアント型でサービスＣと接続する。サービスＤにとってサービスＣは必須ではない。
【００１４】
図２に従来技術による選択画面および設定画面を表す。以下では、従来技術ではどのようにサービスの選択と設定をしていたかとその不便さについて説明する。最初２０１のサービス選択画面を表示する。ここで例えばサービスＡとサービスＣを選択する。しかし、ここでは、サービスＡがサーバなのかクライアントなのか、何に依存するか、ということが容易には分からない。サービス画面で「次へ」のボタンを押下すると、サービスＡのネットワーク設定画面２０２が表示される。ここでサービスＢのＩＰアドレスやポートの入力が要求されるが、何故サービスＡの設定画面でサービスＢの情報を要求されるか、ユーザにとっては釈然としないであろう。サービスＡの設定画面で「次へ」のボタンを押下すると、サービスＣのネットワーク設定画面２０３が表示される。サービスＣの設定画面では、サービスＤからの要求を待ち受けるポートを入力する。
【００１５】
このような画面表示ではユーザがインストールしにくい。それを改善するためにサービス選択画面とともにガイダンス画面を表示し、インストールの容易性を改善する。以下では、インストーラ実行時の操作手順に従い、順に動作を説明する。
【００１６】
図３は、本提案による選択画面およびガイダンス画面の初期表示である。インストールの途中でサービス選択画面を表示する。その画面では、サービス群をチェックボックスでそれぞれを選択できるようになっている。サービス選択画面を表示すると同時に、その横にネットワーク構成ガイダンス画面を表示する。ネットワーク構成ガイダンス画面には、現在のマシン（ＰＣ１）が表示されている。ＰＣ１の内部には、ＰＣ１のIＰアドレスが表示される。
【００１７】
図４で、サービス選択画面でサービスＡのチェックボックスをクリックして、サービスＡを選択した場合の動作を説明する。サービスＡを選択すると、サービスＡが、現在のマシンの表示内部に表示される。図１のサービス相互関係テーブルによるとサービスＡはクライアント型なので、サービスＡの内部には、ポート番号がＡｎｙで表示される。該テーブルによると、サービスＡはサービスＢに依存することが分かる。現在のサービス選択状態では、サービスＢはこの計算機にインストールされることになっていない。したがって、サービスＢは他の計算機にインストールされるはずであるとインストーラは判断する。そこで、他の計算機（ＰＣ２）をＰＣ１から離れた位置に描画し、ＰＣ２の内部にIＰアドレスを入力するためのテキストボックスを描画する。更にＰＣ２内部にサービスＢを描画する。インストーラは、サービスＢを該テーブルで確認し、サービスＢがサーバ型であることを知る。サーバ型であることから、サービスＢの内部にはポート番号を入力するためのテキストボックスを描画する。そして最後にサービスＡとサービスＢを線で結ぶ。先に確認したとおり、サービスＡにとってサービスＢは必須なのでその結合線は実線で描画する。また、サービスＡがクライアント型でサービスＢがクライアント型なので、結合線はサービスＡからサービスＢへの矢印の形状で描画する。
【００１８】
図５で、サービス選択画面でサービスＣのチェックボックスをクリックして、サービスＣを選択した場合の動作を説明する。サービスＣを選択すると、サービスＣが、現在のマシンの表示内部に表示される。図１のサービス相互関係テーブルによるとサービスＣはサーバ型なので、サービスＣの内部には、ポート番号を入力するためのテキストボックスが描画される。該テーブルによると、サービスＣはサービスＤと接続することが分かる。現在のサービス選択状態では、サービスＤはこの計算機にインストールされることになっていない。したがって、サービスＤは他の計算機にインストールされるはずであるとインストーラは判断する。そこで、他の計算機（ＰＣ２）をＰＣ１から離れた位置に描画し、ＰＣ２の内部にIＰアドレスを入力するためのテキストボックスを描画する。更にＰＣ２内部にサービスＤを描画する。インストーラは、サービスＤを該テーブルで確認し、サービスＤがクライアント型であることを知る。クライアント型であることから、サービスＤの内部にポート番号をＡｎｙとして描画する。そして最後にサービスＣとサービスＤを線で結ぶ。先に確認したとおり、サービスＣにとってサービスＤは必須ではないので、その結合線は点線で描画する。また、サービスＤがクライアント型でサービスＣがクライアント型なので、結合線はサービスＤからサービスＣへの矢印の形状で描画する。
【００１９】
次に図６を参照しつつ、処理のフローを確認する。まず、６０１でインストーラを起動する。次に６０２でインストーラの前処理、例えば、ライセンスキーの入力やインストールパスの入力などを行う。次に６０３でサービス選択画面を表示する。次に６０４でネットワーク構成ガイダンス画面を表示する。次に６０５でネットワーク構成ガイダンス画面に現在のＰＣ（ＰＣ１）を表す図を表示する。次に６０６でユーザがサービスを選択するのを入力待ちする。次に６０７で、ユーザが選択したサービスが別のサービスに接続・依存するかを６０８のサービス依存関係テーブルを参照し確認する。もし、接続も依存もしなければ、６１８の後処理にとびインストール処理を続行する。もし、接続ないし依存する場合は、処理６０９に進む。処理６０９では、別のＰＣの図をネットワーク構成ガイダンス画面に描画する。次に６１０で依存するサービスをネットワーク構成ガイダンス画面に描画する。次に６１１で選択したサービスがサーバ型かどうかを確認する。もし、サーバ型であれば処理６１２に進む。もし、クライアント型であれば処理６１４に進む。処理６１２ではクライアント型サービスからサーバ型サービスへ矢印線を引く。次に処理６１３では選択したサービスの内部にポート番号のテキスト入力ボックスを描画する。選択したサービスがクライアント型だった場合の処理にもどると、処理６１４ではクライアント型サービスからサーバ型サービスへ矢印線を引く。次に６１５では依存するサービスにポート番号のテキスト入力ボックスを描画する。次に６１６では別のＰＣの図（ＰＣ２）にＩＰアドレスのテキスト入力ボックスを描画する。次に処理６１７で、ポート番号やＩＰアドレス番号をユーザが入力するのを待つ。次に６１８でインストールの後処理、たとえばファイルコピー処理や設定の埋め込み処理を実行する。処理６１８が終了するとインストーラの処理が終了する。
【００２０】
図7にソフトウェア構成図を示す。
【図面の簡単な説明】
【００２１】
【図１】サービス相互の関係テーブル
【図２】従来技術による選択画面および設定画面
【図３】本提案による選択画面およびガイダンス画面の初期表示
【図４】サービスＡ選択後の表示
【図５】サービスＣ選択後の表示
【図６】フローチャート
【図７】ソフトウェア構成図
【図１】
2009020819.tif 000003
【図２】
2009020819.tif 000004
【図３】
2009020819.tif 000005
【図４】
2009020819.tif 000006
【図５】
2009020819.tif 000007
【図６】
2009020819.tif 000008
【図７】
2009020819.tif 000009