(57)【特許請求の範囲】
【請求項１】
グラフィカル・ユーザ・インタフェース（以下「ＧＵＩ」と呼ぶ。）を用いて、任意のプログラムのオプション値を設定するための汎用ＧＵＩ装置であって、プログラムごとに、プログラムの所在とオプション値を設定するための情報とを記録したプログラム情報を格納するプログラム情報記憶装置とともに用いられ、オプション値は、プログラムに渡されると、当該プログラムの実行時の動作条件を変更するものであり、
オプション値の設定対象のプログラムに対応するプログラム情報の特定情報を当該プログラムの起動要求として端末から受信する処理と、
前記記憶装置から、受信した前記特定情報により特定されるプログラム情報を読出す処理と、
読出したプログラム情報にしたがって、前記端末上でオプション値を入力するための入力フォーム情報を生成し、前記端末に送信するための入力フォーム情報を生成する処理と、
前記端末から前記入力フォーム情報を用いて入力されたオプション値を受けると、当該オプション値を用いて、前記特定情報に対応するプログラムを起動する処理と、
読出したプログラム情報に従って、前記端末上で動作するブラウザプログラムがオプション値を入力するための入力フォーム画面を生成するように、所定のマークアップ言語でマークアップされたマークアップ書類を生成する処理とを行ない、
前記プログラム情報は、１又は複数のオプション情報を含み、
前記オプション情報の各々は、
当該オプション情報に対応するオプションを説明するためのオプション名テキストと、
前記入力フォーム上でオプションを入力するためのＧＵＩ部品を特定するためのＧＵＩ部品特定情報と、
当該オプション情報に対応するオプションを、前記プログラム特定情報に対応するプログラムに渡す際のプログラムオプション名とを含み、
マークアップ書類を生成する処理においては、前記オプション情報の各々に対して、前記オプション名テキストと、前記ＧＵＩ部品特定情報により特定されるＧＵＩ部品とを並べて表示するオプション入力フォーム画面を生成するように、かつ、前記ＧＵＩ部品に、当該ＧＵＩ部品に対応するプログラムオプション名を名称として付すように、前記所定のマークアップ言語でマークアップされた前記マークアップ書類を生成する、汎用ＧＵＩ装置。
【請求項２】
前記所定のマークアップ言語は、ＨＴＭＬ（HyperText  Markup  Language）であり、
前記マークアップ書類を生成する処理においては、前記端末上で動作するブラウザプログラムが前記入力フォーム画面を生成するように、ＨＴＭＬ言語でマークアップされたＨＴＭＬ書類を生成する、請求項１に記載の汎用ＧＵＩ装置。
【請求項３】
グラフィカル・ユーザ・インタフェース（以下「ＧＵＩ」と呼ぶ。）を用いて、任意の実行対象プログラムのオプション値を設定するための汎用ＧＵＩ装置としてコンピュータを動作させる汎用ＧＵＩプログラムであって、当該コンピュータは、実行対象のプログラムごとに、実行対象のプログラムの所在とオプション値を設定するための情報とを記録したプログラム情報を格納するプログラム情報記憶装置に接続可能であり、
前記汎用ＧＵＩプログラムは、コンピュータに、
オプション値の設定対象のプログラムに対応するプログラム情報の特定情報を端末から受信するステップと、
前記記憶装置から、前記受信するステップにおいて受信した前記特定情報により特定されるプログラム情報を読出すステップと、
前記プログラム情報を読出すステップにおいて読出したプログラム情報にしたがって、前記端末上でオプション値を入力するための入力フォーム情報を生成し、前記端末に送信するステップと、
当該オプション値を用いて、前記特定情報に対応する実行対象のプログラムを起動する処理を行なうステップとを実行させ、
前記入力フォーム情報を端末に送信するステップは、前記プログラム情報を読出すステップにおいて読出したプログラム情報に従って、前記端末上で動作するブラウザプログラムがオプション値を入力するための入力フォーム画面を生成するように、所定のマークアップ言語でマークアップされたマークアップ書類を生成するマークアップ書類作成ステップを含み、
前記プログラム情報は、１又は複数のオプション情報を含み、
前記オプション情報の各々は、
当該オプション情報に対応するオプションを説明するためのオプション名テキストと、
前記入力フォーム上でオプションを入力するためのＧＵＩ部品を特定するためのＧＵＩ部品特定情報と、
当該オプション情報に対応するオプションを、前記プログラム特定情報に対応するプログラムに渡す際のプログラムオプション名とを含み、
前記マークアップ書類生成ステップは、前記オプション情報の各々に対して、前記オプション名テキストと、前記ＧＵＩ部品特定情報により特定されるＧＵＩ部品とを並べて表示するオプション入力フォーム画面を生成するように、かつ、前記ＧＵＩ部品に、当該ＧＵＩ部品に対応するプログラムオプション名を名称として付すように、前記所定のマークアップ言語でマークアップされた前記マークアップ書類を生成するステップを含む、汎用ＧＵＩプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、コンピュータにおいてプログラムに引数を渡すための装置及び方法に関し、特に、いわゆるＧＵＩ（グラフィカル・ユーザ・インタフェース）を用いて対話型でプログラムに引数を渡すための装置及びコンピュータプログラムに関する。
【背景技術】
【０００２】
コンピュータにおいてプログラムを起動する際に、プログラムの動作の条件を変えることが頻繁に行なわれる。例えば、ある入力ファイルの内容を所定の方式で変換して他のファイルに出力する場合を考える。このとき、入力ファイルと出力ファイルとが固定されていると使いづらいので、プログラムの起動時に、入力ファイル名と出力ファイル名とを引数としてプログラムに渡すことがよく行なわれる。
【０００３】
従来、このようにプログラムにオプション値やパラメータ値（以下単に「オプション値」と呼ぶ。）等を渡す際には、所定のキーワードで引数を受取るように予めプログラムを設計しておき、起動時にいわゆるコマンド入力画面で、このプログラムを指定する文字列と、キーワード及び対応する引数の値とを続けてタイプする。コンピュータのオペレーティング・システム（ＯＳ）又はその上で動作するシェルと呼ばれるプログラムにより、この引数が、プログラム中で指定されたキーワードに対応する変数中に設定され、プログラムがその値に基づいて起動される。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、最近のコンピュータのオペレーションの主流は、ＧＵＩを用いたものになっている。プログラムのオプション値をＧＵＩにより設定する場合、当該プログラムの中で、ＧＵＩを設計し実装する必要がある。また、プログラムごとに別々のパラメータ設定画面を設計する必要がある。
【０００５】
一般にＧＵＩを用いたプログラミングでは、プログラマの負担が大きい。その結果、種々に条件を変えて実行することが想定されるようなプログラムを多数含む大型のシステム（例えば音声認識システム等）の開発に要する作業数が大きくなるという問題がある。また、プログラムごとにＧＵＩを設計するために、システム全体としてパラメータ設定のためのインタフェースが統一できず、システムが使いづらくなるという問題もある。
【０００６】
それゆえに本発明の目的は、ＧＵＩを用いてパラメータ設定をする際に、プログラマの負担を少なくすることが可能なプログラム開発環境を提供することである。
【０００７】
本発明の他の目的は、ＧＵＩを用いてパラメータ設定をする際に、プログラマの負担を少なくでき、かつ複数のプログラムで統一したインタフェースを実現することが可能なプログラム開発環境を提供することである。
【課題を解決するための手段】
【０００８】
本発明の第１の局面に係る汎用ＧＵＩ装置は、ＧＵＩを用いて、任意のプログラムのオプション値を設定するための汎用ＧＵＩ装置であって、プログラムごとに、プログラムの所在とオプション値を設定するための情報とを記録したプログラム情報を格納するプログラム情報記憶装置とともに用いられ、オプション値の設定対象のプログラムに対応するプログラム情報の特定情報を端末から受信するための受信手段と、記憶装置から、受信手段が受信した特定情報により特定されるプログラム情報を読出すための読出手段と、読出手段が読出したプログラム情報に従って、端末上でオプション値を入力するための入力フォーム情報を生成し、端末に送信するための入力フォーム情報生成手段と、端末から入力フォーム情報を用いて入力されたオプション値を、特定情報に対応するプログラムに渡すための受け渡し手段とを含む。
【０００９】
予めプログラム情報を準備し、プログラム情報記憶装置に記憶させておく。受信手段に対して、このプログラム情報を特定する情報を送信すると、読出手段が該当プログラム情報を読出し、その中のプログラム情報に従って、オプション値を入力するための入力フォーム情報を生成し、端末に送信する。端末でこの入力フォームを使用して入力したオプション値は、受け渡し手段によってプログラムに渡される。プログラム自体にオプション値をＧＵＩで設定するための処理を実装する必要はない。また、複数のプログラムで共通してこの汎用ＧＵＩ装置を使用できるので、結果としてオプション値設定のための画面は全てこの汎用ＧＵＩ装置によって統一された仕様で作成される。
【００１０】
好ましくは、入力フォーム情報生成手段は、読出手段が読出したプログラム情報に従って、端末上で動作するブラウザプログラムがオプション値を入力するための入力フォーム画面を生成するように、所定のマークアップ言語でマークアップされたマークアップ書類を生成するための、マークアップ書類生成手段を含む。
【００１１】
さらに好ましくは、マークアップ言語は、ＨＴＭＬ（HyperText  Markup  Language）であり、マークアップ書類生成手段は、端末上で動作するブラウザプログラムが入力フォーム画面を生成するように、ＨＴＭＬ言語でマークアップされたＨＴＭＬ書類を生成するための、ＨＴＭＬ書類生成手段を含む。
【００１２】
プログラム情報は、１又は複数のオプション情報を含み、オプション情報の各々は、当該オプション情報に対応するオプションを説明するためのオプション名テキストと、入力フォーム上でオプションを入力するためのＧＵＩ部品を特定するためのＧＵＩ部品特定情報とを含み、マークアップ書類生成手段は、オプション情報の各々に対して、オプション名テキストと、ＧＵＩ部品特定情報により特定されるＧＵＩ部品とを並べて表示するオプション入力フォームを生成することによりマークアップ書類を生成するための手段を含んでもよい。
【００１３】
好ましくは、オプション情報の各々は、当該オプション情報に対応するオプションを、プログラム特定情報に対応するプログラムに渡す際のプログラムオプション名を含み、マークアップ書類を生成するための手段は、ＧＵＩ部品に、当該ＧＵＩ部品に対応するプログラムオプション名を名称として付してオプション入力フォームのためのマークアップ書類を生成するための手段を含む。
【００１４】
さらに好ましくは、汎用ＧＵＩ装置は、コンピュータのシェルプログラムと通信可能であり、受け渡し手段は、端末から入力フォーム情報を用いて入力されたオプション値を、特定情報に対応するプログラムを起動するためのコマンドに、所定の形式で引数として付してシェルプログラムに渡すための手段を含む。
【００１５】
本発明の第２の局面に係る汎用ＧＵＩプログラムは、コンピュータにより実行されると、当該コンピュータを、上記したいずれかの汎用ＧＵＩ装置として動作させる。
【発明を実施するための最良の形態】
【００１６】
本発明は、複数のプログラムについて、共通に使用できる、パラメータ設定のための汎用のＧＵＩ装置を提供する。
【００１７】
図１に本発明の一実施の形態に係る汎用ＧＵＩ装置３２を採用した応用システム２０のブロック図を示す。図１に示す応用システム２０は、一つのコンピュータハードウェアにより実現してもよいし、互いにネットワーク接続された複数のコンピュータハードウェアにより実現してもよい。
【００１８】
図１を参照して、応用システム２０は、汎用ＧＵＩ装置３２と、汎用ＧＵＩ装置３２とネットワーク上のクライアントシステムとの間のインタフェースとなるウェブサーバ３０と、応用システム２０の中核機能を形成する複数のプログラム３８と、汎用ＧＵＩ装置３２又はコンソールからの、プログラム名と引数とを含むコマンドに応答して、複数のプログラム３８のうち指定されたものを、指定された引数付で起動する機能を持つシェルプログラム３６とを含む。
【００１９】
汎用ＧＵＩ装置３２は、ウェブサーバ３０を介してクライアントコンピュータとＧＵＩにより通信してパラメータを設定し、シェルプログラム３６にプログラム名とパラメータとを渡す機能を持つ。パラメータの設定については後述する。
【００２０】
シェルプログラム３６は、既に広く使用されている、一般的なコンピュータ上で動作するシェルプログラムでよい。またウェブサーバ３０も、一般的に使用されているプログラムを使用することができる。複数のプログラム３８は、応用システム２０の機能の実現を行なうための個々のプログラムである。複数のプログラム３８のうち少なくとも一部は、起動時に１又は複数のパラメータの設定が可能である。複数のプログラム３８自体は、ＧＵＩ機能は必要なく、入出力にはこの応用システム２０が動作するコンピュータのＯＳでの標準入出力を用いる設計でよい。
【００２１】
応用システム２０はさらに、汎用ＧＵＩ装置３２がプログラムのパラメータを設定する際に参照する複数のプログラム情報４０Ａ〜４０Ｎを格納したプログラム情報記憶装置３４を含む。本実施の形態では、プログラム情報記憶装置３４はハードディスク装置により実現される。プログラム情報４０Ａ〜４０Ｎは、それぞれ別々のプログラムのために予め準備されたものであり、ハードディスク装置内に別々のファイルとして格納される。
【００２２】
プログラム情報４０Ａ〜４０Ｎは、対応するプログラムのオプション値をＧＵＩにより設定するための情報を統一した書式に従って記述したものである。汎用ＧＵＩ装置３２は、あるプログラムの起動要求をウェブサーバ３０を介して受けると、そのプログラムに対応するプログラム情報をプログラム情報記憶装置３４から読出し、そのプログラム情報により設定されたオプション値をＧＵＩにより設定するためのＨＴＭＬテキストを作成してウェブサーバ３０を介してクライアントに送信する機能と、クライアントが設定した値をウェブサーバ３０経由で受け、そのオプション値を引数として当該プログラムを起動する機能とを有する。
【００２３】
図２に、プログラム情報４０Ａ〜４０Ｎを代表するプログラム情報４０のファイル形式を示す。図２を参照して、プログラム情報４０は、このプログラム情報４０に対応するプログラムのファイルシステム上の物理的な名称と記憶場所とをフルパス名によって指定する物理的プログラム名称フィールド５０と、プログラム名称をＧＵＩ表示する際に使用される表示用のプログラム名称のテキストを格納する表示用プログラム名称フィールド５２と、プログラムの機能をＧＵＩ画面上に表示する際のプログラム説明テキストを格納する説明テキストフィールド５４と、当該プログラムの作成者名を格納する作成者名フィールド５６とを含む。作成者名は、ＧＵＩ上での表示と、プログラムへのアクセスのセキュリティ管理のために使用される。
【００２４】
プログラム情報４０はさらに、プログラムのバージョン情報を格納するバージョン情報フィールド５８と、セキュリティ管理のレベル等、セキュリティ制約情報を記憶するセキュリティ制約情報フィールド６０と、このプログラム情報４０に対応するプログラムのオプション値を設定するために汎用ＧＵＩ装置３２が参照するオプション／パラメータエリア６２とを含む。オプション／パラメータエリア６２は、各々が一つのオプション値を設定するフォームを生成するために必要な情報を含む、複数のオプション／パラメータ情報７０を含む。
【００２５】
図３に、オプション／パラメータ情報７０の構成を示す。図３を参照して、オプション／パラメータ情報７０は、同じ種類のオプション又はパラメータ（以下単に「オプション」と呼ぶ。）をまとめてセクションとして管理する際のセクション名を格納するセクション名フィールド８０と、ＧＵＩ表示の際に使用されるセクション名テキストを格納する表示用セクション名フィールド８２と、このオプション／パラメータ情報７０により設定される、プログラムが受け付けるオプション名のテキストを格納するオプション名フィールド８４と、ＧＵＩ画面でオプション名を表示する際に使用される表示用のオプション名テキストを格納する表示用オプション名フィールド８６とを含む。例えばオプション名が「Lexicon」の場合、ＧＵＩ上でのその表示を「辞書」とする事等が考えられる。
【００２６】
オプション／パラメータ情報７０はさらに、オプション入力のためのヘルプのためのテキスト情報を格納するヘルプフィールド８８と、オプションのデフォルト値を記憶するデフォルト値フィールド９０と、オプションの値としてシステムが内部的にとりうる値（有効値）が列挙されたもの（例えば「Toshi1  ｜  Toshi2  |  Toshi3」等）を格納する有効値フィールド９２と、有効値フィールド９２に格納されたオプションの有効値をＧＵＩ表示する際に使用される表示用のオプション値（例えば「大阪  ｜  京都  ｜  東京」等）のフィールド９４と、オプション値が数値の場合に、オプション値の有効範囲を設定する情報を格納するための有効範囲フィールド９６とを含む。
【００２７】
有効範囲を設定する情報は、オプション値の最小値及び最大値と、それら最小値又は最大値を有効範囲に含むか否かを示す情報とを含む。最小値及び最大値は、他のオプション値を参照することもできる。
【００２８】
オプション／パラメータ情報７０はさらに、オプション値の型を示す型フィールド９８と、プログラム起動時にこのオプション値を「，」等の区切り文字で区切って複数回繰返して指定可能な場合の、その回数の範囲を示す複数指定回数フィールド１００と、このオプション値の設定が必須か否かを示す情報を格納する必須指定フィールド１０２と、有効値フィールド９２が指定されている場合に、その中の値をＧＵＩ画面でどのような形式のＧＵＩ部品で表示するかを指定する表示タイプフィールド１０４とを含む。ここでＧＵＩ部品とは、ＨＴＭＬ書類をブラウザが解釈して表示する際に所定の表示形式で表示する画面上の要素を指す。たとえばボタン、テキストフィールド、ラジオボタン、チェックボタン、ドロップダウンリスト等がある。ＧＵＩ部品によっては特有の機能（多数の項目から一つの項目を選択する、複数の項目を同時に選択する、所定のイベントを発生させる、など）を持つものがある。様々な種類のＧＵＩ部品が利用可能である。
【００２９】
オプション値の型としては、文字列、整数、実数、ＹＥＳ／ＮＯ、ファイル指定等が挙げられる。複数指定回数フィールド１００には、例えば繰返しを２回以上５回以下の範囲で許す場合、「２−５」という形式で指定する。表示タイプフィールド１０４で指定可能な型は、チェックボックス、ラジオボタン、ドロップダウンリスト等である。
【００３０】
本実施の形態に係る汎用ＧＵＩ装置３２は、コンピュータ上で動作するプログラムにより実現される。その制御構造を図４にフローチャート形式で示す。なお、クライアントユーザは、あるプログラムを起動しようとする場合、図４に示すプログラムの所在を示す所定のＵＲＬ（Uniform  Resource  Locator）に、起動しようとするプログラムに対応するプログラム情報を引数として指定してウェブサーバ３０にｈｔｔｐ（HyperText Transfer Protocol）要求を送る。例えばこのプログラムを起動するためのファイル名が「UniversalGUI.html」、このプログラムが存在しているコンピュータ名が「host」、プログラム情報のファイル名の引数名が「programInformation」、起動しようとするプログラムに対応するプログラム情報ファイルへのパスが「/usr/local/progInfo/001.info」であるものとすると、ユーザはブラウザ画面のＵＲＬ指定フィールドに「http://host/UniversalGUI.html?programInformation=/usr/local/progInfo/001.info」と入力する。
【００３１】
図４を参照して、汎用ＧＵＩ装置３２は、ウェブサーバ３０からメッセージを受信して、当該メッセージがプログラムの起動を要求するメッセージ、すなわち当該プログラムへのパラメータ設定を要求するものか否かを判定するステップ１２０を含む。ステップ１２０での判定結果がＹＥＳであれば処理はステップ１２２に進み、さもなければ制御はステップ１３０に進む。
【００３２】
ステップ１２２では、受取ったメッセージにプログラム情報ファイル名の指定が引数として付されているか否かについて判定する。引数が付されていればステップ１２３に、さもなければステップ１２８に、それぞれ進む。
【００３３】
ステップ１２３では、引数で指定されたプログラム情報ファイルを読出す。ステップ１２４で、読出されたプログラム情報に従って、パラメータ設定のための画面をクライアントのブラウザ上に表示するＨＴＭＬテキストを合成し、ステップ１２６でウェブサーバ３０に出力する。この処理により、ステップ１２４で合成されたＨＴＭＬテキストはウェブサーバ３０を経由してクライアントに返信される。クライアントで動作しているブラウザプログラムは、このＨＴＭＬテキストを分析し、パラメータ設定画面を表示する。パラメータ設定画面の一例を図５に示す。パラメータ設定画面の詳細については後述する。
【００３４】
ステップ１２４でのＨＴＭＬテキスト合成では、ステップ１２３で読出されたプログラム情報が利用される。図３を参照して、表示用オプション名フィールド８６に格納されたテキストと、パラメータ入力のためのＧＵＩ部品を指定する記述と、ヘルプフィールド８８に格納されたテキストとを並べて記載することにより、あるオプションのための入力フォームができる。１行に１パラメータの入力フォームを記載した表を作成することにより、全パラメータの入力フォームを作成できる。なお、セクション名フィールド８０の内容が同じパラメータについては、表中に１行として記載し、その１行中にさらにそのセクションに属するオプションの入力フォームを作成すればよい。
【００３５】
パラメータ入力のためのＧＵＩ部品の名称は、オプション名フィールド８４の内容と同じものにしておくとよい。ＧＵＩ部品として、通常はテキスト入力フィールドを、有効値フィールド９２に値が指定されている場合には表示タイプフィールド１０４により指定される種類のＧＵＩ部品を、それぞれ使用する。
【００３６】
また、このＨＴＭＬ合成では、図３のデフォルト値フィールド９０の内容を、各入力フィールドの値に設定しておくと、画面にはデフォルトの値が表示されるので、ユーザには便利である。
【００３７】
図５を参照して、パラメータ設定画面１５０について説明する。パラメータ設定画面１５０は、指定されたプログラムに関する情報を表示するプログラム情報表示部１５２と、設定ボタン１５４と、中止（キャンセル）ボタン１５６と、パラメータ設定領域１５８とを含む。
【００３８】
パラメータ設定領域１５８は各セクションに属するパラメータ群に分割されている。例えば「テストセット」セクション１６０と、「入力音声」セクション１６２とは、それぞれ別々の複数のパラメータの設定領域を含んでいる。各パラメータ設定領域は、パラメータ名称１７０，１７２等と、パラメータ設定のためのＧＵＩ部品１８０，１８２等と、ヘルプフィールド１９０とを含む。これらのうち、セクション名、パラメータ名等のテキスト情報は、図２及び図３に示すオプション／パラメータ情報７０から抽出できる。
【００３９】
再び図４を参照して、ステップ１２２においてプログラム情報ファイル名の指定がないと判定された場合、ステップ１２８では、クライアントにファイル選択のためのＨＴＭＬテキストを準備し、ステップ１２６に進んでクライアントに当該ＨＴＭＬテキストを送信する。
【００４０】
ステップ１２０でメッセージがパラメータ設定画面の要求でないと判定された場合、ステップ１３０に進む。パラメータ設定画面の要求でない場合とは、ステップ１２４で準備されたＨＴＭＬテキストにより表示されたパラメータ設定の画面を使用したクライアントからの入力を受信した場合である。パラメータ設定画面には、設定ボタンと中止ボタンとがある。ステップ１３０では、クライアントからの入力が中止（キャンセル）の指示か否かを判定する。中止の指示であればステップ１２８に進み、ファイル選択画面をクライアントに送信する。中止の指示でない場合、すなわちパラメータを入力された値に設定する指示の場合には、入力されたパラメータの値が妥当か否かをステップ１３２で判定する。この判定にはステップ１２３で読出したプログラム情報ファイルの情報を使用する。
【００４１】
すなわち、図３を参照して、必須指定フィールド１０２によって必須であることが指定されているにもかかわらず当該オプション値が設定されていない場合には、誤りとする。有効値フィールド９２が設定されている場合、入力されたオプション値がそのうちの一つか否かを判定する。また型フィールド９８の内容が数値を示すものである場合には、有効範囲フィールド９６を利用して数値の範囲をチェックする。さらに、複数指定回数フィールド１００の指定があれば、オプション値の繰返し回数が、複数指定回数フィールド１００により指定された範囲であるか否かを判定する。
【００４２】
図４を参照して、ステップ１３４では、ステップ１３２で行なった処理の結果、上記した誤りが一つでもあるか否かを判定する。一つでもあれば、ステップ１３６に進みエラー表示のＨＴＭＬを合成してステップ１２６に進む。このエラー表示のＨＴＭＬは、ステップ１２４で作成されるものと同様で、エラー表示が追加され、また各フィールドの値としてユーザが入力した値を表示するようにする。またユーザにエラー個所が分かりやすいよう、当該エラーが生じたパラメータの表示を特別な色、例えば赤で表示するようにしてもよい。
【００４３】
ステップ１３４の処理の結果、オプション値がすべて妥当であると判定された場合、ステップ１３８に進む。ステップ１３８では、シェルプログラム３６（図１参照）に対して、引数を受け渡し、合わせて起動対象のプログラムを指定する。具体的には、次のような形式のコマンドをシェルプログラム３６に与える。
【００４４】
物理的なプログラム名  -<オプション名>=<オプション値>  [-<オプション名>=<オプション値>］
なおここで、「[-<オプション名>=<オプション値>]」は、このオプションの指定が任意であることを示す。
【００４５】
このコマンドを受けたシェルプログラム３６は、従来のシステムでコマンド入力画面又は何らかのプログラムからコマンドを受信した場合と同様、「物理的なプログラム名」で指定されたプログラムに、指定された引数を引き渡す形で当該プログラムを起動する。
【００４６】
プログラム起動後は、ステップ１３９でログウィンドウをクライアントに表示させ、以後、ステップ１４０でプログラムから何らかのメッセージが出力されるたびにクライアントのログウィンドウの内容を更新する。このとき、予め指定された（又はオプションで指定された）ログファイルにログを書き出す。ログ表示画面の一例を図６に示す。
【００４７】
図６に示すように、このログ表示画面２００は、ログ表示領域２１０を有する。ログ表示領域２１０には、プログラムのメッセージが表示される。内容がこのログ表示領域２１０を超えると、ログ表示領域２１０の内容をスクロール表示することが可能になる。
【００４８】
起動したプログラムが終了したか否か判定し（ステップ１４２）、終了すると、ステップ１２８でファイルの選択を行なうためのＨＴＭＬテキストを作成し、クライアントに送信する。こうした処理を、システムから終了のシグナルを受けるまで繰返す。
［コンピュータによる実現］
この実施の形態のシステムは、上記したようにコンピュータハードウェアと、そのコンピュータハードウェアにより実行されるプログラムと、コンピュータハードウェアに格納されるデータとにより実現される。図７はこのコンピュータシステム３３０の外観を示し、図８はコンピュータシステム３３０の内部構成を示す。
【００４９】
図７を参照して、このコンピュータシステム３３０は、ＦＤ（フレキシブルディスク）ドライブ３５２及びＣＤ−ＲＯＭ（コンパクトディスク読出専用メモリ）ドライブ３５０を有するコンピュータ３４０と、キーボード３４６と、マウス３４８と、モニタ３４２とを含む。
【００５０】
図８を参照して、コンピュータ３４０は、ＦＤドライブ３５２及びＣＤ−ＲＯＭドライブ３５０に加えて、ＣＰＵ（中央処理装置）３５６と、ＣＰＵ３５６、ＦＤドライブ３５２及びＣＤ−ＲＯＭドライブ３５０に接続されたバス３６６と、ブートアッププログラム等を記憶する読出専用メモリ（ＲＯＭ）３５８と、バス３６６に接続され、プログラム命令、システムプログラム、及び作業データ等を記憶するランダムアクセスメモリ（ＲＡＭ）３６０とを含む。コンピュータシステム３３０はさらに、プリンタ３４４を含んでいる。コンピュータ３４０はさらに、ローカルエリアネットワーク（ＬＡＮ）への接続を提供するネットワークアダプタボード３６８を含む。
【００５１】
コンピュータシステム３３０に汎用ＧＵＩ装置３２としての動作を行なわせるためのコンピュータプログラムは、ＣＤ−ＲＯＭドライブ３５０又はＦＤドライブ３５２に挿入されるＣＤ−ＲＯＭ３６２又はＦＤ３６４に記憶され、さらにハードディスク３５４に転送される。又は、プログラムはネットワークを通じてコンピュータ３４０に送信されハードディスク３５４に記憶されてもよい。プログラムは実行の際にＲＡＭ３６０にロードされる。ＣＤ−ＲＯＭ３６２から、ＦＤ３６４から、又はネットワークを介して、直接にＲＡＭ３６０にプログラムをロードしてもよい。
【００５２】
図４に制御構造を示した汎用ＧＵＩプログラムは、コンピュータ３４０にこの実施の形態の汎用ＧＵＩ装置３２としての動作を行なわせる複数の命令を含む。これら命令の実行に必要な基本的機能のいくつかはコンピュータ３４０上で動作するＯＳ又はサードパーティのプログラム、若しくはコンピュータ３４０にインストールされる各種ツールキットのモジュールにより提供される。従って、このプログラムはこの実施の形態のシステム及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能又は「ツール」を呼出すことにより、上記した汎用ＧＵＩ装置３２を実現することができる命令のみを含んでいればよい。コンピュータシステム３３０自体の動作は周知であるので、ここでは繰返さない。
【００５３】
以上のように本実施の形態に係る汎用ＧＵＩ装置は、プログラムのオプション等に関する記述を統一した記法でプログラム情報ファイルに記述しておくことで、ＧＵＩによってそれらの値を設定することができる。複数のプログラムのプログラム情報ファイルに対し共通の汎用ＧＵＩ装置又はプログラムを用意することで，ＧＵＩ環境を一つに統一できる。プログラムを追加したり更新したりする場合にも、汎用ＧＵＩ装置の構成を変更する必要はない。従って、プログラマがオプション値の設定のためのＧＵＩを実装する必要がなくなり、プログラマの負担が軽減される。また、システムのインタフェースを統一することができる。
【００５４】
なお、上記実施の形態では、汎用ＧＵＩ装置３２とウェブサーバ３０（図１参照）とを別々のモジュールとして構成したが、汎用ＧＵＩ装置３２にウェブサーバの機能を持たせ、特定のポート番号に到着したメッセージのみを入力とするようにしてもよい。
【００５５】
また、上記実施の形態では、汎用ＧＵＩ装置３２をネットワーク上のホスト上で稼動させ、ネットワーク上のクライアントからアクセス可能とするため、ウェブサーバと組合せた。しかし本発明はそのような実施の形態には限定されず、スタンドアロン形式で動作するような装置又はプログラムであってもよい。
【００５６】
さらに、上記実施の形態では、オプション値設定画面をクライアントで表示させるために、ＨＴＭＬテキストを作成した。しかし本発明はそのような実施の形態には限定されない。例えばブラウザによる解釈なしで、独立して動作するプログラムを生成し、クライアントに送信してオプション値の設定を行なうようにしてもよい。
【００５７】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内でのすべての変更を含む。
【図面の簡単な説明】
【００５８】
【図１】本発明の一実施の形態に係る応用システム２０のブロック図である。
【図２】プログラム情報ファイルの構造を模式的に示す図である。
【図３】オプション／パラメータ情報の構造を模式的に示す図である。
【図４】汎用ＧＵＩ装置３２を実現するプログラムの制御構造を示すフローチャートである。
【図５】汎用ＧＵＩ装置３２により生成されるパラメータ設定画面の一例を示す図である。
【図６】ログ表示画面の一例を示す図である。
【図７】図１に示す応用システム２０を実現するコンピュータハードウェアの外観図である。
【図８】図７に示すコンピュータシステムのブロック図である。
【符号の説明】
【００５９】
２０  応用システム、３０  ウェブサーバ、３２  汎用ＧＵＩプログラム、３４  プログラム情報記憶装置、３６  シェルプログラム、３８  複数のプログラム、４０，４０Ａ〜４０Ｎ  プログラム情報、５０  物理的プログラム名称フィールド、５２  表示用プログラム名称フィールド、５４  説明テキストフィールド、６２  オプション／パラメータエリア、７０  オプション／パラメータ情報、８４  オプション名フィールド、９２  有効値フィールド、９６  有効範囲フィールド、９８  型フィールド、１００  複数指定回数フィールド、１０２  必須指定フィールド、１０４  表示タイプフィールド、１５０  パラメータ設定画面、２００  ログ表示画面、２１０  ログ表示領域
【図１】
0004715104.tif 000002
【図２】
0004715104.tif 000003
【図３】
0004715104.tif 000004
【図４】
0004715104.tif 000005
【図５】
0004715104.tif 000006
【図６】
0004715104.tif 000007
【図７】
0004715104.tif 000008
【図８】
0004715104.tif 000009