(57)【要約】【課題】仕様書データに基づいて作成された実行形式プログラムのデバッグを効率良く行う。【解決手段】入力されたソフトウェアの仕様を記載した仕様書データに基づいてソースプログラムを生成し、その際、仕様書データの頁および行番号と、それらから生成されたソースプログラムの行番号とを対応付けた対応情報を格納し、ソースプログラムをコンパイルし、その際、ソースファイルのうち最適化された行番号を示す最適化情報を格納し、仕様書データを対応情報に基づいてソースプログラムの行番号を付加して表示する際に、表示された行番号のうち最適化情報が示す行を識別表示する。【選択図】図２
2010049474.tif 000002
【特許請求の範囲】
【請求項１】
入力されたソフトウェアの仕様を記載した仕様書データに基づいて作成されたプログラムを検証するプログラム開発支援システムにおいて、
前記仕様書データに基づいてソースプログラムを生成するソース生成処理手段と、
前記ソースプログラムを生成した際に、前記仕様書データの頁および行番号と、それらから生成されたソースプログラムの行番号とを対応付けた対応情報を格納する対応情報ファイルデータベースと、
前記ソースプログラムをコンパイルするコンパイル処理手段と、
前記コンパイルした際に、前記ソースファイルのうち最適化された行番号を示す最適化情報を格納する最適化情報ファイルデータベースと、
前記仕様書データを、前記対応情報ファイルデータベースに格納された対応情報に基づいて前記ソースプログラムの行番号を付加して表示するデバッグ情報表示処理手段とを有し、
前記デバッグ情報表示処理手段は、前記表示された行番号のうち前記最適化情報ファイルデータベースに格納された前記最適化情報が示す行を識別表示することを特徴とするプログラム開発支援システム。
【請求項２】
請求項１に記載のプログラム開発支援システムにおいて、
前記対応情報ファイルデータベースに格納された対応情報と前記最適化情報ファイルデータベースに格納された最適化情報とを対応付けたデバッグ情報ファイルを作成するデバッグ情報作成処理手段と、
前記デバッグ情報ファイルを格納するデバッグ情報ファイルデータベースとを有し、
前記デバッグ情報表示処理手段は、前記デバッグ情報ファイルデータベースに格納されたデバッグ情報ファイルに基づいて、前記表示された行番号のうち前記最適化情報が示す行を識別表示することを特徴とするプログラム開発支援システム。
【請求項３】
請求項１または請求項２に記載のプログラム開発支援システムにおいて、
前記デバッグ情報表示処理手段は、前記表示された行番号のうち前記最適化情報が示す行を他の表示とは異なる色で表示することを特徴とするプログラム開発支援システム。
【請求項４】
請求項１または請求項２に記載のプログラム開発支援システムにおいて、
前記デバッグ情報表示処理手段は、前記表示された行番号のうち前記最適化情報が示す行を網掛け表示することを特徴とするプログラム開発支援システム。
【請求項５】
入力されたソフトウェアの仕様を記載した仕様書データに基づいて作成されたプログラムを検証するプログラム開発支援方法であって、
前記仕様書データに基づいてソースプログラムを生成する処理と、
前記ソースプログラムを生成した際に、前記仕様書データの頁および行番号と、それらから生成されたソースプログラムの行番号とを対応付けた対応情報を対応情報ファイルデータベースに格納する処理と、
前記ソースプログラムをコンパイルする処理と、
前記コンパイルした際に、前記ソースファイルのうち最適化された行番号を示す最適化情報を最適化情報ファイルデータベースに格納する処理と、
前記仕様書データを、前記対応情報ファイルデータベースに格納された対応情報に基づいて前記ソースプログラムの行番号を付加して表示する処理と、
前記仕様書データを表示する際に、前記表示された行番号のうち前記最適化情報ファイルデータベースに格納された前記最適化情報が示す行を識別表示する処理とを有するプログラム開発支援方法。
【請求項６】
請求項５に記載のプログラム開発支援方法において、
前記対応情報ファイルデータベースに格納された対応情報と前記最適化情報ファイルデータベースに格納された最適化情報とを対応付けたデバッグ情報ファイルをデバッグ情報ファイルデータベースに格納する処理と、
前記デバッグ情報ファイルデータベースに格納されたデバッグ情報ファイルに基づいて、前記表示された行番号のうち前記最適化情報が示す行を識別表示する処理とを有することを特徴とするプログラム開発支援方法。
【請求項７】
請求項５または請求項６に記載のプログラム開発支援方法において、
前記表示された行番号のうち前記最適化情報が示す行を他の表示とは異なる色で表示する処理を有することを特徴とするプログラム開発支援方法。
【請求項８】
請求項５または請求項６に記載のプログラム開発支援方法において、
前記表示された行番号のうち前記最適化情報が示す行を網掛け表示する処理を有することを特徴とするプログラム開発支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムの開発を支援するプログラム開発支援システムおよびプログラム開発支援方法に関する。
【背景技術】
【０００２】
ソフトウェアの仕様を記載した仕様書データを作成・入力することにより実行形式プログラムを作成するプログラム開発支援システムにおいて、仕様書データに表示される行番号を参照し、デバッガにてその行番号を指定することにより実行形式ファイルを検証（デバッグ）することが可能である。
【０００３】
しかしながら、実行形式ファイルを構成するオブジェクトファイルが、コンパイル処理のオブジェクト最適化モードで作成された場合、最適化処理によって一部の行番号のオブジェクトが存在しなくなる。そのため、仕様書データに表示される行番号を参照し、デバッガにてその行番号を指定しても、行番号が存在しないため、所望のデバッグができなくなってしまう。
【０００４】
そこで、ソースプログラムに最適化処理を施した場合、出力するテキストファイルに最適化処理の情報を挿入する方式が考えられている（例えば、特許文献１参照。）。これにより、最適化処理の情報が表示されることとなり、プログラムの検証が容易となる。
【特許文献１】特開平０８−０６３３６９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した方式においては、指摘されたテキスト形式の１行に対して、最適化情報の表示／非表示を判別表示している。そのため、仕様書データ全体についての最適化処理の情報を表示することができず、最適化処理の内容を仕様書データ上で視覚的に判断しにくいという問題点がある。
【０００６】
本発明は、上述した課題を解決するプログラム開発支援システムおよびプログラム開発支援方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために本発明は、
入力されたソフトウェアの仕様を記載した仕様書データに基づいて作成されたプログラムを検証するプログラム開発支援システムにおいて、
前記仕様書データに基づいてソースプログラムを生成するソース生成処理手段と、
前記ソースプログラムを生成した際に、前記仕様書データの頁および行番号と、それらから生成されたソースプログラムの行番号とを対応付けた対応情報を格納する対応情報ファイルデータベースと、
前記ソースプログラムをコンパイルするコンパイル処理手段と、
前記コンパイルした際に、前記ソースファイルのうち最適化された行番号を示す最適化情報を格納する最適化情報ファイルデータベースと、
前記仕様書データを、前記対応情報ファイルデータベースに格納された対応情報に基づいて前記ソースプログラムの行番号を付加して表示するデバッグ情報表示処理手段とを有し、
前記デバッグ情報表示処理手段は、前記表示された行番号のうち前記最適化情報ファイルデータベースに格納された前記最適化情報が示す行を識別表示することを特徴とする。
【０００８】
また、入力されたソフトウェアの仕様を記載した仕様書データに基づいて作成されたプログラムを検証するプログラム開発支援方法であって、
前記仕様書データに基づいてソースプログラムを生成する処理と、
前記ソースプログラムを生成した際に、前記仕様書データの頁および行番号と、それらから生成されたソースプログラムの行番号とを対応付けた対応情報を対応情報ファイルデータベースに格納する処理と、
前記ソースプログラムをコンパイルする処理と、
前記コンパイルした際に、前記ソースファイルのうち最適化された行番号を示す最適化情報を最適化情報ファイルデータベースに格納する処理と、
前記仕様書データを、前記対応情報ファイルデータベースに格納された対応情報に基づいて前記ソースプログラムの行番号を付加して表示する処理と、
前記前記仕様書データを表示する際に、前記表示された行番号のうち前記最適化情報ファイルデータベースに格納された前記最適化情報が示す行を識別表示する処理とを有する。
【発明の効果】
【０００９】
以上説明したように本発明においては、入力されたソフトウェアの仕様を記載した仕様書データに基づいてソースプログラムを生成し、その際、仕様書データの頁および行番号と、それらから生成されたソースプログラムの行番号とを対応付けた対応情報を格納し、ソースプログラムをコンパイルし、その際、ソースファイルのうち最適化された行番号を示す最適化情報を格納し、仕様書データを対応情報に基づいてソースプログラムの行番号を付加して表示する際に、表示された行番号のうち最適化情報が示す行を識別表示する構成としたため、仕様書データに基づいて作成された実行形式プログラムのデバッグを効率良く行うことができる。
【発明を実施するための最良の形態】
【００１０】
以下に、本発明の実施の形態について図面を参照して説明する。
【００１１】
図１は、本発明のプログラム開発支援システムが適用される装置の接続形態の一例を示す図である。
【００１２】
本接続形態は、端末１００と、ホスト３００とがネットワーク２００を介して接続されている形態である。
【００１３】
端末１００は、プログラムを開発するための開発用端末である。作業者は、端末１００に仕様書データを入力し、入力された仕様書データをネットワーク２００を介してホスト３００へ送信する。また、ホスト３００からネットワーク２００を介して送信されてきたプログラムのデバッグ情報を受信して表示する。
【００１４】
ホスト３００は、プログラムを検証（デバッグ）するデバッガが搭載されるデバッグ端末である。端末１００から送信されてきた仕様書データに基づいて、ソースファイルの生成、コンパイル、デバッグ情報の作成を行い、作成されたデバッグ情報をネットワーク２００を介して端末１００へ送信する。
【００１５】
図２は、本発明のプログラム開発支援システムの実施の一形態を示す図である。
【００１６】
本形態は図２に示すように、仕様書作成処理部１０１と、端末上の仕様書ファイルデータベース１０２と、通信処理部１０３と、ホスト上の仕様書ファイルデータベース１０４と、ソース生成処理部１０５と、ソースファイルデータベース１０６と、対応情報ファイルデータベース１０７と、コンパイル処理部１０８と、オブジェクトファイルデータベース１０９と、最適化情報ファイルデータベース１１０と、リンク処理部１１１と、実行形式ファイルデータベース１１２と、デバッグ情報作成処理部１１３と、ホスト上のデバッグ情報ファイルデータベース１１４と、デバッグ情報転送処理部１１５と、端末上のデバッグファイルデータベース１１６と、デバッグ情報表示処理部１１７とから構成されている。
【００１７】
ここで、図２に示した破線で囲った部分（構成要素）は、図１に示したホスト３００にて実現されるものであり、また、それ以外の部分（構成要素）は図２に示した端末１００にて実現されるものである。また、図２に示した各データベース（端末上の仕様書ファイルデータベース１０２、ホスト上の仕様書ファイルデータベース１０４、ソースファイルデータベース１０６、対応情報ファイルデータベース１０７、オブジェクトファイルデータベース１０９、最適化情報ファイルデータベース１１０、実行形式ファイルデータベース１１２、ホスト上のデバッグ情報ファイルデータベース１１４および端末上のデバッグファイルデータベース１１６）は、ネットワーク２００と接続された、端末１００およびホスト３００以外の装置（不図示）に設けられたものであっても良いし、これらのすべてのデータベースが端末１００もしくはホスト３００に設けられたものであっても良い。
【００１８】
仕様書作成処理部１０１は、端末１００上のエディタを用いて、作業者からの入力された仕様書データに基づいて仕様書ファイルを作成する。この仕様書ファイルの作成方法は、一般的なものと同じである。また、作成した仕様書ファイルを端末上の仕様書ファイルデータベース１０２に格納する。
【００１９】
図３は、図２に示した端末上の仕様書ファイルデータベース１０２に格納された仕様書ファイルの一例を示す図である。
【００２０】
図３に示すように端末上の仕様書ファイルデータベース１０２に格納された仕様書ファイル２１は、仕様書頁と、仕様書内行番号と、内容であるテキストデータとが対応付けられているものである。
【００２１】
例えば、仕様書頁「１」と、仕様書内行番号「３」と、テキスト「編集商品項目」とが対応付けられている。これは、仕様書データの１ページ目の１行目には「編集商品項目」が記載されていることを示している。他の対応付けに関しても同様である。
【００２２】
通信処理部１０３は、端末上の仕様書ファイルデータベース１０２に格納されている仕様書ファイルを読み出して、ネットワーク２００を介してホスト３００へ送信する。
【００２３】
ホスト上の仕様書ファイルデータベース１０４は、通信処理部１０３から送信されてきた仕様書ファイルを格納する。
【００２４】
ソース生成処理部１０５は、ホスト上の仕様書ファイルデータベース１０４に格納されている仕様書ファイルを読み出し、読み出した仕様書ファイルに基づいて、ソースファイルを生成する。このソースファイルの生成方法は、一般的なものと同じである。また、生成したソースファイルをソースファイルデータベース１０６に格納する。また、生成したソースファイルと、生成に使用した仕様書ファイルとを対応付けた対応情報を生成して対応情報ファイルデータベース１０７に格納する。
【００２５】
図４は、図２に示した対応情報ファイルデータベース１０７に格納された対応情報の一例を示す図である。
【００２６】
図４に示すように対応情報ファイルデータベース１０７に格納された対応情報１８は、仕様書データのページ番号を示す仕様書頁と、仕様書データ内の行番号を示す仕様書内行番号と、それらに基づいて生成されたソースプログラムの生成開始の行番号を示す生成開始行番号と、ソースプログラムの生成終了の行番号を示す生成終了行番号とが対応付けられているものである。
【００２７】
例えば、仕様書頁「１」と、仕様書内行番号「１」と、生成開始行番号「１」と、生成終了行番号「１」とが対応付けられている。これは、仕様書データの１ページ目の１行目に基づいて、ソースプログラムの１行目から１行目までが生成されていることを示している。他の対応付けに関しても同様である。
【００２８】
また、コンパイル処理部１０８は、ソースファイルデータベース１０６に格納されているソースファイルを読み出し、読み出したソースファイルを翻訳してオブジェクトファイルを生成する。このオブジェクトファイルの生成方法は、一般的なものと同じである。また、生成したオブジェクトファイルをオブジェクトファイルデータベース１０９に格納する。また、コンパイル処理部１０８が、ソースファイルを最適化してコンパイルを行った場合、最適化された行の行番号の情報を最適化情報として最適化情報ファイルデータベース１１０に格納する。
【００２９】
図５は、図２に示した最適化情報ファイルデータベース１１０に格納された最適化情報の一例を示す図である。
【００３０】
図５に示すように最適化情報ファイルデータベース１１０に格納された最適化情報１９は、最適化された行番号を示す最適化行番号を有している。
【００３１】
リンク処理部１１１は、オブジェクトファイルデータベース１０９に格納されているオブジェクトファイルを読み出し、読み出したオブジェクトファイルに基づいて、コンピュータ上で実行可能な実行形式ファイルを生成する。この実行形式ファイルの生成方法は、一般的なものと同じである。また、生成した実行形式ファイルを実行形式ファイルデータベース１１２に格納する。
【００３２】
デバッグ情報作成処理部１１３は、対応情報ファイルデータベース１０７に格納されている対応情報１８と、最適化情報ファイルデータベース１１０に格納されている最適化情報１９とを読み出し、読み出した対応情報１８と最適化情報１９とに基づいて、デバッグ情報ファイルを作成する。そして、生成したデバッグ情報ファイルをホスト上のデバッグ情報ファイルデータベース１１４に格納する。
【００３３】
図６は、図２に示したデバッグ情報作成処理部１１３における処理を説明するためのフローチャートである。
【００３４】
まず、対応情報ファイルデータベース１０７に格納されている対応情報１８の仕様書頁と仕様書内行番号とに対応付けられた生成開始行番号と生成終了行番号とが１行ずつ読み出される（ステップＳ１）。
【００３５】
このとき、仕様書内行番号があるかどうかが判断される（ステップＳ２）。つまり、対応情報１８が１行ずつシーケンシャルに読み出されるため、この判断により、対応情報１８すべてについての処理が終わったかどうかが判断できる。
【００３６】
仕様書内行番号がないと判断された場合、処理は終了する。
【００３７】
一方、仕様書内行番号があると判断された場合、読み出された対応情報１８に含まれる生成開始行番号が、最適化情報１９に含まれる最適化行番号以下であるかどうかが判断される（ステップＳ３）。
【００３８】
生成開始行番号が最適化情報１９に含まれる最適化行番号以下である場合、読み出された対応情報１８に含まれる生成終了行番号が、最適化情報１９に含まれる最適化行番号以上であるかどうかが判断される（ステップＳ４）。
【００３９】
生成終了行番号が最適化情報１９に含まれる最適化行番号以上である場合、最適化情報が「１（最適化あり）」に設定され、当該仕様書頁と仕様書内行番号とに対応付けられる（ステップＳ５）。
【００４０】
一方、ステップＳ３にて、生成開始行番号が最適化情報１９に含まれる最適化行番号以下ではない場合、または、ステップＳ４にて、生成終了行番号が最適化情報１９に含まれる最適化行番号以上ではない場合は、最適化情報が「０（最適化なし）」に設定され、当該仕様書頁と仕様書内行番号とに対応付けられる（ステップＳ６）。
【００４１】
そして、ステップＳ５およびステップＳ６にて、仕様書頁、仕様書内行番号、生成開始行番号および生成終了行番号とに対応付けられた最適化情報が、ホスト上のデバッグ情報ファイルデータベース１１４に格納（追加）される（ステップＳ７）。この対応付けをデバッグ情報ファイルとする。
【００４２】
図７は、図２に示したホスト上のデバッグ情報ファイルデータベース１１４に格納されているデバッグ情報ファイルの一例を示す図である。
【００４３】
図７に示すように、ホスト上のデバッグ情報ファイルデータベース１１４に格納されているデバッグ情報ファイル２０は、仕様書頁と、仕様書内行番号と、生成開始行番号と、生成終了行番号と、最適化情報とが対応付けられている。
【００４４】
例えば、仕様書頁「１」と、仕様書内行番号「１」と、生成開始行番号「１」と、生成終了行番号「１」と、最適化情報「０」とが対応付けられている。これは、仕様書データの１ページ目の１行目に基づいて、ソースプログラムの１行目から１行目までが生成されており、それらから生成されたオブジェクトファイルは最適化されていないことを示している。また、仕様書頁「１」と、仕様書内行番号「１０」と、生成開始行番号「８」と、生成終了行番号「８」と、最適化情報「１」とが対応付けられている。これは、仕様書データの１ページ目の１０行目に基づいて、ソースプログラムの８行目から８行目までが生成されており、それらから生成されたオブジェクトファイルは最適化されていることを示している。他の対応付けに関しても同様である。
【００４５】
また、デバッグ情報転送処理部１１５は、ホスト上のデバッグ情報ファイルデータベース１１４に格納されているデバッグ情報ファイル２０を読み出し、ネットワーク２００を介して端末１００へ送信する。
【００４６】
端末上のデバッグファイルデータベース１１６は、デバッグ情報転送処理部１１５から送信されてきたデバッグ情報ファイル２０を格納する。
【００４７】
デバッグ情報表示処理部１１７は、端末上の仕様書ファイルデータベース１０２に格納されている仕様書ファイル２１と、端末上のデバッグファイルデータベース１１６に格納されているデバッグ情報ファイル２０とを表示する。この表示は、端末１００に設けられたディスプレイ等に表示するものである。またこのとき、仕様書ファイル２１にデバッグ情報ファイル２０が重畳されて表示される。具体的には、仕様書ファイル２１に対応するソースファイルの行番号が表示され、最適化が行われた行には、色分け等の識別できる表示が施される。
【００４８】
図８は、図２に示したデバッグ情報表示処理部１１７における処理を説明するためにフローチャートである。
【００４９】
まず、仕様書ファイル２１から仕様書情報が読み出される（ステップＳ１１）。ここで、仕様書情報とは、図３に示した仕様書頁、仕様書内行番号およびテキストである。
【００５０】
続いて、デバッグ情報ファイル２０から最適化ありの仕様書頁と仕様書内行番号とが読み出される（ステップＳ１２）。
【００５１】
すると、仕様書ファイル２１が、仕様書ファイル２１に対応するソースファイルの行番号が付加された状態で表示され、ステップＳ１２にて読み出された最適化ありの部分に網掛けが施される（ステップＳ１３）。
【００５２】
そして、最適化ありの部分に網掛けが施された仕様書ファイルが表示される（ステップＳ１４）。この網掛けについては、上述したように色分け等の識別できる表示（識別表示）が施されるものであっても良い。
【００５３】
図９は、ステップＳ１４の処理にて端末１００に表示された仕様書ファイルの一例を示す図である。
【００５４】
図９に示すように、端末１００には、ソースファイルの行番号が付加された仕様書ファイルが表示され、最適化された行（０００８、００２１および００２２）が仕様書データ上で識別可能に表示されている。
【００５５】
このように、作業者（利用者）が仕様書データを入力（作成）するのみで実行可能なプログラムを作成し、実行時に、デバッグを行う際に生成したソースファイルの行番号を参照し、かつ、オブジェクトファイルが最適化された場合であっても、その行番号とその内容が認識できる。これにより、効率よくデバッグ出来るという効果を有している。
【図面の簡単な説明】
【００５６】
【図１】本発明のプログラム開発支援システムが適用される装置の接続形態の一例を示す図である。
【図２】本発明のプログラム開発支援システムの実施の一形態を示す図である。
【図３】図２に示した端末上の仕様書ファイルデータベースに格納された仕様書ファイルの一例を示す図である。
【図４】図２に示した対応情報ファイルデータベースに格納された対応情報の一例を示す図である。
【図５】図２に示した最適化情報ファイルデータベースに格納された最適化情報の一例を示す図である。
【図６】図２に示したデバッグ情報作成処理部における処理を説明するためのフローチャートである。
【図７】図２に示したホスト上のデバッグ情報ファイルデータベースに格納されているデバッグ情報ファイルの一例を示す図である。
【図８】図２に示したデバッグ情報表示処理部における処理を説明するためにフローチャートである。
【図９】ステップＳ１４の処理にて端末に表示された仕様書ファイルの一例を示す図である。
【符号の説明】
【００５７】
１８    対応情報
１９    最適化情報
２０    デバッグ情報ファイル
２１    仕様書ファイル
１００    端末
１０１    仕様書作成処理部
１０２    端末上の仕様書ファイルデータベース
１０３    通信処理部
１０４    ホスト上の仕様書ファイルデータベース
１０５    ソース生成処理部
１０６    ソースファイルデータベース
１０７    対応情報ファイルデータベース
１０８    コンパイル処理部
１０９    オブジェクトファイルデータベース
１１０    最適化情報ファイルデータベース
１１１    リンク処理部
１１２    実行形式ファイルデータベース
１１３    デバッグ情報作成処理部
１１４    ホスト上のデバッグ情報ファイルデータベース
１１５    デバッグ情報転送処理部
１１６    端末上のデバッグ情報ファイルデータベース
１１７    デバッグ情報表示処理部
２００    ネットワーク
３００    ホスト
【図１】
2010049474.tif 000003
【図２】
2010049474.tif 000004
【図３】
2010049474.tif 000005
【図４】
2010049474.tif 000006
【図５】
2010049474.tif 000007
【図６】
2010049474.tif 000008
【図７】
2010049474.tif 000009
【図８】
2010049474.tif 000010
【図９】
2010049474.tif 000011