(57)【要約】【課題】画面表示／入出力部品の設計、配置、変更を効率よく、かつ統一感のある認知しやすいＧＵＩ画面のデザインを容易にする。【解決手段】画面表示／入出力部品の部品同士の関連、階層などの組み合わせ構造の設計を支援する装置（１１）と、この装置（１１）で設計された表示部品の階層構造および属性情報を基に、画面表示／入出力部品の実際の画面配置座標を計算する装置（１２）と、装置（１１）と装置（１２）で設計および計算された画面表示／入出力部品の各種属性の設定変更を支援する装置（１３）とを機能分離させる。  データベース（１４）は各装置でそれぞれの機能を実行する上で必要な画面表示／入出力部品の情報を登録および変更可能にする。【選択図】図１
2009009473.tif 000002
【特許請求の範囲】
【請求項１】
画面表示／入出力部品の設計を支援するＧＵＩの設計装置であって、
画面表示／入出力部品の部品同士の関連、階層などの組み合わせ構造の設計を支援する装置（１１）と、
前記装置（１１）で設計された表示部品の階層構造および属性情報を基に、画面表示／入出力部品の実際の画面配置座標を計算する装置（１２）と、
前記装置（１１）と装置（１２）で設計および計算された画面表示／入出力部品の各種属性の設定変更を支援する装置（１３）と、
前記各装置でそれぞれの機能を実行する上で必要な画面表示／入出力部品の情報を登録および変更可能にしたデータベース（１４）と、
を備えたことを特徴とするＧＵＩの設計装置。
【請求項２】
前記装置（１１）は、
前記データベース（１４）に予め用意しておく表示部品定義データ（Ａ）の表示画面からＧＵＩ画面に配置しようとする画面表示／入出力部品の選択を受け付ける手段と、
選択された画面表示／入出力部品について、前記データベース（１４）に予め用意しておく階層構造設計データ（Ｂ）の中から、親となる画面表示／入出力部品を選択する手段と、
親となる画面表示／入出力部品が選択されたとき、子となる画面表示／入出力部品を親となる画面表示／入出力部品が属する階層構造設計データ（Ｂ）の木構造に組み込む手段を備えたことを特徴とする請求項１に記載のＧＵＩの設計装置。
【請求項３】
前記装置（１２）は、
前記装置（１１）により選択された画面表示／入出力部品について、前記データベース（１４）に予め用意しておく表示部品属性設定データ（Ｃ）から表示部品サイズの大きさを計算する手段と、
表示部品サイズの大きさを自動計算した画面表示／入出力部品について、前記階層構造設計データ（Ｂ）から表示部品の先頭座標を計算する手段と、
表示部品サイズの大きさを自動計算した画面表示／入出力部品と同じ系列の画面表示／入出力部品の集合より表示部品の幅の最大値を求め、この最大値に同じ系列の表示部品同士の大きさを合わせるためのサイズを計算する手段を備えたことを特徴とする請求項１に記載のＧＵＩの設計装置。
【請求項４】
前記装置（１３）は、
前記階層構造設計データ（Ｂ）を基に画面表示される画面表示／入出力部品のうち、属性を変更しようとする画面表示／入出力部品が選択されたとき、選択された画面表示／入出力部品の属性リストを前記表示部品属性設定データ（Ｃ）から選択して表示する手段と、
前記属性リストから変更しようとする属性が選択されたとき、前記データベース（１４）に予め用意しておくメタデータ（Ｄ）から属性変更モジュールを呼び出す手段と、
前記属性変更モジュールに対して、前記表示部品属性設定データ（Ｃ）に対して属性の変更処理を行う手段を備えたことを特徴とする請求項１に記載のＧＵＩの設計装置。
【請求項５】
前記装置（１１）、（１２）、（１３）および（１４）は、用途別の機能を持った装置（２０）にインポートしておく構成を特徴とする請求項１〜４に記載のＧＵＩの設計装置。
【請求項６】
前記装置（１１）、（１３）および（１４）は、用途別の機能を持った装置（２０）にインポートしておき、前記装置（１２）は前記装置（２０）の画面表示装置（２１）にインポートしておく構成を特徴とする請求項１〜４に記載のＧＵＩの設計装置。
【請求項７】
画面表示／入出力部品の設計を支援するＧＵＩの設計方法であって、
画面表示／入出力部品の部品同士の関連、階層などの組み合わせ構造の設計を支援する装置（１１）と、
前記装置（１１）で設計された表示部品の階層構造および属性情報を基に、画面表示／入出力部品の実際の画面配置座標を計算する装置（１２）と、
前記装置（１１）と装置（１２）で設計および計算された画面表示／入出力部品の各種属性の設定変更を支援する装置（１３）と、
前記各装置でそれぞれの機能を実行する上で必要な画面表示／入出力部品の情報を登録および変更可能にしたデータベース（１４）とを備え、
前記装置（１１）は、
前記データベース（１４）に予め用意しておく表示部品定義データ（Ａ）の表示画面からＧＵＩ画面に配置しようとする画面表示／入出力部品の選択を受け付ける手順と、
選択された画面表示／入出力部品について、前記データベース（１４）に予め用意しておく階層構造設計データ（Ｂ）の中から、親となる画面表示／入出力部品を選択する手順と、
親となる画面表示／入出力部品が選択されたとき、子となる画面表示／入出力部品を親となる画面表示／入出力部品が属する階層構造設計データ（Ｂ）の木構造に組み込む手順を有し、
前記装置（１２）は、
前記装置（１１）により選択された画面表示／入出力部品について、前記データベース（１４）に予め用意しておく表示部品属性設定データ（Ｃ）から表示部品サイズの大きさを計算する手順と、
表示部品サイズの大きさを自動計算した画面表示／入出力部品について、前記階層構造設計データ（Ｂ）から表示部品の先頭座標を計算する手順と、
表示部品サイズの大きさを自動計算した画面表示／入出力部品と同じ系列の画面表示／入出力部品の集合より表示部品の幅の最大値を求め、この最大値に同じ系列の表示部品同士の大きさを合わせるためのサイズを計算する手順を有し、
前記装置（１３）は、
前記階層構造設計データ（Ｂ）を基に画面表示される画面表示／入出力部品のうち、属性を変更しようとする画面表示／入出力部品が選択されたとき、選択された画面表示／入出力部品の属性リストを前記表示部品属性設定データ（Ｃ）から選択して表示する手順と、
前記属性リストから変更しようとする属性が選択されたとき、前記データベース（１４）に予め用意しておくメタデータ（Ｄ）から属性変更モジュールを呼び出す手順と、
前記属性変更モジュールに対して、前記表示部品属性設定データ（Ｃ）に対して属性の変更処理を行う手順を有することを特徴とするＧＵＩの設計方法。
【請求項８】
請求項７に記載のＧＵＩの設計方法における処理手順を、コンピュータで実行可能に構成したことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータのアプリケーションの開発支援装置および開発支援方法に係り、特にＧＵＩ（グラフィカルユーザインターフェース）の設計装置および設計方法に関する。
【背景技術】
【０００２】
一般に、ＧＵＩの開発は、以下に工程を示すように、使用するプログラミング言語の仕様にしたがってプログラミングを行うことによって、ソースプログラムを生成した後、コンパイルを行い、実行イメージファイルを作成している。
【０００３】
（工程１）画面ビルダと呼ばれるツールなどを利用して、仕様書を見ながら画面表示／入出力部品のレイアウト（画面表示／入出力部品の組み合わせ構造）を設計する。
【０００４】
（工程２）レイアウトした画面表示／入出力部品とアプリケーションプログラムを連携させるためのプログラムを記述する。
【０００５】
（工程３）実行イメージファイルを作成する。
【０００６】
これら工程における画面設計や連携プログラムの作成を簡易にしようとする開発支援装置は、種々のものが提案されている（例えば、特許文献１、特許文献２参照）。
【特許文献１】特開２００７−４８３０９号公報
【特許文献２】特許２９８８９１１号
【発明の開示】
【発明が解決しようとする課題】
【０００７】
前記の工程１において、画面ビルダと呼ばれるツールなどを利用して、画面表示／入出力部品を設計、配置していくにあたって以下のような問題点が存在する。
【０００８】
・画面表示／入出力部品の位置決め、大きさの決定などを一つ一つ、手作業で行っていく必要がある。
【０００９】
・画面表示／入出力部品の属性変更や、同じ画面内に並べる部品の追加削除による位置の調整を一つ一つ手作業で、行っていく必要がある。
【００１０】
・統一感のある認知しやすい画面レイアウトを作成しようとした場合、デザインに関する専門性が必要になる。
【００１１】
本発明の目的は、画面表示／入出力部品の設計、配置、変更を効率よく、かつ統一感の
ある認知しやすいＧＵＩ画面のデザインを容易にするＧＵＩの設計装置、設計方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１２】
本発明は、前記の課題を解決するため、画面表示／入出力部品の組み合わせ構造の設計と、実際に配置される画面表示／入出力部品の座標計算と、画面表示／入出力部品の属性情報設定とを機能分離させたもので、以下の装置、方法およびプログラムを特徴とする。
【００１３】
（装置の発明）
（１）画面表示／入出力部品の設計を支援するＧＵＩの設計装置であって、
画面表示／入出力部品の部品同士の関連、階層などの組み合わせ構造の設計を支援する装置（１１）と、
前記装置（１１）で設計された表示部品の階層構造および属性情報を基に、画面表示／入出力部品の実際の画面配置座標を計算する装置（１２）と、
前記装置（１１）と装置（１２）で設計および計算された画面表示／入出力部品の各種属性の設定変更を支援する装置（１３）と、
前記各装置でそれぞれの機能を実行する上で必要な画面表示／入出力部品の情報を登録および変更可能にしたデータベース（１４）と、
を備えたことを特徴とする。
【００１４】
（２）前記装置（１１）は、
前記データベース（１４）に予め用意しておく表示部品定義データ（Ａ）の表示画面からＧＵＩ画面に配置しようとする画面表示／入出力部品の選択を受け付ける手段と、
選択された画面表示／入出力部品について、前記データベース（１４）に予め用意しておく階層構造設計データ（Ｂ）の中から、親となる画面表示／入出力部品を選択する手段と、
親となる画面表示／入出力部品が選択されたとき、子となる画面表示／入出力部品を親となる画面表示／入出力部品が属する階層構造設計データ（Ｂ）の木構造に組み込む手段を備えたことを特徴とする。
【００１５】
（３）前記装置（１２）は、
前記装置（１１）により選択された画面表示／入出力部品について、前記データベース（１４）に予め用意しておく表示部品属性設定データ（Ｃ）から表示部品サイズの大きさを計算する手段と、
表示部品サイズの大きさを自動計算した画面表示／入出力部品について、前記階層構造設計データ（Ｂ）から表示部品の先頭座標を計算する手段と、
表示部品サイズの大きさを自動計算した画面表示／入出力部品と同じ系列の画面表示／入出力部品の集合より表示部品の幅の最大値を求め、この最大値に同じ系列の表示部品同士の大きさを合わせるためのサイズを計算する手段を備えたことを特徴とする。
【００１６】
（４）前記装置（１３）は、
前記階層構造設計データ（Ｂ）を基に画面表示される画面表示／入出力部品のうち、属性を変更しようとする画面表示／入出力部品が選択されたとき、選択された画面表示／入出力部品の属性リストを前記表示部品属性設定データ（Ｃ）から選択して表示する手段と、
前記属性リストから変更しようとする属性が選択されたとき、前記データベース（１４）に予め用意しておくメタデータ（Ｄ）から属性変更モジュールを呼び出す手段と、
前記属性変更モジュールに対して、前記表示部品属性設定データ（Ｃ）に対して属性の変更処理を行う手段を備えたことを特徴とする。
【００１７】
（５）前記装置（１１）、（１２）、（１３）および（１４）は、用途別の機能を持った装置（２０）にインポートしておく構成を特徴とする。
【００１８】
（６）前記装置（１１）、（１３）および（１４）は、用途別の機能を持った装置（２０）にインポートしておき、前記装置（１２）は前記装置（２０）の画面表示装置（２１）にインポートしておく構成を特徴とする。
【００１９】
（方法の発明）
（７）画面表示／入出力部品の設計を支援するＧＵＩの設計方法であって、
画面表示／入出力部品の部品同士の関連、階層などの組み合わせ構造の設計を支援する装置（１１）と、
前記装置（１１）で設計された表示部品の階層構造および属性情報を基に、画面表示／入出力部品の実際の画面配置座標を計算する装置（１２）と、
前記装置（１１）と装置（１２）で設計および計算された画面表示／入出力部品の各種属性の設定変更を支援する装置（１３）と、
前記各装置でそれぞれの機能を実行する上で必要な画面表示／入出力部品の情報を登録および変更可能にしたデータベース（１４）とを備え、
前記装置（１１）は、
前記データベース（１４）に予め用意しておく表示部品定義データ（Ａ）の表示画面からＧＵＩ画面に配置しようとする画面表示／入出力部品の選択を受け付ける手順と、
選択された画面表示／入出力部品について、前記データベース（１４）に予め用意しておく階層構造設計データ（Ｂ）の中から、親となる画面表示／入出力部品を選択する手順と、
親となる画面表示／入出力部品が選択されたとき、子となる画面表示／入出力部品を親となる画面表示／入出力部品が属する階層構造設計データ（Ｂ）の木構造に組み込む手順を有し、
前記装置（１２）は、
前記装置（１１）により選択された画面表示／入出力部品について、前記データベース（１４）に予め用意しておく表示部品属性設定データ（Ｃ）から表示部品サイズの大きさを計算する手順と、
表示部品サイズの大きさを自動計算した画面表示／入出力部品について、前記階層構造設計データ（Ｂ）から表示部品の先頭座標を計算する手順と、
表示部品サイズの大きさを自動計算した画面表示／入出力部品と同じ系列の画面表示／入出力部品の集合より表示部品の幅の最大値を求め、この最大値に同じ系列の表示部品同士の大きさを合わせるためのサイズを計算する手順を有し、
前記装置（１３）は、
前記階層構造設計データ（Ｂ）を基に画面表示される画面表示／入出力部品のうち、属性を変更しようとする画面表示／入出力部品が選択されたとき、選択された画面表示／入出力部品の属性リストを前記表示部品属性設定データ（Ｃ）から選択して表示する手順と、
前記属性リストから変更しようとする属性が選択されたとき、前記データベース（１４）に予め用意しておくメタデータ（Ｄ）から属性変更モジュールを呼び出す手順と、
前記属性変更モジュールに対して、前記表示部品属性設定データ（Ｃ）に対して属性の変更処理を行う手順を有することを特徴とする。
【００２０】
（プログラムの発明）
（８）上記（７）に記載のＧＵＩの設計方法における処理手順を、コンピュータで実行可能に構成したことを特徴とする。
【発明の効果】
【００２１】
以上のとおり、本発明によれば、画面表示／入出力部品の組み合わせ構造の設計と、実際に配置される画面表示／入出力部品の座標計算と、画面表示／入出力部品の属性情報設定とを機能分離させたため、画面表示／入出力部品の設計、配置、変更を効率よく、かつ統一感のある認知しやすいＧＵＩ画面のデザインが容易に行うことができる。
【発明を実施するための最良の形態】
【００２２】
図１は、本発明の実施形態を示すＧＵＩ設計装置の構成図であり、各装置の機能はコンピュータ資源とこれを利用したソフトウェアで実現される。
【００２３】
ＧＵＩの画面デザインを設計する画面設計装置１０は、装置１１〜１４に機能的に分離構成される。表示部品（画面表示／入出力部品）の組み合わせ構造を設計する装置１１は、表示部品同士の関連、階層などの、表示部品の組み合わせ構造の設計を支援する機能構成にされる。表示部品の配置座標を計算する装置１２は、表示部品の組み合わせ構造を設計する装置１１で設計された表示部品の階層構造および属性情報を基に、表示部品の実際の画面配置座標を計算する機能構成にされる。表示部品の属性情報を設定する装置１３は、画面を構成する表示部品の各種属性の設定変更を支援する機能構成にされる。データベース１４は、各装置１１〜１３でそれぞれの機能を実行する上で必要な表示部品の情報を登録および変更可能にする。
【００２４】
用途別の機能を持った装置２０は、各種用途、目的に沿ったアプリケーションを提供する装置であり、この装置がもつ画面表示装置２１がＧＵＩ部分になり、この部分には画面設計装置１０でＧＵＩ設計された表示部品の配置情報３０として提供される。
【００２５】
このような設計装置構成により、装置１１による表示部品のレイアウトの設計と、装置１２による実際に配置される表示部品の座標計算と、装置１３による表示部品の属性情報設定とを分離することにより、情報のまとまりを明確にし、統一感のある認知しやすい画面のデザインを効率的に行えるようにする。この画面設計装置１０を使用したＧＵＩの設計例を以下に説明する。
【００２６】
（１）表示部品の組み合わせ構造を設計する装置１１は、表示部品の同士の関連、階層などの、組み合わせ構造の設計を行う。構造の設計手法は、グラフィカルに行い、図２に例を示すように階層構造（ツリー形式）で表現する。
【００２７】
この階層構造の表現処理手順を図３に示す。同図において、ＧＵＩ画面に配置したい表示部品の選択を受け付ける（Ｓ１）。このときの表示部品の選択操作は、データベース１４に予め用意しておく表示部品定義データＡの表示画面について選択可能とするか、表示部品定義データＡに登録されていない表示部品はそれが新規作成されることで表示部品定義データＡに追加登録される。
【００２８】
表示部品が選択されたとき、ＧＵＩ画面上に既に組み込まれた表示部品の中から、親となる表示部品を選択する（Ｓ２）。この表示部品の親子（グループ）関係は、データベース１４に予め用意しておく階層構造設計データＢの表示画面から選択可能とするか、階層構造設計データＢに登録されていない表示部品はそれが新規作成されたときに階層構造設計データＢに追加登録する。
【００２９】
親となる表示部品が選択されたとき、子となる表示部品を親表示部品が属する階層構造設計データＢの木構造に組み込む（Ｓ３）。
【００３０】
以上の処理Ｓ１〜Ｓ３は、画面に配置しようとする表示部品の全てについて終了するまで繰り返し、表示部品の組み合わせ構造を設計する。
【００３１】
（２）表示部品の配置座標を計算する装置１２は、表示部品の実際の表示座標と大きさを設計する。表示部品の表示座標と大きさの調整は、前項（１）で設計した、階層構造設計データＢより得られる階層／グループの情報と、表示部品が持つ部品属性設定データから計算する。その際の計算ルール実行に供する階層構造の表示例を図４に示し、その座標位置／大きさの設計処理手順を図５に示す。
【００３２】
図５において、装置１１により表示部品が選択されたとき（Ｓ１１）、当該表示部品サイズの大きさを自動計算する（Ｓ１２）。この部品サイズ計算は、データベース１４に予め用意しておく表示部品属性設定データＣから自動的に取得するか、表示部品属性設定データＣに登録されていない表示部品属性データはそれを新規設定するときに表示部品属性設定データＣに追加登録する。
【００３３】
表示部品サイズの大きさを自動計算した後、階層構造設計データＢから表示部品の先頭座標を計算する（Ｓ１３）。この処理は、例えば、図４に示す階層構造表示画面において、表示部品ＰＸの先頭座標（水平方向：Ｘ座標）を求める。
【００３４】
次いで、階層構造設計データＢを参照し、同じ系列の表示部品の集合より幅の最大値を求める（Ｓ１４）。この処理は、例えば、図４に示す表示部品ＰＸと同じ系列の表示部品ＰＹがあるとき、これらがもつ幅の最大値（ここでは表示部品ＰＹの幅）を求める。求めた幅の最大値で表示部品サイズの大きさを自動計算（Ｓ１５）、すなわち表示部品同士の大きさを合わせるためのサイズを求める。
【００３５】
以上の処理Ｓ１１〜Ｓ１５は、画面に配置しようとする表示部品の全てについて終了するまで繰り返し、表示部品の表示座標と大きさを設計する。
【００３６】
したがって、表示部品の位置決め、大きさの決定などを、設定された属性および表示部品の組み合わせより、自動的に計算することにより、表示部品の配置作業の効率化と、統一感のある認知しやすい画面が表示可能となる。
【００３７】
（３）表示部品の属性情報を設定する装置１３は、表示部品がもつ属性情報、レイアウトに関する情報を、おのおのデータタイプによらず、統一的に設定変更を可能にする。図６に表示部品の属性情報の例を示し、表示部品の配置位置、レイアウト、間隔、背景等の値が設定される。また、変更後に前項（２）を自動実行することで、新設定値での表示座標の再計算を行う。設定されるデータ型、属性値の表示名はそれぞれ異なるが、図６の設定値部分への入力で変更するというのは、すべて共通に行える。
【００３８】
図７は属性情報の設定処理手順を示す。同図において、階層構造設計データＢを基に画面表示される表示部品のうち、属性を変更しようとする表示部品が選択されたとき（Ｓ２１）、選択された表示部品の属性リストを表示部品属性設定データＣから選択して表示する（Ｓ２２）。この属性リストから変更しようとする属性が選択されたとき（Ｓ２３）、属性変更モジュールを生成する（Ｓ２４）。このモジュール生成には、データベース１４に予め用意しておくデータのメタデータＤから属性変更モジュールを呼び出す。このメタデータＤは、データに関するデータ定義をしておき、設定値の実データ型や入力ルール、設定値の表示文字などを持つもので、メタデータを保持する仕組みにより、属性値のデータ型に依存しない、統一的なオペレーションで属性設定を可能とする。
【００３９】
最後に、生成した属性変更モジュールに対して、表示部品属性設定データＣに対して属性の変更処理を行う（Ｓ２５）。
【００４０】
したがって、画面の変更についても、構造の変更、属性の変更に対して、表示部品の配置位置を自動的に再計算することにより、配置作業の効率化を図ることができる。また、情報の情報（メタデータ）を保持する仕組みにより、属性値のデータ型に依存しない、統一的なオペレーションで属性設定が可能となる。
【００４１】
（変形例１）
図８は、用途別の機能を持った装置に画面設計装置を組み込んだ構成例を示す。図１の構成では、ＧＵＩ設計情報を配置情報３０として、画面設計装置１０から用途別の機能を持った装置２０にファイルコピーを行わねばならない。
【００４２】
図８は、画面設計装置１０を用途別の機能を持った装置２０にインポートしておくことで、その手間を省くことができる。これにより、メンテナンス性が向上する。
【００４３】
（変形例２）
図９は、用途別の機能を持った装置で実行中画面設計を可能とする画面設計装置の組み込み例を示す。図８の構成では、画面変更時には配置情報３０に反映されるため、用途別の機能を持った装置２０の停止、再起動が必要となる。
【００４４】
図９では、画面設計装置１０Ａは表示部品の組み合わせ構造を設計する装置１１と、表示部品の属性情報設定する装置１３およびデータベース１４を用途別の機能を持った装置２０にインポートし、画面表示装置２１には表示部品の配置座標を計算する装置１２をインポートする。
【００４５】
この構成により、画面表示装置２１に表示部品の配置座標を計算する装置１２をインポートすることで、配置情報３０をファイルではなく、メモリ情報に展開できる。このことにより、用途別の機能を持った装置２０の処理を停止することなく、画面の変更を行うことができる。これにより、さらにメンテナンス性が向上する。
【００４６】
なお、本発明は、上記の実施形態で示すＧＵＩの設計装置の一部又は全部の処理手順を有する開発支援方法とすること、あるいはこの方法をコンピュータで実行可能に構成したプログラムとして提供することができる。
【図面の簡単な説明】
【００４７】
【図１】本発明の実施形態を示すＧＵＩ設計装置の構成図。
【図２】画面表示／入出力部品の階層構造の例。
【図３】階層構造の表現処理手順。
【図４】階層構造の表示例。
【図５】座標位置／大きさの設計処理手順。
【図６】表示部品の属性情報の例。
【図７】属性情報の設定処理手順。
【図８】画面設計装置の組み込み例。
【図９】画面設計装置の組み込み例。
【符号の説明】
【００４８】
１０  画面設計装置
１１  表示部品の組み合わせ構造を設計する装置
１２  表示部品の配置座標を計算する装置
１３  表示部品の属性情報を設定する装置
１４  データベース
２０  用途別の機能を持った装置
２１  画面表示装置
３０  配置情報
【図１】
2009009473.tif 000003
【図２】
2009009473.tif 000004
【図３】
2009009473.tif 000005
【図４】
2009009473.tif 000006
【図５】
2009009473.tif 000007
【図６】
2009009473.tif 000008
【図７】
2009009473.tif 000009
【図８】
2009009473.tif 000010
【図９】
2009009473.tif 000011