(57)【要約】【課題】ソフトウエア無線機のソフトウエアコンポーネントにおける処理機能のソースコードを再利用又は流用しやすくし、ソフトウエアの設計・製造コストの削減を図る。【解決手段】登録モードが選択指定された場合に、シンボル・ソースコード登録制御プログラム１３２に従い、登録モード用の表示画面を表示させ、入力デバイス１６により選択指定された中シンボルとソースコードを相互に関連付けてシンボル・ソースコード対応テーブル１４３に記憶させる。また、モデリング・生成モードが選択指定された場合に、モデリング・生成制御プログラム１３３に従い、モデリング・生成モード用の表示画面を表示デバイス１７に表示させ、入力デバイス１６による中シンボルＳＢ２及び連結シンボルＳＢ３のドラッグ及びドロップの操作によりソフトウエアモデルを生成し、この生成されたモデルをもとにインタフェースファイルＦＦにソースコードを埋め込むようにする。【選択図】      図１
2010182031.tif 000002
【特許請求の範囲】
【請求項１】
ソースコード登録モードが指定された場合に動作するソースコード登録制御手段と、
ソフトウエア生成モードが指定された場合に動作するソフトウエア生成制御手段と
を具備し、
前記ソースコード登録制御手段は、
ソフトウエア無線機を構成する複数のソフトウエアコンポーネントの各々についてそのカテゴリを表す第１のシンボルを生成してメモリに記憶させる手段と、
前記複数のソフトウエアコンポーネントのカテゴリに所属する複数の処理機能のそれぞれについて当該機能を表す第２のシンボルを生成して前記メモリに記憶させる手段と、
前記複数の処理機能の各々に対応するソースコードの入力を受け付け、このソースコードを前記第１及び第２のシンボルと関連付けて前記メモリに記憶させる手段と
を備え、
前記ソフトウエア生成制御手段は、
前記複数の第１のシンボルを表示器に一覧表示した状態で当該第１のシンボルの１つを選択する操作が検出された場合に、当該選択された第１のシンボルにより表されるソフトウエアコンポーネントのカテゴリに所属する処理機能を表す第２のシンボルを前記メモリから選択的に読み出して前記表示器に表示させる手段と、
前記第２のシンボル同士の連結関係の候補を表す複数の連結シンボルを表示器に表示させる手段と、
前記表示された第２のシンボル及び連結シンボルの候補に対する選択操作に応じて、当該選択された第２のシンボル同士を前記選択された連結シンボルによる連結したソフトウエアモデルを生成する手段と、
前記生成されたソフトウエアモデルを構成する第２のシンボルに対応するソースコードを前記メモリから読み出し、この読み出されたソースコードをソフトウエアインタフェースファイルに処理内容を表すコードとして挿入する手段と
を備えることを特徴とするソフトウエア生成支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えばソフトウエア無線機で使用されるソフトウエアの生成を支援するソフトウエア生成支援装置に関する。
【背景技術】
【０００２】
従来、移動通信の分野においてはソフトウエア無線機が多く使用されている。ソフトウエア無線機は、例えば機能ごとに複数のソフトウエアを有し、これら複数のソフトウエアの中から必要なソフトウエアを選択することにより所望の無線方式に対応するもので、無線機としての特徴や機能、性能をソフトウエアにより変更することが可能である（例えば、特許文献１を参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−３９５５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ソフトウエア無線機を開発する際には、ソフトウエアの設計・製造効率を高めることが無線機の開発・製造コストを削減することに繋がり、非常に重要となる。そこで、ソフトウエアのインタフェースを統一することでソフトウエアの再利用と流用を可能にすることが提案されている。
【０００５】
ソフトウエアのインタフェースの統一手段としては、ソフトウエアの設計・製造支援ツールを利用することが現在の方向性となっている。例えば、モデル言語を使用した設計図からソフトウエアのインタフェースを生成するツールを使用することで、同じツールにより設計されたソフトウエア、さらには同じ規格で設計されたソフトウエア間の互換性とプラットフォームの互換性を保証している。しかしながら、この種の従来の支援ツールはインタフェース以外のソースコードについては生成する機能がないため、ソースコードの再利用と流用を行えず、ソフトウエアの設計・製造コストの削減には限界があった。
【０００６】
この発明は上記事情に着目してなされたもので、その目的とするところは、ソフトウエア無線機のソフトウエアコンポーネントにおける処理機能のソースコードを再利用又は流用しやすくし、これによりソフトウエアの設計・製造コストのさらなる削減を図ったソフトウエア生成支援装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するためにこの発明の一観点は、以下のような対策を講じたものである。すなわち、ソースコード登録制御手段を備え、このソースコード登録制御手段により、ソフトウエア無線機を構成する複数のソフトウエアコンポーネントの各々についてそのカテゴリを表す第１のシンボルを生成してメモリに記憶させると共に、上記複数のソフトウエアコンポーネントのカテゴリに所属する複数の処理機能の各々について当該処理機能を表す第２のシンボルを生成して上記メモリに記憶させる。そして、上記複数の処理機能の各々に対応するソースコードの入力を受け付け、このソースコードを上記第１及び第２のシンボルと関連付けて上記メモリに記憶させる。  
さらに、ソフトウエア生成制御手段を備え、このソフトウエア生成制御手段により、上記第１のシンボルを表示器に一覧表示した状態で当該第１のシンボルの１つを選択する操作が検出された場合に、当該選択された第１のシンボルにより表されるソフトウエアコンポーネントのカテゴリに所属する処理機能を表す第２のシンボルを上記メモリから選択的に読み出して上記表示器に表示させると共に、上記第２のシンボル同士の連結関係の候補を表す複数の連結シンボルを上記表示器に表示させる。そして、上記表示された第２のシンボル及び連結シンボルに対する選択操作に応じて、当該選択された第２のシンボル同士を上記選択された連結シンボルによる連結したソフトウエアモデルを生成し、この生成されたソフトウエアモデルを構成する第２のシンボルに対応するソースコードを上記メモリから読み出し、この読み出されたソースコードをソフトウエアインタフェースファイルに処理内容を表すコードとして挿入する。
【発明の効果】
【０００８】
したがって、生成しようするソフトウエアコンポーネントに対応する第１のシンボルを選択すると、当該ソフトウエアコンポーネントのカテゴリに所属する機能を表す第２のシンボルと連結シンボルが表示され、この表示された第２のシンボル及び連結シンボルを選択操作することによりソフトウエアモデルが生成される。そして、このソフトウエアモデルを構成する第２のシンボルに対応するソースコードが選択的に読み出され、この読み出されたソースコードがソフトウエアインタフェースファイルに処理内容を表すコードとして挿入されコンパイルされる。
【０００９】
すなわち、この発明の一観点によれば、ソフトウエアコンポーネントの処理機能のソースコードを再利用又は流用して新たなソフトウエアコンポーネントを生成することが可能となる。また、プログラマはシンボルの選択操作を行うだけでよいので、ソフトウエアの設計・製造コストのさらなる削減が可能となる。
【図面の簡単な説明】
【００１０】
【図１】この発明の一実施形態に係わるソフトウエア生成支援装置のハードウエア及びソフトウエアの構成を示すブロック図である。
【図２】図１に示したソフトウエア生成支援装置のデータメモリに記憶されるシンボル情報のうち、ソフトウエアコンポーネンツのカテゴリに関する情報の一例を示す図である。
【図３】図１に示したソフトウエア生成支援装置のデータメモリに記憶されるシンボル情報のうち、プリセットされている中シンボルに関する情報の一例を示す図である。
【図４】図１に示したソフトウエア生成支援装置によるシンボル・ソースコード登録制御の手順と内容を示すフローチャートである。
【図５】図４に示したシンボル・ソースコード登録制御手順のうち中シンボル登録処理の手順と内容を示すフローチャートである。
【図６】図１に示したソフトウエア生成支援装置によるモデリング・生成制御の手順と内容を示すフローチャートである。
【図７】図４及び図６に示したシンボル・ソースコード登録制御により表示される登録モード画面の一例を示す図である。
【図８】図４及び図６に示したモデリング・生成制御により表示される登録モード画面の一例を示す図である。
【図９】図６に示したモデリング・生成制御によるソフトウエアインタフェースファイルに対するソースコードの複写処理を説明するための図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照してこの発明に係わる実施形態を説明する。  
図１は、この発明の一実施形態に係わるソフトウエア生成支援装置のハードウエア及びソフトウエアの構成を示すブロック図である。
この実施形態に係わるソフトウエア生成支援装置１は、例えばパーソナル・コンピュータ又はワークステーションからなり、マイクロプロセッサからなる中央処理ユニット（ＣＰＵ；Central Processing Unit）１１を備えている。このＣＰＵ１１には、バス１２を介してプログラムメモリ１３及びデータメモリ１４が接続され、さらに入出力インタフェース１５及び外部記憶インタフェース１８が接続されている。
【００１２】
入出力インタフェース１５には、入力デバイス１６及び表示デバイス１７が接続されている。入力デバイス１６は、キーボード及びマウスにより構成される。表示デバイス１７は例えば液晶ディスプレイにより構成される。入出力インタフェース１５は、上記入力デバイス１６による操作情報をＣＰＵ１１に伝えると共に、ＣＰＵ１１の制御の下でソースコード登録用の表示画面及びモデリング・生成用の表示画面等を表示デバイス１７に表示させる機能を有する。
【００１３】
外部記憶インタフェース１８は、ＣＰＵ１１の制御の下で、外部記憶媒体２からシンボル情報やソースコードファイルを読み込んでデータメモリ１４に記憶させると共に、ソフトウエア生成支援装置１で生成されたソフトウエアモデルやソフトウエアインタフェースファイルを外部記録媒体２に記憶させる機能を有する。
【００１４】
データメモリ１４には、この発明を実施するために必要な記憶エリアとして、シンボル情報記憶エリア１４１と、ソースコード情報記憶エリア１４２と、シンボル・ソースコードテーブル１４３と、ソフトウエアモデル記憶エリア１４４と、ソフトウエアファイル記憶エリア１４５が設けられている。
【００１５】
シンボル情報記憶エリア１４１には、ソフトウエア無線機用の複数のソフトウエアコンポーネントのカテゴリを管理する情報と、上記各カテゴリのいずれかに所属する処理機能を管理する情報が記憶される。ソフトウエアコンポーネントのカテゴリを管理する情報は、カテゴリごとに、カテゴリの名称と、カテゴリを表す第１のシンボル（以後大シンボルと称する）と、カテゴリの説明を定義したものである。図２にその一例を示す。一方、処理機能を管理する情報には、処理機能ごとに、当該処理機能を表す第２のシンボル（以後中シンボルと称する）と、登録元の大シンボル名と、中シンボルの説明を定義したものである。図３にその一例を示す。
【００１６】
ソースコード情報記憶エリア１４２には、予め生成されるか又は上記外部記憶媒体２から読み込んだソースコードファイルが記憶される。ソースコードは、上記ソフトウエアコンポーネントのカテゴリに所属する処理機能を表現するために用いられる。  
シンボル・ソースコードテーブル１４３には、後述するシンボル・ソースコード登録制御プログラムに従い登録された、中シンボルとソースコードとの対応関係を表す情報を記憶される。
【００１７】
ソフトウエアモデル記憶エリア１４４は、後述するモデリング・生成制御プログラムに従い生成されたソフトウエアモデルを保存するために用いられる。ソフトウエアファイル記憶エリア１４５は、後述するモデリング・生成制御プログラムに従い生成されたソフトウエアインタフェースファイルを記憶するために用いられる。
【００１８】
プログラムメモリ１３には、この発明を実施するために必要なアプリケーション・プログラムとして、設計・製造支援制御プログラム１３１と、シンボル・ソースコード登録制御プログラム１３２と、モデリング・生成制御プログラム１３３が格納されている。  
設計・製造支援制御プログラム１３１は、ソフトウエアインタフェースファイルを自動生成するための処理を、上記ＣＰＵ１１に実行させる。生成されるソフトウエアインタフェースファイルには、ソフトウエア無線機のミドルウエア層と各ソフトウエアコンポーネントを構成するソフトウエアとの間に介在配置されるソフトウエアインタフェースと、各ソフトウエアコンポーネントを構成するソフトウエア間に介在配置されるソフトウエアインタフェースがある。
【００１９】
シンボル・ソースコード登録制御プログラム１３２は、登録モードが選択指定された場合に、シンボル・ソースコード登録用の表示画面を表示デバイス１７に表示させ、入力デバイス１６による登録操作により選択指定された中シンボルとソースコードを、相互に関連付けて上記シンボル・ソースコード対応テーブル１４３に記憶させる処理を、上記ＣＰＵ１１に実行させる。
【００２０】
モデリング・生成制御プログラム１３３は、モデリング・生成モードが選択指定された場合に、モデリング・生成用の表示画面を表示デバイス１７に表示させ、入力デバイス１６によるモデリング操作及びファイル生成操作に応じて、ソフトウエアモデルの生成処理と、ソフトウエアインタフェースファイルへのソースコードの埋め込み処理を、上記ＣＰＵ１１に実行させる。
【００２１】
次に、以上のように構成されたソフトウエア生成支援装置の動作を説明する。  
待機状態においてＣＰＵ１１は例えばメニュー画面の表示データを生成し、この表示データを入出力インタフェース１５に供給することにより表示デバイス１７にメニュー画面を表示させる。メニュー画面には、シンボル・ソースコード登録モードと、モデリング・生成モードの各選択ボタンが表示される。
【００２２】
（１）シンボル・ソースコード登録モード  
上記メニュー画面が表示された状態で、プログラマが入力デバイス１６を操作して上記シンボル・ソースコード登録モードの選択ボタンを選択指定したとする。そうするとＣＰＵ１１は、シンボル・ソースコード登録制御プログラム１３２を起動し、この登録制御プログラム１３２に従い以下のようにシンボル・ソースコード登録制御処理を実行する。図４は、このシンボル・ソースコード登録制御の処理手順と処理内容を示すフローチャートである。
【００２３】
すなわち、ＣＰＵ１１は先ずシンボル・ソースコード登録モード画面の表示データを生成し、この表示データを入出力インタフェース１５に供給することにより表示デバイス１７にシンボル・ソースコード登録モード画面を表示させる。シンボル・ソースコード登録モード画面には、例えば図７に示すように、ファイル読込ボタンＢ１１と、登録ボタンＢ１２と、終了ボタンＢ１３が表示され、またソースコードウィンドウＷ１１、大シンボル選択ウィンドウＷ１２、中シンボル選択ウィンドウＷ１３、定義表示ウィンドウＷ１４及び関連モジュールウィンドウＷ１５が表示される。さらに、上記中シンボル選択ウィンドウＷ１３に近接する位置には、新規シンボル登録ボタンＢ１４及びシンボル削除ボタンＢ１５が表示される。
【００２４】
この状態で、プログラマが入力デバイス１６を操作してファイル読込ボタンＢ１１を選択指定したとする。そうすると、ＣＰＵ１１はこのファイル読込ボタンＢ１１の操作をステップＳ４１で検出してステップＳ４２に移行し、先ずソースコード読込用のダイヤログを生成して表示デバイス１７に表示させる。このダイヤログにはソースコードファイルの一覧が表示される。
【００２５】
続いてプログラマが、入力デバイス１６を操作して上記ダイヤログに表示されたソースコードファイルの１つを選択指定すると、ＣＰＵ１１はステップＳ４３によりこの選択指定操作を検出してステップＳ４４に移行し、上記選択指定されたソースコードファイルをデータメモリ１４内のソースコード情報記憶エリア１４２から読み出し、上記シンボル・ソースコード登録モード画面のソースコードウィンドウＷ１１に表示させる。
【００２６】
またそれと共にＣＰＵ１１は、ステップＳ４５において上記ソースコードファイルに記述されたソースコードから定義情報を抽出し、この定義情報を上記シンボル・ソースコード登録モード画面の定義表示ウィンドウＷ１４に表示させる。定義情報には、変数定義部、ユーザ型宣言部及びプリプロセッサが含まれる。さらにＣＰＵ１１は、ステップＳ４６においてデータメモリ１４内のシンボル情報記憶エリア１４１からソフトウエアコンポーネントのカテゴリを管理する情報（図２）を読み出し、このカテゴリ管理情報をもとに大シンボルの一覧表示データを生成して、この大シンボルの一覧を上記シンボル・ソースコード登録モード画面の大シンボル選択ウィンドウＷ１２に表示させる。
【００２７】
次にプログラマは、入力デバイス１６を操作することにより、上記表示された大シンボルの一覧の中から登録対象のソフトウエアコンポーネントのカテゴリに対応する大シンボルを選択する。図７では“MOD/DEM“を選択した場合を例示している。そうすると、ＣＰＵ１１はステップＳ４７からステップＳ４８に移行し、データメモリ１４内のシンボル情報記憶エリア１４１から処理機能の管理情報（図３に例示）を読み出す。そして、この管理情報をもとに、上記選択された大シンボルにより表されるカテゴリに所属する処理機能の中シンボルを選択し、この選択した中シンボルの一覧表示データを中シンボル選択ウィンドウＷ１３に表示させる。  
なお、ステップＳ４８では、ステップＳ４７において異なる大シンボルが選択されるごとに、当該選択された大シンボルで表されるカテゴリに所属する中シンボルの一覧表示データが生成し直されて表示される。
【００２８】
この状態で、プログラマが入力デバイス１６を操作して、上記一覧表示された中シンボルの１つを選択したとする。図７では“FFT”を選択した場合を例示している。そうすると、ＣＰＵ１１はステップＳ４９において、上記選択された中シンボルをソースコードと関連付けするための処理を以下のように実行する。図５はその処理手順と処理内容を示すフローチャートである。
【００２９】
すなわち、ＣＰＵ１１は上記中シンボルの選択をステップＳ６１で検出するとステップＳ６２に移行し、上記選択された中シンボルを、ソースウィンドウＷ１１に表示中のソースコードと関連付ける候補としてデータメモリ１４内の作業用エリアに保持する。また、同一の中シンボルに複数のソースコードを関連付けるために、プログラマが上記中シンボルの１つを選択した状態で入力デバイス１６を操作して変更後の表記文字を入力したとする。この場合ＣＰＵ１１はステップＳ６３からステップＳ６４に移行し、上記選択中の中シンボルの表記文字を上記入力された表記文字となるように編集し、中シンボルの複製を生成する。例えば、“AGC”の中シンボルの複製を生成する場合には、サフィックスを付加して“AGC.UHF(fast only)”とする。
【００３０】
また、プログラマが新規シンボル登録ボタンＢ１４を押下したとする。この場合ＣＰＵ１１は、ステップＳ６５からステップＳ６６に移行し、シンボル情報記憶エリア１４１から処理機能の管理情報を読み出して中シンボルの一覧表示データを生成し、この表示データを入出力インタフェース１５に供給することにより表示デバイス１７に上記中シンボルの一覧を表示させる。この表示された中シンボルの一覧の中からプログラマが所望の中シンボルを選択指定すると、ＣＰＵ１１はこの選択指定された中シンボルを中シンボル選択ウィンドウＷ１３に追加表示させると共に、当該中シンボルを上記選択中の大シンボルにより表されるカテゴリに新たに所属させる処理機能の候補として、データメモリ１４内の作業用記憶エリアに保持させる。
【００３１】
一方、プログラマが中シンボルの１つを選択した状態でシンボル削除ボタンＢ１５を押下したとする。この場合ＣＰＵ１１は、ステップＳ６７からステップＳ６８に移行し、上記選択中の中シンボルの表示を中シンボル選択ウィンドウＷ１３から消去すると共に、当該中シンボルにより表される処理機能を上記選択中の大シンボルにより表されるカテゴリに所属するリストから削除する候補として、データメモリ１４内の作業用記憶エリアに保持させる。
【００３２】
定義表示ウィンドウＷ１４に表示された定義情報は編集することができる。例えば、ソースコードファイルから抽出できなかった定義情報を追加する場合、プログラマは入力デバイス１６において所望の定義情報を入力する。ＣＰＵ１１は、ステップＳ５０において上記定義情報の入力操作を検出すると、ステップＳ５１により上記入力された定義情報を定義表示ウィンドウＷ１４に追加表示させると共に、データメモリ１４内の作業用記憶エリアに保持させる。
【００３３】
関連モジュールはソースコードファイルから抽出することができないため、プログラマ自身が入力する。例えば、プログラマがソースコードから呼び出すプログラムモジュールやクラスメソッドを表す情報を入力デバイス１において入力すると、ＣＰＵ１１は上記入力されたプログラムモジュールやクラスメソッドを表す情報を、ステップＳ５２により入出力インタフェース１５を介して受け付けて関連モジュールウィンドウＷ１５に表示させると共に、データメモリ１４内の作業用記憶エリアに保持させる。
【００３４】
さて、以上述べた中シンボルの選択指定、複製、追加、削除、定義情報の編集及び関連モジュールの入力受付処理が終了し、入力デバイス１６においてプログラマが登録ボタンＢ１２を押下したとする。そうするとＣＰＵ１１は、当該登録ボタンＢ１２の操作をステップＳ５３により検出してステップＳ５４に移行し、ここで上記データメモリ１４内の作業用記憶エリアに関連付け候補として保持されている中シンボルを、ソースコードウィンドウＷ１１に表示中のソースコードに対応付けて、データメモリ１４内のシンボル・ソースコード対応テーブル１４３に記憶させる。またこのとき、データメモリ１４内の作業用記憶エリアに保持されている編集後の定義情報と、プログラムモジュールやクラスメソッド等の関連モジュールを表す情報を、上記ソースコードに関連付けて併せてシンボル・ソースコード対応テーブル１４３に記憶させる。
【００３５】
なお、上記登録ボタンＢ１２の操作後に、プログラマがファイル読込ボタンＢ１１又は大シンボルの選択操作を行った場合には、ＣＰＵ１１は再度ステップＳ４１又はステップＳ４７に戻り、以上述べた中シンボルとソースコードとを関連付けて登録するための一連の処理を繰り返す。
【００３６】
最後に、プログラマが入力デバイス１６を操作して終了ボタンＢ１３を押下すると、ＣＰＵ１１はステップＳ５５によりこの操作を検出し、シンボル・ソースコード登録モード画面の表示を消去して、シンボル・ソースコード登録制御を終了する。
なお、上記シンボル・ソースコード対応テーブル１４３に記憶された情報、及びソースコード情報記憶エリア１４２に保存されたソースコードファイルは、外部記憶インタフェース１８を介して外部記憶媒体２にライブラリとして格納することが可能である。また、支援装置１が通信インタフェースを備えている場合には、この通信インタフェースを介して他の支援装置へ転送することも可能である。
【００３７】
（２）モデリング・生成制御モード  
メニュー画面が表示された状態で、プログラマが入力デバイス１６を操作してモデリング・生成制御モードの選択ボタンを選択指定したとする。そうするとＣＰＵ１１は、モデリング・生成制御プログラム１３３を起動し、このモデリング・生成制御プログラム１３３に従い以下のようにモデリング・生成制御処理を実行する。図６は、このモデリング・生成制御の処理手順と処理内容を示すフローチャートである。
【００３８】
すなわち、ＣＰＵ１１は先ずモデリング・生成モード画面の表示データを生成し、この表示データを入出力インタフェース１５に供給することにより表示デバイス１７にモデリング・生成モード画面を表示させる。モデリング・生成モード画面には、例えば図８に示すように、ファイル読込ボタンＢ２１と、保存ボタンＢ２２と、終了ボタンＢ２３が表示され、またモデリングウィンドウＷ２１、大シンボル選択ウィンドウＷ２２、中シンボル選択ウィンドウＷ２３、定義表示ウィンドウＷ２４及び関連モジュールウィンドウＷ２５が表示される。中シンボル選択ウィンドウＷ２３は、中シンボル群ＳＢ２及び連結シンボル群ＳＢ３を表示するために使用される。
【００３９】
ＣＰＵ１１は、上記モデリング・生成モード画面が表示されると、先ずステップＳ７１においてデータメモリ１４内のシンボル情報記憶エリア１４１からソフトウエアコンポーネントのカテゴリを管理する情報（図２に例示）を読み出し、このカテゴリを管理する情報をもとに大シンボルの一覧表示データを生成して、この大シンボルの一覧ＳＢ１を大シンボル選択ウィンドウＷ２２に表示させる。
【００４０】
この状態でプログラマが、入力デバイス１６を操作して、上記表示された大シンボルの一覧ＳＢ１の中からモデリング対象のソフトウエアコンポーネントのカテゴリに対応する大シンボルを選択したとする。図８では“MAC“を選択した場合を例示している。そうすると、ＣＰＵ１１はステップＳ７２からステップＳ７３に移行し、データメモリ１４内のシンボル情報記憶エリア１４１から処理機能管理情報（図３に例示）を読み出す。そして、この管理情報をもとに、上記選択された大シンボルにより表されるカテゴリに所属する処理機能の中シンボルを選択し、この選択した中シンボルの一覧表示データを入出力インタフェース１５に供給することで、上記選択された大シンボルに所属する中シンボルの一覧ＳＢ２を中シンボル選択ウィンドウＷ２３に表示させる。また、それと共にＣＰＵ１１は、ステップＳ７４において、上記中シンボル同士を連結する連結方法を表す複数の連結シンボルＳＢ３を生成して、上記中シンボル選択ウィンドウＷ２３に表示させる。
なお、ステップＳ７２において異なる大シンボルが選択されるごとに、ステップＳ７３では当該選択された大シンボルで表されるカテゴリに所属する中シンボルの一覧表示データＳＢ２が生成し直されて表示される。
【００４１】
この状態で、プログラマが入力デバイス１６を操作して、上記一覧表示された中シンボルの１つを選択したとする。図８では“AGC”を選択した場合を例示している。そうすると、ＣＰＵ１１はステップＳ７５において、上記選択された中シンボルに関連付けて登録された変数定義部やユーザ型宣言部、プリプロセッサ等の定義情報を、シンボル・ソースコード対応テーブル１４３を参照してソースコード情報記憶エリア１４２から読み出し、定義表示ウィンドウＷ２４に表示させる。
【００４２】
また、それと共にＣＰＵ１１は、ステップＳ７６により、上記選択された中シンボルに関連付けて登録されたプログラムモジュールやクラスメソッド等の関連モジュール情報を、上記定義情報と同様にシンボル・ソースコード対応テーブル１４３を参照してソースコード情報記憶エリア１４２から読み出し、関連モジュールウィンドウＷ２５に表示させる。
【００４３】
上記ソフトウエアのモデリング処理は、上記中シンボル選択ウィンドウＷ２３に表示された中シンボルＳＢ２及び連結シンボルＳＢ３をドラッグ及びドロップの操作することにより行われる。すなわち、プログラマが入力デバイス１６のマウスを操作して中シンボル及び連結シンボルを選択すると、ＣＰＵ１１はステップＳ７７によりこの操作を検出してステップＳ７８に移行する。そして、上記選択された中シンボル及び連結シンボルをプログラマがドラッグ及びドロップの操作をすると、この操作に応じて上記選択された中シンボル及び連結シンボルをモデリングウィンドウＷ２１に移動させたのち貼り付ける処理を行う。以後、中シンボル及び連結シンボルをプログラマがドラッグ及びドロップの操作するごとに、モデリングウィンドウＷ２１上でモデリング処理が行われる。図８にモデリング途中のモデルの一例を示す。
【００４４】
また、上記モデリング処理と並行して、必要に応じ定義情報は編集することが可能である。例えば、定義の名称や初期値を変更する場合、プログラマは入力デバイス１６において変更対象の定義情報について新たな定義の名称や初期値を入力する。ＣＰＵ１１は、ステップＳ７９において上記定義情報の変更入力操作を検出すると、ステップＳ８０により定義表示ウィンドウＷ２４に表示させている定義情報を上記入力された定義情報に変更すると共に、その変更結果をデータメモリ１４内の作業用記憶エリアに保持させる。
【００４５】
さて、上記モデリング処理が終了し、入力デバイス１６においてプログラマが保存ボタンＢ２２を押下したとする。そうするとＣＰＵ１１は、当該保存ボタンＢ２２の操作をステップＳ８１により検出してステップＳ８２に移行し、上記モデリングウィンドウＷ２１において生成されたモデルをデータメモリ１４内のソフトウエアモデル記憶部１４４に記憶させる。またこのとき、データメモリ１４内の作業用記憶エリアに保持されている編集後の定義情報と、プログラムモジュールやクラスメソッド等の関連モジュールを表す情報も、上記モデルに関連付けてソフトウエアモデル記憶部１４４に記憶させる。
【００４６】
続いて、プログラマがファイル生成ボタンＢ２１を押下したとする。そうすると、ＣＰＵ１１はステップＳ８３によりこの操作を検出してステップＳ８４に移行し、先ずダイヤログを表示デバイス１７に表示させる。このダイヤログには、生成対象のソフトウエアファイルの一覧が表示される。
【００４７】
この状態でプログラマが入力デバイス１６を操作して、上記ダイヤログに表示されたソフトウエアファイルの一覧の中から所望のファイルを選択指定すると、ＣＰＵ１１はステップＳ８５によりこの操作を検出してステップＳ８６に移行する。そして、上記ソフトウエアモデル記憶エリア１４４に保存されたソフトウエアモデルをもとに、シンボル・ソースコード対応テーブル１４３を参照してソースコード記憶エリア１４２からソースコードを読み出し、この読み出したソースコードを上記選択指定されたソフトウエアファイルにコピーしてコンパイルする。そしてＣＰＵ１１は、上記ソースコードが埋め込まれたソフトウエアコンポーネンツを、データメモリ１４内のソフトウエアファイル記憶エリア１４５に記憶させる。
【００４８】
図９は上記ソースコードのコピーの処理の様子を示すもので、設計・製造支援制御プログラム１３１により予め生成されたソフトウエアインタフェースファイルＦＦに、その処理機能を表すソースコードがコピーされる。
最後に、プログラマが入力デバイス１６を操作して終了ボタンＢ２３を押下すると、ＣＰＵ１１はステップＳ８７でこの操作を検出し、モデリング・生成モード画面の表示を消去して、モデリング・生成制御を終了する。
【００４９】
なお、上記ソフトウエアモデル記憶エリア１４４に保存されたソフトウエアモデル、及び上記ソフトウエアファイル記憶エリア１４５に記憶されたソフトウエアファイルは、外部記憶インタフェース１８を介して外部記憶媒体２に格納することが可能である。また、支援装置１が通信インタフェースを備えている場合には、この通信インタフェースを介して他の支援装置へ転送することも可能である。
【００５０】
以上述べたようにこの実施形態では、シンボル・ソースコード登録モードが選択された場合に、シンボル・ソースコード登録制御プログラム１３２に従い、シンボル・ソースコード登録用の表示画面を表示デバイス１７に表示させ、入力デバイス１６による登録操作により選択指定された中シンボルとソースコードを、相互に関連付けてデータメモリ１４内のシンボル・ソースコード対応テーブル１４３に記憶させる。また、モデリング・生成モードが選択指定された場合に、モデリング・生成制御プログラム１３３に従い、モデリング・生成用の表示画面を表示デバイス１７に表示させ、入力デバイス１６による中シンボルＳＢ２及び連結シンボルＳＢ３のドラッグ及びドロップの操作によりソフトウエアモデルを生成し、この生成されたモデルをもとにインタフェースファイルＦＦへのソースコードの埋め込み処理を行うようにしている。
【００５１】
したがって、ソフトウエアコンポーネントの処理機能のソースコードを再利用又は流用して新たなソフトウエアコンポーネントを生成することが可能となる。またプログラマは、ソースコードを登録する際には、中シンボルの選択操作を行うだけでソースコードとの関連付けを行うことができ、またモデリング・生成に際しては中シンボル及び連結シンボルをドラッグ及びドロップの操作をするだけでソフトウエアをモデリングすることができるので、ソフトウエアの設計・製造コストのさらなる削減が可能となる。さらに、ソースコードファイルのできあがりに個人差が発生し難いので、モデルによって最低限の処理統一性を持たせることができる。また、共通のライブラリを使用することにより処理レベルでの統一性を持たせることもできる。
【００５２】
なお、この発明は上記実施形態に限定されるものではない。例えば、前記実施形態では大シンボルと中シンボルを定義したが、中シンボルにより表される処理機能に属する部分機能を小シンボルにより表し、この小シンボルに関連付けてそのソースコードを登録し、モデリングに使用するようにしてもよい。
【００５３】
その他、ソフトウエアコンポーネントのカテゴリの種類や中シンボルにより表現される処理機能の種類、登録モード及びモデリング・生成モード用表示画面の構成、シンボル・ソースコード登録制御及びモデリング・生成制御の処理手順と処理内容、装置のハードウエア構成等については、この発明の要旨を逸脱しない範囲で種々変形して実施可能である。
【００５４】
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【００５５】
１…ソフトウエア生成支援装置、２…記録媒体、１１…中央処理ユニット（ＣＰＵ）、１２…バス、１３…プログラムメモリ、１４…データメモリ、１５…入出力インタフェース、１６…入力デバイス、１７…表示デバイス、１８…外部記憶インタフェース、１３１…設計・製造支援制御プログラム、１３２…シンボル・ソースコード登録制御プログラム、１３３…モデリング・生成制御プログラム、１４１…シンボル情報記憶エリア、１４２…ソースコード情報記憶エリア、１４３…シンボル・ソースコード対応テーブル、１４４…ソフトウエアモデル記憶エリア、１４５…ソフトウエアファイル記憶エリア。
【図１】
2010182031.tif 000003
【図２】
2010182031.tif 000004
【図３】
2010182031.tif 000005
【図４】
2010182031.tif 000006
【図５】
2010182031.tif 000007
【図６】
2010182031.tif 000008
【図７】
2010182031.tif 000009
【図８】
2010182031.tif 000010
【図９】
2010182031.tif 000011