(57)【要約】【課題】プログラム設計書等のドキュメントからソースコードを生成し、そのソースコードを修正して業務アプリケーションを開発する際の開発効率を向上させる。【解決手段】情報処理装置１は、ドキュメント１２１及びドキュメント／ソースコード対応テーブル１２２を元に解析してソースコード名／プログラム動作記憶領域１２３に格納し、この解析情報と雛形ソースコード１２５とに基づいて生成した生成ソースコード１２６及び編集作業により変更された変更ソースコード１２７をソースコード解析部１１３で比較してその相違情報をソースコード名／プログラム動作記憶領域１２３に格納し、そのソースコード名／プログラム動作記憶領域１２３に格納された情報、ドキュメント／ソースコード対応テーブル１２２及びドキュメント１２１を元に、変更ソースコード１２７に対応するドキュメントをドキュメント生成部１１４で生成する。【選択図】図２
2007272269.tif 000002
【特許請求の範囲】
【請求項１】
業務アプリケーションプログラムの設計情報を解析する解析手段と、前記解析手段により解析された結果に基づいて前記設計情報に対応するソースコードを生成するソースコード生成手段と、前記解析手段及び前記ソースコード生成手段が参照する設計情報とソースコードとの対応関係を示す対応関係情報を記憶する記憶手段と、を備えた情報処理装置において、
前記ソースコードが変更された場合に当該変更ソースコードを解析し、前記変更後のソースコードの内容と変更前のソースコードの内容との相違を示す相違情報を取得するソースコード解析手段と、
前記解析手段の解析結果情報、前記ソースコード解析手段からの相違情報及び前記記憶手段に記憶されている対応関係情報に基づいて、前記変更されたソースコードに対応する設計情報を生成する設計情報生成手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
前記ソースコード解析手段は、前記変更後のソースコードとの内容と変更前のソースコードの内容のうち、前記記憶手段に記憶されている対応関係情報に該当する部分についての相違情報を取得することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記ソースコード解析手段は、前記変更後のソースコードの内容及び変更前のソースコードの内容から、変更後のソースコードに追加された部分の相違情報を取得し、
前記設計情報生成手段は、前記変更後のソースコードに追加された部分の相違情報及び前記記憶手段に記憶されている対応関係情報に基づいて、前記解析手段で解析される業務アプリケーションプログラムの設計情報に追加して前記変更後のソースコードに対応する設計情報を生成することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記ソースコード解析手段は、前記変更後のソースコードの内容及び変更前のソースコードの内容から、変更後のソースコードで削除された部分の相違情報を取得し、
前記設計情報生成手段は、前記変更後のソースコードで削除された部分の相違情報及び前記記憶手段に記憶されている対応関係情報に基づいて、前記解析手段で解析される業務アプリケーションプログラムの設計情報を削除して前記変更後のソースコードに対応する設計情報を生成することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項５】
コンピュータを、
業務アプリケーションプログラムの設計情報を解析する解析手段、
前記解析手段により解析された結果に基づいて前記設計情報に対応するソースコードを生成するソースコード生成手段、
前記解析手段及び前記ソースコード生成手段が参照する設計情報とソースコードとの対応関係を示す対応関係情報を記憶する記憶手段、
前記ソースコードが変更された場合に当該変更ソースコードを解析し、前記変更後のソースコードの内容と変更前のソースコードの内容との相違を示す相違情報を取得するソースコード解析手段、
前記解析手段の解析結果情報、前記ソースコード解析手段からの相違情報及び前記記憶手段に記憶されている対応関係情報に基づいて、前記変更されたソースコードに対応する設計情報を生成する設計情報生成手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムの詳細な仕様を記載したドキュメントからソースコードを生成して業務アプリケーション等を開発する情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
従来の業務アプリケーション等の開発においては、先ず、机上で業務内容などに合わせて画面構成、処理対象である業務データの指定、その業務データに対する処理内容などの設計情報を、プログラム設計書（仕様書）等のドキュメントとして表す。次いで、そのドキュメントを元に変換ツールなどを使用して、雛形となるプログラムのソースコードを自動生成する。プログラマは、その生成されたソースコードを元に、修正を加えてコンパイルし、情報処理装置で実行可能な業務アプリケーションを作成する。
【０００３】
例えば、特許文献１には、オブジェクト指向プログラム等の開発において、プログラム改訂のための変更後の設計ドキュメントから再びプログラムソースコードを自動作成する際に、元のプログラムソースコードと設計ドキュメントの変更に伴うソースコードの追加部分とを区別する技術が開示されている。
【特許文献１】特開平１１−１９１０６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述した従来技術では、ドキュメントから変更を行う場合やプログラマがドキュメントから生成されたソースコードの中で個別の変数名の変更など、当該ドキュメントにおける処理内容等に影響しない部分の修正を行う場合には、その生成されたソースコードとドキュメントの内容に齟齬が生じることはなかった。しかしながら、ソースコードの修正時に処理対象である業務データの指定を増やす場合や新たな処理を追加する場合などには、修正後のソースコードとドキュメントの内容が一致しない場合があった。
【０００５】
このため、ドキュメントを作成する人とプログラマとが協働して業務アプリケーションを開発する際に、従来技術では、プログラマが変更したソースコードの内容をドキュメントに転記する必要があり、不便であった。また、プログラマ側で転記ミスや記載漏れなどがあった場合にドキュメントから業務アプリケーションの不具合の特定などを行うことができず、開発効率の低下を招いていた。
【０００６】
本発明の課題は、プログラム設計書等のドキュメントからソースコードを生成し、そのソースコードを修正して業務アプリケーションを開発する際の開発効率を向上させることである。
【課題を解決するための手段】
【０００７】
請求項１に記載の発明は、業務アプリケーションプログラムの設計情報を解析する解析手段と、前記解析手段により解析された結果に基づいて前記設計情報に対応するソースコードを生成するソースコード生成手段と、前記解析手段及び前記ソースコード生成手段が参照する設計情報とソースコードとの対応関係を示す対応関係情報を記憶する記憶手段と、を備えた情報処理装置において、前記ソースコードが変更された場合に当該変更ソースコードを解析し、前記変更後のソースコードの内容と変更前のソースコードの内容との相違を示す相違情報を取得するソースコード解析手段と、前記解析手段の解析結果情報、前記ソースコード解析手段からの相違情報及び前記記憶手段に記憶されている対応関係情報に基づいて、前記変更されたソースコードに対応する設計情報を生成する設計情報生成手段と、を備えたことを特徴とする。
【０００８】
請求項２に記載の発明は、請求項１に記載の発明において、前記ソースコード解析手段は、前記変更後のソースコードとの内容と変更前のソースコードの内容のうち、前記記憶手段に記憶されている対応関係情報に該当する部分についての相違情報を取得することを特徴とする。
【０００９】
請求項３に記載の発明は、請求項１又は２に記載の発明において、前記ソースコード解析手段は、前記変更後のソースコードの内容及び変更前のソースコードの内容から、変更後のソースコードに追加された部分の相違情報を取得し、前記設計情報生成手段は、前記変更後のソースコードに追加された部分の相違情報及び前記記憶手段に記憶されている対応関係情報に基づいて、前記解析手段で解析される業務アプリケーションプログラムの設計情報に追加して前記変更後のソースコードに対応する設計情報を生成することを特徴とする。
【００１０】
請求項４に記載の発明は、請求項１又は２に記載の発明において、前記ソースコード解析手段は、前記変更後のソースコードの内容及び変更前のソースコードの内容から、変更後のソースコードで削除された部分の相違情報を取得し、前記設計情報生成手段は、前記変更後のソースコードで削除された部分の相違情報及び前記記憶手段に記憶されている対応関係情報に基づいて、前記解析手段で解析される業務アプリケーションプログラムの設計情報を削除して前記変更後のソースコードに対応する設計情報を生成することを特徴とする。
【００１１】
請求項５に記載の発明は、コンピュータを、業務アプリケーションプログラムの設計情報を解析する解析手段、前記解析手段により解析された結果に基づいて前記設計情報に対応するソースコードを生成するソースコード生成手段、前記解析手段及び前記ソースコード生成手段が参照する設計情報とソースコードとの対応関係を示す対応関係情報を記憶する記憶手段、前記ソースコードが変更された場合に当該変更ソースコードを解析し、前記変更後のソースコードの内容と変更前のソースコードの内容との相違を示す相違情報を取得するソースコード解析手段、前記解析手段の解析結果情報、前記ソースコード解析手段からの相違情報及び前記記憶手段に記憶されている対応関係情報に基づいて、前記変更されたソースコードに対応する設計情報を生成する設計情報生成手段、として機能させるためのプログラムである。
【発明の効果】
【００１２】
請求項１、５に記載の発明によれば、業務アプリケーションプログラムの設計情報を解析して生成されたソースコードを変更した際に、その変更されたソースコードに対応する設計情報を生成することができるため、業務アプリケーションプログラムの設計情報から生成したソースコードを修正して業務アプリケーションを開発する際の開発効率を向上させることができる。
【００１３】
また、請求項２に記載の発明によれば、ソースコード解析手段は変更後のソースコードの内容と変更前のソースコードの内容のうち、設計情報とソースコードとの対応関係を示す対応関係情報に該当する部分についての相違情報を取得することができるため、設計情報とソースコードとが対応する部分についてのみ変更されたソースコードに対応する設計情報を生成することができ、設計情報とソースコードとが対応しない余計な部分についての業務アプリケーションプログラムの設計情報の生成を防ぐことができるため、業務アプリケーションを開発する際の開発効率を向上させることができる。
【００１４】
また、請求項３に記載の発明によれば、変更後のソースコードに追加された部分の相違情報を取得し、この変更後のソースコードに追加された部分の相違情報及び前記記憶手段に記憶されている対応関係情報に基づいて、前記解析手段で解析される業務アプリケーションプログラムの設計情報に追加して前記変更後のソースコードに対応する設計情報を生成することができるため、生成されたソースコードに追加する場合でもその追加後のソースコードに応じた業務アプリケーションプログラムの設計情報を生成することができ、業務アプリケーションを開発する際の開発効率を向上させることができる。
【００１５】
また、請求項４に記載の発明によれば、変更後のソースコードで削除された部分の相違情報を取得し、この変更後のソースコードで削除された部分の相違情報及び前記記憶手段に記憶されている対応関係情報に基づいて、前記解析手段で解析される業務アプリケーションプログラムの設計情報を削除して前記変更後のソースコードに対応する設計情報を生成することができるため、生成されたソースコードを削除する場合でもその削除後のソースコードに応じた業務アプリケーションプログラムの設計情報を生成することができ、業務アプリケーションを開発する際の開発効率を向上させることができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施の形態について図１〜図２１を参照して説明する。なお、この実施の形態は発明の最も好ましい形態を示すものであり、特にこの形態に限定するものではない。
【００１７】
図１は、本実施の形態における情報処理装置１の機能的構成を模式的に示したブロック図である。図２は、情報処理装置１におけるドキュメントからソースコードの生成又はソースコードからドキュメントの生成の概略を説明する概略図である。図３は、ドキュメント１２１の内容を例示する概略図である。図４は、ドキュメント／ソースコード対応テーブル１２２の内容を例示する概略図である。図５（ａ）は、ソースコード名の取得に関するドキュメント解析処理を示すフローチャートであり、図５（ｂ）は、ソースコード名の取得に関するドキュメント解析処理でソースコード名／プログラム動作記憶領域１２３に格納される情報を例示する概略図である。図６は、プログラム動作の取得に関するドキュメント解析処理を示すフローチャートである。図７〜図９は、プログラム動作の取得に関するドキュメント解析処理でソースコード名／プログラム動作記憶領域１２３に格納される情報を例示する概念図である。図１０は、ソースコード生成処理を示すフローチャートである。図１１は、雛形ソースコード１２５の内容を例示する概念図である。図１２〜図１５は、ソースコード生成処理で生成される生成ソースコード１２６を例示する概念図である。図１６は、ソースコード解析処理を示すフローチャートである。図１７〜図１９は、ソースコード解析処理でソースコード名／プログラム動作記憶領域１２３に格納される情報を例示する概念図である。図２０は、ドキュメント生成処理を示すフローチャートである。図２１は、ドキュメント生成処理で生成されるドキュメント１２１ａの内容を例示する概略図である。
【００１８】
先ず、情報処理装置１の構成について説明する。図１に示すように、情報処理装置１は、制御装置１１、記憶装置１２、表示装置１３、入力装置１４、通信装置１５及び印刷装置１６を備え、各部はバス１７により互いに電気的に接続されてなる。情報処理装置１は具体的には上記構成を含むＰＣ（Personal  Computer）やＷＳ（Work  Station）などの情報機器である。
【００１９】
制御装置１１は、特に図示しないＣＰＵ（Central  Processing  Unit）やＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）などを備え、ＣＰＵにおいてＲＡＭの所定領域を作業領域とし、ＲＯＭや記憶装置１２に格納された各種制御プログラム１２４を読み込んで順次実行することで、情報処理装置１の動作を統括制御する。
【００２０】
具体的には図２に示すように、制御装置１１は、記憶装置１２に格納された各種制御プログラム１２４を順次実行することで、業務アプリケーションプログラムの設計情報であるドキュメント１２１をドキュメントの内容と所定のプログラム言語におけるソースコードの定義との対応情報を格納するドキュメント／ソースコード対応テーブル１２２を元に解析し、ドキュメントの内容に基づいて所定のプログラム言語で記述されたソースコードを生成する際に必要な情報を取得してソースコード名／プログラム動作記憶領域１２３に格納するドキュメント解析部１１１と、そのソースコード名／プログラム動作記憶領域１２３に格納された情報と雛形ソースコード１２５とを元に生成ソースコード１２６を生成するソースコード生成部１１２としての機能を実現する。
【００２１】
同様に、制御装置１１は、生成ソースコード１２６と編集作業により変更された変更ソースコード１２７とを比較して得られる相違部分に関する情報をソースコード名／プログラム動作記憶領域１２３に格納するソースコード解析部１１３と、そのソースコード名／プログラム動作記憶領域１２３に格納された相違部分に関する情報やソースコードの生成時にソースコード名／プログラム動作記憶領域１２３に格納された情報及びドキュメント／ソースコード対応テーブル１２２を元にドキュメント１２１を生成するドキュメント生成部１１４としての機能を実現する。なお、制御装置１１は、対応関係設定プログラム１２４ａを順次実行することで、入力装置１４から入力される情報を元にドキュメント／ソースコード対応テーブル１２２の対応情報を設定する機能を有する構成であってよい。
【００２２】
記憶装置１２は、ＨＤＤ（Hard  Disk  Drive）や不揮発性メモリ又は光学／磁気的な記憶媒体とそれに対して読み書きが可能な装置であり、制御装置１１からの指示によりデータの格納や読み出したデータの制御装置１１への出力を行う。具体的には、記憶装置１２は、ドキュメント１２１、ドキュメント／ソースコード対応テーブル１２２、ソースコード名／プログラム動作記憶領域１２３、各種制御プログラム１２４、雛形ソースコード１２５、生成ソースコード１２６及び変更ソースコード１２７を格納する。
【００２３】
ドキュメント１２１は、業務アプリケーションプログラムにおける業務処理毎の設計情報であり、業務処理を区別するための名称であるドキュメント名が含まれるとともに、その業務処理における画面レイアウト、入力する業務データ項目一覧、表示する業務データ項目一覧、この処理で更新されるファイル情報やその項目情報等の設計情報が含まれている。このドキュメント１２１における設計情報は、テキストデータなどに記述してもよいが、ＨＴＭＬ（HyperText Markup Language）やワードプロセッサなどのアプリケーションプログラムで作成された文書データに記述するものであってよく、ブラウザやワードプロセッサの編集画面などで見易く整形して記載するものであってよい。
【００２４】
具体的には図３に示すように、ドキュメント１２１は、得意先のデータ登録を行う業務処理の内容を示すものであり、ドキュメント名として「得意先登録設計書」が記載され、画面レイアウトとしてその業務処理時の画面構成を示すイメージデータなどが添付され、その業務処理で入力する項目である「得意先コード」・「得意先名」・「担当者コード」、その業務処理で表示する項目である「担当者名」及びその業務処理で更新するファイルである「得意先ＭＴ」とその更新項目一覧などが表などで見易く記載された文書データである。
【００２５】
ドキュメント／ソースコード対応テーブル１２２は、ドキュメントに記載される業務処理の内容を示す際に記述されるキーワードと所定のプログラム言語で記述されるソースコードにおけるオブジェクト名・関数名・変数名などの定義記載との対応情報が格納されたデータテーブルである。
【００２６】
具体的には図４に示すように、ドキュメント／ソースコード対応テーブル１２２は、ドキュメントに記載された「ドキュメント名」と「ソースコード名」との対応を示すドキュメント／ソースコード名称対応テーブル１２２ａや、所定のドキュメント名のドキュメント内で記載される「キーワード」に対してソースコードでの定義内容である「プログラム動作」の対応関係を示すドキュメント／ソースコード動作対応テーブル１２２ｂなどである。なお、ドキュメント／ソースコード動作対応テーブル１２２ｂでは、プログラム動作における「更新指定」のように、複数のキーワードが一つのプログラム動作に設定されてもよい。
【００２７】
表示装置１３は、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode  Ray  Tube）などのディスプレイであり、制御装置１１から入力される画像信号に応じた画像を画面上に表示する。入力装置１４は、キーボードやマウスなどであり、利用者からの操作指示を受け付けて制御装置１１へ出力する。通信装置１５は、無線通信回路及びアンテナや、有線で通信を行うための通信インターフェイスを備えた回路部であり、特に図示しない無線／有線ＬＡＮ、インターネットなどの通信ネットワークと接続し、当該通信ネットワークと接続する他の情報機器との間で制御装置１１の指示に応じたデータの送受信を行う。印刷装置１６は、電子写真方式やインクジェット方式などにより紙などの記録媒体に制御装置１１からの指示に応じた画像を形成するプリンタである。
【００２８】
次に、図２に示した制御装置１１が制御プログラムを実行して実現するドキュメント解析部１１１及びソースコード生成部１１２によりドキュメント１２１と雛形ソースコード１２５から生成ソースコード１２６を生成する処理について詳細に説明する。先ず、ドキュメント解析部１１１で行われるドキュメント解析処理について説明する。
【００２９】
図５（ａ）に示すように、制御装置１１は、ドキュメント１２１を１行読み込み（ステップＳ１１）、ドキュメント／ソースコード名称対応テーブル１２２ａに格納されたキーワードの「ドキュメント名」がその行に存在するか否かを判定し（ステップＳ１２）、存在する場合はその「ドキュメント名」に対応する「ソースコード名」をソースコード名／プログラム動作記憶領域１２３のソースコード名記憶領域に格納する（ステップＳ１３）。ステップＳ１２で存在しないと判定された場合はドキュメントの最終行まで１行ずつインクリメントして（ステップＳ１４、Ｓ１５）、ステップＳ１１、Ｓ１２の処理が行われる。
【００３０】
情報処理装置１は、このドキュメント解析処理（ソースコード名）により、例えばドキュメント名に「得意先登録設計書」が記載されている場合（図３を参照）、図５（ｂ）に示すように、ドキュメント／ソースコード名称対応テーブル１２２ａの内容から（図４を参照）対応するソースコード名としての「得意先登録」がソースコード名／プログラム動作記憶領域１２３のソースコード名格納領域に格納される。
【００３１】
図６に示すように、制御装置１１は、ドキュメントの最初から最後まで一行ずつ読み込むループ処理（ステップＳ２１〜Ｓ３０）を行う。このループ処理では、読み込んだ行の内容にドキュメント／ソースコード動作対応テーブル１２２ｂに格納された「キーワード」が存在するか否かが判定され（ステップＳ２２）、存在すると判定された場合はそのキーワードに対応する「プログラム動作」をソースコード名／プログラム動作記憶領域１２３に格納するように設定する（ステップＳ２３）。
【００３２】
ステップＳ２２で存在しないと判定された場合は、既にステップＳ２３の処理が前の行の読み込み時などに行われるなどして、所定のプログラム動作をソースコード名／プログラム動作記憶領域１２３に格納するように設定済みであるか否かが判定され（ステップＳ２４）、設定済みでない場合はそのまま次のループ処理へ移行する。
【００３３】
ステップＳ２４で設定済みであると判定された場合は、その設定済みのプログラム動作がレイアウト定義であるか否かが判定され（ステップＳ２５）、レイアウト定義である場合は、その行の位置に添付された画面レイアウトに関する画像データに含まれる文字内容・位置やボックス位置の取得などの画像解析が行われ（ステップＳ２６）、その画像解析により得られた画像の内容に応じた動作対象をソースコード名／プログラム動作記憶領域１２３に格納するように設定される（ステップＳ２７）。
【００３４】
また、ステップＳ２５でレイアウト定義でないと判定された場合は、行に記載された内容に応じた動作対象をソースコード名／プログラム動作記憶領域１２３に格納するように設定される（ステップＳ２８）。次いで、ステップＳ２３で設定されたプログラム動作とステップＳ２７、Ｓ２８で設定された動作対象とがソースコード名／プログラム動作記憶領域１２３へ格納され（ステップＳ２９）、次のループ処理へ移行する。
【００３５】
情報処理装置１は、このドキュメント解析処理（プログラム動作）により、例えば図３に示したドキュメント１２１の「画面レイアウト」から、図７に示すように、ドキュメント／ソースコード動作対応テーブル１２２ｂの内容（図４を参照）を元にプログラム動作としての「レイアウト定義」がソースコード名／プログラム動作記憶領域１２３に格納される。また、図７に示すように、ドキュメント１２１の「画面レイアウト」の次に添付されたイメージデータを元にして、「得意先コード」、「得意先名」、「担当者コード」、「担当者名」及びその座標値がプログラム動作である「レイアウト定義」に対応づけられた動作対象としてソースコード名／プログラム動作記憶領域１２３に格納される。
【００３６】
また、情報処理装置１は、このドキュメント解析処理（プログラム動作）により、例えば図３に示したドキュメント１２１の「入力項目一覧」から、図８に示すように、ドキュメント／ソースコード動作対応テーブル１２２ｂの内容を元にプログラム動作としての「入力項目定義追加」がソースコード名／プログラム動作記憶領域１２３に格納される。また、図８に示すように、ドキュメント１２１の「入力項目一覧」に次いで記載された「得意先コード」、「得意先名」「担当者コード」がプログラム動作である「入力項目定義追加」に対応づけられた動作対象としてソースコード名／プログラム動作記憶領域１２３に格納される。同様に、図３に示したドキュメント１２１の「表示項目一覧」とそれに次いで記載された「担当者名」から、図８に示すように、プログラム動作としての「表示項目定義追加」とそれに対応づけられた動作対象としての「担当者名」がソースコード名／プログラム動作記憶領域１２３に格納される。
【００３７】
また、情報処理装置１は、このドキュメント解析処理（プログラム動作）により、例えば図３に示したドキュメント１２１の「更新ファイル」から、図９に示すように、ドキュメント／ソースコード動作対応テーブル１２２ｂの内容を元にプログラム動作としての「更新指定」がソースコード名／プログラム動作記憶領域１２３に格納される。また、図９に示すように、ドキュメント１２１の「更新ファイル」、「更新先項目一覧」、「更新元項目一覧」などに次いで記載された「得意先ＭＴ」、「得意先コード」、「得意先名」、「担当者コード」がプログラム動作である「更新指定」に対応づけられた動作対象としてソースコード名／プログラム動作記憶領域１２３に格納される。
【００３８】
次に、ソースコード生成部１１２で行われるソースコード生成処理について説明する。図１０に示すように、制御装置１１は、雛形ソースコード１２５に対してソースコード名／プログラム動作記憶領域１２３に格納したプログラム動作に該当する箇所の検索を行い（ステップＳ４１）、該当する箇所があるか否かを判定し（ステップＳ４２）、該当箇所が無い場合はそのまま処理を終了する。
【００３９】
該当箇所がある場合は、ソースコード名／プログラム動作記憶領域１２３に格納された全ての動作対象を雛形ソースコード１２５のプログラム動作に該当する箇所に追加され（ステップＳ４３）、その追加された雛形ソースコード１２５に対してソースコード名／プログラム動作記憶領域１２３に格納されたソースコード名で名称付けが行われ、生成ソースコード１２６として記憶装置１２に保存されて（ステップＳ４４）、終了する。
【００４０】
上述したソースコード生成処理における雛形ソースコード１２５は、図１１に示すように、プログラムの基本的な処理の流れを定義した領域以外に、ドキュメントの内容に基づいて、ソースコード名、レイアウト、入力項目、表示項目、更新処理などの定義を行う領域を有する構成である。
【００４１】
情報処理装置１は、このドキュメント生成処理により、図１２に示すように、ソースコード名／プログラム動作記憶領域１２３に格納されたソースコード名としての「得意先登録」が雛形ソースコード１２５のソースコード名を定義する部分に追加された生成ソースコード１２６を生成する。
【００４２】
また、情報処理装置１は、図１３に示すように、プログラム動作としての「レイアウト定義」の動作対象が雛形ソースコード１２５のレイアウトを定義する部分に追加された生成ソースコード１２６を生成する。同様に、情報処理装置１は、図１４に示すように、プログラム動作としての「入力項目定義追加」の動作対象が雛形ソースコード１２５の入力項目を定義する部分に追加された生成ソースコード１２６を生成する。同様に、情報処理装置１は、プログラム動作としての「表示項目定義追加」の動作対象が雛形ソースコード１２５の表示項目を定義する部分に追加された生成ソースコード１２６を生成する。同様に、情報処理装置１は、図１５に示すように、プログラム動作としての「更新指定」の動作対象が雛形ソースコード１２５の更新処理を定義する部分に追加された生成ソースコード１２６を生成する。
【００４３】
次に、ソースコード解析部１１３で行われるソースコード解析処理について説明する。図１６に示すように、制御装置１１は、生成ソースコード１２６と特に図示しない編集処理により生成された変更ソースコード１２７との比較を行い（ステップＳ５１）、当該ソースコードの記載について相違があるか否かを判定し（ステップＳ５２）、相違がない場合はそのまま処理を終了する。
【００４４】
ステップＳ５２において相違があると判定された場合は、その相違のある個所（記載）がドキュメント／ソースコード対応テーブル１２２で定義された動作個所、つまり、ソースコードの定義に対してドキュメントにおける処理内容が定義されている個所（記載）であるか否かが判定される（ステップＳ５３）。ここでドキュメント／ソースコード対応テーブル１２２で定義されていない場合、つまり、ドキュメントにおける処理内容に反映されないソースコードの定義などである場合はソースコード名／プログラム動作記憶領域１２３へ変更部分の記述を行うこと無く、そのまま処理を終了する。
【００４５】
ステップＳ５３においてドキュメント／ソースコード対応テーブル１２２で定義されている個所である場合は、変更した記述の種類が判定される（ステップＳ５４）。ステップＳ５４において変更した記述の種類が新たな定義の追加や変更などの「追加」である場合は、変更前には存在しない定義であることを示す情報（追加フラグなど）とその変更後の記述がソースコード名／プログラム動作記憶領域１２３に格納されて（ステップＳ５５）、終了する。また、ステップＳ５４において変更した記述の種類が変更前の記述の削除などの「削除」である場合は、ソースコード名／プログラム動作記憶領域１２３における変更前の該当部分に、変更後は削除されたことを示す情報（削除フラグなど）が格納されて（ステップＳ５６）、終了する。
【００４６】
情報処理装置１は、このソースコード解析処理により、例えば図１７に示すように、生成ソースコード１２６のレイアウト定義部分から「得意先名」の記述を削除して「得意先フリガナ」と「担当者フリガナ」の記述を追加するように変更ソースコード１２７に記述した場合、ソースコード名／プログラム動作記憶領域１２３に格納されている「得意先名」に係る部分を削除する削除フラグと新たに追加する定義部分と追加フラグとを新たにソースコード名／プログラム動作記憶領域１２３に格納する。
【００４７】
同様に、情報処理装置１は、例えば図１８に示すように、生成ソースコード１２６の入力項目定義部分から「得意先名」の記述を削除して「得意先フリガナ」の記述を追加するように変更ソースコード１２７に記述した場合、ソースコード名／プログラム動作記憶領域１２３に格納されている「得意先名」に係る部分を削除する削除フラグと新たに追加する定義部分と追加フラグとを新たにソースコード名／プログラム動作記憶領域１２３に格納する。また、情報処理装置１は、生成ソースコード１２６の表示項目定義部分に「担当者フリガナ」の記述を追加するように変更ソースコード１２７に記述した場合、ソースコード名／プログラム動作記憶領域１２３に新たに追加する定義部分である「担当者フリガナ」と追加フラグを新たにソースコード名／プログラム動作記憶領域１２３に格納する。
【００４８】
また、情報処理装置１は、例えば図１９に示すように、生成ソースコード１２６の更新処理を定義する部分から「得意先名」の記述を削除して「得意先フリガナ」の記述を追加するように変更ソースコード１２７に記述した場合、ソースコード名／プログラム動作記憶領域１２３に格納されている「得意先名」に係る部分を削除する削除フラグと新たに追加する定義部分と追加フラグとを新たにソースコード名／プログラム動作記憶領域１２３に格納する。
【００４９】
次に、ドキュメント生成部１１４で行われるドキュメント生成処理について説明する。図２０に示すように、制御装置１１は、ソースコード名／プログラム動作記憶領域１２３の内容を順次読み出すループ処理（ステップＳ６１〜Ｓ６７）を行う。このループ処理では、ソースコード名／プログラム動作記憶領域１２３から読み出したプログラム動作やその動作対象を元にドキュメント１２１の検索が行われ（ステップＳ６２）、ドキュメント１２１に該当する箇所があるか否かが判定される（ステップＳ６３）。
【００５０】
ステップＳ６３において該当する箇所がないと判定された場合、つまり、ソースコード名／プログラム動作記憶領域１２３に格納された記述内容（動作対象）が変換前のドキュメント１２１に記載されていない新規の処理内容や変更された処理内容である場合は、その記述をドキュメント１２１のプログラム動作に該当する部分に追加され（ステップＳ６４）、次のループ処理へ移行する。なお、このステップＳ６４における追加の際には、下線などを付してドキュメントにおける他の記載と区別する構成であってよい。
【００５１】
ステップＳ６３において該当する箇所があると判定された場合、つまり、ソースコード名／プログラム動作記憶領域１２３に格納された記述内容（動作対象）が変換前のドキュメント１２１に記載されている処理内容である場合はソースコード名／プログラム動作記憶領域１２３に格納された変更後の記述が削除フラグ（処理の削除）であるか否かが判定され（ステップＳ６５）、削除フラグである場合はドキュメント１２１における該当箇所が削除されて（ステップＳ６６）、次のループ処理へ移行する。なお、削除フラグでない場合は、その箇所を削除することなく、そのままにして次のループ処理へ移行する。
【００５２】
情報処理装置１は、このドキュメント生成処理により、例えば図２１に示すように、変更ソースコード１２７に応じたドキュメント１２１ａを生成することができる。具体的には、図２に示したドキュメント１２１から生成された生成ソースコード１２６を変更した変更ソースコード１２７（図１７〜図１９を参照）を元に、ドキュメント１２１に対して画面レイアウトにおける「得意先名」の削除と「得意先フリガナ」「担当者フリガナ」の追加、入力項目一覧における「得意先名」の削除と「得意先フリガナ」の追加、表示項目一覧における「担当者名」から「担当者フリガナ」への変更、更新ファイルにおける「得意先名」から「得意先フリガナ」への変更が行われたドキュメント１２１ａが生成される。
【００５３】
以上のように、情報処理装置１は、ドキュメント１２１及びドキュメント／ソースコード対応テーブル１２２を元にドキュメント解析部１１１で解析した情報をソースコード名／プログラム動作記憶領域１２３に格納し、この格納された情報と雛形ソースコード１２５とに基づいてドキュメント／ソースコード対応テーブル１２２で生成した生成ソースコード１２６及び編集作業により変更された変更ソースコード１２７をソースコード解析部１１３で比較して、その相違情報をソースコード名／プログラム動作記憶領域１２３に格納し、そのソースコード名／プログラム動作記憶領域１２３に格納された情報、ドキュメント／ソースコード対応テーブル１２２及びドキュメント１２１を元に、変更ソースコード１２７に対応するドキュメントをドキュメント生成部１１４で生成する。
【００５４】
このため、情報処理装置１は、ドキュメント１２１から生成した生成ソースコード１２６を編集して変更ソースコード１２７を作成する場合でも、その変更ソースコード１２７に対応するドキュメントを生成することができるため、編集後のソースコードと業務アプリケーションプログラムの設計情報であるドキュメントとの齟齬を解消することができ、生成したソースコードを修正して業務アプリケーションを開発する際の開発効率を向上させることができる。
【００５５】
また、情報処理装置１は、ソースコード解析処理において、生成ソースコード１２６と変更ソースコード１２７を比較して得られる相違部分がドキュメント／ソースコード対応テーブル１２２で定義されている部分であるか否かを判定し、ドキュメント／ソースコード対応テーブル１２２で定義されている部分についての追加又は削除の情報をソースコード名／プログラム動作記憶領域１２３に格納する構成であるため、変更ソースコード１２７に対応するドキュメントの生成時にドキュメントとソースコードとが対応しない余計な部分についての生成を防ぐことができ、業務アプリケーションを開発する際の開発効率を向上させることができる。
【００５６】
また、情報処理装置１は、変更ソースコード１２７に追加又は削除された部分の相違情報をソースコード名／プログラム動作記憶領域１２３に格納し、その情報に基づいて、ドキュメント１２１への追加又はドキュメント１２１における該当部分の削除を行うため、生成ソースコード１２６に新たなコードを追加又は既にあるコードを削除して変更ソースコード１２７を作成することで業務アプリケーションを開発する場合であっても、その変更ソースコード１２７に対応するドキュメントを生成することができ、業務アプリケーションを開発する際の開発効率を向上させることができる。
【００５７】
なお、本実施の形態における記述は、本発明の一例を示すものであり、これに限定するものではない。本実施の形態における情報処理装置１の構成及び動作に関しては、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【図面の簡単な説明】
【００５８】
【図１】情報処理装置１の機能的構成を模式的に示したブロック図である。
【図２】情報処理装置１におけるドキュメントからソースコードの生成又はソースコードからドキュメントの生成の概略を説明する概略図である。
【図３】ドキュメント１２１の内容を例示する概略図である。
【図４】ドキュメント／ソースコード対応テーブル１２２の内容を例示する概略図である。
【図５】（ａ）は、ソースコード名の取得に関するドキュメント解析処理を示すフローチャートであり、（ｂ）は、ソースコード名の取得に関するドキュメント解析処理でソースコード名／プログラム動作記憶領域１２３に格納される情報を例示する概略図である。
【図６】プログラム動作の取得に関するドキュメント解析処理を示すフローチャートである。
【図７】プログラム動作の取得に関するドキュメント解析処理でソースコード名／プログラム動作記憶領域１２３に格納される情報を例示する概念図である。
【図８】プログラム動作の取得に関するドキュメント解析処理でソースコード名／プログラム動作記憶領域１２３に格納される情報を例示する概念図である。
【図９】プログラム動作の取得に関するドキュメント解析処理でソースコード名／プログラム動作記憶領域１２３に格納される情報を例示する概念図である。
【図１０】ソースコード生成処理を示すフローチャートである。
【図１１】雛形ソースコード１２５の内容を例示する概念図である。
【図１２】ソースコード生成処理で生成される生成ソースコード１２６を例示する概念図である。
【図１３】ソースコード生成処理で生成される生成ソースコード１２６を例示する概念図である。
【図１４】ソースコード生成処理で生成される生成ソースコード１２６を例示する概念図である。
【図１５】ソースコード生成処理で生成される生成ソースコード１２６を例示する概念図である。
【図１６】ソースコード解析処理を示すフローチャートである。
【図１７】ソースコード解析処理でソースコード名／プログラム動作記憶領域１２３に格納される情報を例示する概念図である。
【図１８】ソースコード解析処理でソースコード名／プログラム動作記憶領域１２３に格納される情報を例示する概念図である。
【図１９】ソースコード解析処理でソースコード名／プログラム動作記憶領域１２３に格納される情報を例示する概念図である。
【図２０】ドキュメント生成処理を示すフローチャートである。
【図２１】ドキュメント生成処理で生成されるドキュメント１２１ａの内容を例示する概略図である。
【符号の説明】
【００５９】
１  情報処理装置
１１  制御装置
１２  記憶装置（記憶手段）
１３  表示装置
１４  入力装置
１５  通信装置
１６  印刷装置
１７  バス
１１１  ドキュメント解析部
１１２  ソースコード生成部
１１３  ソースコード解析部
１１４  ドキュメント生成部（設計情報生成手段）
１２１、１２１ａ  ドキュメント（設計情報）
１２２  ドキュメント／ソースコード対応テーブル（対応関係情報）
１２２ａ  ドキュメント／ソースコード名称対応テーブル
１２２ｂ  ドキュメント／ソースコード動作対応テーブル
１２３  ソースコード名／プログラム動作記憶領域
１２４  各種制御プログラム
１２４ａ  対応関係設定プログラム
１２５  雛形ソースコード
１２６  生成ソースコード
１２７  変更ソースコード
【図１】
2007272269.tif 000003
【図２】
2007272269.tif 000004
【図３】
2007272269.tif 000005
【図４】
2007272269.tif 000006
【図５】
2007272269.tif 000007
【図６】
2007272269.tif 000008
【図７】
2007272269.tif 000009
【図８】
2007272269.tif 000010
【図９】
2007272269.tif 000011
【図１０】
2007272269.tif 000012
【図１１】
2007272269.tif 000013
【図１２】
2007272269.tif 000014
【図１３】
2007272269.tif 000015
【図１４】
2007272269.tif 000016
【図１５】
2007272269.tif 000017
【図１６】
2007272269.tif 000018
【図１７】
2007272269.tif 000019
【図１８】
2007272269.tif 000020
【図１９】
2007272269.tif 000021
【図２０】
2007272269.tif 000022
【図２１】
2007272269.tif 000023