JP2002169692A - 仕様書作成プログラム及び仕様書作成プログラムを格納したコンピュータ可読媒体 - Google Patents

仕様書作成プログラム及び仕様書作成プログラムを格納したコンピュータ可読媒体

Info

Publication number
JP2002169692A
JP2002169692A JP2001214929A JP2001214929A JP2002169692A JP 2002169692 A JP2002169692 A JP 2002169692A JP 2001214929 A JP2001214929 A JP 2001214929A JP 2001214929 A JP2001214929 A JP 2001214929A JP 2002169692 A JP2002169692 A JP 2002169692A
Authority
JP
Japan
Prior art keywords
comment
sentence
source code
keyword
statement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2001214929A
Other languages
English (en)
Other versions
JP3933892B2 (ja
Inventor
Koji Sasaki
孝次 佐々木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2001214929A priority Critical patent/JP3933892B2/ja
Publication of JP2002169692A publication Critical patent/JP2002169692A/ja
Application granted granted Critical
Publication of JP3933892B2 publication Critical patent/JP3933892B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 処理手続を有する集合体(関数等)に記載さ
れるコメント文をも処理対象とした仕様書作成プログラ
ムを格納したコンピュータ可読媒体を、提供する。 【解決手段】 ソースコード中のコメント文に、ユニー
クなコメントキーワードが付与される。なお、コメント
文が不足している場合には、不足した箇所に、コメント
キーワードを含んだコメント文が挿入される。そのうえ
で、このソースコードからコメント文が抽出されて、仕
様書データが作成される。この仕様書データの内容は、
ディスプレイ15に表示される。オペレータは、仕様書
データを編集して完成させる。ソースコード中のコメン
ト文は、そのコメントキーワードを手掛かりに、完成し
た仕様書データ中のコメント文で、置き換えられる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、各種プログラミン
グ言語により記述されたソースコードに基づき、仕様書
データを作成する仕様書作成プログラム及び仕様書作成
プログラムを格納したコンピュータ可読媒体に、関す
る。
【0002】
【従来の技術】一般に、C++その他のプログラミング
言語により記述されたソースコード中には、コンパイル
されてもオブジェクトコードに変換されないコメント文
が、含まれている。通常、このコメント文には、プログ
ラムの処理内容についての説明等が記述されている。こ
のため、ソースコードからコメント文が抽出されると、
プログラムの処理内容についての説明が、得られる。
【0003】そこで、ソースコードからコメント文を抽
出することにより、当該プログラムの仕様書を自動的に
作成する仕様書作成装置が、利用されている。この仕様
書作成装置は、ソースコードからコメント文を抽出して
仕様書を作成する機能の他に、作成された仕様書をオペ
レータにより編集させる機能,及び,編集された仕様書
の内容をソースコードへ反映させる機能を、有してい
る。
【0004】通常、ソースコードは、複数の「集合体」
を含んでいる。例えば、このソースコードが、C++に
より記述されている場合には、クラス,メンバ関数,外
部関数,及び外部変数等が、その集合体に相当する。特
に、これら集合体のうちの関数(メンバ関数及び外部関
数)は、その内部に処理手続が記述されているため、
「処理手続を有する集合体」という。
【0005】なお、コメント文は、集合体の直前に記述
されているコメント文(第1種のコメント文)と、処理
手続を有する集合体における処理手続内に記述されてい
るコメント文(第2種のコメント文)とに、分類され
る。従来の仕様書作成装置は、第1種のコメント文を、
ソースコードから抽出することにより、仕様書を自動作
成する。そして、オペレータは、この仕様書作成装置を
操作することにより、作成された仕様書を編集する。即
ち、オペレータは、自動作成された仕様書に対し、不備
な点を追加入力したり、不適切な記述を変更する。
【0006】さらに、この仕様書作成装置は、変更され
た仕様書における変更点を、元のソースコードに反映さ
せる。即ち、仕様書作成装置は、更新された仕様書の内
容をコメント文の形式に変換し、変換したコメント文
(第1種のコメント文)を、当該コメント文が対応する
集合体の直前に配置された変更前の旧コメント文と置換
することにより、編集による変更点をソースコードに反
映させる。
【0007】
【発明が解決しようとする課題】上記の従来技術による
仕様書作成装置は、第2種のコメント文を処理対象とし
ていない。仮に、この仕様書作成装置が第2種のコメン
ト文をも処理対象にする場合を想定すると、以下のよう
な問題がある。即ち、この仕様書作成装置は、ソースコ
ードから第1種のコメント文及び第2種のコメント文を
抽出して、仕様書を作成したとしても、編集により変更
された仕様書の変更点のうち、第2種のコメント文に対
応するものを、元のソースコードに反映させることがで
きないという問題がある。この仕様書作成装置は、第2
種のコメント文に関する変更点を、処理手続を有する集
合体(関数)の内部におけるどの位置に挿入すべきか、
認識できないためである。
【0008】この第2種のコメント文に関する仕様書中
の変更点が、ソースコードへ反映されるためには、仕様
書作成装置が、ソースコード中における記述行番号など
の絶対的な位置を手がかりに当該変更点を関数内に挿入
することも、考えられる。しかし、この場合には、仕様
書が自動作成された後、編集による仕様書の変更点がこ
のソースコードに反映されるまでの期間中に、このソー
スコードは一切変更されてはならない。即ち、当該期間
中は、オペレータは、このソースコードを修正すること
ができなくなる。このため、開発効率が低下してしま
う。
【0009】従って、従来の仕様書作成装置は、第1種
のコメント文のみを処理の対象としていた。即ち、従来
の仕様書作成装置は、ソースコードから第1種のコメン
ト文のみを抽出して、仕様書を作成していた。
【0010】しかしながら、第1種のコメント文のみに
基づいて作成された仕様書は、その記述の内容が充分で
はない。そこで、第2種のコメント文をも処理の対象と
して取り扱うことができる仕様書作成装置,仕様書作成
プログラム,及び仕様書作成プログラムを格納したコン
ピュータ可読媒体を提供することを、本発明の課題とす
る。
【0011】
【課題を解決するための手段】本発明は、上記課題を解
決するために、以下のような構成を採用した。
【0012】即ち、本発明の仕様書作成装置は、入力装
置,表示装置,及びプログラムに従った処理を実行する
処理装置と、仕様書作成プログラムを格納した記憶媒体
を、備えており、処理対象となるソースコードからコメ
ント文を抽出して、仕様書データを作成する。
【0013】この仕様書作成プログラムは、処理装置に
対して、ソースコード中のコメント文が配置されるべき
位置に、ユニークなコメントキーワードを含んだコメン
ト文を配置させ、このコメント文を抽出して仕様書デー
タを作成させ、作成した仕様書データを表示装置に表示
させ、入力装置を介して当該表示内容を変更する旨の指
示がなされた場合には、この指示に従って、仕様書デー
タ中のコメント文の内容を変更させ、ソースコード中の
コメント文を、仕様書データ中のコメント文のうちのコ
メントキーワードが一致するもので置き換えさせる。
【0014】このように構成されると、ソースコード中
のコメント文は、一意的に識別可能なコメントキーワー
ドを含むことになる。これら各コメント文は、そのコメ
ントキーワードにより、個別に管理される。このため、
これら各コメント文が抽出されて仕様書データが作成さ
れ、この仕様書データがオペレータにより編集された場
合に、仕様書データ中の変更点は、そのコメントキーワ
ードを手掛かりに,ソースコード中のコメント文に、反
映される。
【0015】ソースコード中のコメント文は、集合体の
直前に記述されるもの(第1種のコメント)と、処理手
続を有する集合体内に記述されるもの(第2種のコメン
ト)とに、分類される。そして、コメントキーワードに
より管理されるのは、第2種のコメントだけであっても
よい。但し、これに限らず、第1種のコメントも、コメ
ントキーワードにより管理されてもよい。
【0016】なお、ソースコードは、C++,C,BA
SIC,Java(米国、その他の国における米国Sun
Microsystems社の商標または登録商標),FORTRA
N,PASCAL,COBOL,又はその他のプログラ
ミング言語により記述されたものである。
【0017】
【発明の実施の形態】以下、図面に基づいて本発明の一
実施形態による仕様書作成装置について、説明する。こ
の仕様書作成装置は、パーソナルコンピュータ又はワー
クステーション等のコンピュータに、後述する処理を実
行するソフトウェアを実装することにより、構成されて
いてもよい。
【0018】図1は、この仕様書作成装置のハードウェ
ア構成図である。この図1に示されるように、仕様書作
成装置は、バス及び図示せぬインタフェースを介して相
互に接続されたCPU11,RAM12,HDD13,
CD−ROMドライブ14,ディスプレイ15,キーボ
ード16,マウス17,及びプリンタ18を、備えてい
る。
【0019】CPU11は、各種プログラムを実行する
ことにより所定の処理を行う処理装置である。RAM1
2は、データを記憶可能である。そして、CPU11
は、このRAM12上に、各種プログラムや各種テーブ
ル等を展開する。
【0020】HDD(Hard Disk Drive)13は、磁気的
に情報を保持可能な複数のディスク,及び,これら各デ
ィスクに対してデータを読み書きする磁気ヘッドを、有
する。そして、CPU11は、このHDD13を制御す
ることにより、各ディスクに対してデータを読み書きさ
せる。このHDD13は、記憶媒体及びコンピュータ可
読媒体に相当する。
【0021】CD−ROMドライブ14は、CD−RO
Mを着脱可能に装填するスロット,及びCD−ROMか
らデータを読み出す光学ヘッドを、有する。そして、C
PU11は、このCD−ROMドライブ4を制御するこ
とにより、装填されたCD−ROM内のデータを、読み
出す。
【0022】ディスプレイ15は、CRTやLCD等に
よりなり、画像データ及び文字データを画面表示する。
そして、CPU11は、このディスプレイ15を制御し
て、画像データ及び文字データを、画面表示させる。こ
のディスプレイ15は、表示装置に相当する。
【0023】キーボード16は、オペレータにキャラク
タコードを入力させるためのものである。マウス17
は、ディスプレイ15上の所定領域に対応した仮想空間
上の位置をオペレータに指定させるためのポインティン
グデバイスである。CPU11は、これらキーボード1
6及びマウス17からの入力を取得する。これらキーボ
ード16及びマウス17は、入力装置に相当する。
【0024】プリンタ18は、紙等の各種媒体に、文字
やイメージを印刷する装置である。CPU11は、この
プリンタ18へ文字データやイメージデータを送信する
ことにより、これらのデータを印刷させる。
【0025】なお、HDD13には、予め、オペレーテ
ィングシステム及びアプリケーションプログラム等のソ
フトウェアが、インストールされている。このソフトウ
ェアは、CD−ROM内に書き込まれた状態で、配布さ
れることがある。この場合には、このソフトウェアは、
CD−ROMドライブ14を介してHDD13にインス
トールされる。
【0026】上記オペレーティングシステムは、システ
ム管理用のカーネル,及びGUIを提供するウインドウ
システムを、含んでいる。そして、CPU11は、オペ
レーティングシステムの少なくとも一部がRAM12上
に展開された状態で、このオペレーティングシステムの
コードに従って動作する。
【0027】また、アプリケーションプログラムは、オ
ペレーティングシステムが提供するAPIを介して、こ
のオペレーティングシステムの機能を呼び出すことによ
り、所定の処理を実現するプログラムである。そして、
CPU11は、オペレーティングシステムが稼動した状
態において、このアプリケーションプログラムを実行す
る。より具体的には、このアプリケーションプログラム
は、エディタ及びコンパイラを有するソフトウェア開発
環境,並びに,仕様書作成プログラムを、含んでいる。
【0028】そして、オペレータは、エディタを用いて
ソースコードを記述することにより、ソフトウェア開発
を行う。記述されたソースコードは、HDD13内に格
納される。図2は、C++言語により記述されたソース
コード例を示す図である。
【0029】この図2において、先頭が“//”である行
が、コメント文である。なお、このコメント文は、「集
合体」の直前に記述されている第1種のコメント文と、
「処理手続を有する集合体」(関数)における処理手続
内に記述されている第2種のコメント文とに、分類され
る。
【0030】この図2の例では、第7行目の“int getl
ine()”以降が集合体(関数)であるため、第1行目乃
至第6行目は、第1種のコメント文である。即ち、“//
概要”,“//ファイルの行数を求める”,“//戻り
値”,“//ファイルの行数”,“//パラメタ説明”,及
び“//なし”,が、第1種のコメント文である。
【0031】なお、この第1種のコメント文は、所定の
記述方式に従って記述されている。この記述方式による
と、オペレータは、関数のプログラム(ソースコード)
を作成する際に、必ず、当該関数についての“概要”,
“戻り値”,及び“パラメタ説明”の各項目についての
説明を記述することが、定められている。さらに、これ
ら各項目についての説明は、夫々、“//概要”,“//戻
り値”,及び“//パラメタ説明”の各コメント文の直後
に記述されることが、定められている。
【0032】この図2において、第9,12,16行目
は、関数内に記述されているので、第2種のコメント文
である。即ち、“//変数の初期化を行う”,“//ファイ
ルの終端を検出するまで行数を数える”,及び“//行数
を画面に表示する”が、第2種のコメント文である。
【0033】仕様書作成プログラムは、このようなソー
スコードに基づいて、当該ソースコードに対応した仕様
書を作成するためのプログラムである。以下、この仕様
書作成プログラムを実行するCPU11の処理につい
て、図3のフローチャートを参照して概説する。この図
3のフローチャート開始後の最初のS1では、CPU1
1は、ソースコードから第1種のコメント文を抽出し
て、以下に示すコメントデータベースを作成する。
【0034】図4は、図2のソースコードにおける集合
体(getline関数)についてのコメントデータベースの
内容を模式的に示す図である。このコメントデータベー
スには、コメント項目として、“概要”,“戻り値”,
“パラメタ説明”,及び“機能説明”が、設定されてい
る。また、このコメントデータベースには、これら各コ
メント項目に夫々対応する複数のコメントフィールド
(図4の“コメント”欄)が、設定されている。なお、
このコメントデータベースは、仕様書データに相当す
る。
【0035】この図4に示されるように、図2のソース
コード中の第1種のコメント文における“//概要”の次
の“//ファイルの行数を求める”が、概要に対応するコ
メントとして、コメントフィールドに格納されている。
同様に、“//戻り値”の次の“//ファイルの行数”が、
戻り値に対応するコメント文として、コメントフィール
ドに格納されている。同様に、“//パラメタ説明”の次
の“//なし”が、パラメタ説明に対応するコメント文と
してコメントフィールドに格納されている。なお、機能
説明に対応するコメントフィールドは、後述の処理にお
いて、第2種のコメント文から抽出されるので、この時
点では空欄になっている。
【0036】次のS2では、CPU11は、ディスプレ
イ15上に、図5に示されるコメントキーワード形式設
定画面20を表示する。オペレータは、このコメントキ
ーワード形式設定画面20の先頭キーワード欄21に、
キーボード16を介して後述するコメントキーワードの
形式を入力する。なお、この図5の例では、コメントキ
ーワードの形式として、“*.*)”が入力されてい
る。この状態で、オペレータは、マウス17によりボタ
ン22をクリックすることにより、コメントキーワード
の形式を“*.*)”に設定する。
【0037】この“*.*)”は、仕様書プログラムに
おいて予め規定された書式を模式的に示すものである。
より具体的には、この“*.*)”は、“1”,“1.
2”,“2.3.5”等の階層表現可能な項番を、意味
している。後述するように、仕様書プログラムは、第2
種のコメント文の夫々に対して、該コメント文に一意的
に関連付けられたコメントキーワードを付与することに
より、これら各コメント文を管理する。
【0038】次のS3では、CPU11は、ディスプレ
イ15上に、図6に示されるコメントキーワード挿入位
置設定画面30を表示する。オペレータは、このコメン
トキーワード挿入位置設定画面30を見ながらコメント
キーワードの設定位置を決定する。このコメントキーワ
ード挿入位置設定画面30は、一対のチェックボックス
31,32を、含んでいる。図6は、オペレータがマウ
ス17を操作して第1のチェックボックス31のみをチ
ェックした状態を、示している。この第1のチェックボ
ックス31がチェックされた場合には、ソースコード内
に既に記述された第2種のコメント文中に、後述の処理
においてコメントキーワードが挿入される。なお、この
図6に示された設定は、図7のように必要なコメント文
が全て記述されたソースコードを処理対象とする場合
に、なされる。
【0039】一方、図8は、オペレータがマウス17を
操作して第2のチェックボックス32のみをチェックし
た状態を、示している。この第2のチェックボックス3
2がチェックされた場合には、後述の処理において、関
数内における所定の指定箇所に、コメントキーワードが
挿入される。この図8に示された設定は、図9のように
第2種のコメントが何も記述されていないソースコード
を処理対象とする場合に、なされる。
【0040】なお、図8に示されるように、第2のチェ
ックボックス32がチェックされた場合には、新たに、
3つのチェックボックス33,34,35が、表示され
る。これら各チェックボックス33,34,35は、指
定箇所を特定するためのものである。
【0041】そして、第3のチェックボックス33がチ
ェックされた場合には、順次文が、指定箇所として特定
される(但し、順次文が連続する場合には、先頭の順次
文のみが指定箇所として特定されれる)。即ち、連続す
る順次文の先頭,及び,連続しない連続しない順次文
(単独の順次文)が、指定箇所として特定される。第4
のチェックボックス34がチェックされた場合には、f
or,do,while及びif等の繰返し文及び判定
文が、指定箇所として特定される。第5のチェックボッ
クス35がチェックされた場合には、return,g
oto及びcontinue等の分岐文が、指定箇所と
して特定される。
【0042】図10は、オペレータがマウス17を操作
して第1のチェックボックス31,及び,第2のチェッ
クボックス32をチェックした状態を、示している。こ
の図10に示されるように、オペレータは、これら両チ
ェックボックス31,32の双方をチェックすることも
できる。この場合には、ソースコード内に既に記述され
たコメント文中,及び,指定箇所の双方に、コメントキ
ーワードが挿入される。なお、図2のように、第2種の
コメント文がいくつか記述されているものの、記述が不
充分である場合には、この図10に示された設定が、な
される。
【0043】そして、オペレータは、マウス17を操作
して、これら図6,図8又は図10に示されたコメント
キーワード挿入位置設定画面30におけるボタン36を
クリックすることにより、このコメントキーワード挿入
位置設定画面30において設定された内容を、決定す
る。
【0044】次のS4では、CPU11は、ソースコー
ド中にコメントキーワードを挿入する。このコメントキ
ーワードは、S3において設定された位置に挿入され
る。このS3において、図6のように設定されていた場
合には、S4において、ソースコード内に既に記述され
たコメント文中に、コメントキーワードが挿入される。
即ち、図7のソースコードは、図11に示されるように
変換される。
【0045】一方、図8のように設定(S3)されてい
た場合には、このS4において、指定箇所にコメントキ
ーワードが挿入される。即ち、図9のソースコードは、
図12に示されるように変換される。この図12に示さ
れるように、コメントキーワードは、図9においてコメ
ント文が存在していなかった位置に、挿入されている。
【0046】また、図10のように設定(S3)されて
いた場合には、このS4において、ソースコード内に既
に記述されたコメント文,及び,指定箇所の双方に、コ
メントキーワードが挿入される。即ち、図2のソースコ
ードは、図13に示されるように変換される。なお、こ
のS4の処理については、後において詳述する。
【0047】次のS5では、CPU11は、ソースコー
ドから第2種のコメントを抽出して、コメントデータベ
ースに格納する。例えば、図13のソースコードから
は、“//1)変数の初期化を行う”,“//2)ファイル
の終端を検出するまで行数を数える”,“//2.
1)”,“//2.1.1)”,“//3)行数を画面に表
示する”,及び“//4)”が、抽出される。なお、これ
ら各コメント文は、S4で挿入されたコメントキーワー
ドを含んでいる。抽出された各コメント文は、コメント
データベース(図4)の機能説明に対応するコメントフ
ィールドに、格納される。図14は、これら各コメント
文が格納された状態のコメントデータベースの内容を、
模式的に示す図である。なお、このS5の処理について
は、後において詳述する。
【0048】次のS6では、CPU11は、ディスプレ
イ15上に、図15に示される編集画面40を表示す
る。オペレータは、この編集画面40を見ながら、キー
ボード16を操作することにより、仕様書の内容を編集
する。さらに、CPU11は、編集後の仕様書の内容を
コメントデータベースに反映させる。
【0049】図15に示されるように、この編集画面4
0は、4つの編集フィールド41〜44を、含んでい
る。これら各編集フィールド41〜44には、図14に
示されたコメントデータベースの内容が表示されてい
る。
【0050】第1の編集フィールド41には、コメント
データベースの概要に対応するコメントフィールドの内
容“ファイルの行数を求める”が、表示されている。第
2の編集フィールド42には、コメントデータベースの
戻り値に対応するコメントフィールドの内容“ファイル
の行数”が、表示されている。第3の編集フィールド4
3には、コメントデータベースのパラメタ説明に対応す
るコメントフィールドの内容“なし”が、表示されてい
る。これら第1乃至第3の編集フィールド41〜43に
表示された内容は、第1種のコメント文から抽出された
ものである。
【0051】第4の編集フィールド44には、コメント
データベースの機能説明に対応するコメントフィールド
の内容が、表示されている。即ち、“1)変数の初期化
を行う”,“2)ファイルの終端を検出するまで行数を
数える”,“2.1)”,“2.1.1)”,“3)行
数を画面に表示する”,及び“4)”が、表示されてい
る。この第4の編集フィールド44に表示された内容
は、第2種のコメント文から抽出されたものである。
【0052】オペレータは、各編集フィールド41〜4
4にカーソルを合わせ、キーボード16を操作すること
により、これら各編集フィールド41〜44の内容を変
更することができる。図15の例では、第4の編集フィ
ールド44に、記載の不充分な部分があるので、オペレ
ータは、その不充分な部分を補う。即ち、オペレータ
は、“2.1)”,“2,1,1)”及び“4)”の部
分に、説明文を追加する。
【0053】図16は、編集後の編集画面40を示す画
面例である。この図16に示されるように、図15の
“2.1)”,“2,1,1)”及び“4)”の部分
は、夫々、“2.1)改行文字か調べる”,“2,1,
1)改行文字の場合、行数をカウントする”及び“4)
行数を呼出し元へ返す”に、変更されている。
【0054】この編集が終了した後、CPU11は、各
編集フィールド41〜44の内容を、コメントデータベ
ースに格納することにより、上記変更点をこのコメント
データベースに反映させる。図17は、変更点が反映さ
れたコメントデータベースの内容を模式的に示す図であ
る。
【0055】この図17に示されるように、図16の編
集画面40における第1の編集フィールド41の内容
は、コメントデータベースの概要に対応するコメントフ
ィールドへ格納される。同様に、第2の編集フィールド
42の内容は、戻り値に対応するコメントフィールドに
格納される。同様に、第3の編集フィールド43の内容
は、パラメタ説明に対応するコメントフィールドに格納
される。同様に、第4の編集フィールド44の内容は、
機能説明に対応するコメントフィールドに格納される。
【0056】次のS7では、CPU11は、プリンタ1
8に仕様書を印刷させる。即ち、CPU11は、S6に
おいて処理されたコメントデータベースの内容を所定の
書式に対応させて、プリンタ18に仕様書として印刷さ
せる。この仕様書は、例えば、図16の画面と略同じ書
式で、印刷されてもよい。なお、このコメントデータベ
ースの内容は、HTML形式,各種ワープロソフトのフ
ァイル形式,又は各種表計算ソフトのファイル形式等に
変換されて、HDD13内に格納されてもよい。
【0057】次のS8では、CPU11は、S6におい
て処理されたコメントデータベースの内容のうちの第1
種のコメント文に関する部分を、ソースコードに反映さ
せる。なお、S6において、図15の編集画面40が図
16に示されるように変更された場合には、第1種のコ
メントに対応する第1乃至第3の編集フィールド41〜
43は、その内容が更新されていない。この場合には、
コメントデータベースにおける当該部分も変化しないの
で、ソースコードにおける第1のコメント文の部分も、
変化しない。
【0058】次のS9では、CPU11は、S6におい
て処理したコメントデータベースの内容のうちの第2種
のコメント文に関する部分を、ソースコードに反映させ
る。図18は、更新されたソースコードを示す図であ
る。この図18に示されるように、図13の“2.
1)”,“2,1,1)”,及び“4)”の部分は、夫
々、“2.1)改行文字か調べる”,“2,1,1)改
行文字の場合、行数をカウントする”,及び“4)行数
を呼び出し元へ返す”に、変更されている。なお、この
S9の処理については、後において詳述する。
【0059】以下、上述した図3のフローチャートにお
けるS4の処理について、図19を参照してさらに説明
する。なお、この図19のフローチャートは、CPU1
1が、HDD13内に格納されたソースコードを開き、
関数の開始部分まで読み込む処理がなされた後に、開始
する。
【0060】この図19のフローチャート開始後の最初
のS401では、CPU11は、ソースコードを、処理
対象となる関数の最後の部分まで読み込んで解析し、構
文テーブルを作成する。即ち、CPU11は、ソースコ
ードの各行毎に、文の種類を判別するとともに、プログ
ラミング言語の論理構造におけるネストの深さを判別す
る。このネストの深さは、ネスト番号(自然数)で表さ
れる。このネスト番号は、最も浅いネストに1が対応し
ている。そして、1段階ずつネストが深くなるにつれ
て、ネスト番号は、1ずつ増加してゆく。なお、構文テ
ーブルの作成領域は、RAM12又はHDD13内に確
保されている。
【0061】さらに、CPU11は、コメントキーワー
ドの管理用の項番テーブルを、RAM12又はHDD1
3内に、確保している。この項番テーブルは、0又は自
然数を格納可能なフィールドを、複数含んでいる。この
項番テーブルのフィールド数は、処理対象となるソース
コードにおける最大のネスト番号に一致している。な
お、項番テーブルは、その初期状態において、各フィー
ルドが0に設定されている。以下、説明を簡潔にするた
めに、この項番テーブルのフィールド数を3とする。こ
の場合において、項番テーブルの初期状態における値
は、“0;0;0”である。この項番テーブルの最初の
フィールドは、ネスト番号1に対応しており、次のフィ
ールドは、ネスト番号2に対応している。以下、順次同
様に、項番テーブルの各フィールドは、各ネスト番号に
対応している。
【0062】図20は、図2のソースコードに基づく構
文テーブルの模式図である。この構文テーブルは、ソー
スコードの各行に関して、文の種類,ネスト番号,及
び,当該行に記載された文そのものを、含んでいる。即
ち、この構文テーブルの各レコードは、“文の種類”フ
ィールド,“ネスト番号”フィールド,及び“文”フィ
ールドを、含んでいる。なお、この構文テーブルにおけ
る各レコードは、ソースコードにおける文の記載順に従
って、配列されている。この図20の構文テーブルに対
して、後述のS402以降の処理がなされた場合に得ら
れる構文テーブルは、図21に示されている。
【0063】図20において、“//変数の初期化を行
う”の文を含む先頭のレコードは、文の種類がコメント
文であり、ネスト番号が1と判別されている。そして、
“intc,nl;”及び“nl=0;”は、夫々、文の種類が順次
文であり、ネスト番号が1と判別されている。次の“//
ファイルの終端を検出するまで行数を数える”の文を含
むレコードは、文の種類がコメント文であり、ネスト番
号が1と判別されている。
【0064】次の“while((c=getchar()) !=EOF)”の文
を含むレコードは、文の種類が繰返し文であり、ネスト
番号が2と判別されている。即ち、CPU11は、C+
+の言語構造に従って、ネストが1段階深くなったと、
判別している。次の“if(c=='\n') ”の文を含むレコー
ドは、文の種類が判定文であり、ネスト番号が3と判別
されている。即ち、CPU11は、C++の言語構造に
従って、ネストがさらに1段階深くなったと、判別して
いる。
【0065】次の“++nl;”の文を含むレコードは、文
の種類が順次文であり、ネスト番号が3と判別されてい
る。次の“//行数を画面に表示する”の文を含むレコー
ドは、文の種類がコメント文であり、ネスト番号が1と
判別されている。即ち、CPU11は、C++の言語構
造に従って、ネストが2段階浅くなったと、判別してい
る。次の“printf("%d\n",nl);”の文を含むレコード
は、文の種類が順次文であり、ネスト番号が1と判別さ
れている。次の“return nl;”の文を含むレコードは、
文の種類が分岐文であり、ネスト番号が1と判別されて
いる。
【0066】以降の処理において、CPU11は、構文
テーブルを、その先頭のレコードから1レコードずつ順
次処理して行く。但し、現段階では、構文テーブルの各
レコードは全て未処理であり、処理済のレコードはまだ
存在しない。
【0067】S402では、CPU11は、構文テーブ
ルに未処理のレコードがあるかどうか、判別する。そし
て、CPU11は、未処理のレコードがあれば処理をS
403へ進め、未処理のレコードがなければ処理を終了
させる。
【0068】S403では、CPU11は、構文テーブ
ルにおける未処理のレコードのうちの先頭の1レコード
を、処理対象レコードとして取り出す。
【0069】次のS404では、CPU11は、処理対
象レコードの文の種類が、コメント文であるかどうか判
別する。そして、CPU11は、この文の種類がコメン
ト文である場合には、処理をS405へ進め、それ以外
の場合には、処理をS409へ進める。
【0070】S405では、CPU11は、処理対象レ
コードの文(コメント文)が、コメントキーワードを含
んでいるかどうか、判別する。そして、CPU11は、
コメントキーワードが含まれている場合には、処理をS
406へ進め、コメントキーワードが含まれていない場
合には、処理をS407へ進める。なお、図20の構文
テーブルにおける各文は、いずれもコメントキーワード
を含んでいない。このため、この図20の構文テーブル
が処理される場合には、S406の処理は1度も行われ
ないことになる。このS406の処理については、別の
構文テーブルの例を用いて、後述する。
【0071】S407では、CPU11は、コメント文
にコメントキーワードを挿入する設定がなされているか
どうか判別する。図6又は図10に示されたように、コ
メントキーワード挿入位置設定画面30の第1のチェッ
クボックス31がチェックされていた場合には、CPU
11は、コメントキーワードを挿入するものと判別し
て、処理をS408へ進める。一方、図8に示されたよ
うに、コメントキーワード挿入位置設定画面30の第1
のチェックボックス31がチェックされていなかった場
合には、CPU11は、コメントキーワードを挿入しな
いものと判別して、処理をS402へ戻す。
【0072】S408では、CPU11は、項番テーブ
ルを更新し、コメントキーワードを生成してコメント文
中に挿入する。この項番テーブルの更新は、ネスト番号
に基づいてなされる。即ち、CPU11は、処理対象レ
コードのネスト番号を参照し、このネスト番号に対応す
るフィールドの値を1増加させる。このため、図20の
構文テーブルにおける最初のレコードが処理対象レコー
ドである場合には、このレコードのネスト番号が1であ
るため、項番テーブルにおける1番目のフィールドが、
インクリメントされる。即ち、この場合には、項番テー
ブルの値は“0;0;0”から“1;0;0”に更新さ
れる。
【0073】なお、更新されたフィールドよりも後のフ
ィールドは、0にリセットされる。例えば、更新前の項
番テーブルの値が“2;1;1”であって、処理対象レ
コードのネスト番号が1である場合には、この項番テー
ブルの値は、“3;0;0”に更新される。
【0074】そのうえで、CPU11は、更新された項
番テーブルの値からコメントキーワードを生成する。例
えば、項番テーブルの値が“2;1;1”であれば、コ
メントキーワードは、“2.1.1)”として生成され
る。但し、このコメントキーワードは、項番テーブルの
各フィールドのうちのその値が0でないもののみに基づ
いて、生成される。このため、項番テーブルの値が
“1;0;0”であれば、コメントキーワードは、
“1)”として生成される。
【0075】さらに、CPU11は、生成したコメント
キーワードを、処理対象のレコードのコメント文の“/
/”の直後に挿入する。例えば、図20の構文テーブル
における先頭のレコードの文は、“//変数の初期化を行
う”から“//1)変数の初期化を行う”になる。
【0076】一方、S409は、処理対象レコードの文
の種類がコメント文以外である場合(S404;No)
の処理である。このため、文の種類は、順次文,繰返し
文,判定文,又は分岐文である。
【0077】このS409では、CPU11は、処理対
象のレコードの文に対応するコメント文が不足している
かどうか、判別する。即ち、CPU11は、処理対象の
レコードの直前のレコードにおける文の種類が、コメン
ト文である場合には、コメント文が不足していないと判
別して、処理をS402へ戻す。なお、処理対象のレコ
ード及び直前のレコードにおける文の種類が、いずれも
順次文である場合にも、CPU11は、コメント文が不
足していないと判別して、処理をS402へ戻す。一
方、それ以外の場合には、CPU11は、コメント文が
不足していると判別して、処理をS410へ進める。
【0078】S410では、CPU11は、指定箇所に
コメントキーワードを挿入する設定がなされているかど
うか判別する。図6に示されたように、コメントキーワ
ード挿入位置設定画面30の第2のチェックボックス3
2がチェックされていなければ、CPU11は、コメン
トキーワードを挿入しないものと判別して、処理をS4
02へ戻す。一方、図8又は図10に示されたように、
コメントキーワード挿入位置設定画面30の第2のチェ
ックボックス32がチェックされていた場合には、CP
U11は、コメントキーワードを挿入するものと判別し
て、処理をS411へ進める。
【0079】但し、コメントキーワード挿入位置設定画
面30の第2のチェックボックス32がチェックされて
いたとしても、以下の3つの場合には、CPU11は、
処理をS402へ戻す。第1に、処理対象レコードの文
の種類が順次文であるときに、第3のチェックボックス
33がチェックされていない場合。第2に、処理対象レ
コードの文の種類が繰返し文又は判定文であるときに、
第4のチェックボックス34がチェックされていない場
合。第3に、処理対象レコードの文の種類が分岐文であ
るときに、第5のチェックボックス35がチェックされ
ていない場合。
【0080】S411では、CPU11は、構文テーブ
ルにおける処理対象レコードと該処理対象レコードの直
前のレコードとの間に、新たなレコードを追加する。こ
の追加されるレコードは、その文の種類がコメント文と
して設定される。また、この追加されるレコードは、そ
のネスト番号が、処理対象レコードの直前のレコードの
ネスト番号と同じ値に、設定される。また、この追加さ
れるレコードの文は、内容のない空のコメント文として
“//”のみが設定される。そして、CPU11は、追加
した新しいレコードを、上記処理対象レコードの代わり
に、処理対象レコードとする。
【0081】例えば、図20の構文テーブルにおいて、
処理対象レコードが“if(c=='\n')”の文を含むレコー
ドである場合には、このレコードと、“while((c=getch
ar()) !=EOF)”の文を含むレコードとの間に、新たなレ
コードが追加される。そして、この追加されたレコード
が、処理対象レコードになる。
【0082】次のS412では、CPU11は、S40
8の場合と同様に、項番テーブルを更新し、コメントキ
ーワードを生成してコメント文に挿入する。なお、処理
対象レコードは、S411で追加された新たなレコード
であるため、そのコメント文は、内容のない空のコメン
ト文として“//”のみを含んでいる。このため、例え
ば、生成されたコメントキーワードが“2.1)”であ
れば、このコメント文は、“//”から“//2.1)”に
なる。そのうえで、CPU11は、処理をS402へ戻
す。
【0083】この図19のフローチャートの処理がなさ
れることにより、そのS401の処理で図20の構文テ
ーブルが得られた場合には、S402以降の処理によ
り、図21の構文テーブルが得られる。なお、上記の例
では、ソースコード中に含まれる関数が1つのみであっ
た。これに対し、ソースコード中に、関数が複数含まれ
ている場合には、CPU11は、図19のフローチャー
トによる処理を各関数に対応させて繰り返せばよい。
【0084】以下、この図19のフローチャートにおい
て、説明を省略したS406の処理について、図22の
ソースコードを参照して、説明する。この図22のソー
スコードは、図3のフローチャートに従って一度処理さ
れた後に、オペレータによりさらに変更が加えられたも
のである。このため、図22のソースコードは、コメン
トキーワードを不完全な状態で含んでいる。即ち、コメ
ントキーワードが部分的に不足しているだけでなく、付
与されたコメントキーワードの番号体系に乱れがある。
【0085】この図22のソースコードに対して、S4
01の処理がなされると、図23に示される構文テーブ
ルが、作成される。そして、S401の直後の第1回目
のS402においては、構文テーブルに未処理のレコー
ドがあるので、処理はS403へ進む。S403では、
“//2)変数の初期化を行う”の文を含む先頭のレコー
ドが、処理対象レコードとして取得される。次のS40
4では、この処理対象レコードの文の種類がコメント文
であるので、処理はS405へ進む。S405におい
て、処理対象レコードの文にコメントキーワードが含ま
れているので、処理はS406へ進む。
【0086】S406では、CPU11は、項番テーブ
ルを更新し、コメントキーワードを生成して、コメント
文中に既に設定されたコメントキーワードをリナンバす
る。なお、初期状態における項番テーブルは、“0;
0;0”であり、処理対象のレコードのネスト番号は1
であるので、この項番テーブルは、“1;0;0”に更
新される。このため、生成されるコメントキーワード
は、“1)”になる。そして、CPU11は、生成した
コメントキーワード“1)”を、処理対象レコードのコ
メント文“//2)変数の初期化を行う”中の“2)”の
部分と置換することにより、コメントキーワードをリナ
ンバする。リナンバ後の処理対象レコードのコメント文
は、“//1)変数の初期化を行う”になる。
【0087】同様にして、このS406において、処理
対象レコードが“//3)ファイルの終端を検出するまで
行数を数える”の文を含むレコードである場合には、こ
の文は、S406の処理により、“//2)ファイルの終
端を検出するまで行数を数える”になる。同様に、処理
対象レコードが“//6)行数を画面に表示する”の文を
含むレコードである場合には、この文は、S406の処
理により、“//3)行数を画面に表示する”になる。
【0088】このため、S401において図23の構文
テーブルが得られた場合にも、S402以降の処理によ
り、図21の構文テーブルが得られる。この図19のフ
ローチャートにおいて、CPU11は、元になるソース
コードが不適切なコメントキーワードを含んでいたとし
ても、そのコメントキーワードをリナンバすることによ
り、正しいコメントキーワードが付された構文テーブル
を得ることができる。
【0089】以下、上述した図3のフローチャートにお
けるS5の処理について、図24のフローチャートを参
照してさらに説明する。なお、この図24において、C
PU11は、構文テーブルを、その先頭のレコードから
1レコードずつ順次処理して行く。但し、この図24の
フローチャート開始前の状態において、図3のS4にお
いて更新された構文テーブル(図21)の各レコードは
全て未処理であり、処理済のレコードはまだ存在しな
い。
【0090】この図24のフローチャート開始後の最初
のS501では、CPU11は、構文テーブルに未処理
のレコードがあるかどうか、判別する。そして、CPU
11は、未処理のレコードがあれば処理をS502へ進
め、未処理のレコードがなければ処理を終了させる。
【0091】S502では、CPU11は、構文テーブ
ルにおける未処理のレコードのうちの先頭の1レコード
を、処理対象レコードとして取り出す。
【0092】次のS503では、CPU11は、処理対
象レコードの文の種類が、コメント文であるかどうか判
別する。そして、CPU11は、この文の種類がコメン
ト文である場合には、処理をS504へ進め、それ以外
の場合には、処理をS501へ戻す。
【0093】S504では、CPU11は、処理対象レ
コードの文(コメント文)が、コメントキーワードを含
んでいるかどうか、判別する。そして、CPU11は、
コメントキーワードが含まれている場合には、処理をS
505へ進め、コメントキーワードが含まれていない場
合には、処理をS501へ戻す。なお、図21の構文テ
ーブルにおける各コメント文は、いずれもコメントキー
ワードを含んでいる。
【0094】S505では、CPU11は、処理対象レ
コードの文(コメント文)を、コメントデータベースに
格納する。なお、図3のフローチャートのS1において
作成されたコメントデータベースは、図4に示されるよ
うに、その機能説明に対応するコメントフィールドが空
欄になっている。このS505において、CPU11
は、処理対象レコードのコメント文を、コメントデータ
ベースの機能説明に対応するコメントフィールドに格納
する。そして、CPU11は、処理をS501へ戻す。
【0095】この図24のフローチャート(図3のS
5)の処理が完了すると、図4のコメントデータベース
は、図14に示された状態に、更新される。なお、図3
のS6において、この図14のコメントデータベース
は、図17に示された状態に、さらに更新される。
【0096】以下、図3のフローチャートにおけるS9
の処理について、図25のフローチャートを参照してさ
らに説明する。なお、図25のフローチャートにおい
て、CPU11は、構文テーブル(図21)を、その先
頭のレコードから1レコードずつ順次処理して行く。但
し、この図25のフローチャート開始前の状態におい
て、構文テーブルの各レコードは全て未処理であり、処
理済のレコードはまだ存在しない。
【0097】この図25のフローチャート開始後の最初
のS901では、CPU11は、構文テーブルに未処理
のレコードがあるかどうか、判別する。そして、CPU
11は、未処理のレコードがあれば処理をS902へ進
め、未処理のレコードがなければ処理を終了させる。
【0098】S902では、CPU11は、構文テーブ
ルにおける未処理のレコードのうちの先頭の1レコード
を、処理対象レコードとして取り出す。
【0099】次のS903では、CPU11は、処理対
象レコードの文の種類が、コメント文であるかどうか判
別する。そして、CPU11は、この文の種類がコメン
ト文である場合には、処理をS904へ進め、それ以外
の場合には、処理をS901へ戻す。
【0100】S904では、CPU11は、処理対象レ
コードの文(コメント文)が、コメントキーワードを含
んでいるかどうか、判別する。そして、CPU11は、
コメントキーワードが含まれている場合には、処理をS
905へ進め、コメントキーワードが含まれていない場
合には、処理をS901へ戻す。なお、図21の構文テ
ーブルにおける各コメント文は、いずれもコメントキー
ワードを含んでいる。
【0101】S905では、CPU11は、処理対象レ
コードのコメント文に含まれるコメントキーワードが、
S6において処理したコメントデータベース(図17)
の機能説明に対応するコメントフィールド中に、含まれ
ているかどうかを判別する。そして、CPU11は、こ
のコメントキーワードが含まれている場合には、当該コ
メントキーワードを処理対象コメントキーワードとして
処理をS906へ進める。一方、CPU11は、このコ
メントキーワードが含まれていない場合には、処理をS
901へ戻す。
【0102】S906では、CPU11は、コメントデ
ータベースに基づいてソースコードを更新する。まず、
CPU11は、コメントデータベース(図17)の機能
説明に対応するコメントフィード内に格納されたコメン
ト文のうち、処理対象コメントキーワードを含む文を抽
出する。そして、CPU11は、ソースコード(図1
3)のコメント文のうちの処理対象コメントキーワード
を含むものを特定する。そのうえで、CPU11は、ソ
ースコードにおける特定したコメント文を、コメントデ
ータベースから抽出したコメント文で、置き換える。
【0103】この図25のフローチャート(図3のS
9)の処理により、図3のS6において処理されたコメ
ントデータベース(図17)の機能説明に対応するコメ
ントフィールドの内容が、ソースコードに反映される。
即ち、図13のソースコードは、図17のコメントデー
タベースに基づき、図18のソースコードに変換され
る。
【0104】上述の本実施形態による仕様書作成装置
は、ソースコードから、第1種のコメント文だけでなく
第2種のコメント文をも抽出して、自動的に仕様書を作
成することができる。自動的に作成された仕様書は、第
1種のコメント文だけが含まれた仕様書に比べて、その
記載内容が充実しているので、オペレータによる編集作
業が省力化される。
【0105】さらに、この仕様書作成装置は、仕様書の
編集作業における変更点を、ソースコードへ反映させる
ことができる。即ち、第1種のコメント文に関する変更
点だけでなく、第2種のコメント文に関する変更点も、
ソースコードへ反映される。
【0106】なお、第2種のコメント文のソースコード
への反映は、コメントキーワードに基づいてなされる。
このため、自動作成された仕様書が編集中であったとし
ても、オペレータは、コメントキーワードを変更しない
範囲で、ソースコードを更新することができる。そし
て、仕様書作成装置は、更新されたソースコードへも、
仕様書の編集による変更点を、反映させることができ
る。このため、オペレータの作業上の制約が少なくな
り、開発効率が向上する。
【0107】(付記1)入力装置及び表示装置に接続さ
れるとともにプログラムに従った処理を実行する処理装
置に対して、ソースコード中のコメント文が配置される
べき位置に、一意的に識別可能なコメントキーワードを
含んだコメント文を配置させ、前記コメントキーワード
を含んだコメント文を抽出して仕様書データを作成さ
せ、前記仕様書データを前記表示装置に表示させ、前記
入力装置を介して当該表示内容を変更する旨の指示がな
された場合には、この指示に従って、前記仕様書データ
中のコメント文の内容を変更させ、前記ソースコード中
のコメント文を、前記仕様書データ中のコメント文のう
ちのコメントキーワードが一致するもので置き換えさせ
る仕様書作成プログラムを格納したコンピュータ可読媒
体。
【0108】(付記2)前記仕様書作成プログラムは、
前記処理装置に対して、ソースコード中の処理手続を有
する集合体内に記載されるべきコメント文を、処理対象
とさせることを特徴とする付記1記載のコンピュータ可
読媒体。
【0109】(付記3)前記仕様書作成プログラムは、
前記処理装置に対して、既にソースコード中に含まれた
コメント文中に、コメントキーワードを挿入させること
を特徴とする付記1又は2記載のコンピュータ可読媒
体。
【0110】(付記4)前記仕様書作成プログラムは、
前記処理装置に対して、ソースコード中の連続する順次
文のうちの先頭のもの,連続しない順次文,繰返し文,
判定文,及び分岐文から選択された文の近傍の位置を、
コメント文が配置されるべき位置とさせることを特徴と
する付記1〜3のいずれかに記載のコンピュータ可読媒
体。
【0111】(付記5)入力装置及び表示装置に接続さ
れるとともにプログラムに従った処理を実行する処理装
置に対して、ソースコード中のコメント文が配置される
べき位置に、一意的に識別可能なコメントキーワードを
含んだコメント文を配置させ、前記コメントキーワード
を含んだコメント文を抽出して仕様書データを作成さ
せ、前記仕様書データを前記表示装置に表示させ、前記
入力装置を介して当該表示内容を変更する旨の指示がな
された場合には、この指示に従って、前記仕様書データ
中のコメント文の内容を変更させ、前記ソースコード中
のコメント文を、前記仕様書データ中のコメント文のう
ちのコメントキーワードが一致するもので置き換えさせ
る仕様書作成方法。
【0112】(付記6)所定のプログラミング言語によ
り記述されたソースコード中のコメント文を抽出して仕
様書データを作成する仕様書作成装置であって、入力装
置と、情報を表示する表示装置と、プログラムを読み込
むことによって、このプログラムに従った処理を実行す
る処理装置と、前記処理装置に対して、ソースコード中
のコメント文が配置されるべき位置に、一意的に識別可
能なコメントキーワードを含んだコメント文を配置さ
せ、前記コメントキーワードを含んだコメント文を抽出
して仕様書データを作成させ、前記仕様書データを前記
表示装置に表示させ、前記入力装置を介して当該表示内
容を変更する旨の指示がなされた場合には、この指示に
従って、前記仕様書データ中のコメント文の内容を変更
させ、前記ソースコード中のコメント文を、前記仕様書
データ中のコメント文のうちのコメントキーワードが一
致するもので置き換えさせる仕様書作成プログラムを格
納した記憶媒体とを備えたことを特徴とする仕様書作成
装置。
【0113】
【発明の効果】以上のように構成された本発明の仕様書
作成プログラム及び仕様書作成プログラムを格納したコ
ンピュータ可読媒体によれば、ソースコードのコメント
文は、コメントキーワードにより管理される。このた
め、ソースコードのコメント文を含んだ仕様書データが
編集により変更されたとしても、ソースコードのコメン
ト文には、このコメントキーワードに基づいて、当該変
更点が反映される。このため、ソースコード中における
処理手続を有する集合体内に記載されるコメント文が処
理対象であったとしても、このコメント文には、仕様書
の編集による変更点が反映される。
【図面の簡単な説明】
【図1】 仕様書作成装置のハードウェア構成図
【図2】 ソースコード例を示す図
【図3】 仕様書作成処理を示すフローチャート
【図4】 コメントデータベースの内容を模式的に示す
【図5】 コメントキーワード形式設定画面例を示す図
【図6】 コメントキーワード挿入位置設定画面例を示
す図
【図7】 ソースコード例を示す図
【図8】 コメントキーワード挿入位置設定画面例を示
す図
【図9】 ソースコード例を示す図
【図10】 コメントキーワード挿入位置設定画面例を
示す図
【図11】 ソースコード例を示す図
【図12】 ソースコード例を示す図
【図13】 ソースコード例を示す図
【図14】 コメントデータベースの内容を模式的に示
す図
【図15】 編集画面例を示す図
【図16】 編集画面例を示す図
【図17】 コメントデータベースの内容を模式的に示
す図
【図18】 ソースコード例を示す図
【図19】 図3におけるS4の処理を示すフローチャ
ート
【図20】 構文テーブルの内容を模式的に示す図
【図21】 構文テーブルの内容を模式的に示す図
【図22】 ソースコード例を示す図
【図23】 構文テーブルの内容を模式的に示す図
【図24】 図3におけるS5の処理を示すフローチャ
ート
【図25】 図3におけるS9の処理を示すフローチャ
ート
【符号の説明】
11 CPU 12 RAM 13 HDD 15 ディスプレイ 16 キーボード 17 マウス 18 プリンタ

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】入力装置及び表示装置に接続されるととも
    にプログラムに従った処理を実行する処理装置に対し
    て、ソースコード中のコメント文が配置されるべき位置
    に、一意的に識別可能なコメントキーワードを含んだコ
    メント文を配置させ、前記コメントキーワードを含んだ
    コメント文を抽出して仕様書データを作成させ、前記仕
    様書データを前記表示装置に表示させ、前記入力装置を
    介して当該表示内容を変更する旨の指示がなされた場合
    には、この指示に従って、前記仕様書データ中のコメン
    ト文の内容を変更させ、前記ソースコード中のコメント
    文を、前記仕様書データ中のコメント文のうちのコメン
    トキーワードが一致するもので置き換えさせる仕様書作
    成プログラムを格納したコンピュータ可読媒体。
  2. 【請求項2】前記仕様書作成プログラムは、前記処理装
    置に対して、ソースコード中の処理手続を有する集合体
    内に記載されるべきコメント文を、処理対象とさせるこ
    とを特徴とする請求項1記載のコンピュータ可読媒体。
  3. 【請求項3】前記仕様書作成プログラムは、前記処理装
    置に対して、既にソースコード中に含まれたコメント文
    中に、コメントキーワードを挿入させることを特徴とす
    る請求項1又は2記載のコンピュータ可読媒体。
  4. 【請求項4】前記仕様書作成プログラムは、前記処理装
    置に対して、ソースコード中の連続する順次文のうちの
    先頭のもの,連続しない順次文,繰返し文,判定文,及
    び分岐文から選択された文の近傍の位置を、コメント文
    が配置されるべき位置とさせることを特徴とする請求項
    1〜3のいずれかに記載のコンピュータ可読媒体。
  5. 【請求項5】入力装置及び表示装置に接続されるととも
    にプログラムに従った処理を実行する処理装置に対し
    て、ソースコード中のコメント文が配置されるべき位置
    に、一意的に識別可能なコメントキーワードを含んだコ
    メント文を配置させ、前記コメントキーワードを含んだ
    コメント文を抽出して仕様書データを作成させ、前記仕
    様書データを前記表示装置に表示させ、前記入力装置を
    介して当該表示内容を変更する旨の指示がなされた場合
    には、この指示に従って、前記仕様書データ中のコメン
    ト文の内容を変更させ、前記ソースコード中のコメント
    文を、前記仕様書データ中のコメント文のうちのコメン
    トキーワードが一致するもので置き換えさせることを特
    徴とする仕様書作成プログラム。
JP2001214929A 2000-09-19 2001-07-16 仕様書作成プログラム及び仕様書作成プログラムを格納したコンピュータ可読媒体 Expired - Fee Related JP3933892B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001214929A JP3933892B2 (ja) 2000-09-19 2001-07-16 仕様書作成プログラム及び仕様書作成プログラムを格納したコンピュータ可読媒体

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000283109 2000-09-19
JP2000-283109 2000-09-19
JP2001214929A JP3933892B2 (ja) 2000-09-19 2001-07-16 仕様書作成プログラム及び仕様書作成プログラムを格納したコンピュータ可読媒体

Publications (2)

Publication Number Publication Date
JP2002169692A true JP2002169692A (ja) 2002-06-14
JP3933892B2 JP3933892B2 (ja) 2007-06-20

Family

ID=26600192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001214929A Expired - Fee Related JP3933892B2 (ja) 2000-09-19 2001-07-16 仕様書作成プログラム及び仕様書作成プログラムを格納したコンピュータ可読媒体

Country Status (1)

Country Link
JP (1) JP3933892B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007048273A (ja) * 2005-07-11 2007-02-22 Ird:Kk 出願文書情報作成装置、説明情報抽出装置、出願文書情報作成方法、説明情報抽出方法
JP2008033972A (ja) * 2005-07-11 2008-02-14 Ird:Kk 出願文書情報作成装置、説明情報抽出装置、出願文書情報作成方法、説明情報抽出方法
JP2009223843A (ja) * 2008-03-19 2009-10-01 Nomura Research Institute Ltd コンピュータプログラムのソースコード自動生成装置及び方法
US8332814B2 (en) 2005-03-10 2012-12-11 Fujitsu Limited Method and apparatus for converting formula included in a computer program
JP2016071584A (ja) * 2014-09-30 2016-05-09 富士通株式会社 推定プログラム,推定装置及び推定方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8332814B2 (en) 2005-03-10 2012-12-11 Fujitsu Limited Method and apparatus for converting formula included in a computer program
JP2007048273A (ja) * 2005-07-11 2007-02-22 Ird:Kk 出願文書情報作成装置、説明情報抽出装置、出願文書情報作成方法、説明情報抽出方法
JP2008033972A (ja) * 2005-07-11 2008-02-14 Ird:Kk 出願文書情報作成装置、説明情報抽出装置、出願文書情報作成方法、説明情報抽出方法
JP4558680B2 (ja) * 2005-07-11 2010-10-06 有限会社アイ・アール・ディー 出願文書情報作成装置、説明情報抽出装置、出願文書情報作成方法、説明情報抽出方法
JP4579281B2 (ja) * 2005-07-11 2010-11-10 有限会社アイ・アール・ディー 出願文書情報作成装置、出願文書情報作成方法、及びプログラム
JP2009223843A (ja) * 2008-03-19 2009-10-01 Nomura Research Institute Ltd コンピュータプログラムのソースコード自動生成装置及び方法
JP2016071584A (ja) * 2014-09-30 2016-05-09 富士通株式会社 推定プログラム,推定装置及び推定方法

Also Published As

Publication number Publication date
JP3933892B2 (ja) 2007-06-20

Similar Documents

Publication Publication Date Title
US6951010B2 (en) Program specification generating system
US5673390A (en) Method and system for displaying error messages
US20040041818A1 (en) Design system for website text graphics
US20050005239A1 (en) System and method for automatic insertion of cross references in a document
JP2002024211A (ja) 文書管理方法およびシステム並びにその処理プログラムを格納した記憶媒体
KR19990022546A (ko) 기존의 관계형 데이터베이스 스키마로부터 세만틱 객체 모델을생성하기 위한 컴퓨터 시스템
JPH04229364A (ja) 強調特性変更方法及びシステム
JPH0683827A (ja) 文書プレゼンテーション制御方法及び装置
JPH07239850A (ja) 構造化文書作成支援システム
JP4724387B2 (ja) プログラム変換プログラム、プログラム変換装置およびプログラム変換方法
JP2002169692A (ja) 仕様書作成プログラム及び仕様書作成プログラムを格納したコンピュータ可読媒体
JPH05135056A (ja) 共同執筆支援装置
JPH08221417A (ja) 構造化文書の新旧対照編集装置
KR100658029B1 (ko) 문서 작성 프로그램을 기록한 컴퓨터 판독 가능한 기록매체, 문서 작성 시스템 및 문서 작성 방법
JP2000035961A (ja) Sgmlエディタおよびその使用方法
JP4845287B2 (ja) フォーム編集装置及び方法及びコンピュータ読取り可能なプログラムが格納された記憶媒体
JP5138617B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP3395362B2 (ja) 文書処理装置
JPH0612542B2 (ja) 構造化ドキユメントのマーク箇所のコピー方法
JPH0695313B2 (ja) 表示スクリーン上の情報の原始言語から目的言語への翻訳を制御するための方法
JPH07152548A (ja) 文書作成装置
JP2001175654A (ja) オブジェクト管理装置、オブジェクト管理方法および記憶媒体
JP2004199662A (ja) 表組データベースシステムおよび表組データ作成装置
Ni Preparing Technical Reports Using MS Word
JP2003263541A (ja) シナリオ編集装置およびその処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040423

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070313

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070314

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100330

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110330

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110330

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120330

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130330

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140330

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees