JPH09212352A - プログラム開発支援システム - Google Patents

プログラム開発支援システム

Info

Publication number
JPH09212352A
JPH09212352A JP8035849A JP3584996A JPH09212352A JP H09212352 A JPH09212352 A JP H09212352A JP 8035849 A JP8035849 A JP 8035849A JP 3584996 A JP3584996 A JP 3584996A JP H09212352 A JPH09212352 A JP H09212352A
Authority
JP
Japan
Prior art keywords
resource
information
program
data
function
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.)
Pending
Application number
JP8035849A
Other languages
English (en)
Inventor
Tsutomu Shomura
勉 正村
Hiroshi Suganuma
弘 菅沼
Tsutomu Funada
勉 船田
Masashi Ozawa
誠志 小沢
Kenji Arai
健司 新居
Takashi Kido
高志 城戸
Takafumi Mihashi
尚文 三橋
Juichi Hirano
寿一 平野
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.)
Hitachi Software Engineering Co Ltd
Original Assignee
Hitachi Software Engineering Co 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 Hitachi Software Engineering Co Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP8035849A priority Critical patent/JPH09212352A/ja
Priority to US08/790,297 priority patent/US5878262A/en
Publication of JPH09212352A publication Critical patent/JPH09212352A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 プログラム開発に利用するソースプログラム
およびプログラム部品,ツール,仕様書,開発者といっ
た情報の相互の間に必要な関連を生成し、それぞれの情
報をリソース情報として管理し、その関連の属性情報を
保持し、これらの情報を統合的に管理できるプログラム
開発支援システムを提供する。 【解決手段】 プログラム開発情報を格納する格納手段
と、プログラム開発情報の属性情報および各プログラム
開発情報の間の関連情報を生成する生成手段と、プログ
ラム開発情報,生成手段により生成した属性情報および
関連情報をプログラム開発の1つのリソースとして、当
該リソースにユニークな番号を付与して管理する管理手
段と、関連情報を利用してリソースからシステム構成要
素を生成するシステム構成要素生成手段を備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータプロ
グラムを開発する場合において、プログラム作成および
プログラムドキュメント作成などに使用する種々の情報
(リソース情報)を統合的に管理するプログラム開発支
援システムに関する。
【0002】
【従来の技術】コンピュータプログラムを開発する場合
において、プログラムの開発に使用する情報には、ソー
スプログラム,機能設計書,関数仕様書,モジュール構
造図,テーブル関連図,コール関連図などの各種の情報
がある。従来、これらの情報に対する管理は、例えば、
ソースプログラムの構成要素を、モジュールや関数単位
に分割し、関数と対応する関数仕様書を、関数のファイ
ルにその関数の仕様書の名称を記述して関連付け、それ
ぞれの情報をファイルとして管理する。このような管理
方法によるプログラム開発支援システムが知られてい
る。
【0003】従来、プログラムとその仕様情報を関連付
けて管理するシステムとしては、特開平2−18122
4号公報に記載されている「ソフトウェア開発システ
ム」がある。ここに記載されているシステムは、所定の
形式で入力されたプログラムとモジュール仕様書からプ
ログラム情報または仕様情報を抽出して、データベース
に格納し、格納した情報からソースプログラムおよび仕
様情報を生成する。
【0004】
【発明が解決しようとする課題】ところで、従来技術の
システムでは、プログラム開発に利用するそれぞれの情
報をファイルとして管理していた。そのため、個々のプ
ログラマが自分の使いやすいエディタなどのプログラム
開発用のツールを用いて、関数仕様書などを作成する
と、そのツールによって作成した仕様書は、そのツール
が理解できるフォーマットのファイルとして管理される
ようになる。このようにファイルとして管理すると、あ
るツールで作成されたファイルを他のツールから参照す
るためには、そのファイルのフォーマットを知り、その
フォーマットを読めるように、他のツールに変更を施さ
なければならず、直接参照することはできなかった。
【0005】また、従来技術のシステムで管理されてい
た情報は、ソースプログラムと仕様書であり、プログラ
マが使用するツール、プログラマなどの名前などの情報
は、ソースプログラムや仕様書と関連付けて一元的に管
理していなかった。
【0006】そのため、例えば、仕様書を変更する場合
に、現在の仕様書を生成したツールがどのツールである
かが判断できずに、他のツールを利用して変更してしま
うことがあり、仕様書のフォーマットが更新前のものと
異なるという状況が生じることがあった。また、プログ
ラム開発に参加するプログラマの氏名をデータとして、
そのプログラマが作成を担当するソースプログラムと開
連付けて管理していなかったため、プログラム開発の責
任者は、プログラマの数が多い場合や、プログラマの交
代が多い場合には、だれがどの部分を担当しているのが
を把握するのが難しかった。
【0007】また、従来、ソースプログラムを管理する
単位は、モジュールや関数単位であった。そのため、あ
る関数を変更した場合にその影響の及び関数を知ること
は可能であったが、変数の名称などの変更があり、その
影響範囲が知りたい場合に、変更箇所を特定することが
できないという問題があった。
【0008】また、ソースプログラムと仕様書やソース
プログラム中の関数と関数の名称によって関連付けるこ
とは行われていても、その関連がどのような意味を持つ
関連であるか、すなわち、関連の種別は定義していなか
った。そのため、ある関連に対応する関数仕様書がどれ
であるかを判別することは可能であったが、関数が更新
された場合に、関連付けられている関数仕様書に対して
どのような処理を行ったよいのかはわからなかった。
【0009】また、ソースプログラムを作成する場合、
ユーザが関数の仕様を記述し、その記述した仕様から関
数を生成し、生成した関数とへッダなどを組み合せて作
成しており、それぞれの段階でデータを保存していた。
このため、このようにして作成したソースプログラムを
ユーザが修正した場合、ソースプログラムの生成元とな
る関数とその関数の生成元となる記述仕様を検索し、そ
れぞれを修正する必要があった。
【0010】また、実体が未定義である情報を、他の実
体を有する情報との関連を保持したまま登録しておくこ
とできなかった。実体が未定義であるというのは、関数
の場合を例にすると、他の関数内でコールされている
が、その内容が定義されていないものである。そのた
め、未定義のリソースは実体が定義された時点で、ユー
ザがそのリソースと他の定義済みの登録されたリソース
とを関連付ける必要があった。
【0011】また、ソフトウェアシステムを開発する場
合に、ソフトウェアシステム全体を一人で開発するので
は無く、数人の担当者で開発する場合は、各担当者にシ
ステムを細かく分割してプログラムの開発を行う。開発
し終わった部分については、徐々に組み合わせて、シス
テムとしての動作確認を実施する。従来の方法では担当
者が開発作業を終了する以前に組み合わせると、終了し
ていない担当者の不良により、自分の目的とするテスト
ができなかったり、終了するまで待っている時間が無駄
になったりした。
【0012】本発明の目的は、プログラム開発に利用す
るソースプログラム,ツール,仕様書,開発者といった
情報相互の間に必要な関連を生成し、それぞれの情報を
リソースとして管理し、その関連を保持することのでき
るプログラム開発支援装置を提供することにある。
【0013】
【課題を解決するための手段】上記のような目的を達成
するため、本発明によるプログラム開発支援装置のシス
テムは、第1の特徴として、プログラム開発情報を格納
する格納手段と、前記プログラム開発情報の属性情報お
よび各プログラム開発情報の間の関連情報を生成する生
成手段と、前記プログラム開発情報,前記生成手段によ
り生成した属性情報および関連情報をプログラム開発の
1つのリソースとして、当該リソースにユニークな番号
を付与して管理する管理手段と、前記関連情報を利用し
て前記リソースからシステム構成要素を生成するシステ
ム構成要素生成手段とを備えたことを特徴とする。
【0014】また、第2の特徴として、本発明のプログ
ラム開発支援システムにおいては、前記関連情報が、各
プログラム開発情報の間の関連を示す関連種別を含むこ
とを特徴とする。
【0015】また、第3の特徴として、本発明のプログ
ラム開発支援システムは、更に、公開するリソースを登
録する公開リソース登録手段と、公開を行わないリソー
スを登録する非公開リソース登録手段を備えることを特
徴とする。
【0016】また、第4の特徴として、本発明のプログ
ラム開発支援システムにおいて、前記管理手段はリソー
スとして管理する情報に、少なくともプロジェクト,担
当者,使用ツールのいずれかに関する情報を含むことを
特徴とする。
【0017】また、第5の特徴として、本発明のプログ
ラム開発支援システムにおいては、更に、前記リソース
が更新された場合に、更新による影響範囲を検出する影
響範囲検出手段と、前記影響範囲検出手段により検出さ
れた影響範囲に対して前記更新がその影響を直接に反映
させる更新であるか否かを判定する判定手段と、前記判
定手段により直接に反映させる更新であると判定された
場合に更新を反映させる更新反映手段と、前記判定手段
により直接に反映させない更新と判定された場合にユー
ザに対して反映させるか否かを問い合わせる問合せ手段
とを有することを特徴とする。
【0018】また、第6の特徴として、本発明のプログ
ラム開発支援システムにおいては、更に、前記リソース
に対する参照要求があった場合に、そのリソースの関連
情報を参照し、関連する他のリソースを特定する特定手
段と、参照対象のリソースの更新時刻と前記特定された
関連するリソースの更新時刻を比較する比較手段と、前
記比較手段による比較の結果、前記関連するリソースの
更新時刻が新しい場合に、再度参照対象とするリソース
を再生成する再生成手段とを有することを特徴とする。
【0019】また、第7の特徴として、本発明によるプ
ログラム開発支援システムは、プログラム開発情報を格
納する格納手段と、前記プログラム開発情報の属性情報
および各情報間の関連情報を生成する生成手段と、前記
生成手段によるプログラム開発情報の属性情報および各
情報間の関連情報の生成時に、当該プログラム開発情報
の実体が定義済みであるかを判定する判定手段と、前記
判定手段による判定の結果、当該プログラム開発情報の
実体が定義済みの場合に生成した情報を登録する第1登
録手段と、前記判定手段による判定の結果、当該プログ
ラム開発情報の実体が未定義の場合に生成した情報を登
録する第2登録手段と、前記プログラム開発情報と前記
生成手段により生成した属性情報および各情報間の関連
情報を、プログラム開発の1つのリソースとして管理す
る管理手段と、前記リソースにユニークな番号を付与す
る番号付与手段と、前記関連情報を利用して前記リソー
スからシステム構成要素を生成するシステム構成要素生
成手段を有することを特徴とする。
【0020】また、第8の特徴として、ここでのプログ
ラム開発支援システムにおいては、更に、第1登録手段
に登録された情報が削除された場合に、他の情報との関
連の種別により、前記削除された情報を未定義情報とし
て第2登録手段に移動する移動手段を有することを特徴
とする。
【0021】このような様々な特徴を有する本発明によ
るプログラム開発支援システムにおいては、格納手段
が、プログラム開発情報を格納しており、この格納され
ているプログラム開発情報に対して、生成手段が、前記
プログラム開発情報の属性情報および各プログラム開発
情報の間の関連情報を生成する。これらの情報は、管理
手段により管理される。つまり、ここでの管理手段は、
前記プログラム開発情報,前記生成手段により生成した
属性情報および関連情報をプログラム開発の1つのリソ
ースとして、当該リソースにユニークな番号を付与して
管理する。そして、システム構成要素生成手段が、前記
関連情報を利用して前記リソースからシステム構成要素
を生成する。
【0022】ここでのプログラム開発支援システムにお
いては、第2の特徴として、前記関連情報が、各プログ
ラム開発情報の間の関連を示す関連種別を含んでいる。
このため、関連種別の内容を参照することにより、各プ
ログラム開発情報の間の関連を判定でき、関連づけられ
たプログラム要素の更新修正などの作業を能率良く行う
ことができる。
【0023】また、第3の特徴として、本発明のプログ
ラム開発支援システムには、更に、公開リソース登録手
段と、非公開リソース登録手段が備えられている。公開
リソース登録手段は、公開するリソースを登録し、ま
た、非公開リソース登録手段は、公開を行わないリソー
スを登録する。これにより、部分的に作成されたプログ
ラムにおいて、例えば、テスト済みのものを公開するリ
ソースとし、テストが済んでいないリソースを公開しな
い非公開リソースとすることにより、公開されたリソー
スについてのみ、プログラム開発を行う他のプログラマ
が利用して能率良く、プログラム開発を行うことができ
る。
【0024】また、第4の特徴として、本発明のプログ
ラム開発支援システムにおいて、前記管理手段はリソー
スとして管理する情報に、少なくともプロジェクト,担
当者,使用ツールのいずれかに関する情報を含むが、こ
れにより、プログラム開発情報を再利用する上での自由
度が大きくなる。例えば、プロジェクト毎にプログラム
開発情報を管理でき、担当者毎にプログラム開発情報を
管理できる。または、使用ツール毎にプログラム開発情
報を管理できる。
【0025】また、本発明のプログラム開発支援システ
ムにおいては、第5の特徴として、更に、影響範囲検出
手段と、判定手段と、更新反映手段と、問い合わせ手段
が備えられている。影響範囲検出手段は、前記リソース
が更新された場合に、更新による影響範囲を検出し、判
定手段が、この影響範囲検出手段により検出された影響
範囲に対して前記更新がその影響を直接に反映させる更
新であるか否かを判定すると、更新反映手段が、前記判
定手段により直接に反映させる更新であると判定された
場合に更新を反映させる。また、前記判定手段により直
接に反映させない更新と判定された場合に、問い合わせ
手段が、ユーザに対して反映させるか否かを問い合わせ
る。これにより、リソースが更新された場合に、その影
響範囲にまでその更新を反映させることができる。
【0026】また、第6の特徴として、その場合に、本
発明のプログラム開発支援システムにおいては、更に、
特定手段と、比較手段と、再生成手段とが備えられてお
り、特定手段が、前記リソースに対する参照要求があっ
た場合に、そのリソースの関連情報を参照して、関連す
る他のリソースを特定すると、比較手段が、参照対象の
リソースの更新時刻と前記特定された関連するリソース
の更新時刻を比較する。そして再生成手段が、前記比較
手段による比較の結果、前記関連するリソースの更新時
刻が新しい場合に、再度参照対象とするリソースを再生
成する。これにより、リソースが参照される度にリソー
スは、最新のものに更新される。
【0027】また、第7の特徴とする本発明のプログラ
ム開発支援システムにおいては、格納手段が、プログラ
ム開発情報を格納しており、このプログラム開発情報に
対して、生成手段が、前記プログラム開発情報の属性情
報および各情報間の関連情報を生成する。判定手段は、
前記生成手段によるプログラム開発情報の属性情報およ
び各情報間の関連情報の生成時に、当該プログラム開発
情報の実体が定義済みであるかを判定し、第1登録手段
が、前記判定手段による判定の結果、当該プログラム開
発情報の実体が定義済みの場合に生成した情報を登録す
る。また、第2登録手段が、前記判定手段による判定の
結果、当該プログラム開発情報の実体が未定義の場合に
生成した情報を登録する。管理手段は、前記プログラム
開発情報と前記生成手段により生成した属性情報および
各情報間の関連情報を、プログラム開発の1つのリソー
スとして、前記リソースにユニークな番号を付与して管
理する。そして、システム構成要素生成手段は、前記関
連情報を利用して前記リソースからシステム構成要素を
生成する。
【0028】また、ここでのプログラム開発支援システ
ムにおいては、更に、第8の特徴として、移動手段が備
えられており、この移動手段が、第1登録手段に登録さ
れた情報が削除された場合に、他の情報との関連の種別
により、前記削除された情報を未定義情報として第2登
録手段に移動する。これにより、削除された情報に対す
る関連づけられた関係が破壊されることもなく、未定義
情報として残されるため、他の関連プログラムを修正す
る場合においても、修正ミスがなくなる。
【0029】このようにして、プログラム開発に関わる
開発者の名前やプロジェクトの情報などの開発情報と、
プログラム開発に利用するツールやプログラムの仕様に
関するモジュール仕様書および関数仕様書などの仕様情
報と、プログラム開発過程で生成されるソースプログラ
ムの構成要素で実体の定義されている構成要素とを、そ
の属性情報と開発情報,ツール情報,仕様情報およびソ
ースプログラム部品の相互の関連種別と関連関係を含む
関連情報とともに登録できる。また、ソースプログラム
部品で実体の定義されていない部品は、他の情報との関
連種別と関連関係を含む関係情報とともに他の領域に登
録できる。そして、実体が定義された時点で、定義済の
情報の登録されている領域に移動させる。このため、ユ
ーザは、未定義の情報が定義された場合においても、他
の情報との関連付けを意識する必要がない。また、いつ
までも、実体が定義されない情報は、領域に残ったまま
であるため、間違って作成した未定義の情報を見つける
のが容易になる。
【0030】
【発明の実施の形態】以下、本発明を実施する場合の態
様について、図面を参照して具体的に説明する。図1
は、本発明の一実施例にかかるプログラム開発支援シス
テムの要部のシステム構成を示すブロック図であり、図
2は定義済リソーステーブルと未定義リソーステーブル
を説明する図である。図1および図2において、11は
制御処理部、12はソースプログラム作成部、13はプ
ログラム分割部、14は仕様書作成部、15はリソース
定義選択部、16ツール情報格納部、17は担当者情報
格納部、18は仕様情報格納部、19はリソース定義フ
ァイル格納部、20は登録処理部、21はリソースデー
タベース、22はソリースァイル(定義済リソースファ
イル)格納部、23は未定義リソースファイル格納部、
24はリソーステーブル、25は未定義リソーステーブ
ルである。
【0031】処理制御部11は、プログラム開発支援シ
ステムにおける各種の処理を行うためのシステム制御を
行い、ソースプログラム作成部12は、ソースプログラ
ムを作成するための処理を行う。プログラム分割部13
は、入力されたソースプログラムをプログラム要素(リ
ソース情報)の構成単位ごとに分割する処理を行う。ま
た、仕様書作成部14は、仕様書の作成を行うための処
理を行い、リソース定義選択部15は、使用するリソー
ス情報の定義を選択する。
【0032】ツール情報格納部16には、プログラム開
発や仕様書作成のために使用するツール情報が格納され
ており、担当者情報格納部17は、プログラム開発に参
加する開発者の情報である担当者情報が格納されてい
る。また、仕様情報格納部18には、プログラムの仕様
に関する図やドキュメントからなる仕様書情報が格納さ
れている。更に、リソース定義ファイル格納部19に
は、プログラム,仕様書,開発者,およびツールの各情
報の属性と相互の関連情報を定義したリソース定義ファ
イルが格納されている。
【0033】登録処理部20は、ソースプログラム作成
部12およびプログラム分割部13により生成されるリ
ソース情報(ソースプログラム部品)、仕様書作成部1
4により作成されるリソース情報(プログラム仕様書,
関数仕様書)、ツール情報格納部16に格納されている
ツールリソース情報(エディタ,コンパイラ,デバッガ
などの各種の開発ツール)、担当者情報格納部17に格
納されている開発者リソース情報(開発担当者名,担当
者の技術開発経歴情報)などの各種のリソース情報(以
下、単にリソースと称する)を、リソースデータベース
21に登録する処理を行う。
【0034】リソースデータベース21には、リソース
テーブル(定義済みリソーステーブル)を格納するリソ
ースファイル格納部22と、これに対応する未定義リソ
ーステーブルを格納する未定義リソースファイル格納部
23とが備えられており、図2に示すように、これらの
格納部に格納されるリソーステーブル24および未定義
リソーステーブル25の各々のフィールドにそれぞれの
データが記憶されて、各種のリソースとなるプログラム
開発情報が管理される。
【0035】図2(A)に示すように、リソーステーブ
ル24は、IDフィールド24a,種別フィールド24
b,名称(名前)フィールド24c,属性情報フィール
ド24d,関連先フィールド24e,関連元フィールド
24f,および格納場所フィールド24gの各フィール
ドのデータから構成される。これらの各フィールドのデ
ータとして、ここでのプログラム開発にかかる情報の要
素が格納されたリソース単位のデータがそのレコードと
して、その各々のレコードデータに関係が付けられて管
理される。また、このようなデータ構造のリソーステー
ブル24と対応して、図2(B)に示すようなフォーマ
ットのデータフィールドの構造を有する未定義リソース
テーブル25が設けられている。
【0036】リソーステーブル24のIDフィールド2
4aには、ここでレコードデータとして管理するリソー
スに対し、そのレコードデータを識別するユニークな識
別番号のID番号が格納される。種別フィールド24b
には、当該レコードのリソース情報の種類(モジュー
ル,関数,ツール,仕様書,作成者など)が格納され、
名称(名前)フィールド24cには、当該レコードデー
タ(リソース情報)に付与する名前のデータが格納され
る。
【0037】属性情報フィールド24dは、当該リソー
ス情報のレコードデータの属性情報が格納される。例え
ば、ここでの属性情報としては、当該リソース情報が更
新された時刻を示す時刻情報とコンパイルを行ったか否
かを示すフラグ情報が格納される。関連先フィールド2
4eには、関連付ける関連先のID番号とその関連種別
の識別子(have, ref, genなど)が格納される。また、
同様に、関連元フィールド24fには、関連付けられる
関連元のID番号とその関連種別の識別子(have, ref,
genなど)が格納される。そして、格納場所フィールド
24gには、当該レコードにより管理されるリソース情
報の実体情報の格納位置のデータが格納される。
【0038】つまり、ここでのリソーステーブル24に
は、リソースの属性情報(24a〜24d),関連種別
と関連先IDからなる関連先(24e)の情報,関連種
別と関連元IDからなる関連元(24f)の情報,リソ
ースの実体の格納位置を示す格納場所(24g)の情報
の各情報が格納され、これらの情報を用いて、各々のリ
ソースの情報の管理を行い、その関係づける操作が行わ
れる。属性情報は、リソース毎にリソース定義ファイル
格納部19のリソース定義ファイルにより定義される。
また、未定義リソーステーブル25には、当面は、完全
には定義され得ないリソース、また、リソースの一部が
削除された場合に、その削除により関連がはずされたリ
ソースが登録される。ここでの未定義リソース情報とし
ては、リソーステーブル24の各フィールドデータと同
様に、ID番号,種別,名称,関連種別と関連先IDか
らなる関連先,および、関連種別と関連先IDからなる
関連元のフィールドデータから構成されるレコードデー
タが、未定義リソーステーブル25に格納される。
【0039】次に、未定義リソーステーブル25につい
て説明する。図2(B)に示すように、未定義リソース
テーブル25は、リソーステーブル24と同様なデータ
フィールドを有するデータ構造により構成されている。
IDフィールド25aには、ここでのレコードデータと
して管理する未定義リソース情報を識別するユニークな
識別番号のID番号が格納され、種別フィールド25b
には、当該レコードのリソース情報の種類(モジュー
ル,関数,ツール,仕様書,作成者など)が格納され
る。名称(名前)フィールド25cには、当該レコード
データに付与する名前のデータが格納される。関連先フ
ィールド25dには関連付ける関連先のID番号とその
関連種別の識別子が格納される。関連元フィールド25
eには、関連付けられる関連元のID番号とその関連種
別の識別子が格納される。なお、この場合に、未定義リ
ソーステーブル25に登録される未定義リソース情報
は、未だ実体情報が定義されていないリソースの情報で
あるので、属性情報のデータを格納するフィールド,格
納場所のデータを格納するフィールドなどは設けられて
いない。
【0040】図3は、リソース定義ファイルの構成を説
明する図である。リソース定義ファイル30は、システ
ム構成(図1)の中のリソース定義ファイル格納部19
に格納される。図3に示すように、リソース定義ファイ
ル30は、プログラムリソース定義31,仕様リソース
定義32,ドキュメントリソース定義33,ツールリソ
ース定義34,および管理情報リソース定義35の各定
義情報から構成されている。これらのリソース定義情報
の定義によって、リソース情報の要素の間に張られる関
連関係、およびそれぞれのリソースの持つ属性の種類が
定義される。
【0041】図4は、プログラムリソース定義として定
義されるリソース情報の要素の間の関連の一例を説明す
る図である。プログラムリソース定義において、プログ
ラムリソースの要素となるプログラム内のモジュール,
関数,変数のような構成要素のそれぞれの間の関係が、
関連種別を示す属性子により関連として定義される。図
4において、プログラムリソースの要素名が表記された
長丸は、プログラムリソースのそれぞれの構成要素を示
しており、要素の間のラベル付与された矢印が、関連種
別を示す関係子による関連を示してる。例えば、関連種
別が“have”の関係子は、左辺が右辺を含むという関連
を示しており、関連種別が“ref”の関係子は、左辺が
右辺を参照するという関連を示している。また、関連種
別が“gen”の関係子は、左辺を使い右辺を生成してい
るという関連を示している。
【0042】このような関係子により表現されるプログ
ラムリソースについて、その構成要素の関係を具体例に
より説明すると、すなわち、図4に示す例で説明する
と、この場合、システムの要素41とプログラムの要素
42とは、関連種別が“have”の関係子により結合され
ている。また、同じく、プログラムの要素42は、モジ
ュールの要素43と“include”の要素44に、関連種
別が“have”の関係子により結合されている。これらの
意味するところは、システムの要素41は、プログラム
の要素42を含み、そのプログラムの要素42は、モジ
ュールの要素43および“include”の要素44を含ん
でいるということである。
【0043】また、同様にして、それぞれの関連種別の
関係子により結合されている各要素の間の意味するとこ
ろを説明する。モジュールの要素43は、ヘッダの要素
45および関数の要素47を含んでおり(関連種別が
“have”の関係子)、仕様書の要素46がモジュールの
要素43から生成されたもの(関連種別が“gen”の関
係子)であることを意味している。同様にして、“incl
ude”の要素44は、構造体の要素48および“#defin
e”の要素49を含んでいる。ヘッダの要素45は“#de
fine”の要素50を含み(関連種別が“have”の関係
子)、構造体の要素51を参照していること(関連種別
が“ref”の関係子)を意味している。更に、その関数
の要素47は、変数の要素52,構造体の要素53,別
の関数の要素55,および“typedef”の要素56を参
照して、関数仕様書の要素54を生成していることを意
味している。
【0044】図5は、仕様リソース定義の構成の一例を
関連種別の関係子により示した図である。図5に示すよ
うに、ここでの仕様リソース定義(32:図3)は、遷
移表57を構成する要素の関連の一部を示している。仕
様リソース定義には、PAD図,コール関連図のような
仕様を表わす図や表の構成要素の間の関連と、他のリソ
ースの要素との関連が定義されている。ここでの関連を
表現するため、プログラムリソースの構成要素の関連を
表現する場合(図4)と同様に、仕様リソースの要素名
が表記された長丸は、仕様リソースの構成要素を示して
おり、要素の間のラベル付与された矢印が、関連種別を
示す関係子による関連を示している。
【0045】ここでの関係子として、関連種別が“hav
e”の関係子,関係種別が“ref”の関係子,および関連
種別が“next”の関係子により、その要素の間の関係が
示されている。この場合、新たに関連種別が“next”の
関係子が示されているが、この関連種別が“next”の関
係子は、左辺の次に右辺の処理を行うという関連である
ことを意味している。つまり、この関連種別が“next”
の関係子により、処理の順序関係を表すことができる。
【0046】図5に示される仕様リソース定義による
と、遷移表の要素57は、状態の要素58,イベントの
要素59,およびフィールドの要素60を含み、そのイ
ベントの要素59はフィールドの要素60を参照する。
また、状態の要素58は、フィールドの要素60を参照
する。フィールドの要素60の処理の次には、状態の要
素58の処理を行う。
【0047】図6は、ドキュメントリソース定義の構成
の一例を関連種別の関係子により示した図である。図6
に示すように、ここでのドキュメントリソース定義(3
3:図3)は、ドキュメントと当該ドキュメントに含ま
れる構成要素との関連,構成要素の間の関連,およびド
キュメントと他のリソースとの関連を定義している。こ
の場合にも、前述の場合と同様に、ドキュメントリソー
スの要素名が表記された長丸は、ドキュメントリソース
の構成要素を示しており、要素の間のラベル付与された
矢印が、関連種別を示す関係子による関連を示してい
る。図6に示されるドキュメントリソース定義による
と、ドキュメントの要素61は、目次の要素62を含ん
でおり、また、ドキュメントの要素61は、状態遷移表
の要素63およびPAD図の要素64を参照する。
【0048】図7は、ツールリソース定義の構成の一例
を関連種別の関係子により示す図である。図7に示すよ
うに、ツールリソース定義(34:図3)によって、ツ
ールリソースと他のリソースの間の関連を定義してい
る。前述と同様に、ツールリソースの要素名が表記され
た長丸は、ツールリソースの構成要素を示しており、要
素の間のラベル付与された矢印が、関連種別を示す関係
子による関連を示している。ここでは、関連種別が“ge
n”の関係子,関連種別が“edit”の関係子,関連種別
が“view”の関係子により、それぞれの関係が示されて
いる。これらの関連種別の関係子が、ツールリソースと
他のリソースに対する関連の種別を示している。
【0049】関連種別が“gen”の関係子は、ツールが
リソースを生成するという関連を示しており、関連種別
が“edit”の関係子は、ツールがリソースを編集すると
いう関連を示している。また、関連種別が“view”の関
係子は、ツールがリソースを表示するという関連を示し
ている。つまり、図7に示されるツールリソースの定義
によると、第1ツールの要素65および第2ツールの要
素67の2つのツールがあり、第1ツールの要素65
は、仕様書の要素66を生成する。第2ツールの要素6
7は、仕様書の要素66を表示し、関数の要素68を編
集する。また、関数の要素68は、仕様書の要素66を
生成する。
【0050】また、図8は、管理情報リソース定義の構
成の一例を関連種別の関係子により示した図である。図
8に示すように、ここでの管理情報リソース定義(3
5:図3)によって、ユーザ(プログラム開発者)と他
のリソースとの間の関連の関係が定義されている。つま
り、前述したように、ここでの管理情報リソースの構成
の関連を関連種別の関係子の内容によって見ると、担当
者の要素69は、プログラムの要素70,ライブラリの
要素71,およびモジュールの要素72を参照する。
【0051】なお、前述した図4〜図8では、特に図示
していないが、それぞれのリソースの定義において、リ
ソース毎に使用が可能な属性情報が定義される。この属
性情報は、例えば、プログラムリソースの一つである変
数の場合を例にすると、その変数の属性情報として、記
憶クラス,宣言,宣言の型,初期値,日本語名などが定
義される。
【0052】図9は、本発明によるプログラム開発支援
システムを一態様で実施するハードウェアシステムの全
体の構成の一例を示す図である。このハードウェアシス
テムは、ネットワーク接続されたクライアントサーバシ
ステムとなっており、1つのサーバ装置のデータを共有
して、複数のクライアント装置の端末装置からプログラ
ム開発の担当者がそれぞれにツールを利用したプログラ
ムおよびデータの入力操作を行い、プログラム開発を行
う。
【0053】図9において、81は全体のシステム制御
を行うサーバ装置、82はプログラム開発に係るデータ
を格納する外部記憶装置、83はユーザ(プログラム開
発者)が操作する端末機能のクライアント装置、84は
ネットワーク、85はディスプレイ、86はキーボー
ド、87はポインティングデバイスのマウス、88はネ
ットワークを介するプリント依頼を受けてプリントを行
うプリントサービス装置である。ここでのハードウェア
システムは、ネットワーク84により、サーバ装置8
1,プリンタサービス装置88,および複数のクライア
ント装置83が接続されてシステムを構成している。
【0054】サーバ装置81は、データの処理を行うマ
イクロプロセッサ(CPU)81aとメモリ81bを有
しており、更には、外部記憶装置82が接続されてい
る。システム全体の制御に係る各種のサービス処理を行
う。つまり、ネットワーク84を介して、各々のクライ
アント装置83からの処理依頼を受けて、その処理に対
するサービスを行う。
【0055】また、同じく、クライアント装置83は、
データの処理を行うマイクロプロセッサ(CPU)83
aとメモリ83bを有しており、更に、ディスプレイ8
5,キーボード86,ポインティングデバイスのマウス
87が接続されている。クライアント装置83は、プロ
グラム作成を行うユーザが操作する操作端末機の機能を
提供する。つまり、ユーザが操作端末の機能を用いて、
当該クライアント装置83からネットワーク84を介し
て、サーバ装置81にその処理依頼を発行し、サーバ装
置81からその各々の処理に対するサービスを受けて処
理(プログラム作成支援処理)を進める。
【0056】次に、前述したリソーステーブル(24:
図2)および未定義リソーステーブル(25:図2)
に、ソースプログラム情報が、リソース情報として格納
される場合の処理例について、そのデータ内容を具体的
に例示して説明する。ここでリソース情報とするデータ
の内容(ソースプログラム情報)は、ユーザ(プログラ
マ)がエディタなどのツールを利用して、ディスプレイ
画面の操作を行い、プログラムおよびデータの入力操作
(プログラム作成操作)により作成したものであるか、
または、既存のソースプログラム情報を解析し、分解し
て用いる。
【0057】図10は、リソーステーブル24と未定義
リソーステーブル25に、リソース情報(リソースの単
位)として格納するプログラム情報の元となる情報の集
合を表している。図10において、91は情報全体を示
しており、92はプログラム“main.c”のプログ
ラムモジュール、93はプログラムモジュールの中の関
数“main”のプログラム要素(以下、関数と略称す
る)、94はプログラムモジュールを作成したツールの
リソース情報(ツール名称)、95は仕様書の情報(ド
キュメント情報)、96は担当者の情報(担当者名称)
である。
【0058】このようなプログラム情報の元となる情報
を与えられると、制御処理部11(図1)は、プログラ
ム分割部13(図1)を起動し、プログラム分割部13
が、プログラムモジュール92を、プログラムの構成要
素の単位(リソース)に分割する。この場合、プログラ
ムモジュール92は、具体的にはコメントと関数に分割
される。そして、登録処理部20が、実体の定義されて
いるプログラムモジュール92と関数93に対して、そ
の属性情報と関連先および関連元を生成し、それぞれの
リソース毎に、その実体の格納場所と共にリソーステー
ブル24に格納する。
【0059】次に、同じく、登録処理部20において、
関数93の内部情報を解析し、例えば、内部で関数“i
nit”をコールしていることを検出すると、関数“i
nit”に係る情報を登録する。つまり、プログラム要
素の関数“main”の本体部分において、その処理プ
ロセスの中で関数“init”をコールしていることを
検出すると、更に、その関数“init”に係る情報を
登録する。この場合、関数“init”はまだ実体の情
報が不明なので、その場合には、未定義リソーステーブ
ル25に登録する。
【0060】なお、プログラムモジュールなどのプログ
ラムの実体情報を格納する際、ここでのシステムにおい
ては統一して管理するため、どのリソースについても、
ユーザによって定義されたものか、ツールによって生成
されたものか、あるいは生成に使用されたツールによる
ものかにかかわらず一定のフォーマットで格納する。
【0061】ツールの情報94,仕様書の情報95,お
よび担当者の情報96は、それぞれに、ツール情報格納
部16、仕様情報格納部18、担当者情報格納部17か
ら登録処理部20によって、その属性情報と他のリソー
スとの関連先および関連元が生成され、それぞれの情報
(リソース)を識別する識別子情報(IDフィールド2
4a),モジュールであるか関数であるかなどの種別の
情報(種別フィールド24b),その名前(名称フィー
ルド24c),属性の情報(属性情報フィールド24
d),関連先(関連先フィールド24e),関連元(関
連元フィールド24f),格納場所(格納場所フィール
ド24g)が、リソーステーブル24に格納される。
【0062】この場合、ツール(94)は、仕様書(9
5)を生成したツールであり、更に、関数(93)は、
仕様書(95)の生成元となっているため、図2(A)
に示すように、例えば、第4番目の仕様書の情報(I
D:4)として登録するリソースのレコードには、その
関連元フィールド24fに格納する情報として、当該関
数(93)から生成されたという関連を示すため、生成
の関連子(“gen”)と当該関数(93)を特定する識
別子情報(ID:2)が、“gen:2”として格納され
る。同様にして、当該ツール(94)から生成されたと
いう関連を示すために、同じく、生成の関連子(“ge
n”)と当該ツール(94)を特定する識別子情報(I
D:3)が、“gen:3”として格納される。これによ
り、仕様書の情報95は、関数の情報93から生成(ge
n)され、また、ツールの情報94から生成(gen)され
たという関連が張られる。
【0063】リソーステーブル24と未定義リソーステ
ーブル25の関連先および関連元について、リソース毎
にリソーステーブル24に登録されている順に(上か
ら)説明すると、ID番号が“1”のモジュールは、I
D番号が“2”の関数“main”を含んでいるので
「have(含む)」という関連が張られ、関連先フィール
ド24eには、“have:2”と格納される。
【0064】ID番号が“2”の関数“main”は、
ID番号が“11”の関数“init”を参照している
ので「ref(参照)」という関連が張られ、関連先フィ
ールド24eには、“ref:11”と格納される。ま
た、このID番号が“2”の関数“main”は、ID
番号が“4”のツール“tool_B”の生成元になっ
ているので「gen(生成)」という関連が張られてお
り、関連先フィールド24eには“gen:4”と格納さ
れる。
【0065】また、関数“main”は、ID番号が
“1”のモジュールに含まれているので関連元フィール
ド24fには“have:1”と格納される。ID番号が
“3”のツールは、ID番号が“4”の仕様書を生成す
るものであるので、関連先フィールド24eには“ge
n:4”と格納される。同じく、ID番号が“4”の仕
様書は、ID番号が“2”の関数“main”と、ID
番号が“3”のツール“tool_B”から生成されて
いるので、その関連元フィールド24fには“gen:
2,gen:3”と格納される。また、ID番号が“5”
の作成者の情報は、この場合、ID番号が“2”の関数
“main”を参照するということなので、関連先フィ
ールド24eには“ref:2”と格納される。
【0066】ところで、未定義リソーステーブル25
は、実体情報が定義されていないリソースが格納される
が、この場合において、ID番号が“11”の関数“i
nit”は、ID番号が“2”の関数“main”から
参照されているので、その関連元フィールド25eに
“ref:2”と格納される。
【0067】次に、上記のようにして、リソーステーブ
ル24および未定義リソーステーブル25のデータが格
納された後に、あるリソースに対してイベント(参照,
更新,削除など)が発生した場合に、そのリソーステー
ブル24および未定義リソーステーブル25に対して生
ずる登録内容の変更処理について説明する。
【0068】まず、リソーステーブル24に登録された
リソースにイベントが発生した場合について説明する。
例えば、ID番号が“4”の仕様書“doc_A”の参
照要求があった場合、仕様書“doc_A”の関連元フ
ィールド24fのデータが参照される。ID番号が
“4”の関連元フィールド24fを参照すると、そこに
仕様書“doc_A”の情報に対して、“gen:2,ge
n:3”と格納されているので、関数mainからの関
連種別「gen(生成)」の関係子の関連が張られてお
り、関数mainが仕様書“doc_A”の生成元とな
るものであることがわかる。また、同じく、仕様書“d
oc_A”に対して、ツール“tool_B”からの関
連種別「gen(生成)」の関係子の関連が張られている
ので、仕様書“doc_A”作成には、“tool_
B”のツールが使用されて作成されたことがわかる。
【0069】これらの関連種別により関連する相手のリ
ソースおよびその関連内容(属性)がわかると、次に、
仕様書“doc_A”の属性情報の更新時刻と、関数
“main”の属性情報の更新時刻とを比較し、関数
“main”の更新時刻の方が新しい場合には、関連元
フィールド24fの関連内容から得たツール“tool
_B”の情報に従って、ツール“tool_B”を利用
して、関数“main”のリソースから、仕様書“do
c_A”を再度生成する。
【0070】このようにして、あるリソースの参照要求
があった場合、そのリソースの生成元となったリソース
が変更されていた場合は、変更後の生成元リソースから
ツールを使用して生成するが、その場合に、当該リソー
スの生成時と同じツールを使用して再度生成する。
【0071】次に、未定義リソーステーブル25に登録
されているリソースに対するイベントが発生した場合に
ついて説明すると、例えば、未定義リソーステーブル2
5に登録された関数“init”の実体が定義された場
合、登録処理部20は、関数“init”の属性情報を
生成し、生成した属性情報,実体の格納場所の情報,関
連先,および関連元とともに、当該リソースをリソース
テーブル24へ移動する登録処理を行う。
【0072】また、リソーステーブル24に移動された
後に、例えば、何らかのエラーが発見されて、関数“i
nit”を削除する場合、当該関数“init”のリソ
ースは他との関連があるので、登録処理部20は、当該
関数“init”の関連先および関連元の情報をそのま
ま保持して、再度、未定義リソーステーブル25に、リ
ソースの関数“init”を移動する登録処理を行う。
【0073】このようにして登録処理が行われるので、
リソーステーブル24および未定義リソーステーブル2
5に登録する場合、各々のリソースの間の関連はつねに
保持される。このため、ユーザは、特別に、各々のリソ
ースの間の関連を意識する必要がない。また、実体情報
が定義されずに、未定義リソーステーブル25に登録さ
れたままになっているリソースは、システムの側で(制
御処理部11が)一定の期間毎に、操作を行っている端
末機の表示画面に表示するようにしておくと、ユーザ
は、間違えて登録した関数名などを、わざわざ検索する
必要がなく、使い勝手が良くなる。
【0074】次に、プログラムリソースに変更があった
場合の処理について説明する。この場合、次に説明する
図11,図12,および図13を参照する。
【0075】図11は、C言語で書かれたソースプログ
ラムをリソースとする場合の説明図である。図11に
は、C言語で書かれたソースプログラムのそれぞれの構
成要素となるリソースを示している。図11において、
101はヘッダファイル“main.h”、102は整
数型の変数“a”、103は構造体“list”のメン
バ全体、104は構造体“list”、105は整数型
の変数“ak”、106は構造体のメンバである。ま
た、107はモジュール“func.c”を示してお
り、108は型定義文(typedef)“list_A”、
109は変数“a”を示している。
【0076】図12は、先に説明した図11に示すソー
スプログラムに対応したリソーステーブルの具体例を示
す図である。また、図13はリソース内容の変更処理を
行う場合の端末機能を提供するクライアント装置の表示
画面を表している。
【0077】例えば、整数型の変数“a”(102)
を、整数型の変数“ak”(105)に変更する場合、
図12に示すリソーステーブル120を参照すると、整
数型の変数“a”(102)のリソースには、その関連
元フィールド120fに関連元のデータとして“have:
345”と格納されており、ID番号が“345”の構
造体“list”から“have”(含む)の関連が張られ
ている。このため、ID番号が“230”の整数型の変
数“a”(102)は、この場合、ID番号が“34
5”の構造体“list”のメンバであることが判別さ
れる。
【0078】続いて、ID番号が“345”の構造体
“list”の関連元フィールド120fを参照する
と、そこには関連元のデータとして“have:012,ty
pe:456”と格納されており、ID番号が“345”
の構造体“list”のリソースに対しては、ID番号
が“456”の型定義文(typedef)“list_A”
から“type”の関連が張られている。このため、ID番
号が“345”の構造体“list”は、その型定義と
してID番号が“456”の“list_A”という名
称で、そこで指定される型が使用されることが判定され
る。
【0079】続いて、ID番号が“456”の型定義文
(typedef)“list_A”の関連元フィールド12
0fを参照すると、そこには関連元のデータとして“ty
pe:379,type:892”と格納されており、ID番
号が“456”の型定義文(typedef)“list_
A”は、ID番号が“892”の整数型の変数“ka”
から“type”の関連が張られている。したがって、この
場合には、整数型の変数“ka”は、型定義文(typede
f)“list_A”の型を使用するものであるので、
モジュール107における変数“a”(109)も、同
じく変数“ak”(105)に修正する。
【0080】また、図11に示すように、「整数型変数
“a”および文字変数“b”」から構成される構造体
“list”のメンバ103が、「整数型変数“a”,
文字変数“b”,および文字変数“c”」から構成され
る構造体のメンバ106のように増やした場合は、リソ
ーステーブル120を参照して、ID番号が“345”
の構造体“list”の関連先フィールド120eに格
納されている関連先のデータからメンバが追加されたこ
とを認識すると、当該ID番号が“345”の構造体
“list”は、ID番号が“456”の型定義文“L
ist_A”からtypeの関連が張られていること、
および、ID番号が“456”の型定義文“List_
A”は、ID番号が“379”のヘッダ部から“type”
の関連が張られていることを判別して、これらが影響の
及ぶ部分であることを検知する。そして、メンバを増加
した変更を行ったユーザに対して、図13の表示画面1
31に示すように、編集を行うツールにより編集対象と
なっているプログラム要素のヘッダファイル132およ
びモジュール133を表示したプログラムリストの画面
上において、これらのリソースに対応する対象文字列部
分(134,138)を反転表示して、そのまま変更す
るかどうかを問い合わせる。
【0081】このようにして、あるリソースを変更した
場合、関連するリソースの種別により、この変更を関連
するリソースに反映させるか、あるいは、反映させるか
否かをユーザに問い合わせるかを判断するので、リソー
スの変更に対して常に最適な処理が行える。
【0082】図14は、本発明の一実施例のプログラム
開発支援システムにより、プログラム開発を行う場合の
概略の処理の流れを表わしたフローチャートである。図
14を参照して説明する。処理を開始すると、まず、ユ
ーザにプログラム開発プロジェクトのプロジェクト名の
入力を要求する(ステップ1401)。プロジェクト名
が入力されると、次に、プロジェクトに参加する担当者
の登録要求をする(ステップ1402)。そして、担当
する担当者の名前が入力されると、それぞれの担当者に
対応した作業ディレクトリを作成し(ステップ140
3)、次に、ツールの一覧を表示して、ここでのプログ
ラム開発にかかるプロジェクトで使用するツールの登録
を要求する(ステップ1404)。そして、ユーザが入
力操作を行い、登録するツールを指定すると、ツールの
登録処理が行われる。
【0083】ツールの登録処理が行われると、次に、既
に生成済のソースプログラムが入力されるか、あるいは
ユーザによりプログラムが作成されるのを待つ(ステッ
プ1405)。ここで既に作成済ソースプログラムが入
力された場合、ソースプログラムはモジュール単位で入
力を受付け、まず、プログラム分割部(13:図1)の
処理によって、ソースプログラムをヘッダと関数の単位
に分割する(ステップ1406)。次に、分割したヘッ
ダと関数のそれぞれの種別および名称を属性情報として
生成して登録する(ステップ1407)。この場合のソ
ースプログラムの分割には、例えば、従来からの周知の
構文解析の手法を用いる。
【0084】次に、リソース定義ファイル格納部19に
格納されているプログラムリソース定義を参照し、当該
ソースプログラムのヘッダ,関数の関連情報を生成して
(ステップ1408)、これらの情報をそれぞれのリソ
ース毎にリソーステーブルに登録する(ステップ140
9)。
【0085】次に、ヘッダ,関数の内部を解析し(ステ
ップ1410)、解析して分割したプログラムの構成要
素が未定義リソーステーブルに登録済みであるか否かを
判定する(ステップ1411)。その判定の結果、プロ
グラムの構成要素が未定義リソーステーブルに登録済み
の場合には、リソースの属性情報を生成し(ステップ1
412)、リソーステーブルへ移動する(1413)。
【0086】一方、プログラムの構成要素が未定義リソ
ーステーブルに登録済みでない場合(ステップ141
1)には、更に、解析して分割したプログラムの構成要
素が実体の定義であるか否かを判定する(ステップ14
14)。この判定の結果、解析して分割したプログラム
の構成要素が実体の定義である場合は、リソースの属性
情報を生成し(ステップ1418)、続いて更にリソー
ス間の関連情報を生成して(ステップ1419)、リソ
ーステーブルに登録する(ステップ1420)。
【0087】また、その判定(ステップ1414)の結
果、解析して分割したプログラムの構成要素が実体の定
義でない場合は、プログラムリソース定義を参照して、
リソース間の関連情報を生成して(ステップ141
5)、未定義リソーステーブルに登録する(ステップ1
416)。
【0088】なお、ステップ1405の判定において、
既に生成済のソースプログラムが入力されずに、ユーザ
によりプログラムが作成される場合には、つまり、生成
済ソースプログラムでない場合には、ユーザによるソー
スプログラムの定義を行うので、そのソースプログラム
定義の入力を待ち、その定義入力が行われると(ステッ
プ1417)、定義されたソースプログラムに対して、
リソースの属性情報を生成し(ステップ1418)、更
に、リソース間の関連情報を生成して(ステップ141
9)、リソーステーブルに登録する(ステップ142
0)。このようにして、プログラム開発のためのそれぞ
れのリソースを生成して、リソーステーブルに登録す
る。
【0089】図15は、前述したように、図14で説明
した処理により未定義リソーステーブル25に登録され
たリソースの内容(未定義リソース)の表示した表示画
面例を示した図である。前述したように、システム側の
処理により、未定義リソーステーブル25に登録された
リソースが存在すると、定期的にそのリソースを表示す
るので、ユーザは、実体情報が未定義のままのリソース
および間違った関数名を使用していることを知ることが
できる。
【0090】図15において、151は表示画面、15
2は未定義関数一覧、153は削除ボタンである。ユー
ザが指定したある一定の期間の経過毎に、ディスプレイ
151に画面上に未定義関数一覧152が表示されるの
で、これにより、未定義のリソースを存在を知り、ここ
での削除ボタン153は、ユーザからの未定義関数一覧
152の中のリソースの削除要求を受付ける。また、既
に編集ツールが登録してあり、それと関連付られている
場合には、未定義関数一覧152の中から編集したい関
数を選択すると、その関連付けられている編集ツールが
起動され、当該編集ツールのウィンドウを利用して、そ
こでの編集画面上で修正することができる。
【0091】ここでは、未定義リソースが関数の場合に
ついて説明しているが、この未定義関数一覧152に替
えて、関数に限られない未定義リソースの一覧表示を行
い、それらの未定義リソースの定義を行うようにしても
よい。このようにして、プログラム開発に使用する情報
を関連付けてファイルに登録し、その関連関係を常に保
持し、表示することができる。また、いつまでも実体が
定義されないリソースは、一定の時間毎に表示装置に表
示されるため、ユーザは名称を間違えて使用したリソー
スや使用する予定ではなくなったリソースを知ることが
できる。
【0092】以上説明したように、このプログラム開発
支援システムにおいては、プログラム開発に使用する各
々の情報をリソースに管理し、そのリソースの情報の間
に論理的な意味を有する関連付けを行い、実体の定義さ
れたリソースの情報と、実体が未定義のリソースの情報
を別々のテーブルに登録することにより、プログラム開
発に使用するかどうか分からない未定義の状態である情
報が容易にプログラム開発者に分かるようになる。
【0093】また、一旦、リソース情報として定義した
情報(1つのリソースの単位)を削除した場合には、他
のリソース情報と当該削除したリソース情報との関連種
別によって、その他の情報との関連を保ったままで、未
定義リソース情報のテーブルに登録されので、再度、そ
の情報をプログラム開発に使用したい場合には、その情
報を定義するだけよく、他の情報との関連について再度
定義する必要がない。この場合において、各々のリソー
ス情報の間の関連情報は、関連種別を含んでいるため、
ある情報に変更があった場合にその変更の影響の及ぶ範
囲を正確に知るだけでなく、その範囲に対して正確に影
響を反映させることができる。
【0094】次に、本発明によるプログラム開発支援シ
ステムによるデータ構造にしたがって管理されている各
種のリソース情報を用いて、プログラム開発にかかるド
キュメントを作成する場合の処理例について説明する。
この場合のドキュメントの作成処理について、そのデー
タ構造を例示して説明する。
【0095】図16は、ドキュメントの構成情報および
そのリソース情報の関連を示す図である。ここでの「プ
ログラム仕様書」のドキュメント1601は、内部情報
として、当該ドキュメントに対するファイル構造の構成
情報1602を有している。図16に示すように、この
ドキュメントの構成情報1602は、複数の帳票情報1
603の順次編成ファイルのフォーマットで構成され、
各々の帳票情報1603の要素は、生成するリソースの
生成種別1604,生成元起点1605,生成するため
のツール1606の3つのリソース情報を1つのセット
としている。また、このドキュメント(プログラム仕様
書)のリソース情報1601は、帳票情報の生成元とな
るリソース情報(開発されたプログラム“在庫管理シス
テム”)との間に、関係種別が“ref”の関係を有して
いる。
【0096】また、ドキュメント「プログラム仕様書」
のリソース情報1601は、図16に示すように、文書
「プログラム概要」のリソース情報1607との間に、
関係種別が“ref”の関係を有しており、図形「プログ
ラムブロック図」のリソース情報1608との間にも、
関係種別が“ref”の関係を有している。前述したよう
に、このドキュメント「プログラム仕様書」のリソース
情報1601の帳票情報は、その生成元となっている対
応するプログラム「在庫管理システム」のリソース情報
1611との間にも、関係種別が“ref”の関係を有し
ているので、ドキュメント「プログラム仕様書」(16
01)を生成する場合、その構成要素となる文書「プロ
グラム概要」(1607),図形「プログラムブロック
図」(1608),および、関数仕様書「関数仕様書ma
in」1616は、プログラム「在庫管理システム」(1
611)は、次のような手順で生成されて、ここでのド
キュメント「プログラム仕様書」(1601)が作成さ
れることになる。
【0097】文書「プログラム概要」(1607)は、
文書エディタ(1609)のツールで編集されるが、こ
の場合、文書の内容はテキスト情報となっており、使用
するツールに依存しないため、ツールのリソース情報と
の間に関係は持たない。同じく、図形「プログラムブロ
ック図」(1608)は、図形エディタ(1610)の
ツールで編集されるが、この場合においても、文書の中
で使用される図形の内容は、使用するツールに依存しな
いため、ツールのリソース情報との間に関係は持たな
い。
【0098】ドキュメント「プログラム仕様書」の中に
設けられるプログラム「在庫管理システム」(161
1)の関数仕様書は、当該プログラム「在庫管理システ
ム」のリソース情報1611が有している全ての関数に
ついて、ツール「関数仕様書生成」(1612)によっ
て自動生成される。
【0099】また、ここでのプログラム「在庫管理シス
テム」(1611)のプログラム本体部分は、そのリソ
ース情報の関係種別を示す関係子から、そのモジュール
「main.c」のリソース情報1613と、関係種別
が“have”の関係があり、また、モジュール「mai
n.c」のリソース情報1613は、関数「main」
のリソース情報1614と、関係種別が“have”の関係
がある。また、ここでのツール「関数仕様書生成」のリ
ソース情報1612は、種別「関数」のリソース情報1
615と関係種別が“action”という関係を有してい
る。
【0100】このような関係種別のそれぞれの関係によ
って、プログラム「在庫管理システム」(1611)に
対する関数仕様書の作成処理では、プログラム「在庫管
理システム」のリソース情報1611を起点にして、
「関数」という種別のリソース情報1615に辿りつく
までの関係種別を判別して対応する処理を行って、関数
仕様書「関数仕様書main」のリソース情報1616
の生成を行う。つまり、関係種別が“have”の関係か
ら、まず、モジュール「main.c」のリソース情報
1613を辿り、次に、更に関係種別が“have”の関係
にあるリソースを辿る。その結果、見つけた関数「ma
in」のリソース情報1614に対して、ツール「関数
仕様書生成」(1612)を作用させることにより、関
数仕様書「関数仕様書main」のリソース情報161
6を生成する。
【0101】生成された関数仕様書「関数仕様書mai
n」(1616)の内容は、上述のようにして生成され
た関係から明らかなように、関数「main」のリソー
ス情報1614と、ツール「関数仕様書生成」のリソー
ス情報1612に依存するので、これらのリソース情報
の要素から関係種別が“gen”の関係が張られる。
【0102】なお、この例では、プログラム「在庫管理
システム」(1611)は、1つの関数「main」を
持つ1つのモジュール「main.c」しか持たない
が、プログラムに変更が生じて、複数の関数を持つ複数
のモジュールを持つようになった場合は、その変更を反
映して、それぞれに複数の関数仕様書が生成されるのは
もちろんのことである。
【0103】図17は、帳票リソース,帳票生成元リソ
ース,および帳票生成ツールリソースの各々のリソース
情報の間の関係を示す図である。図17に示すように、
第1の関数仕様書「関数仕様書main」171が、関
数「main」173からツール「関数仕様書生成」1
72によって生成された場合には、関数仕様書「関数仕
様書main」171と関数「main」173の間に
関係種別が“gen”の関係を設定し、更に「関数仕様書
main」171とツール「関数仕様書生成」172の
間にも関係種別が“gen”の関係を設定しておく。他の
ツールが他のリソースから帳票を生成した場合も、同様
に各々のリソースの情報の間に関係種別が“gen”の関
係を設定する。
【0104】この場合、帳票リソース,帳票生成元リソ
ース、帳票生成ツールリソースの各々のリソースの間に
関係種別が“gen”の関連があることで、例えば、別ツ
ール「関数詳細仕様書生成」174が、同じ関数「ma
in」173について生成した同じ名前の第2の関数仕
様書「関数仕様書main」175が存在する場合であ
っても、帳票情報として、ツール「関数仕様書生成」1
72を設定したドキュメントを印刷した場合には、ツー
ル「関数仕様書生成」172が生成した関数仕様書「関
数仕様書main」171を出力することができる。
【0105】このようにして生成されたドキュメント
「プログラム仕様書」(1601:図16)の印刷例
を、図18に示している。つまり、図18に示すよう
に、ドキュメント「プログラム仕様書」は、第1ページ
目の文書181が、プログラム概要を記述したテキスト
となっており、第2ページ目の文書182がプログラム
の構造を示すブロック図となっており、また、第3ペー
ジ目の文書183が関数仕様書の内容を記述した内容と
なっている。
【0106】次に、帳票生成元リソースと、帳票生成元
リソースの関連元リソースをキーにしたドキュメント出
力時における帳票の出力順序の変更方法について説明す
る。図19は、ドキュメント「プログラム詳細仕様書」
の帳票の構造情報と「プログラム詳細仕様書」の対象と
するプログラム「プログラム1」の構造を説明する図で
ある。図19に示すように、ドキュメント「プログラム
詳細仕様書」1901の帳票の構造情報と、「プログラ
ム詳細仕様書」1901の対象とするプログラム「プロ
グラム1」1902の構造により、ドキュメントを生成
すると、次に説明するような生成物(図20)が得られ
る。
【0107】図19(A)に示すように、ドキュメント
「プログラム詳細仕様書」1901は、三つの帳票情報
で構成されている。ここでは、帳票情報1をツール「モ
ジュール仕様生成」1909が生成するモジュール仕様
書とし、帳票情報2をツール「関数仕様生成」1910
が生成する関数仕様書とし、帳票情報3をツール「関数
チャート図生成」1911が生成する関数チャート図と
し、帳票情報1,帳票情報2,および帳票情報3は、図
19(B)に示すように、それぞれに、プログラム「プ
ログラム1」1902を生成元の起点とする。
【0108】プログラム「プログラム1」1902は、
2つのモジュール「モジュール1」1903および「モ
ジュール2」1904を有しており、モジュール「モジ
ュール1」1903は、「関数11」1905および
「関数12」1906の2つの関数を有している。ま
た、「モジュール2」1904は、「関数21」190
7および「関数22」1908の2つの関数を有する。
【0109】したがって、ここでのドキュメントを生成
した場合、帳票情報1に対して、ツール「モジュール仕
様生成」1909が、図19(B)に示すような関係種
別の関係に従って、プログラム「プログラム1」から
は、2つのモジュール仕様書を生成する。すなわち、図
20の上部側に示す生成物の一覧のように、それぞれに
モジュール「モジュール1」1903および「モジュー
ル2」1904を生成元とし、2つのモジュール仕様書
の「モジュール仕様書1」および「モジュール仕様書
2」を順次に生成する。
【0110】同様にして帳票情報2に対しては、ツール
「関数仕様生成」1910が、「関数11」1905,
「関数12」1906,「関数21」1907および
「関数22」1908の4つの関数をそれぞれに生成元
とし、4つの関数仕様書の「関数仕様書11」,「関数
仕様書12」,「関数仕様書21」および「関数仕様書
22」をそれぞれ順番に生成する。帳票情報3に対して
は、ツール「関数チャート図生成」1911が、同じ
く、「関数11」1905,「関数12」1906,
「関数21」1907および「関数22」1908の4
つの関数をそれぞれに生成元とし、4つの関数チャート
図の「関数チャート図11」、「関数チャート図1
2」,「関数チャート図21」および「関数チャート図
22」を順番に生成する。
【0111】また、帳票情報1に設定したモジュール仕
様書の生成元である2つのモジュールの「モジュール
1」1903および「モジュール2」1904は、プロ
グラム「プログラム1」1902と関係種別が“have”
の関係にあり、関連元としてプログラム「プログラム
1」1902をもつ。同様に、関数仕様書と関数チャー
ト図の生成元である関数「関数11」1905,「関数
12」1906,「関数21」1907および「関数2
2」1908は、関係種別が“have”の関係にあるモジ
ュールを関連元としてもつ。
【0112】ところで、ここでの「モジュール1」19
03および「モジュール2」1904の2つのモジュー
ルに関する帳票が交互になって生成されているので、出
力した帳票の生成元とその生成元の関連元に関して、
「モジュール1」1903をキーにしてソートを行え
ば、モジュール1に関するものを連続するように出力順
序に変更することができる。
【0113】図20は、ドキュメント生成物の「モジュ
ール1」によるソートの過程を示す図であり、図21
は、ドキュメント生成物の「関数11」によるソートの
過程を示す図である。つまり、図20の上部側に示すよ
うに、生成元名の「モジュール1」をキーにしてソート
を行えば、図20の下部側に示すように、不連続であっ
たモジュール1に関するものを連続するように出力順序
に変更することができ、更に続いて、図21の上部側に
示すように、生成元名の「関数11」をキーにしてソー
トを行なえば、図21の下部側に示すように、「関数1
1」に関連する二つの帳票「関数仕様書11」と「関数
チャート図11」が連続するように出力順序に変更する
ことができる。
【0114】このようなソートを全てのモジュールと全
ての関数について行えば、同じモジュールや同じ関数に
関する帳票が連続するように出力順序を変更することが
できる。図22は、ドキュメントの生成物の生成元をキ
ーとした出力順序の変更の結果例を示す図である。図2
2の上部側および下部側に示すように、それぞれのツー
ルにより生成物がそれぞれに順序が異なって生成されて
も、最終的には、モジュール,関数に関連する帳標を連
続するように出力順序を変更して出力することができ
る。
【0115】以上に説明したように、本発明の実施例の
プログラム開発支援システムによれば、ドキュメントま
で含めて、そのリソース情報に関連する情報の間に理論
的な意味を有する関連付け(意味付け)を行うデータ構
造によって情報を統一的に管理することで、情報間の関
連を利用してドキュメントを出力する際の出力順序の変
更を行なうことができ、複数の帳票生成ツールを用いて
も,柔軟性に富んだドキュメントを作成することができ
る。
【0116】次に、本発明のプログラム開発支援システ
ムにおいて、ソフトウェア開発を行う場合の具体的な動
作例について更に詳細に説明する。図23および図24
は、それぞれに図9に示したシステム構成の中のクライ
アント装置およびサーバ装置の構成を詳細に示してい
る。図23および図24において、201はクライアン
ト装置、202はサーバ装置、203はネットワーク装
置、205は外部記憶装置である。また、206は表示
装置、207はマウス装置、208はキーボード装置で
ある。これらは、前述した図9のシステム構成に対応し
ている。
【0117】クライアント装置201はソフトウェア開
発者が操作を行うための操作端末機能を提供する。その
ため、クライアント装置201には、ソフトウェア開発
者が操作を行うため、データを表示する表示装置20
6,表示画面に表示されたデータをポイントするマウス
装置207,文字入力するキーボード装置208が備え
られている。サーバ装置202は、クライアント装置2
01からの情報の入出力要求に対応して、プログラム開
発を行うためのデータを管理する。ネットワーク装置2
03は、象徴的に線のみで接続しているように図示して
いるが、クライアント装置201とサーバ装置202の
間を所定の通信プロトコルを用いて接続している。
【0118】このため、図23に示すように、クライア
ント装置201には、システムを構成する要素として、
システム制御処理部209,データ入出力部210,プ
ロジェクト設定部211,ソフトウェア開発処理部21
2,ソースコード取り込み部214,ドキュメント出力
部215,および未定義テーブル表示部213が備えら
れている。また、図24に示すように、サーバ装置20
2には、リソース種別定義部218,ツール定義部21
9,履歴登録部225,履歴復元部226,プログラム
取り出し部227,およびテーブル入出力部235が備
えられている。テーブル入出力部235は、システム管
理テーブル入出力部220,プロジェクトテーブル入出
力部221,および未定義テーブル入出力部231の3
つのテーブル入出力部から構成されている。外部記憶装
置205は、ここでのプログラム開発のためのデータを
格納しており、システム管理テーブル222,プロジェ
クトテーブル230,および未定義テーブル232を格
納している。また、プロジェクトテーブル230は、作
業用テーブル223および公開用テーブル224を備え
ている。
【0119】また、システム要素のデータとして、リソ
ース定義ファイル216は、プログラム開発に必要な情
報の種類として、プログラム,仕様書,開発者,および
ツールの各情報の属性と相互の関連情報を定義してい
る。プログラムソースコードファイル部217からは、
既に開発したプログラムを取り出せる。
【0120】システム管理テーブル222は、システム
全体の構成を管理するデータを登録する。プロジェクト
のデータを管理するプロジェクトテーブル230は、作
業用テーブル223によりプロジェクトで現在修正中の
データを格納しており、公開用テーブル224により、
プロジェクトの修正が終了しプロジェクトの担当者に公
開しているデータを格納する。また、未定義テーブル2
32は、プロジェクトテーブルに未定義でかつプロジェ
クトテーブルのデータから参照されているデータを仮に
定義して格納している。
【0121】クライアント装置201において、システ
ム制御処理部209は、クライアント上での処理の制御
を行う。データ入出力部210は、サーバとデータの入
出力をおこなう。プロジェクト設定部211は、ソフト
ウェア開発のプロジェクトを設定する。ソフトウェア開
発処理部212は、ソフトウェア開発の処理を行うシス
テム要素である。また、未定義テーブル表示部213
は、前述したように、未定義リソーステーブルに未定義
のリソースが登録されている場合に、表示画面に未定義
リソーステーブルを表示する。ソースコード取込み部2
14は、外部からソースコードを取り込む。例えば、既
に作成されたソースプログラムを利用する場合に、既存
ソースコード233のプログラムソースデータを取り込
む。ドキュメント出力部215は、蓄積した情報からド
キュメントを出力する。
【0122】また、サーバ装置202(図24)におい
て、リソース種別定義部218は、リソース定義ファイ
ルをもとにリソース種別を定義し、ツール定義部219
は、リソース定義ファイルをもとにツールの情報を定義
する。テーブル入出力部235は、クライアント装置2
01からのデータをシステム管理テーブル222,プロ
ジェクトテーブル230,および未定義テーブル232
のそれぞれのテーブルに登録する。この場合、履歴登録
部225は、例えば、データをプロジェクトテーブル2
30の作業用テーブル223から公開用テーブル224
に複写する場合など、そのデータの変更履歴を取得し登
録する。履歴復元部226は、データを復元する場合
に、変更履歴から目的のデータを見つけて、プロジェク
トテーブル230の作業用テーブル223にデータを復
元する。また、プログラム取り出し部227は、プロジ
ェクトテーブル230から開発したプログラムを取り出
す。
【0123】テーブル入出力部235は、前述のよう
に、システム管理テーブル入出力部220,プロジェク
トテーブル入出力部221,および、未定義テーブル入
出力部231で構成されており、システム管理テーブル
入出力部220が、システム管理テーブル22に対する
入出力処理を行い、プロジェクトテーブル入出力部22
1が、プロジェクトテーブル230の作業用テーブル2
23および公開用テーブル224に対する入出力処理を
行う。また、未定義テーブル入出力部231が、未定義
テーブル232に対する入出力処理を行う。なお、クラ
イアント装置201は、データの処理を行う中央処理装
置(CPU)228とメモリ229で構成され、サーバ
装置202も同様の装置で構成される。
【0124】次に、図23および図24を用いて、本実
施例のプログラム開発支援システムのシステム構成によ
る処理(データ)の流れの概略について説明する。
【0125】システムを実行可能状態にするために、リ
ソース定義ファイル216のリソースデータをリソース
種別定義部218とツール定義部219に入力し、テー
ブル入出力部235のシステム管理テーブル入出力部2
20により、システム管理テーブル222を作成する。
そして、プロジェクト設定部211において、ソフトウ
ェア開発のためのプロジェクトを作成し、当該プロジェ
クトで作成するデータを入力するプロジェクトテーブル
230を作成する。プロジェクトで作成するデータは、
クライアント装置201のソフトウェア開発処理部21
2が作成するデータを、システム制御処理部209を通
して、データ入出力部210を経由し、サーバ装置20
2におけるテーブル入出力部235のプロジェクトテー
ブル入出力部221により、プロジェクトテーブル23
0の作業用テーブル223および公開用テーブル224
にデータを作成する。既に作成された既存ソースコード
233が利用できる場合は、ソースコード取込み部21
4を使用し、プロジェクトテーブル230にデータを登
録することが可能である。
【0126】なお、データの変更履歴を管理する場合
は、履歴登録部225を使用して、変更履歴をプロジェ
クトテーブル230に登録する。変更前の状態に戻す時
は、履歴復元部226を使用して、変更前のデータにプ
ロジェクトテーブル230を戻す。プロジェクトテーブ
ル230で使用している未定義の情報は、未定義テーブ
ル入出力部231を使用し、未定義テーブル232に登
録する。未定義テーブル232の情報は、未定義テーブ
ル入出力部231を使用して、クライアント装置201
において、その表示装置206に表示する。
【0127】そして、ここでのソフトウェア開発が終了
し、作成されたプログラムは、プログラム取り出し部2
27を使い、プロジェクトテーブル230からプログラ
ムソースコード217として出力する。また、ドキュメ
ントについては、クライアント装置201のドキュメン
ト出力部215から、データ入出力部210を使用し
て、プロジェクトテーブル230の内容をドキュメント
としてプリンタ装置(図示せず)に出力する。なお、プ
リンタ装置に出力する情報は、クライアント装置201
の表示装置206に表示することもできる。
【0128】図25は、システム管理テーブル222の
リソース種別テーブル243の構成を示すテーブル構成
図である。システム管理テーブル222におけるリソー
ス種別テーブル243は、前述したように、リソース種
別定義部218がリソース定義ファイル216からの定
義データを入力して作成される。テーブル構成は、図2
5に示すように、リソース種別を特定するためのリソー
スコード251,リソースの日本語名称を格納するリソ
ース名252,テーブルをポイントするポインタが格納
される属性テーブル253,テーブルをポイントするポ
インタが格納される関連先テーブル254で構成され
る。属性テーブル253でポイントされるテーブルに
は、属性のデータ種別をあらわす属性種別255,属性
を入出力するための属性名256が格納される。また、
関連先テーブル254でポイントされるテーブルには、
関連の種別をあらわす関連種別257,その関連先のリ
ソース種別をあらわす関連先リソースコード258が格
納される。
【0129】図26は、リソース種別テーブル243に
登録されているリソースコードの一覧の具体例を示した
図である。リソースコードを表した記号名261とその
日本語名称262とが対応づけられて格納されている。
これにより、プログラム開発を行う場合に、適宜に、リ
ソースコードの記号名を表示の替えて、その対応の日本
語名称の表示を利用できる。
【0130】次に、具体的に、本実施例のプログラム開
発支援システムのそれぞれのシステム要素を利用して、
システム開発のためのプロジェクトを設定して、システ
ム開発を行う場合の処理例について説明する。図27
は、システム開発を用う場合の全体の処理の概略を表し
たフローチャートである。システム開発を用う場合、ま
ず、プロジェクト設定部211により、開発プロジェク
トの名称を設定し(ステップ271)、既に作成済みの
プログラムで、このプロジェクトのソフトウェア開発に
利用できるプログラムがある場合は(ステップ27
2)、ソースコード取り込み部214により、そのプロ
グラムのソースコードを取り込み(ステップ273)、
ソフトウェア開発処理部212によるソフトウェア開発
処理により、開発するシステムのプログラムを開発する
(ステップ274)。
【0131】図28は、プロジェクト設定部211の構
成を示す機能ブロック図である。システム管理テーブル
222は、前述したように、システムで管理しているプ
ロジェクトの一覧を管理するプロジェクト一覧テーブル
241、ツールの一覧を格納するツール一覧テーブル2
42、システムで使用可能なリソースを定義したリソー
ス種別テーブル243で構成されている。クライアント
装置201のプロジェクト設定部211は、システム管
理テーブル222のプロジェクト一覧テーブル241に
アクセスして、プロジェクトを登録すると共に、プロジ
ェクトテーブルの作業用テーブル223にプロジェクト
の属性データを設定する。
【0132】このため、プロジェクト設定部211は、
プロジェクト登録部281,プロジェクト変更部28
2,およびプロジェクト削除部283から構成されてお
り、プロジェクト登録部281は、プロジェクト属性登
録部,担当者追加部,およびツール登録部を備えてい
る。また、プロジェクト変更部282は、プロジェクト
属性登変更部,担当者変更部,担当者削除部,ツール構
成変更部,実行マシン変更部(実行バージョン変更
部)、およびツール削除部を備えている。
【0133】プロジェクト登録部281は、プロジェク
トを新規にシステム管理テーブル222のプロジェクト
一覧テーブル241に登録する。プロジェクト変更部2
82は、一度定義したプロジェクトの構成を変更する。
また、プロジェクト削除部283は、開発の終了したプ
ロジェクトをシステム管理テーブル222のプロジェク
ト一覧テーブル813から削除する。
【0134】プロジェクト登録部281においては、プ
ロジェクト属性登録部が、プロジェクト属性の内容を編
集登録し、担当者追加部が、プロジェクトに従事する担
当者をプロジェクトテーブルの作業用テーブル223に
追加登録する。また、ツール登録部は、プロジェクトで
利用するツールをシステム管理テーブル222のツール
一覧テーブル242からプロジェクトテーブルの作業用
テーブル223に登録する。
【0135】プロジェクト変更部282においては、プ
ロジェクト属性変更部が、プロジェクト一覧テーブル2
41のプロジェクト属性を変更する。担当者変更部は、
プロジェクトテーブルの作業用テーブル223の担当者
の属性を変更する。担当者削除部は、プロジェクトテー
ブル作業用テーブル223から担当者を削除する。ま
た、ツール構成変更部は、プロジェクトテーブルの作業
用テーブル223で使用するツールを変更する。実行マ
シン変更部は、プロジェクトテーブルの作業用テーブル
223の使用するツールの実行マシン(実行バージョ
ン)を変更する。ツール削除部は、プロジェクトテーブ
ルの作業用テーブル223で使用するツールから使用し
なくなったツールを削除する。
【0136】次に、図23に示すクラアント装置201
のプロジェクト設定部211,ソフトウエア開発処理部
212,ソースコード取り込み部214,ドキュメント
出力部215,および、未定義テーブル表示部213に
おけるそれぞれの処理について説明する。
【0137】図29は、プロジェクト設定部211にお
けるプロジェクト設定処理の概略を表したフローチャー
トである。プロジェクトの設定は、新規にプロジェクト
を設定する場合に(ステップ291)、プロジェクトの
登録処理(ステップ292)を行い、登録済みのプロジ
ェクトの内容を変更する場合は(ステップ293)、プ
ロジェクト変更処理(ステップ294)を行う。また、
開発作業の終了したプロジェクトを削除する場合は(ス
テップ295)プロジェクトの削除処理(ステップ29
6)を行うう。これにより、ソフトウェア開発のプロジ
ェクトの登録やプロジェクトの変更及び削除が可能とな
る。
【0138】次に、プロジェクトの登録部281の処理
を、次に示す図30,図31,図32,図33を参照し
てして説明する。図30はプロジェクト属性登録部の処
理を示すフローチャートであり、図31はプロジェクト
の属性を定義するウィンドウ画面の一例を示す図であ
る。また、図32はプロジェクト一覧を表示するウィン
ドウ画面の一例を示す図であり、図33はプロジェクト
の属性情報を管理するプロジェクト一覧テーブル241
の構成の内容を説明する図である。
【0139】図30を参照する。プロジェクト登録の処
理は、まず、プロジェクトテーブル230を格納するデ
ィレクトリを作成し(ステップ301)、次に、図31
に示すように、プロジェクト属性を設定するウィンドウ
画面311を開き、新しいプロジェクトを登録する(ス
テップ302)。登録したプロジェクトに対して、担当
者追加処理(ステップ303),ツール登録処理(ステ
ップ304)を行う。
【0140】なお、図33に示すように、プロジェクト
一覧テーブル241は、プロジェクトの記号名を格納す
る記号名エリア331,プロジェクトの日本語名を格納
する日本語名エリア332,プロジェクトの担当部署を
格納する担当部署エリア333,プロジェクトテーブル
を格納するディレクトリ名を格納するリポジトリ場所エ
リア334により構成されており、前述したプロジェク
ト属性を設定するウィンドウ画面311を開いて、入力
したプロジェクトの設定データは、プロジェクト一覧テ
ーブル241に、1つのレコード335として登録され
る。ウィンドウ画面311の日本語名フィールド312
で定義した内容を日本語名エリア332に、記号名フィ
ールド313で入力した内容を記号名エリア331に、
担当部署フィールド314で入力した内容を担当部署エ
リア333に、リポジトリフィールド315で入力した
データをリポジトリ場所エリア334に、それぞれ設定
する。このため、プロジェクト属性を設定するウィンド
ウ画面311には、入力した内容で設定することを指示
する“了解”ボタン316および入力した内容の設定を
取り消す“取消”ボタン317が設けられている。
【0141】このようにして設定されたプロジェクト一
覧テーブル241の内容は、図32に示すように、プロ
ジェクト一覧を表示するウィンドウ画面(以下、単にプ
ロジェクト一覧画面と称する)321のプロジェクト表
示エリア322において、一覧形式で表示される。プロ
ジェクト一覧画面321には、プロジェクト一覧を表示
する操作を行うためのコマンドバー326、プロジェク
ト表示エリア322のプロジェクト一覧の表示位置を変
更する横カーソル324および縦カーソル325が設け
られており、これらをマウスで操作することにより、プ
ロジェクト一覧画面321において、システムで管理し
ている(登録している)プロジェクトを一覧形式で表示
し、横カーソル324および縦カーソル325により目
的のプロジェクトを表示して選択する。
【0142】次に、プロジェクト登録部281における
担当者追加部の処理を説明する。図34,図35,図3
6を参照する。図34はプロジェクトテーブルの作業用
テーブル223の担当者リソースレコードの内容を説明
する図であり、図35は担当者追加部の処理手順を示す
フローチャートである。また、図36はプロジェクトの
担当者の属性を設定・変更するウィンドウ画面を示す図
である。
【0143】図34(A)に示すように、プロジェクト
テーブルの作業用テーブル223には、担当者の属性を
持ったレコードが登録されている。担当者の属性を持っ
たレコードの先頭を管理するレコードが担当者ルートデ
ータ3401である。担当者ルートデータ3401は、
リソースID3402,リソースの種類をあらわすリソ
ースコード3403,リソースの日本語名を格納するリ
ソース名3404,担当者の属性を持ったリソースレコ
ードとして作業用テーブル223に登録されているリソ
ースレコードのリソースIDを管理するリソース一覧テ
ーブル3405で構成されている。
【0144】また、リソース一覧テーブル3405に登
録されている担当者のリソースレコードは、図34
(B)に示すように、担当者のレコードに付けられたリ
ソースID3406,担当者リソースであることを識別
するリソースコード3407,担当者の英語名を格納す
る記号名3408,担当者の日本語名を格納する日本語
名3409,責任者を識別するマネージャ3410,担
当者の作業場所ディレクトリ名を格納する作業場所34
11,担当者が画面に表示するリソースコードを登録す
る表示リソーステーブル3412の各データを格納する
エリアで構成されている。表示リソーステーブル341
2のエリアには、実体データが格納されているテーブル
をポイントするポインタが格納されており、表示リソー
ステーブル3412の実体データテーブルには、表示す
るリソースコード3413が一覧形式で登録されてい
る。
【0145】次に、図35のフローチャートを参照し
て、担当者追加部の処理を説明する。この場合に、図3
6に示すプロジェクトの担当者の属性を設定・変更する
ウィンドウ画面(以下、単に担当者設定・変更画面と称
する)361を用いて処理を進める。対象とするプロジ
ェクトをプロジェクト一覧画面321(図32)から選
択し、次に、図36に示すような担当者設定・変更画面
361を表示する(ステップ3501)。次に、画面上
の“追加”ボタン369bを押して、担当者の一覧を表
示する(ステップ3502)。次に、担当者の一覧から
追加する担当者を選択し、画面上の“了解”ボタン36
9aを押して、担当者を設定する(ステップ3503,
3504)。追加した担当者の日本語名を指定する場合
は(ステップ3505)、日本語の氏名を日本語名入力
フィールド367に入力する(ステップ3506)。日
本語名の入力を省略した場合は英語名が設定される(ス
テップ3507)。担当者の作業ディレクトリを指定す
る場合には(ステップ3508)、担当者の作業ディレ
クトリの名称を作業ディレクトリ入力フィールド368
に入力する(ステップ3509)。入力を省略した場合
はシステムが用意するディレクトリの名称が設定される
(ステップ3510)。プロジェクトの責任者に指定す
る担当者を担当者設定・変更画面361の責任者欄36
3をマウスで指定する(ステップ3511)。指定した
担当者の責任者欄363に責任者マーク「●」が表示さ
れる(ステップ3512)。もし、これまでの設定でよ
ければ、“了解”ボタン369bを押す(ステップ35
13)。これにより、ここでの担当者設定・変更画面3
61で編集した担当者の情報が、プロジェクトテーブル
230に登録される。
【0146】担当者設定・変更画面361(図36)に
より設定された情報は、プロジェクトテーブルの作業用
テーブル223の中で一意に決まるリソースIDをシス
テムが決定し、リソースID3406のエリアに設定
し、担当者のリソースレコードであることを示すリソー
スコードをリソースコード3407に設定する。英語名
欄364の内容は、記号名3408のエリアに設定し、
入力した日本語名入力フィールド367で入力された日
本語名欄365の内容が日本語名3409のエリアに設
定される。また、責任者に指定した担当者には、マネー
ジャ3410のエリアに“Yes”が設定され、それ以
外の担当者には“No”が設定される。作業ディレクト
リ欄366の内容が作業場所3411のエリアに設定さ
れ、表示リソーステーブル3412のエリアには、シス
テムで設定する標準のリソースコードが設定される。そ
して、この担当者リソースのレコードがプロジェクトテ
ーブルの作業用テーブル223に登録される。
【0147】次に、プロジェクト登録部281における
ツール登録処理(ツール登録部の処理)について説明す
る。この場合、図37,図38,図39,図40,およ
び図41を参照して説明する。図37は、プロジェクト
テーブルの作業用テーブル223に使用するツールを登
録する処理手順を示すフローチャートである。図38
は、プロジェクトで使用するツールの情報を設定し、ま
たはツールの情報を変更する登録ツール設定・変更画面
の例を示す図であり、図39は、図38の登録ツール設
定・変更画面において“追加”ボタンが押されたときに
表示されるツール選択画面の登録ツール設定・追加画面
の一例を示す図である。また、図40はシステム管理テ
ーブル222のツール一覧テーブル242の構成を説明
する図である。図41はプロジェクトテーブルの作業用
テーブル223に登録されているツールレコードのデー
タ形式を説明する図である。
【0148】ツール登録処理は、処理を開始すると、図
37に示すように、まず、プロジェクト一覧画面321
(図32)から対象とするプロジェクトを選択して、図
38に示すような登録ツール設定・変更画面381を表
示する(ステップ371)。次に、登録ツール設定・変
更画面381の“追加”ボタン385を押すことによ
り、対象プロジェクトにおいて使用していないツールの
一覧が表示される(ステップ372)。これにより、図
39に示すように、サブウィンドウ画面として、登録ツ
ール設定・追加画面391が開かれ、登録ツール設定・
追加画面391において、対象とするプロジェクトの作
業用テーブル223に登録されていないツールが、シス
テム管理テーブル222の中のツール一覧テーブル24
2から取り出されて、ツール一覧392として表示され
る。
【0149】次に、この登録ツール設定・追加画面39
1において、ツール一覧392から新たに使用するツー
ル393を選択して(指定して)“了解”ボタン394
を押す(ステップ373)。追加するツールの選択操作
を終了するため“取消”ボタン395を押すと、指定さ
れたツールの内容により、その実行マシン、実行バージ
ョンの変更処理が行われる(ステップ374)。これに
より、プロジェクトテーブルの作業用テーブル223に
ツールが追加される。
【0150】図40に示すように、システム管理テーブ
ル222の中のツール一覧テーブル242は、記号名フ
ィールド401,日本語名フィールド402,パス一覧
フィールド403,生成先フィールド404,実行一覧
フィールド405,およびオプション一覧フィールド4
06で構成されている。
【0151】記号名フィールド401には、ツールをシ
ステムが実行する際に使用するツール名が格納される。
日本語名フィールド402には、ツールに付けた日本語
の名称が格納される。また、パス一覧フィールド403
には、当該ツールが実行可能なクライアント装置201
の名称のホイト名と、当該ツールの格納してあるディレ
クトリ名を格納する格納場所とが、テーブル形式で格納
されるテーブルをポイントするポインタが格納される。
生成先フィールド404には、当該ツールが情報を生成
する場合に許される生成先のリソースコードが格納され
る。実行一覧フィールド405には、ツールの実行形態
を管理するためのデータを格納するテーブルをポイント
するポインタが格納される。実行一覧フィールド405
に格納されるポインタによりポイントされるテーブルに
は、ツールの実行形態を管理するデータとして、リソー
スコードと、実行種別と、実行機能名とを対応づけて格
納し、どのリソースコードのデータに対して、どんな実
行種別が与えられているか、その実行機能の日本語名称
が管理される。
【0152】また、オプション一覧フィールド406に
は、そのツールを実行する際に指定可能なオプションの
ためのデータを格納するテーブルをポイントするポイン
タが格納される。このテーブルには、そのツールを実行
する際に指定可能なオプションコードと、オプションコ
ードを識別するオプション種別と、オプションの日本語
名称のオプション名とが対応づけられて格納される。
【0153】図41(A)に示すように、プロジェクト
テーブルの作業用テーブル223には、ツールの属性を
持ったレコードが登録される。ツールルートデータ41
01によりツールのレコードの先頭を管理する。ツール
ルートデータ4101は、システムが付加するリソース
ID4102,ツールのデータであることを示すリソー
スコード4103,当該レコードに付けられた日本語名
称のリソース名4104,ツールの属性を持ったすべて
のレコードのリソースIDを管理するリソース一覧テー
ブル4105で構成されている。
【0154】また、図41(B)に示すように、リソー
ス一覧テーブル4105に登録されているツールのリソ
ースレコードは、ツールのレコードに付けられたリソー
スID4106,ツールリソースであることを識別する
リソースコード4107,ツールのコマンド名称を格納
する記号名4108,ツールの日本語名を格納する日本
語名4109,リソースコードに対する実行種別を管理
する実行機能テーブル4110,オプション種別に対す
るオプションコードとオプション名称とを管理するオプ
ションテーブル4111,プロジェクトで使用可能なク
ライアント装置の名称(ホスト名)と実行するモジュー
ルの格納されているパスを格納した格納場所とを管理す
るパステーブル4112の各データを格納するエリアか
ら構成されている。
【0155】なお、前述した登録ツール設定・変更画面
381には、プロジェクトで使用するツールの構成を操
作するため、現在登録されているツールを一覧表示する
登録ツール表示部382,ツール選択カーソルで選択し
ているツールの設定内容を表示するツールガイド表示部
383,“了解”ボタン384,ツールを追加する場合
に操作する“追加”ボタン385,ツールを変更する場
合に操作する“変更”ボタン386,ツールを削除する
場合に操作する“削除”ボタン387,処理を取り消す
場合に操作する“取消”ボタン388,ツール選択カー
ソル389が設けられている。
【0156】次に、プロジェクト変更部282の処理に
図42を参照して説明する。図42はプロジェクト変更
部282の処理の手順を示すフローチャートである。プ
ロジェクト変更の処理では、プロジェクト属性を変更す
る場合(ステップ421)、プロジェクト属性変更処理
(ステップ422)を行い、担当者を変更する場合には
(ステップ423)、担当者変更処理(ステップ42
4)を行う。また、ツールの構成を変更する場合は(ス
テップ425)、ツール構成変更処理(ステップ42
6)を行う。これにより、プロジェクトの構成員や使用
するツールの変更が可能となる。
【0157】次に、このプロジェクト変更部282の処
理の中で行われるプロジェクト属性変更処理,担当者変
更処理,およびツール構成変更処理のそれぞれに処理に
ついて説明する。図43はプロジェクト属性変更処理の
手順を示すフローチャートであり、図44は担当者変更
処理の手順を示すフローチャートである。また、図47
は、ツール構成変更処理の手順を示すフローチャートで
ある。
【0158】プロジェクト属性変更処理では、図43に
示すように、プロジェクト一覧画面321(図32)か
ら対象とするプロジェクトを選択し(ステップ43
1)、プロジェクト属性変更画面を表示する(ステップ
432)。例えば、前述したプロジェクト属性を定義す
るウィンドウ画面311を開して表示し、表示したプロ
ジェクト属性変更画面において、変更するプロジェクト
の記号名,日本語名,担当部署を入力して変更し、入力
した内容で良ければ“了解”ボタンを押して、変更内容
を確定する(ステップ433)。
【0159】図44に示すように、担当者変更処理にお
いても、前述したプロジェクト属性変更処理と同様に、
プロジェクト一覧画面321(図32)から対象とする
プロジェクトを選択し(ステップ441)、担当者設定
・変更画面361(図36)を表示する(ステップ44
2)。次に、担当者の追加処理(ステップ443)を行
い、担当者の情報で修正のあるものは修正する担当者の
内容の変更を行い(ステップ444)、プロジェクトの
従事者でなくなった担当者は削除する担当者の削除処理
を行う(ステップ445)、また、必要であれば責任者
を変更し(ステップ446)、変更した内容をテーブル
(担当者リソースレコード)に反映させる。
【0160】次に、担当者変更処理の中の担当者の情報
を変更する場合に伴う処理について説明する。図45お
よび図46を参照する。図45はプロジェクトから担当
者を削除する処理の手順を示すフローチャートであり、
図46は担当者を削除する際にその担当者が担当してい
た情報をプロジェクト内のどの担当者に引き継ぐかを指
定する担当者削除/リレーション設定の画面を示す図で
ある。
【0161】担当者変更処理の中で担当者の情報を変更
する場合、例えば、担当者を削除する処理を行う場合
は、削除された担当者の情報は、引き継く次の担当者を
設定しなければ、当該情報が消失してしまうことにな
る。このため、ここでは、担当者を削除する際にその担
当者が担当していた情報をプロジェクト内のどの担当者
に引き継ぐかを指定するリレーション設定を行う。ユー
ザが担当者削除/リレーション設定を行う場合、図46
に示すように、担当者削除/リレーション設定画面46
1を開き表示する。担当者削除/リレーション設定画面
461では、担当者表示エリア462において、プロジ
ェクト内の担当者を一覧表示されるので、指定する担当
者をカーソル463で選択して指示する。
【0162】図45に示すように、担当者の削除処理に
おいては、担当者設定・変更画面361(図36)を表
示して削除する担当者を選択し(ステップ451)、次
に、削除ボタンを押して、担当者削除/リレーション設
定画面461を表示する(ステップ452)。次に、担
当者削除/リレーション設定画面461において、削除
される担当者が担当していた情報を引き継ぐ担当者をカ
ーソル463により選択して指定する(ステップ45
3)。これにより、担当者を削除し、削除される担当者
が担当していた情報の引き継ぎの処理を行う。このた
め、担当者の入れ替えなどによる担当物の引継が簡単に
漏れなく実行される。
【0163】次に、ツール構成変更処理について説明す
る。図47のフローチャートに示すように、ツール構成
変更処理では、まず、変更するプロジェクトをプロジェ
クト一覧画面321から選択する(ステップ471)。
次に、登録ツール設定・変更画面381(図38)を表
示して(ステップ472)、ツール構成の変更するため
に追加するツールの追加処理を行い(ステップ47
3)、変更するツールの実行マシン・実行バージョンの
変更処理を行い(ステップ474)、不要となったツー
ルの削除処理を行う(ステップ475)。
【0164】図48は、実行マシン・実行バージョン変
更処理の手順を示すフローチャートである。ツールの実
行マシン・実行バージョン変更処理では、図48のフロ
ーチャートに示すように、登録ツール設定・変更画面3
81(図38)を開き、登録ツール設定・変更画面38
1から、登録ツール一覧に表示されている登録ツールの
中で変更する対象のツールを選択する(ステップ48
1)。次に、“変更”ボタン386を押して、図49に
示すようなツールパス設定・変更画面491を表示し
(ステップ482)、該当する実行マシンと実行バージ
ョンを選択する(ステップ483)。そして、“了解”
ボタン499を押して、登録ツール設定・変更画面38
1(図38)に戻る。
【0165】次に、ツールパス設定・変更画面491に
ついて説明する。図49はツールパス設定・変更画面4
91の構成を示す図である。このツールパス設定・変更
画面491は、登録ツール設定・変更画面381(図3
8)の“変更”ボタン386が押されたときに表示され
る。ツールパス設定・変更画面491においては、ツー
ルパス表示エリア492が設けられており、ツールパス
表示エリア492において、システム管理テーブル22
2のツール一覧テーブル242に登録されているパス一
覧403(図40)の内容を表示する。このため、ツー
ルパス表示エリア492には、選択状態表示部(フィー
ルド)493,マシン名表示部(フィールド)494,
およびパス表示部(フィールド)495が設けられてい
る。選択状態表示部493により、現在の選択状態を示
し、マシン名表示部分494により、当該ツールを実行
するクライアント装置201を識別するクライアント装
置に付与された名称(ホスト名)を表示する。パス表示
部分495によりツールのパス(格納場所)を表示す
る。
【0166】更に、ユーザは、カーソル496を操作し
て、当該ツールのパスを選択する指示を行い、“実行”
ボタン497,“初期化”ボタン498,“取消”ボタ
ン499の各コマンドボタンを押して、ツールパスの設
定/変更を行う。“実行”ボタン497が押されると、
設定したツールパスの情報をプロジェクトテーブルの作
業用テーブル223に反映する処理を実行する。“初期
化”ボタン498が押されると、現在の選択状態を初期
状態に戻す処理を実行する。また、“取消”ボタン49
9が押されると、設定した内容を反映せずに終了する処
理を実行する。
【0167】次に、ツール削除処理について説明する。
プロジェクト変更部282のツール削除部により行われ
るツール削除処理は、図50のフロチャートに示すよう
に、プロジェクトで使用しなくなったツールを削除す
る。この削除処理では、前述の場合と同様に、プロジェ
クト一覧画面321(図32)から対象とするプロジェ
クトを選択し、更に、登録ツール設定・変更画面381
(図38)を開き、この登録ツール設定・変更画面38
1に一覧表示された登録ツールから削除するツールを選
択する(ステップ501)。そして、次に“削除”ボタ
ン387を押してツールを削除する(ステップ50
2)。
【0168】次にプロジェクト削除部283によるプロ
ジェクト削除処理について、図51を参照して説明す
る。図51は、プロジェクト削除処理の処理手順を示す
フローチャートである。このプロジェクト削除処理によ
り、開発が終了したプロジェクトをシステム管理テーブ
ル222のプロジェクト一覧テーブル241から削除す
る。プロジェクト削除処理では、プロジェクト一覧画面
321(図32)から対象とするプロジェクトを表示
し、削除するプロジェクトを選択する(ステップ51
1)。続いて、ユーザが削除コマンドを実行する操作を
行うと、削除確認メッセージを表示し(ステップ51
2)、更に、ユーザが削除コマンドを実行する操作を行
うと、指定されたプロジェクトを削除する(ステップ5
13)。これにより、指定されたプロジェクトレコード
が、プロジェクト一覧テーブル241(図33)から削
除される。
【0169】次に、具体的なプログラム開発の処理を行
うソフトウェア開発処理部212の処理について説明す
る。図52は、ソフトウェア開発処理部212の構成を
示す機能ブロック図である。図52に示すように、ソフ
トウェア開発処理部212の処理のため、プロジェクト
テーブル230における作業用テーブル223には、設
計ドキュメントリソースレコード527,構造体リソー
スレコード528,およびプログラムリソースレコード
529が設けられて、処理が進められる。
【0170】また、クライアント装置201のソフトウ
ェア開発処理部212には、システム要素の各機能処理
部として、機能仕様書を作成する機能仕様書作成部52
1,プログラムで使用するテーブルを定義するテーブル
作成部522,プログラムを作成するプログラム作成部
523,作成したプログラムの設計ドキュメントを生成
するプログラム設計ドキュメント生成部524,設計情
報の参照テーブルをプロジェクトテーブルの作業用テー
ブル223と公開用テーブル224とに切り替える設計
情報の参照切り替え部525,情報の変更履歴を取得す
る情報バージョン管理部526が備えられる。これらの
システム要素の各機能処理部は、クライアント装置20
1のデータ入出力部210とサーバ装置202のテーブ
ル入出力部220を介して、プロジェクトテーブルの作
業用テーブル223および公開用テーブル224に対し
て、データをアクセスする。
【0171】次に、ソフトウェア開発処理部212の処
理について、図53,図54,図55を参照して説明す
る。図53は、ソフトウェア開発処理部212の処理の
手順を示すフローチャートである。図54は、プロジェ
クトテーブル230に登録されているリソースデータの
一覧を表示するリソース一覧画面の一例を示す図であ
り、図55は、図54のリソース一覧画面541に表示
するリソースの種別を選択するリソース種別選択画面の
一例を示す図である。
【0172】図54に示すように、リソース一覧画面5
41においては、プロジェクトテーブル230に登録さ
れているリソースデータの一覧を表示する。リソース一
覧画面541は、リソースを表示するリソース一覧表示
エリア542とリソースデータを選択するカーソル54
3で構成されている。
【0173】リソース一覧画面541に表示するリソー
スの種別は、図55に示すように、リソース種別選択画
面551を開いて、当該するリソースを選択する。リソ
ース種別選択画面551には、リソース種別を表示する
リソース種別フィールド552が設けられており、リソ
ース種別フィールド552には、現在表示中のリソース
種別を識別するためのマークエリア553が設けられ
る。また、リソース種別の選択を行うためのコマンドボ
タンとして、画面の下部側に、選択した結果をリソース
一覧画面541に反映するコマンドを実行する“実行”
ボタン554,リソース種別をすべて選択状態にするコ
マンドを実行する“全部”ボタン555,選択状態を初
期状態に戻すコマンドを実行する“初期値”ボタン55
6が設けられている。
【0174】次に、図53を参照して、ソフトウェア開
発処理部212の処理の流れについて説明する。ソフト
ウェア開発の処理は、システムを起動して(ステップ5
301)、処理を開始する。次に、ソフトウェア開発処
理を行う対象のプロジェクトを選択し、対象プロジェク
トのリソース一覧画面541(図54)を表示する(ス
テップ5302)。前述したように、リソース一覧画面
541に表示するリソース種別を変更する場合は(ステ
ップ5303)、リソース種別選択画面551(図5
5)を表示し(ステップ5304)、表示するリソース
の種別を選択する(ステップ5305)。そして、“実
行”ボタン555を押し、作業用テーブル223の担当
者リソースレコードの表示リソーステーブル3412
(図34)に選択したリソースコードを登録する(ステ
ップ5306)。次に、機能仕様書を作成するため機能
仕様書作成処理を行い(ステップ5307)、プログラ
ムで使用するテーブルを設計するテーブル作成処理を行
う(ステップ5308)。そして、プログラムを開発す
るプログラム作成処理を行う(ステップ5309)。プ
ログラム開発が終了すると、次に、プログラム設計ドキ
ュメントを生成するプログラム設計ドキュメント生成処
理を行う(ステップ5310)。これにより、ソフトウ
ェア開発の中の一連の処理が行われる。
【0175】次に、ソフトウェア開発処理部212の中
での機能仕様書作成部521の処理について説明する。
図56は、機能仕様書作成部521の構成を示す機能ブ
ロック図である。機能仕様書の作成処理のため、プロジ
ェクトテーブルの作業用テーブル223には、設計ドキ
ュメントリソースレコード527が設けられているの
で、更に、テキストデータリソースレコード567およ
び図データリソースレコード568を設けて、処理が進
められる。このため、クライアント装置201の中のソ
フトウェア開発処理部212の中の機能仕様書作成部5
21には、ここでの機能処理部として、目次編集部56
1,タイトル・レベル編集部562,帳票編集部56
3,テキスト編集部564,目次項目チェック部56
5,および帳票選択部566の各機能処理部が設けられ
る。
【0176】目次編集部561は、目次の項目を編集す
る処理を行う。タイトル・レベル編集部562は、目次
のタイトルやレベルを編集する処理を行う。帳票編集部
563は、目次に設定した項目に対して帳票データを割
り当てる処理を行う。テキスト編集部564は、機能仕
様書の内容を入力する処理を行う。目次項目チェック部
565は、テキスト編集中に変更した目次項目と目次編
集部561で定義した内容とを比較チェックする処理を
行う。また、帳票選択部566は、プロジェクトテーブ
ルの作業用テーブル223で管理している帳票データか
ら目的のデータを選択する処理を行う。
【0177】次に、機能仕様書作成部521の処理につ
いて、図57を参照して説明する。図57は、機能仕様
書作成部521の処理手順を示すフローチャートであ
る。機能仕様書作成の処理を開始すると、初めにリソー
ス一覧画面541(図54)を開き、カーソル543に
より設計ドキュメントを選択する(ステップ571)。
次に、設計ドキュメント新規作成画面を表示し(ステッ
プ572)、記号名,日本語名、コメントを入力する
(ステップ573)。これにより、設計ドキュメントリ
ソースレコード527に作成した情報が登録され、リソ
ース一覧画面541には登録された該当データ(更新日
付,担当者など)が表示されるので(ステップ57
4)、次に、設計ドキュメントの目次編集を行う目次編
集処理を行い(ステップ575)、更に、ドキュメント
の内容をテキスト編集で作成するテキスト編集処理を行
う(ステップ576)。以上の操作で機能仕様書の作成
を行う。
【0178】ここでは、特に図示しないが、設計ドキュ
メントリソースレコード527も、前述したようにリソ
ースレコード(例えば、図34,図41)と同様なデー
タ構造のレコード形式を有している。つまり、設計ドキ
ュメントのレコードの先頭を管理する設計ドキュメント
ルートデータは、システムが付加するリソースID,設
計ドキュメントのデータであることをあらわすリソース
コード,そのレコードに付けられた日本語名称のリソー
ス名,設計ドキュメントの属性を持ったすべてのレコー
ドのリソースIDを管理するリソース一覧テーブルで構
成されている。また、当該リソース一覧テーブルに登録
されている設計ドキュメントのリソースレコードは、設
計ドキュメントのレコードに付けられたリソースID,
設計ドキュメントリソースであることを識別するリソー
スコード,設計ドキュメントの英語名称の記号名,設計
ドキュメントの日本語名,設計ドキュメントの目次項目
の情報を管理する目次情報,生成ツールを実行する際の
実行オプションを管理するための生成ツール実行オプシ
ョン情報,生成元のリソース種別を管理する生成元リソ
ース一覧の情報,設計ドキュメントの各データを更新し
た最新の時間を管理する更新時間,目次情報を更新した
時間を管理する目次更新時間,設計ドキュメントレコー
ドを参照しているもしくは設計ドキュメントレコードが
参照しているリソースを管理する参照リソーステーブル
の各データで構成されている。
【0179】次に、機能仕様書作成部521の中の目次
編集部561の処理について説明するる。図58を参照
すると、目次編集部561の処理手順をあらわすフロー
チャートが示されている。この目次編集部561の処理
では、処理を開始すると、まず、リソース一覧画面54
1(図54)から設計ドキュメントのリソースデータを
選択し(ステップ581)、そのリソース一覧画面54
1のコマンドバーの中の表示コマンドを操作して、目次
一覧画面591(図59)を表示する(ステップ58
2)。そして、次に、目次項目を編集するためにタイト
ル・レベル編集処理を行い(ステップ583)、作成し
た項目に対して帳票編集処理を行う(ステップ58
4)。
【0180】この処理の中で表示される目次一覧画面5
91について、図59を参照して説明する。図59に示
すように、設計ドキュメントの目次を定義する目次一覧
画面591の構成は、目次の項番を表示する項番フィー
ルド592,目次の項目名を表示する項目フィールド5
93,プロジェクトテーブルの中の作業用テーブル22
3と公開用テーブル224のどちらを使用するかを表示
するF/Oフィールド594,項目(項目フィールド5
93)を記述する帳票を表示する帳票フィールド59
5,および、帳票の作成担当者を表示する担当者フィー
ルド596から構成されている。これらの各フィールド
の内容を定義することにより、設計ドキュメントの目次
の項目の内容を定義する。
【0181】上述の目次編集処理の中でタイトル・レベ
ル編集処理と、帳票編集処理を行うが、これらの処理に
ついて、次に説明する。図60はタイトル・レベル編集
部562の処理の手順を示すフローチャートである。図
61は目次項目を編集する目次定義画面の例を示す図で
ある。図61に示すように、タイトル・レベル編集処理
において利用される目次定義画面611は、項目の
「章」、「節」をあらわすレベルフィールド612,目
次項目の内容をあらわす項目フィールド613、項目を
追加したり項目の内容を変更する際に文字入力を行う項
目入力フィールド614,定義した目次項目を目次一覧
画面591(図59)に反映させるコマンドを実行する
ことを指示する“了解”ボタン615などで構成され
る。
【0182】タイトル・レベル編集部562の処理にお
いては、図60のフローチャートに示すように、まず、
初めに目次定義画面611(図61)を表示する(ステ
ップ601)。目次定義画面611を表示すると、各フ
ィールドのデータとして、現在の目次情報テーブルの内
容が表示される。目次の項目を追加する場合には(ステ
ップ602)、項目入力フィールド614に項目の内容
を入力する(ステップ605)。また、目次項目の文字
列を修正する場合は、対象の項目を選択すると(ステッ
プ603)、項目入力フィールド614に目次項目の文
字列が表示されるので、ここで修正する文字列を入力し
編集を行い、項目入力フィールドの文字列を編集する
(ステップ604)。そして、次に、対象の項目のレベ
ルフィールド612を設定する(ステップ606)。こ
れにより、設計ドキュメントリソースレコード527の
目次情報テーブルに編集結果が格納される。
【0183】続いて、目次項目に対する帳票編集部56
3の処理について、図62に示す処理手順のフローチャ
ート,図63に示す帳票種別選択画面,図64に示すリ
ソース選択画面を参照して説明する。
【0184】図62は帳票編集部563の処理の手順を
示すフローチャートである。帳票編集部563の処理で
は、まず、目次一覧画面591(図59)から対象の目
次項目を選択する(ステップ621)。次に、帳票種別
選択画面631(図63)を表示し、この中でカーソル
632により、目次項目に対応付ける帳票種別を選択す
る(ステップ622)。帳票種別を選択すると、次にリ
ソース選択画面641(図64)を表示し(ステップ6
23)、選択した帳票種別のリソース一覧がリソース選
択画面641に表示されると、次に、カーソル642に
より、リソース選択画面641の中の目的のリソースを
選択する(ステップ624)、そして、“了解”ボタン
643を押して、目次一覧画面591の帳票フィールド
595(図59)に帳票が設定された状態を表示する
(ステップ625)。このとき、設計ドキュメントリソ
ースレコードに対して、その目次情報テーブルの生成元
リソースコードと、生成元リソース一覧に情報が設定さ
れる。また、参照リソーステーブルにも帳票の情報が設
定される。
【0185】次に、機能仕様書作成部521の中のテキ
ストデータ編集部564の処理について説明する。図6
5,図66,図67,および、図68を参照して説明す
る。図65は、プロジェクトテーブルの作業用テーブル
223に登録されているテキストデータリソースレコー
ド567のデータ形式を説明する図であり、図66は、
テキスト編集処理の手順を示すフローチャートである。
図67は、設計ドキュメントのテキストを入力する入力
画面の構成を示す図である。また、図68は、版管理
(情報のバージョン管理)の設定を行うドキュメント履
歴登録画面の構成を示す図である。
【0186】図65(A)に示すように、プロジェクト
テーブルの作業用テーブル223には、テキストデータ
リソースレコード567が登録される。テキストデータ
リソースレコード567は、テキストデータルートデー
タ6501により、テキストデータのレコードの先頭を
管理する。テキストデータルートデータ6501は、シ
ステムが付加するリソースID6502,テキストデー
タのデータであることをあらわすリソースコード650
3,そのレコードに付けられた日本語名称のリソース名
6504,テキストデータの属性を持ったすべてのレコ
ードのリソースIDを管理するリソース一覧テーブル6
505で構成されている。
【0187】また、図65(B)に示すように、リソー
ス一覧テーブル6505に登録されているテキストデー
タのリソースレコードは、テキストデータのレコードに
付けられたリソースID6506,テキストデータリソ
ースであることを識別するリソースコード6507,テ
キストデータの英語名称を格納する記号名6508,テ
キストデータの日本語名を格納する日本語名6509,
テキストデータの各データを更新した最新の日付時間を
管理する更新日付6510,テキストデータを履歴更新
した時刻を管理する固定日付6511,テキストデータ
を格納したテキストデータ6512,テキストデータレ
コードを参照しているもしくはテキストデータレコード
が参照しているリソースを管理する参照リソーステーブ
ル6513の各データを格納するエリアから構成されて
いる。ここでのテキストデータ6512のエリアは、実
体情報を格納している格納先のポインタデータが記録さ
れており、同様に、参照リソーステーブル6513のエ
リアは、実体情報を格納している格納先のポインタデー
タが記録されている。
【0188】設計ドキュメントのテキストを入力し、テ
キストデータの編集を行うテキスト編集画面671は、
図67に示すように、テキスト編集フィールド672,
位置指定カーソル673などで構成されており、また、
画面の左側には、テキスト編集のためのツールを起動す
るツールボタンが設けられている。また、版管理用のド
キュメント履歴登録画面681の構成は、図68に示す
ように、処理の機能を選択するリビジョンフィールド6
82,登録したデータにコメントを付加するログフィー
ルド683,履歴を登録するコマンドの実行を指示する
“実行”ボタン684などで構成されている。
【0189】図66のフローチャートを参照して、テキ
スト編集処理の流れを説明する。テキスト編集処理で
は、まず、リソース一覧画面541(図54)からテキ
ストデータのリソースを選択して開き(ステップ66
1)、次に、テキスト編集画面671(図67)に表示
してテキストデータを編集する(ステップ662)。次
に、目次項目の編集を行う目次項目編集処理を行い(ス
テップ663)、変更した目次項目があるかをチェック
する目次項目チェック処理を行う(ステップ664)。
そして、編集が終了すると、プロジェクト内のデータを
公開するために、公開する対象の情報を選択する(ステ
ップ665)、次に、版管理(情報のバージョン管理)
の設定を行うため、ドキュメント履歴登録画面681
(図68)を表示し(ステップ666)、ドキュメント
履歴登録画面681において、リビジョン指定フィール
ド682により「公開」もしくは「公開&履歴」ボタン
を選択し(ステップ667)、情報をプロジェクト内に
公開する設定を行う。
【0190】次に、テキスト編集中に処理を行う目次項
目チェック部565の処理を、図69のフローチャート
および図70の表示画面を参照して説明する。図69
は、テキストデータ入力中に目次項目を編集する処理手
順をあらわしたフローチャートである。処理を開始する
と、初めに、テキスト編集画面671(図67)におい
て、目次項目にする行にカーソル673を移動し(ステ
ップ691)、目次項目設定画面701(図70)を表
示する(ステップ692)。目次項目を追加する場合は
(ステップ693)、レベルフィールドの該当するレベ
ル702を選択する(ステップ694)。ここでのレベ
ルとは節や章のことである。また、目次項目を解除する
場合は(ステップ695)、レベルフィールドの解除ボ
タン703を選択する(ステップ696)。このような
操作を行うことにより、目次データをテキストテータリ
ソースレコード567の中のテキストデータ6512
(図65)内に作成する。
【0191】図70は、テキスト編集中にあらたに目次
項目を設定する場合の設定画面による操作例を示してい
る。図70に示すように、目次項目設定画面701に
は、目次項目のレベルをあらわすレベルフィールドのボ
タン702,目次項目に設定済みデータを解除する“解
除”ボタン703,目次項目に設定する項目テキストを
表示する目次項目フィールド704、目次項目設定画面
の内容を目次項目に反映するコマンドの実行を指示する
“了解”ボタン705が設けられている。
【0192】例えば、テキスト編集中に修正した目次項
目をチェックする場合は、目次項目チェック部565に
よる目次項目チェック処理を実行する。図71は、目次
項目チェック処理の処理の手順を示すフローチャートで
ある。目次項目チェック処理を開始すると、図71に示
すうように、まず、初めに目次項目が変更されているか
否かを判定する(ステップ711)。目次項目が変更さ
れている場合は、テキスト目次読み込み画面721(図
72)を表示する(ステップ712)。テキスト目次読
み込み画面721において、テキストフィールド724
の目次の内容を設計ドキュメントの目次に反映する場合
は(ステップ713)、“了解”ボタン725を押す。
その結果、設計ドキュメントリソースレコードの目次情
報テーブルに反映される(ステップ714)。設計ドキ
ュメントリソースレコードに反映させない場合は、“却
下”ボタン726を押して(ステップ715)、テキス
ト上で変更のあった目次項目を解除して、目次情報の変
更をしない(ステップ716)。
【0193】図72は、目次項目の修正状況をチェック
するテキスト目次読み込み画面の構成を示す図である。
テキスト目次読み込み画面721は、設計ドキュメント
リソースレコード527における目次更新時間とテキス
トデータリソースレコード567の更新日付の内容を表
示する目次変更時刻フィールド722と、設計ドキュメ
ントリソースレコードの目次内容を表示するドキュメン
トフィールド723と、テキストデータリソースレコー
ドからのテキストデータの内容を表示するテキストフィ
ールド724と、テキストデータの目次項目を設計ドキ
ュメントの目次項目に反映するコマンドの実行を指示す
る“了解”ボタン725と、テキストデータの変更を設
計ドキュメントの目次項目に反映しないコマンドの実行
を指示する“却下”ボタン726を備えている。これら
のフィールド,ボタンにより、目次項目の修正状況をチ
ェックする。
【0194】次に、開発するプログラムで使用する各々
のテーブルを作成するテーブル作成部522(図52)
の処理について説明する。図73,図74,図75,図
76および図77を参照して説明する。図73は、プロ
ジェクトテーブルの作業用テーブル223に登録されて
いる構造体データのレコードのデータ形式を説明する図
であり、図74は、作成した情報の担当者を設定する担
当者選択画面の一例を示す図である。また、図75は、
構造体のメンバーの内容を定義する構造体定義画面の画
面構成を示す図である。図76は、テーブル作成部52
2の処理の手順を示すフローチャートであり、図77
は、構造体のリソースレコードを作成する場合の新規作
成画面の画面構成を示す図である。
【0195】図73(A)に示すように、構造体リソー
スレコードは、構造体データルートデータ7301によ
って構造体データのレコードの先頭を管理する。構造体
データルートデータ7301は、システムが付加するリ
ソースID7302,構造体データのデータであること
をあらわすリソースコード7303,そのレコードに付
けられた日本語名称のリソース名7304,構造体デー
タの属性を持ったすべてのレコードのリソースIDを管
理するリソース一覧テーブル7305で構成されてい
る。
【0196】また、図73(B)に示すように、リソー
ス一覧テーブル7305に登録されている構造体データ
のリソースレコードは、構造体データのレコードに付け
られたリソースID7306,構造体データリソースで
あることを識別するリソースコード7307,構造体デ
ータの英語名称を格納する記号名7308、構造体デー
タの日本語名を格納する日本語名7309,構造体デー
タの各データを更新した最新の時間を管理する更新時間
7310,構造体データを履歴更新した時刻を管理する
固定日付7311,構造体データを格納した構造体テー
ブル7312、構造体データに付加されたコメントデー
タ7313,構造体データレコードを参照しているもし
くは構造体データレコードが参照しているリソースを管
理する参照リソーステーブル7314の各データを格納
するエリアで構成されている。
【0197】また、構造体テーブル7312のエリア
は、実体情報が格納されている格納先のポインタデータ
が格納されており、このポインタデータによりポイント
される構造体テーブルには、変数の属性,変数名,変数
に付加された日本語名,変数が何に使用されるのかを説
明した内容のフィールドから構成されている。同じく、
参照リソーステーブル7314のエリアも、実体情報が
格納されている格納先のポインタデータが格納されてお
り、このポインタデータによりポイントされる参照リソ
ーステーブルには、当該構造体のデータに対する参照先
および参照先のフィールドから構成されている。
【0198】テーブル作成部522によるテーブル作成
の処理では、図76のフローチャートに示すように、処
理を開始すると、まず、リソース一覧画面541(図5
4)を表示し、その中から構造体リソースレコードを選
択し(ステップ761)、次に、構造体新規作成画面7
71(図77)を表示する(ステップ762)。この構
造体新規作成画面771において、その記号名フィール
ド772,日本語名フィールド773,コメントフィー
ルド774により、記号名、日本語名、コメントの各情
報を入力して構造体リソースを作成する(ステップ76
3)。そして、次に、作成した情報に担当者を割り当て
る場合は(ステップ764)、対象となる構造体情報を
選択し(ステップ765)、担当者選択画面741(図
74)を表示して(ステップ766)、担当者一覧74
2の中のカーソル743を操作して、担当者を選択する
操作を行う(ステップ767)。次に、編集対象とする
構造体の情報を選択し開き(ステップ768)。構造体
定義画面751(図75)を表示し、レベル,属性,変
数名,日本語名などの内容情報を定義する(ステップ7
69)。このような一連の操作処理を行うことにより、
テーブルの中の各々の必要な情報を定義してテーブルを
作成する。
【0199】構造体のリソースレコードを作成する新規
作成画面は、図77に示すように、構構造体新規作成画
面771に、構造体の記号名入力フィールド772,構
造体の日本語名の入力フィールド773,構造体のコメ
ントを入力するフィールド774が設けられており、こ
れらの各フィールドに該当データを入力し、“実行”ボ
タン775を押すことにより、構造体リソースレコード
を作成するコマンドを実行する。
【0200】次に、ソフトウェア開発処理部212の中
の主要部となるプログラム作成部523(図52)につ
いて説明する。図78は、プログラム作成部523の構
成を示す機能ブロック図である。この場合、プログラム
の作成処理のため、プロジェクトテーブルの作業用テー
ブル223には、インクルードリソースレコード78
7,モジュールリソースレコード788,関数リソース
レコード789,プログラムリソースレコード529が
設けられ、これらを利用して処理が進められ、また、そ
の中で未定義のリソースが生じた場合に、未定義テーブ
ル232が更新される。
【0201】このため、クライアント装置201の中の
ソフトウェア開発処理部212の中のプログラム作成部
523には、ここでの機能処理部として、インクルード
ファイル作成部781,モジュール作成部782,ヘッ
ダ部作成部783,関数作成部784,コンパイル環境
設定部785,および、コンパイル部786の各機能処
理部が設けられる。インクルードファイル作成部781
は、インクルードファイルを設計作成し、モジュール作
成部782は、モジュールの構造を設計定義する。ヘッ
ダ部作成部783は、モジュールのヘッダ部を作成し、
また、関数作成部784は、モジュール内の関数を作成
する。そして、コンパイル環境設定部785により、プ
ログラムのコンパイル環境を設定し、コンパイル部78
6により、コンパイルを実行する。これら各機能処理部
のそれぞれの処理結果により、データ入出力部210,
テーブル入出力部220を経由して、プロジェクトテー
ブルの作業用テーブル223において、インクルードリ
ソースレコード787,モジュールリソースレコード7
88,関数リソースレコード789,プログラムリソー
スレコード529を作成し、未定義テーブル232を更
新する。
【0202】次に、プログラムの作成部523の全体の
処理の流れについて、図79に示すフローチャートを参
照して説明する。図79は、プログラム作成処理の全体
の処理の流れを示すフローチャートである。
【0203】プログラム作成処理を開始すると、まず、
表示されたリソース一覧541(図54)からプログラ
ムを選択し(ステップ7901)、プログラム新規作成
画面811(図81)を表示する(ステップ790
2)。プログラム新規作成画面811において、その記
号名フィールド812,日本語名フィールド813,お
よび、コメントフィールド814に、記号名、日本語
名、コメントの各データを入力し、“実行”ボタン81
5を押して、新規にプログラムリソースレコードを登録
する(ステップ7903)。このプログラムリソースレ
コードは、プロジェクトテーブルの作業用テーブル22
3にデータと共に登録される。担当者を変更する必要が
ある場合は担当者変更処理を行う(ステップ790
4)。
【0204】次に、再びリソース一覧画面541(図5
4)を表示し、リソース一覧画面541からモジュール
構成を定義する対象のプログラムを選択し(ステップ7
905)、モジュール構造画面821(図82)を表示
する(ステップ7906)。続いて、インクルードファ
イル作成部781によるインクルードファイルの作成処
理を行い(ステップ7907)、モジュール作成部78
2によるモジュールの作成処理を行い(ステップ790
8)、コンパイル環境設定部785によるコンパイル環
境の設定処理を行い(ステップ7909)、更に、コン
パイル部786を使用したコンパイルとテストを実行す
る(ステップ7910)。
【0205】そして、次に、開発したプログラムをプロ
ジェクトに公開するか否かを判定し(ステップ791
1)、公開する場合は公開対象のモジュールを選択して
(ステップ7912)、プログラム履歴登録画面831
(図83)を表示する(ステップ7913)。そして、
プログラム履歴登録画面831において、リビジョンフ
ィールド832の“公開”ボタンまたは“公開&履歴”
ボタンを選択し(ステップ7914)、続いて、“実
行”ボタン835を押して(ステップ7915)、モジ
ュール構造画面821における公開マーク837を
“−”から“*”に変更する(ステップ7916)。こ
のように操作によって、プログラム作成処理を行うこと
により、プログラム開発の各担当者は他の担当者の作業
の進捗状況などに影響されること無く、自分のペースで
作業を遂行し、プログラムを開発することが可能とな
る。
【0206】次に、このプログラム作成処理の中で利用
されるプログラム新規作成画面811(図81),モジ
ュール構造画面821(図82),およびプログラム履
歴登録画面831(図83)について説明する。
【0207】図81は、プログラムリソースレコード
(構造体データ)の新規作成画面を示す図である。図8
1に示すように、プログラム新規作成画面811には、
記号名フィールド812,日本語名フィールド813,
および、コメントフィールド814が設けられており、
この各フィールドを用いて、記号名,日本語名,コメン
トの各データを入力して、プログラムリソースレコード
(構造体データ)を新規作成する。また、コマンドボタ
ンとして、新規にプログラムリソースレコードをプロジ
ェクトテーブルに登録するコマンドの実行を指示する
“実行”ボタン815が設けられている。
【0208】図82は、プログラムのモジュール構造を
表示するモジュール構造画面の構成を説明する図であ
る。図82に示すように、モジュール構造画面821
は、モジュールの先頭から付加された項番フィールド8
22,情報をプロジェクトテーブルの作業用テーブル2
23と公開用テーブル224のどちらを選択しているか
を表示するO/Fフィールド823,モジュール構造に
表示されている情報の更新日付を表示する更新日付フィ
ールド824、プログラムのモジュール構造を表示する
モジュール構造フィールド825、情報の担当者フィー
ルド826で構成される。更新日付フィールド824内
には、公開済み未公開を識別する公開マーク827が更
新日付のデータの後に付与される。
【0209】図83はプログラムをプロジェクト内に公
開する場合に使用するプログラム履歴登録画面の構成を
説明する図である。図83に示すように、プログラム履
歴登録画面831には、公開方法を指定するリビジョン
ボタン領域832,動作対象を指定する動作対象ボタン
領域833,公開履歴に対するコメントを付加するログ
入力フィールド834,および、プログラム履歴登録コ
マンドの実行を指する“実行”ボタン835が設けられ
ている。前述したように、開発したプログラムをプロジ
ェクトに公開する場合には、公開対象のモジュールを選
択し、プログラム履歴登録画面831により、リビジョ
ンフィールド832の“公開”ボタンまたは“公開&履
歴”ボタンを選択し、続いて“実行”ボタン835を押
すことにより、指定された対象のプログラムが、公開用
テーブル224に移されて、該当するプログラムが公開
される。
【0210】次に、上述のようにした作成されるプログ
ラムデータは、前述したように各々のリソースレコード
の構造体データと同様なレコードのデータ形式で、プロ
ジェクトテーブルの作業用テーブル223に登録され
る。図80はプロジェクトテーブルの作業用テーブル2
23に登録されるプログラムリソースレコードのデータ
形式を説明する図である。
【0211】つまり、図80(A)に示すように、プロ
ジェクトテーブルの作業用テーブル223に、プログラ
ムデータのプログラムリソースレコードが登録される
が、プログラムデータルートデータ8001によりプロ
グラムデータのレコードの先頭を管理する。プログラム
データルートデータ8001は、システムが付加するリ
ソースID8002,プログラムデータのデータである
ことをあらわすリソースコード8003,そのレコード
に付けられた日本語名称のリソース名8004,プログ
ラムデータの属性を持ったすべてのレコードのリソース
IDを管理するリソース一覧テーブル8005で構成さ
れている。
【0212】また、図80(B)に示すように、リソー
ス一覧テーブル8005に登録されているプログラムデ
ータのリソースレコードは、プログラムデータのレコー
ドに付けられたリソースID8006,プログラムデー
タリソースであることを識別するリソースコード800
7,プログラムデータの英語名称を格納する記号名80
08,プログラムデータの日本語名を格納する日本語名
8009,プログラムデータの各データを更新した最新
の時間を管理する更新日付8010,プログラムデータ
を履歴更新した時刻を管理する固定日付8011,プロ
グラムデータに付加されたコメントデータ8012,コ
ンパイル環境を設定するコンパイル環境8013,プロ
グラムデータレコードを参照しているもしくはプログラ
ムデータレコードが参照しているリソースを管理する参
照リソーステーブル8014の各データを格納するエリ
アから構成されている。
【0213】ここでのコンパイル環境を設定するコンパ
イル環境8013のエリアは、プログラムのコンパイル
環境を設定している環境設定テーブルの格納先を指示す
るポインタデータが格納されており、環境設定テーブル
には、コンパイル命令,コンパイルフラグ,ロードフラ
グ,ソース取り出しディレクトリ,および、インクルー
ド取り出しディレクトリの各データを設定して、プログ
ラムのコンパイル環境を設定している。また、同じく、
リソースを管理する参照リソーステーブル8014のエ
リアは、プログラムデータレコードを参照しているもし
くはプログラムデータレコードが参照しているリソース
を管理する参照リソーステーブルの格納先を指示するポ
インタデータが格納されており、参照リソーステーブル
には、各々のリソースの参照先および参照元のデータが
格納されている。
【0214】次に、プログラム作成部523の中のイン
クルードファイル作成部781,モジュール作成部78
2,関数作成部784,コンパイル環境設定部785な
どの個別の機能処理部の処理について説明するが、これ
らの機能処理部の処理では、いずれも、同様なデータ構
造を有する構造体データによるリソースレコードを作成
し、それぞれのリソース単位に対応してリソースデータ
を作成する。そして、統一的なデータ構造により、各種
のデータをリソース単位として容易に再利用可能にプロ
ジェクトデーブルに格納する。その中の実体情報が未定
義のリソース単位のデータは、未定義テーブルを更新し
て格納される。これらのリソースレコードは、いずれ
も、プログラム作成のための要素となる。
【0215】まず、インクルードファイルの作成部78
1によるインクルードファイル作成処理について、図8
4,図85,図86,図87を参照して説明する。図8
4はインクルードファイル作成部781の処理の手順を
示すフローチャートであり、図85はインクルードファ
イル新規登録画面を示す図である。また、図86は構造
体の一覧を表示する構造体一覧画面を示す図である
【0216】インクルードファイル作成部781では、
処理を開始すると、図84に示すように、インクルード
ファイル新規登録画面851(図85)を表示する(ス
テップ841)。次に、インクルードファイル新規登録
画面851の記号名フィールド852,日本語名フィー
ルド853,および機能フィールド854から、記号
名,日本語名,および機能のデータを入力し、“実行”
ボタンを押して、インクルードファイルレコードを新規
に登録する(ステップ842)。次に、インクルードリ
ソースレコードから編集対象のインクルードファイルを
選択して開き(ステップ843)。インクルードファイ
ル入力エディタ画面を表示し、インクルードファイルの
内容を編集する(ステップ844)。次に、構造体一覧
画面(図86)を表示し(ステップ845)、選択カー
ソルを移動させて、取り込む構造体を選択すると、構造
体定義ソースコードがインクルードファイル入力エディ
タに取り込まれる(ステップ846)。この結果、次に
説明するように、インクルードファイルレコード(図8
7)の参照リソーステーブル8718に取り込んだ構造
体のリソースIDが登録される。
【0217】図87は、プロジェクトテーブルの作業用
テーブル223に登録されているインクルードリソース
レコードのデータ形式を説明する図である。図87
(A)に示すように、プロジェクトテーブルの作業用テ
ーブル223に、インクルードデータのインクルードリ
ソースレコードが登録されるが、この場合においても、
前述した各データレコードと同様に、インクルードデー
タルートデータ8701により、インクルードデータの
レコードの先頭を管理する。インクルードデータルート
データ8701は、システムが付加するリソースID8
702,インクルードデータのデータであることをあら
わすリソースコード8703,そのレコードに付けられ
た日本語名称のリソース名8704,インクルードデー
タの属性を持ったすべてのレコードのリソースIDを管
理するリソース一覧テーブル8705で構成されてい
る。
【0218】また、図87(B)に示すように、リソー
ス一覧テーブル8705に登録されているインクルード
データのリソースレコードは、インクルードデータのレ
コードに付けられたリソースID8706,インクルー
ドデータリソースであることを識別するリソースコード
8707,インクルードデータの英語名称を格納する記
号名8708,インクルードデータの日本語名を格納す
る日本語名8709,インクルードデータの各データを
更新した最新の時間を管理する更新日付8710,イン
クルードデータを履歴更新した時刻を管理する固定日付
8711,ソースコードを外部から取り込んだ入力日付
8712,ソースコードを解析した日付けの解析日付8
713,インクルードデータに付加されたコメントデー
タのコメント8714,インクルードのソース情報を格
納するソース情報8715,ソースコードの解析結果を
格納する解析結果8716,インクルードデータレコー
ドを参照しているもしくはインクルードデータレコード
が参照しているリソースを管理する参照リソーステーブ
ル8717のデータを格納するエリアから構成されてい
る。そして、前述のように、インクルードファイルが作
成された場合に、作成されたインクルードファイルのデ
ータが登録される。
【0219】次に、モジュール作成部782の処理につ
いて、前述の場合と同様にして、図88のフローチャー
ト、図89のモジュール新規登録画面、および図90の
モジュールリソースレコードのデータ形式をそれぞれ参
照して説明する。
【0220】図88はモジュール作成部782の処理の
手順をあらわすフローチャートである。このモジュール
作成部782によるモジュール作成処理では、図88に
示すように、まず、図93のようにモジュールを新規に
作成するために、モジュール新規登録画面891(図8
9)を表示する(ステップ881)。次に、モジュール
新規登録画面891の記号名フィールド892,日本語
名フィールド893,および機能フィールド894か
ら、記号名,日本語名,および機能の各データを入力
し、“実行”ボタンを押して、構造体データのモジュー
ルリソースレコードを新規に登録する(ステップ88
2)。これにより、モジュールデータ(モジュールリソ
ースレコード)が新規にプロジェクトテーブルの作業用
テーブル223に登録される。次に、ヘッダ作成処理に
より、モジュールのヘッダ部の作成を行い(ステップ8
83)。更に、モジュールの要素となる関数の作成を関
数作成処理によりを行う(ステップ884)。
【0221】図90は、プロジェクトテーブルの作業用
テーブル223に登録されているモジュールリソースレ
コードのデータ形式を説明する図である。図90(A)
に示すように、プロジェクトテーブルの作業用テーブル
223には、モジュールリソースレコードが登録される
が、モジュールデータルートデータ9001により、モ
ジュールデータのレコードの先頭を管理する。モジュー
ルデータルートデータ9001は、システムが付加する
リソースID9002,モジュールデータのデータであ
ることをあらわすリソースコード9003,そのリソー
スレコードに付けられた日本語名称のリソース名900
4,モジュールデータの属性を持ったすべてのレコード
のリソースIDを管理するリソース一覧テーブル900
5で構成されている。
【0222】図90(B)に示すように、リソース一覧
テーブル9005に登録されているモジュールデータの
リソースレコードは、モジュールデータのレコードに付
けられたリソースID9006,モジュールデータリソ
ースであることを識別するリソースコード9007,モ
ジュールとして取り出したときの名称を格納する記号名
9008,モジュールデータの日本語名を格納する日本
語名9009,モジュールデータの各データを更新した
最新の時間を管理する更新日付9010,モジュールデ
ータを履歴更新した時刻を管理する固定日付9011,
ソースコードを外部から取り込んだ入力日付9012,
モジュールを構成する関数やヘッダ部のリソースIDを
管理する構造テーブル9013,モジュールデータレコ
ードを参照しているもしくはモジュールデータレコード
が参照しているリソースを管理する参照リソーステーブ
ル9014の各データを格納するエリアから構成されて
いる。モジュールの作成処理を行うと、これらの各デー
タがモジュールリソースレコードに登録される。
【0223】次に、モジュールの構成要素となる関数作
成処理について説明する。関数作成処理は、関数作成部
784により処理が実行される。前述の場合と同様にし
て、図91の関数作成処理のフローチャート、図92の
関数定義画面、図93の関数リソースレコードのデータ
形式を示す図を参照して説明する。
【0224】図92に示すように、関数定義画面921
には、関数の日本語名称を入力する名前フィールド92
2,関数の名称や型を定義する形式フィールド923,
関数の引き数情報を定義する引き数フィールド924,
関数の機能を定義する機能入力フィールド925,関数
の戻り値を定義する戻り値フィールド926,関数が使
用する関数を定義する関連項目フィールド927,およ
び、定義した情報を確定するコマンドの実行を指示する
“実行”ボタン928が設けられている。これらの各フ
ィールドにデータを入力し、“実行”ボタン928を押
すことにより、モジュールの要素となる関数が定義され
る。
【0225】関数作成部784による関数作成の処理
は、図91に示すように、処理を開始すると、まず、関
数を作成する対象とするモジュールをモジュール構造図
821(図82)から選択する(ステップ911)。次
に、関数定義画面921(図92)を表示し(ステップ
912)、関数定義画面921において、名前フィール
ド922,形式フィールド923,引き数フィールド9
24,機能入力フィールド925,戻り値フィールド9
26,および関連項目フィールド927から各データを
入力し、名前,形式と引き数,機能,戻り値,および関
連項目の各データを入力して、“実行”ボタン928を
押す(ステップ913)。これにより、プロジェクトテ
ーブルの作業用テーブル223に関数のリソースデータ
が登録される。次に、編集する対象の関数を選択し、関
数作成画面を表示し関数の内容をコーディングする(ス
テップ914)。そして、関数のソースコードを解析
し、関連情報を接続する(ステップ915)。
【0226】このような一連の処理により、関数のリソ
ースデータが作成されるが、その場合に、次に説明する
ような関数リソースレコード(図93)の参照リソース
テーブル9318に参照している関数のリソースIDが
登録されるが、その際に、まだ、プロジェクトテーブル
の作業用テーブル223に登録されていない関数は、未
定義テーブル232に、未定義リソース単位として当該
関数の情報を新規に登録し、未定義テーブル232に登
録したリソースIDを参照リソーステーブル9318に
登録することになる。
【0227】また、新規に関数リソースを登録する処理
において、登録する関数の記号名が未定義テーブルに登
録されている場合は、未定義テーブル232の参照リソ
ーステーブルの内容を、作業用テーブル223の関数リ
ソースレコードの参照リソーステーブル9318に登録
する。このような処理により、既に登録済みの関数に対
し、新たに関数の実体が追加された場合でも、既に登録
済みの関数に対して再解析を実行することなく、常に関
数リソースの各々の関数の関連が正常に保持できる。
【0228】図93は、プロジェクトテーブルの作業用
テーブル223に登録されている関数リソースレコード
のデータ形式を説明する図である。図93(A)に示す
ように、プロジェクトテーブルの作業用テーブル223
に、関数リソースレコードが登録されているが、関数デ
ータルートデータ9301により、この関数リソースレ
コードの先頭を管理する。関数データルートデータ93
01は、システムが付加するリソースID9302、関
数データのデータであることをあらわすリソースコード
9303、そのレコードに付けられた日本語名称のリソ
ース名9304,関数データの属性を持ったすべてのレ
コードのリソースIDを管理するリソース一覧テーブル
9305で構成されている。
【0229】図93(B)に示すように、リソース一覧
テーブル9305に登録されている関数データのリソー
スレコードは、関数データのレコードに付けられたリソ
ースID9306,関数データリソースであることを識
別するリソースコード9307,関数の記号名930
8,関数の日本語名を格納する日本語名9309,関数
データの各データを更新した最新の時間を管理する更新
日付9310,関数データを履歴更新した時刻を管理す
る固定日付9311,ソースコードを外部から取り込ん
だ入力日付9312,関数の機能や戻り値などを管理す
るコメント9313,関数のソース情報を格納するソー
ス情報9314,関数の引き数の情報を管理する引数テ
ーブル9315,関数のソース情報を解析した日付を格
納する解析日付9316,解析結果を管理する解析エラ
ー情報9317,関数データレコードを参照しているも
しくは関数データレコードが参照しているリソースを管
理する参照リソーステーブル9318の各データを格納
するエリアで構成される。
【0230】次に、コンパイル環境設定部785の処理
について説明する。前述の場合と同様にして、図94の
処理フローのフローチャート、図95のコンパイル環境
設定画面、図96のライブラリ・リンク一覧画面を参照
して説明する。この場合に、ライブラリに対するリンク
が設定されるが、ライブラリのデータについても、前述
の場合と同様なデータ形式のライブラリリソースレコー
ドが生成されて格納され管理される。図97に、プロジ
ェクトテーブルの作業用テーブル223に登録されるラ
イブラリリソースレコードのレコードデータ形式を示し
ている。
【0231】まず、ここでの処理に利用するコンパイル
環境設定画面(図95)と、ライブラリ・リンク一覧画
面(図96)について説明する。図95はプログラムの
コンパイル環境を設定する画面の構成を説明する図であ
る。図95に示すように、コンパイル環境設定画面95
1は、コンパイル命令記述フィールド952,コンパイ
ルオプションを設定する“CFLAGS”フィールド9
53,リンクオプションを設定する“LDFLAGS”
フィールド954,ソースコードを取り出すディレクト
リを指定する“SRC DIRECTORY”フィール
ド955,および、インクルードファイルを取り出すデ
ィレクトリを指定する“INC DIRECTORY”
フィールド956の入力フィールドが設けられており、
また、これらの入力フィールドから入力したコンパイル
環境設定の情報を設定するコマンドの実行を指示する
“実行”ボタン957が設けられている。
【0232】図96はプログラムがコンパイル時に使用
するライブラリを定義するライブラリ・リンク一覧画面
画面の構成を説明する図である。図96に示すように、
ライブラリ・リンク一覧画面961は、作業用テーブル
223に登録されているライブラリリソース一覧テーブ
ルを表示するライブラリ一覧フィールド962と、プロ
グラムにリンクするライブラリとして設定されているラ
イブラリを表示するフィールドリンク一覧963で構成
され、リンクするライブラリを追加するコマンドの実行
を指示する“追加”ボタン964,リンクライブラリか
ら削除するコマンドの実行を指示する“削除”ボタン9
65,リンクした情報を設定するコマンドの実行を指示
する“実行”ボタン966が設けられている。
【0233】コンパイル環境設定部785によるコンパ
イル環境設定処理は、図94に示すように、まず、コン
パイル環境設定画面951(図95)を表示する(ステ
ップ9401)。次に、コンパイル環境設定画面951
において、コンパイル命令記述フィールド952,“C
FLAGS”フィールド953,“LDFLAGS”フ
ィールド954,“SRC DIRECTORY”フィ
ールド955,および“INC DIRECTORY”
フィールド956により、コンパイル命令,コンパイル
オプション,リンクオプション,ソースファイル取り出
し先,およびインクルードファイル取り出し先を設定す
る(ステップ9402)。そして、“実行”ボタン95
7を押す(ステップ9403)。
【0234】次にリンクするライブラリを変更するか否
かを判断し(ステップ9404)、ライブラリを変更す
る場合は、ライブラリ・リンク一覧画面961(図9
6)のを表示する(ステップ9405)。リンクするラ
イブラリを追加する場合は(ステップ9406)、ライ
ブラリ一覧962に表示されているライブラリから追加
するライブラリを選択して(ステップ9407)、“追
加”ボタン964を押す(ステップ9408)。また、
リンクするライブラリを削除する場合は(ステップ94
09)、リンク一覧963から不要になったライブラリ
を選択して(ステップ9410)、“削除”ボタン96
5を押す(ステップ9411)。このようにして、リン
クするライブラリの編集が終了すると、“実行”ボタン
966を押して情報を確定する(ステップ9412)。
これにより、プログラムリソースレコードの参照リソー
ステーブルにライブラリのリソースIDが登録される。
【0235】図97は、プロジェクトテーブルの作業用
テーブル223に登録されているライブラリリソースレ
コードのデータ形式を説明する図である。ライブラリリ
ソースレコードのデータ形式は、プログラムリソースレ
コードと同一構成となっている。図97(A)に示すよ
うに、プロジェクトテーブルの作業用テーブル223に
は、ライブラリリソースレコードが登録される。ライブ
ラリリソースレコードは、ライブラリデータルートデー
タ9701により、ライブラリデータのレコードの先頭
を管理する。ライブラリデータルートデータ9701
は、システムが付加するリソースID9702,ライブ
ラリデータのデータであることをあらわすリソースコー
ド9703,そのレコードに付けられた日本語名称のリ
ソース名9704,ライブラリデータの属性を持ったす
べてのレコードのリソースIDを管理するリソース一覧
テーブル9705で構成される。
【0236】また、図97(B)に示すように、リソー
ス一覧テーブル9705に登録されているライブラリデ
ータのリソースレコードは、ライブラリデータのレコー
ドに付けられたリソースID9706,ライブラリデー
タリソースであることを識別するリソースコード970
7,ライブラリデータの英語名称を格納する記号名97
08,ライブラリデータの日本語名を格納する日本語名
9709,ライブラリデータの各データを更新した最新
の時間を管理する更新日付9710,ライブラリデータ
を履歴更新した時刻を管理する固定日付9711,ライ
ブラリデータに付加されたコメントデータ9712,ラ
イブラリのコンパイル環境9713,ライブラリデータ
レコードを参照しているもしくはライブラリデータレコ
ードが参照しているリソースを管理する参照リソーステ
ーブル9714の各データを格納するエリアで構成され
ている。
【0237】このようにして、プログラム開発の中での
中心的なプログラム作成の作業が終了すると、これに付
随してプログラム開発にかかるプログラムの利用のため
のドキュメントの作成処理を行うことがなるが、この場
合に、本実施例のプログラム開発支援システムにおいて
は、これまでに作成された各種のリソースレコードのデ
ータを利用して、効率よくドキュメントの作成を行う。
【0238】つまり、前述した図53で説明したプログ
ラム開発処理の中の最後の処理として、プログラム設計
ドキュメント生成処理(ステップ5310)を行う。こ
の処理は、プログラム設計ドキュメント生成部524
(図52)により行われる。
【0239】図98は、プログラム設計ドキュメント生
成部524によるプログラム設計ドキュメント生成処理
の処理手順を示すフローチャートであり、図99は、プ
ログラム設計ドキュメント生成処理の中の帳票選択処理
の処理手順を示すフローチャートである。図100はプ
ログラム設計ドキュメントの目次に対応した帳票の生成
方式を定義する帳票生成方式登録画面の構成を示す図で
あり、また、図101は、ツール実行時のオプションを
選択するオプション一覧画面の構成を示す図である。こ
れらの図を参照して説明する。
【0240】図100に示すように、帳票生成方式登録
画面1001は、選択した帳票種別を表示する帳票種別
フィールド1002,帳票を生成する元になるリソース
種別を選択する生成元選択フィールド1003,帳票を
生成するツールを選択するツール選択フィールド100
4,ツール実行時のオプションを指定するオプションフ
ィールド1005で構成されており、ツール実行時のオ
プションを一覧表示するコマンドの実行を指示する“オ
プション”ボタン1006が備えられている。この帳票
生成方式登録画面1001による選択操作により、プロ
グラム設計ドキュメントの目次に対応した帳票の生成方
式を定義する。その場合に、更に、図101に示すよう
に、オプション一覧画面1011を表示して、ツール実
行時のオプションを選択する。
【0241】図98に示すように、プログラム設計ドキ
ュメント生成処理では、まず、設計ドキュメントを作成
するためのデータ操作を行う作業エリアを新規に作成し
て、作業用テーブル223に登録する(ステップ98
1)。目次を編集する目次編集処理を行う(ステップ9
82)。続いて、目次に対応した帳票を定義するため帳
票選択処理を行い(ステップ983)、定義した目次項
目に従い、ドキュメントをプリンタ装置により印刷する
(ステップ984)。
【0242】このプログラム設計ドキュメント生成処理
の中の帳票選択処理では、図99に示すように、まず、
目次一覧画面(図59)から対象とする目次の項目を選
択する(ステップ991)。次に、帳票種別選択画面
(図63)を表示し、帳票を選択する(ステップ99
2)。次に、帳票生成方式登録画面1001(図10
0)を表示し(ステップ993)、帳票生成方式登録画
面1001の生成元選択フィールド1003から生成元
のリソース種別を選択し(ステップ994)。次に、ツ
ール選択フィールド1004から生成処理を実行するツ
ールを選択する(ステップ995)。次に、オプション
一覧画面1011(図101)を表示して(ステップ9
96)、オプション一覧画面1011の中の選択カーソ
ル1012により、ツール実行時のオプションを選択
し、“了解”ボタン1013を押す(ステップ99
7)。これにより、オプションフィールド1005にオ
プションが表示される。以上の操作で出力する帳票とそ
の元となる情報とを関連付けることで、帳票を出力する
ツールと出力した結果の格納先とを参照することができ
るようになり、元の情報の修正結果をどのツールで出力
すればよいかをシステムが自動的に判断できる。
【0243】次に、設計情報切り替え部525の処理に
ついて説明する。例えば、設計ドキュメントの生成にお
いて、参照するプログラムのリソースのバージョンが更
新され、参照すベき設計情報の参照情報が変更された時
など、設計情報の参照情報の切り替え処理を行う。この
場合の処理について、図102に示すフローチャートを
参照して説明する。
【0244】設計情報の参照情報の切り替え処理では、
図102のフローチャートに示すように、まず、参照を
切り替えたい情報を選択する(ステップ1021)。次
に、参照したい情報は、プロジェクトテーブルの作業用
テーブル223であるか否かを判定し(ステップ102
2)、作業用テーブル223である場合は、モジュール
構造画面821(図82)に表示されているモジュール
構造一覧の参照したい情報の“O/F”フィールド82
3が“F”であるか否かを判定する(ステップ102
3)。“F”である場合には「O/F変更」コマンドを
実行して、“O/F”フィールド823の設定を“O”
にする(ステップ1024)。また、プロジェクトテー
ブルの公開用テーブル224を参照したい場合は、同じ
く、モジュール構造画面821のモジュール構造一覧の
参照したい情報の“O/F”フィールド823が“O”
であるか否かを判定し(ステップ1025)、“O”で
ある場合は「O/F変更)コマンドを実行して、“O/
F”フィールド823の設定を“F”にする(ステップ
1024)。このような操作でプロジェクトテーブルの
作業用テーブル223と公開用テーブル224の参照情
報を切り替えることができる。
【0245】次に、情報バージョン管理部526の処理
について説明する。プログラム開発処理を行うと、プロ
グラムの修正,設計ドキュメントの内容の変更などが行
われる結果、そのバージョン情報の管理が、情報バージ
ョン管理部526により行われる。図103,図10
4,図105,および図106を参照して説明する。
【0246】図103は、モジュールのデータを例にし
てプロジェクトテーブルの作業用テーブル223と公開
用テーブル224のデータから更新前と更新後の関係を
説明する図である。図104は、情報バージョン管理部
526の処理機能の中の情報の復元処理の手順を示すフ
ローチャートである。図105は、設計情報の変更履歴
を表示する画面の構成を説明する図であり、また、図1
06は、図103に示す各テーブルのデータが、図10
4の情報の復元処理によって変更された後のデータの内
容を示す図である。
【0247】図103を参照すると、プロジェクトテー
ブル230の中の作業用テーブル223には、モジュー
ルリソースレコードが登録されているが、図103
(A)に示すように、このリソースIDが“100”の
データについて、作業用テーブル223の更新日付10
32が「95/06/23 15:04」となってお
り、固定日付1033の「95/06/20 07:5
2」より新しいので、作業用テーブル223のデータを
公開処理した後に、データの修正が発生したことを示し
ている。その修正箇所は、例えば、記号名フィールドの
データが“main.c”の記号名1035から“ma
inmain.c”の記号名1031に変更されてい
る。履歴テーブル1034には、リビジョン番号“1.
1”の履歴データと、リビジョン番号“1.2”の履歴
データが登録されている。
【0248】このような状態において、情報の復元処理
が行われると、図104のフローチャートに示すよう
に、この処理では、まず、リソース一覧画面(図54)
もしくはモジュール構造画面(図82)から、復元した
い設計情報を選択する(ステップ1041)。次に、履
歴一覧画面1051(図105)を表示する(ステップ
1042)。次に、履歴一覧画面1051の動作対象フ
ィールド1052,ログフィールド1053において、
動作対象,戻したいバージョンのログを選択し、“実
行”ボタンを押して復元を実行する(ステップ104
3)。これにより、指定したバージョンのデータが作業
用テーブル223の設計情報に復元される。このとき、
同時に作業用テーブル223で編集中のデータは新たな
履歴データとして、履歴テーブルに登録される。このた
め、復元したデータに問題があっても、履歴テーブルに
登録された履歴データから、情報の復元作業の開始直前
に戻ることができる。
【0249】これにより、図106に示すように、履歴
テーブルの履歴データから、リビジョン番号“1.1”
のデータを復元されるが、この場合、作業用テーブル2
23の更新日付1062は、復元処理を実行した日付に
なり、記号名1061が“main.c”に復元され
る。この復元処理は、履歴テーブルに新たな履歴データ
として、リビジョン番号“1.3”の履歴データとして
登録される。以上の操作により戻した情報が不適切だっ
た場合にも、直前まで作業していた情報が自動的に保存
されているため、担当者は自由に過去のバージョンに戻
って繰り返し開発を進めることができる。
【0250】このようにして、作成されたプログラム
は、プログラム取り出し部227の処理によって、プロ
グラムソースコード217が取り出される。この処理は
リソースレコードから対象となるデータ選択して取り出
すだけの処理であるから簡単である。図107を参照し
て、プログラム取り出し部227の処理を説明すると、
まず、このプログラム取り出し処理では、リソース一覧
画面(図54)から取り出すプログラムかライブラリを
指定し(ステップ1071)、ソース取り出し機能を実
行する(ステップ1072)。これにより、プロジェク
トテーブル230のそれぞれのリソースレコードから該
当するプログラムソースコード217が取り出される
(図24)。
【0251】図108は、これまでに説明してきた各々
の機能処理部によつて、作成されたプロジェクトリソー
ステーブル230と未定義テーブル232の具体的な内
容例を示す図である。図108(A)に示すように、全
てのリソースのレコードは種別毎のテーブルに格納され
るのではなく、同一のプロジェクトリソーステーブル2
30上に格納され、データは一元管理される。また、図
108(B)に示すように、実体が未定義のリソース
は、未定義テーブル232上に格納されて、同じく、デ
ータは一元管理される。
【0252】次に、プログラム取り出し処理とは逆の処
理である既存のソースコードを取り込むソースコード取
込み部214の処理ついて説明する。この処理は、既存
のソースプログラムをプログラムリソースリコードのデ
ータとして利用する場合に用いる。このソースコード取
込み処理では、図109に示すように、まず、入力した
ソースプログラムはモジュール単位で入力を受付け、ソ
ースコード233をヘッダ部と関数部とに分割する(ス
テップ1091)。ヘッダ部と関数部のそれぞれの種別
および名称の属性情報を生成し、作業用テーブル223
に登録する(ステップ1092)。ソースプログラムの
分割には、周知の構文解析アルゴリズムを用いる。プロ
グラムリソース定義を参照し、ヘッダ部,関数部の関連
情報を生成し(ステップ1093)、プロジェクトテー
ブルの作業用テーブル223に登録する。つぎに、ヘッ
ダ部,関数部の内部を解析し(ステップ1094)、リ
ソースの関連情報を生成する(ステップ1095)。関
連を接続する相手の関数がプロジェクトテーブルに定義
されていない場合は(ステップ1096)、未定義テー
ブル232に関数のリソースを登録し、この未定義テー
ブル232と作業用テーブル223との間で関連を接続
する(ステップ1098)。作業用テーブル223に登
録済みの場合は作業用テーブル223に関連を接続する
(ステップ1097)。
【0253】図110は、ソースコードを入力した場合
のプロジェクトテーブルと未定義テーブルに登録される
データの関係を説明する図である。図110(A)に示
されるようなソースコード1101が入力されると、こ
のソースコード1101の中のモジュール,関数などが
解析されて、解析内容に従って、そのデータがプロジェ
クトテーブル230と未定義テーブル232に登録され
る。
【0254】プロジェクトテーブル230には、その作
業用テーブル223に、リソースIDが“30”の記号
名“main”のデータは、作業用テーブル223に未
だ登録されていない記号名“ormfcInit”のデ
ータを参照しているため、記号名“ormfcIni
t”のデータを、未定義テーブル232にリソースID
“39”で登録し、参照リソーステーブルに参照元のリ
ソースIDの“30”と共に関連種別の参照を意味する
“ref”を登録する。
【0255】また、このとき、作業用テーブル223の
リソースIDが“30”のデータの参照リソーステーブ
ルにも、未定義テーブル232に登録したリソースID
“39”と共に、その参照の関連種別を示す“ref”
を登録する。これにより、ソースコードのモジュール,
関数などをリソースレコードに登録する場合の関連が設
定される。
【0256】次に、生成されたリソースレコードから作
成されて印刷出力されるドキュメントの出力例について
説明する。図111,図112,図113,図114,
図115および図116を参照する。これらの図は、ド
キュメント出力部215によって画面に表示されるドキ
ュメントの例を示した図である。
【0257】図111は、関数がどのモジュールに属し
ているかをあらわした関数インデックスの画面表示を印
刷出力した例である。モジュールと関数の関連種別の
“have”を使用して、関数が関連種別の“hav
e”で関連付けられている元のモジュールのリソースI
Dを、関数リソースレコードの参照リソーステーブルか
ら求め、更に、リソースIDからモジュールの情報を求
めて、プロジェクトテーブル230に登録されている全
ての関数リソースに対してアルファベット順にソートし
て出力する。このような関数インデックスにより、自分
の担当している関数がコールしている他の関数がどこの
モジュールで定義されているか常に最新の情報を得るこ
とができる。
【0258】図112は、プログラムやライブラリを構
成するモジュールの一覧と関数の一覧を構成がよくわか
る表形式で画面に表示したものを印刷出力した例を示し
ている。プログラムとモジュールの関連種別が“hav
e”の情報と、モジュールと関数の関連種別が“hav
e”の情報を使用する。プログラムリソースレコードの
参照リソーステーブルから関連種別が“have”のリ
ソースIDを求め、リソースIDから参照先のリソース
コードがモジュールのデータを抽出する。抽出したモジ
ュールリソースレコードの参照リソーステーブルから、
関連種別が“have”の参照リソースIDを求める。
求めたリソースIDからリソースコードが関数のデータ
を抽出する。表に出力する際は、モジュールデータの直
後にモジュールが、その関連種別が“have”で関係
している関数を出力し、プログラムがその関連種別が
“have”で関係しているモジュールの全てを出力す
る。これにより、プログラムを構成しているモジュール
および関数が構造的に現されるため、プログラムの理解
度が向上する。常に作成中のプログラムの最新の情報が
出力される。
【0259】図113は、関数のコール関連をあらわし
た図の画面表示を印刷出力する場合の例を示す図であ
る。この場合には、関数と関数の“ref”の関連種別
を使用して、このドキュメントを作成する。関数が関数
内でコールしている関数は、関数リソースレコードの参
照リソーステーブルで管理している。関数がその関連種
別“ref”している情報の中から参照先のリソースコ
ードが関数のデータを抽出する。抽出した関数の全てに
対して参照先のリソースコードが関数のデータを抽出す
る処理を繰り返す。関数と関数の関連を図にあらわす。
処理の内容がわかるように、関数の記号名の他に日本語
名称を同時に出力する。
【0260】図114は、拡張した関数のコール関連を
表示する図の画面表示を印刷出力する例を示す図であ
る。この場合においても、図113の場合と同様に、関
数の参照の関連を求める。そのほかに、モジュールと関
数の関連種別が“have”の関連と、未定義テーブル
232の情報を利用して図を作成する。求めた関数が参
照元のその関連種別が“have”で関係しているモジ
ュールと異なることを、関数の参照リソーステーブルの
参照元のデータを使用して判断し、図に出力する際に線
の種別を変え、更に、その関数が属するモジュールの記
号名称を表示することにより目的の関数を的確に見つけ
だすことができるように印刷出力する。関数の引き数を
表示すれば、呼ぶ側と呼ばれる側の引き数の違いによる
プログラムの不良を見つけだすことが容易にできる。
【0261】図114において、参照先の関数が未定義
テーブルに存在する場合は、関数の実体が未定義である
か、使用している関数の名称が誤っている可能性がある
ので、未定義テーブルに存在する関数を参照している場
合は、図の線の種類の違いがはっきりわかる線を使用し
て担当者に教えることにより、プログラムを実際にコン
パイルしてテストする以前に問題点を解決できる。
【0262】図115は、関数の参照関連を参照元と参
照先を同時に表示する画面表示に対する印刷出力の例を
示す図である。関数と関数の関連種別が“ref”の関
係を使用する。情報を表示する関数の参照リソーステー
ブルから参照先と参照元のそれぞれのリソースIDを求
め、更にリソースコードが関数のデータを抽出する。出
力する関数を中央に表示して、当該関数を参照している
関数を図の左側に、当該関数が参照している関数を右側
に表示する。ここでは、当該関数を修正する場合に影響
する範囲を1階層分について調べることができる。図1
15の拡張した図として、当該関数を右端に表示し当該
関数を参照している関数を参照リソーステーブル611
8から求め、2から3階層表示することにより関数の修
正の影響範囲をあらわすことが可能である。
【0263】図115において、参照元の関数が空白の
関数は、システム起動時にOSなどの上位のプログラム
から呼ばれる関数であることを意味している。したがっ
て、上位のプログラムから呼ばれる関数以外に参照元が
空白の関数は、プログラム内で使用されていない関数で
ある。プログラムの改造やデバッグ作業で使用されなく
なった関数を見つけだすことも可能である。
【0264】図116は、インクルードファイルに定義
されている構造体の一覧を画面表示した結果をあらわす
印刷出力の例である。インクルードファイルと構造体の
関連別が“have”を使用して作成する。インクルー
ドリソースレコードの参照リソーステーブルから、関連
種別が“have”で参照先のリソースコードが構造体
のデータを抽出する。構造体の記号名日本語名などの情
報を取得してインクルードファイルのテーブル一覧を作
成する。
【0265】また、図116の拡張として構造体がどの
インクルードファイルで定義されているかを表示する図
を出力するようにもできる。この場合の印刷処理方法
は、図111の関数インデックスの場合と同じで、関数
とモジュールの代わりに構造体とインクルードデータに
対して実行すればよい。プロジェクトテーブルに登録さ
れている構造体に対してすべて表示することにより、ど
こでも定義されていない構造体を見つけることも可能と
なる。
【0266】このようにして、プログラム開発に使用す
る情報を関連付けてファイルに登録し、その関連関係を
つねに保持することができる。また、いつまでも実体が
定義されないリソースは、一定の時期がくると表示装置
に表示されるため、ユーザは名称を間違えて使用したリ
ソースや使用する予定ではなくなったリソースを知るこ
とができる。なお、本実施例では、C言語のソースプロ
グラムを取り上げて説明したが、本発明は、C言語によ
るプログラムの開発に限られるものではない。
【0267】
【発明の効果】以上説明したように、本発明において
は、ソースプログラムやドキュメントだけでなく担当
者、プロジェクトで使用するツールといったプログラム
開発に関係する情報をある一定のフォーマットでリソー
スという単位として管理し、それぞれの情報間に論理的
な意味を有する関連付けを行い、この関連付けされた情
報を利用することによって、データを一元的に管理でき
るため、ユーザは各情報間の関連を全く意識することな
く、プログラムの作成ができ、プログラム開発の効率が
向上する。
【0268】また、実体の定義されたリソースと、実体
が未定義のリソースを別々の領域に保存登録することに
より、プログラム開発に使用するかどうか分からない、
未定義の状態である情報がわかる。一旦定義した情報を
削除した場合に、他の情報とその情報との関連種別によ
って、他の情報との関連を保ったままで、未定義情報の
領域に登録することにより、再度その情報をプログラム
開発に使用したい場合には、その情報を定義するだけよ
く、他の情報との関連について再度定義したりする必要
がない。また、情報間の関連情報は、関連種別を含んで
いるため、ある情報に変更があった場合にその変更の影
響の及ぶ範囲を正確に知るだけでなく、その範囲に対し
て正確に影響が反映される。
【図面の簡単な説明】
【図1】 図1は本発明の一実施例にかかるプログラム
開発支援システムの要部のシステム構成を示すブロック
図、
【図2】 図2は定義済リソーステーブルと未定義リソ
ーステーブルを説明する図、
【図3】 図3はリソース定義ファイルの構成を説明す
る図、
【図4】 図4はプログラムリソース定義として定義さ
れるリソース情報の要素の間の関連の一例を説明する図
【図5】 図5は仕様リソース定義の構成の一例を関連
種別の関係子により示した図、
【図6】 図6はドキュメントリソース定義の構成の一
例を関連種別の関係子により示した図、
【図7】 図7はツールリソース定義の構成の一例を関
連種別の関係子により示す図、
【図8】 図8は管理情報リソース定義の構成の一例を
関連種別の関係子により示した図、
【図9】 図9は本発明によるプログラム開発支援シス
テムを一態様で実施するハードウェアシステムの全体の
構成の一例を示す図、
【図10】 図10はリソーステーブルと未定義リソー
ステーブルにリソース情報(リソース単位)として格納
するソースプログラム情報の元となる情報の集合を表す
【図11】 図11はC言語で書かれたソースプログラ
ムをリソースとする場合の説明図、
【図12】 図12は先に説明した図11に示すソース
プログラムに対応したリソーステーブルの具体例を示す
図、
【図13】 図13はリソース内容の変更処理を行う場
合の端末機能を提供するクライアント装置の表示画面を
示す図、
【図14】 図14は本発明の一実施例のプログラム開
発支援システムによりプログラム開発を行う場合の概略
の処理の流れを表わしたフローチャート、
【図15】 図15は図14で説明した処理により未定
義リソーステーブルに登録されたリソース単位の内容
(未定義リソース)の表示した表示画面例を示した図、
【図16】 図16はドキュメントの構成情報およびそ
のリソース情報の関連を示す図、
【図17】 図17は帳票リソース,帳票生成元リソー
ス,および帳票生成ツールリソースの各々のリソース情
報の間の関係を示す図、
【図18】 図18は生成されたドキュメント「プログ
ラム仕様書」の印刷例を示す図、
【図19】 図19はドキュメント「プログラム詳細仕
様書」の帳票の構造情報と「プログラム詳細仕様書」の
対象とするプログラム「プログラム1」の構造を説明す
る図、
【図20】 図20はドキュメント生成物の「モジュー
ル1」によるソートの過程を示す図
【図21】 図21はドキュメント生成物の「関数1
1」によるソートの過程を示す図、
【図22】 図22はドキュメントの生成物の生成元を
キーとした出力順序の変更の結果例を示す図、
【図23】 図23は図9に示したシステム構成の中の
クライアント装置の構成を詳細に示す図、
【図24】 図24は図9に示したシステム構成の中の
サーバ装置の構成を詳細に示す図、
【図25】 図25はシステム管理テーブルのリソース
種別テーブルの構成を示すテーブル構成図、
【図26】 図26はリソース種別テーブルに登録され
ているリソースコードの一覧の具体例を示した図、
【図27】 図27はシステム開発を用う場合の全体の
処理の概略を表したフローチャート、
【図28】 図28はプロジェクト設定部の構成を示す
機能ブロック図、
【図29】 図29はプロジェクト設定部におけるプロ
ジェクト設定処理の概略を表したフローチャート、
【図30】 図30はプロジェクト属性登録部の処理を
示すフローチャートである。
【図31】 図31はプロジェクトの属性を定義するウ
ィンドウ画面の一例を示す図、
【図32】 図32はプロジェクト一覧を表示するウィ
ンドウ画面の一例を示す図、
【図33】 図33はプロジェクトの属性情報を管理す
るプロジェクト一覧テーブル241の構成の内容を説明
する図目次項目の編集手順をあらわしたフローチャート
図、
【図34】 図34はプロジェクトテーブルの作業用テ
ーブルの担当者リソースレコードの内容を説明する図、
【図35】 図35は担当者追加部の処理手順を示すフ
ローチャート、
【図36】 図36はプロジェクトの担当者の属性を設
定・変更するウィンドウ画面を示す図、
【図37】 図37はプロジェクトテーブルの作業用テ
ーブルに使用するツールを登録する処理手順を示すフロ
ーチャート、
【図38】 図38はプロジェクトで使用するツールの
情報を設定し、またはツールの情報を変更する登録ツー
ル設定・変更画面の例を示す図、
【図39】 図39は登録ツール設定・変更画面におい
て“追加”ボタンが押されたときに表示されるツール選
択画面の登録ツール設定・追加画面の一例を示す図、
【図40】 図40はシステム管理テーブルのツール一
覧テーブルの構成を説明する図、
【図41】 図41はプロジェクトテーブルの作業用テ
ーブルに登録されているツールレコードのデータ形式を
説明する図、
【図42】 図42はプロジェクト変更部の処理の手順
を示すフローチャート、
【図43】 図43はプロジェクト属性変更処理の手順
を示すフローチャート、である。また、
【図44】 図44は担当者変更処理の手順を示すフロ
ーチャート、
【図45】 図45はプロジェクトから担当者を削除す
る処理の手順を示すフローチャート、
【図46】 図46は担当者を削除する際にその担当者
が担当していた情報をプロジェクト内のどの担当者に引
き継ぐかを指定する担当者削除/リレーション設定の画
面を示す図、
【図47】 図47はツール構成変更処理の手順を示す
フローチャート、
【図48】 図48は実行マシン・実行バージョン変更
処理の手順を示すフローチャート、
【図49】 図49はツールパス設定・変更画面の構成
を示す図、
【図50】 図50はプロジェクト変更部のツール削除
部により行われるツール削除処理を示すフロチャート、
【図51】 図51はプロジェクト削除処理の処理手順
を示すフローチャート、
【図52】 図52はソフトウェア開発部の構成を示す
機能ブロック図、
【図53】 図53はソフトウェア開発部のソフトウェ
ア開発処理の手順を示すフローチャート、
【図54】 図54はプロジェクトテーブルに登録され
ているリソースデータの一覧を表示するリソース一覧画
面の一例を示す図、
【図55】 図55は図54のリソース一覧画面に表示
するリソースの種別を選択するリソース種別選択画面の
一例を示す図、
【図56】 図56は機能仕様書作成部の構成を示す機
能ブロック図、
【図57】 図57は機能仕様書作成部の処理手順を示
すフローチャート、
【図58】 図58は目次編集部の処理手順を示すフロ
ーチャート、
【図59】 図59は設計ドキュメントの目次を定義す
る目次一覧画面の構成を説明する図、
【図60】 図60はタイトル・レベル編集部の処理の
手順を示すフローチャート、
【図61】 図61は目次項目を編集する目次定義画面
の例を示す図、
【図62】 図62は帳票編集部の処理の手順を示すフ
ローチャート、
【図63】 図63は帳票種別選択画面の構成を示す
図、
【図64】 図64はリソース選択画面の構成を示す
図、
【図65】 図65はプロジェクトテーブルの作業用テ
ーブルに登録されているテキストデータリソースレコー
ドのデータ形式を説明する図、
【図66】 図66はテキスト編集処理の手順を示すフ
ローチャート、
【図67】 図67は設計ドキュメントのテキストを入
力する入力画面の構成を示す図、
【図68】 図68は版管理(情報のバージョン管理)
の設定を行うドキュメント履歴登録画面の構成を示す
図、
【図69】 図69はテキストデータ入力中に目次項目
を編集する処理手順をあらわしたフローチャート、
【図70】 図70はテキスト編集中にあらたに目次項
目を設定する場合の設定画面による操作例を説明する
図、
【図71】 図71は目次項目チェック処理の処理の手
順を示すフローチャート、
【図72】 図72は目次項目の修正状況をチェックす
るテキスト目次読み込み画面の構成を示す図、
【図73】 図73はプロジェクトテーブルの作業用テ
ーブルに登録されている構造体データのリソースレコー
ドのデータ形式を説明する図、
【図74】 図74は作成した情報の担当者を設定する
担当者選択画面の一例を示す図、
【図75】 図75は構造体のメンバーの内容を定義す
る構造体定義画面の画面構成を示す図、
【図76】 図76はテーブル作成部の処理手順を示す
フローチャート、
【図77】 図77は構造体リソースレコードを作成す
る場合の新規作成画面の画面構成を示す図、
【図78】 図78はプログラム作成部の構成を示す機
能ブロック図、
【図79】 図79はプログラム作成処理の全体の処理
の流れを示すフローチャート、
【図80】 図80はプロジェクトテーブルの作業用テ
ーブルに登録されるプログラムリソースレコードのデー
タ形式を説明する図、
【図81】 図81はプログラムリソースレコード(構
造体データ)の新規作成画面を示す図、
【図82】 図82はプログラムのモジュール構造を表
示するモジュール構造画面の構成を説明する図、
【図83】 図83はプログラムをプロジェクト内に公
開する場合に使用するプログラム履歴登録画面の構成を
説明する図、
【図84】 図84はインクルードファイル作成部の処
理の手順を示すフローチャート、
【図85】 図85はインクルードファイル新規登録画
面の例を示す図、
【図86】 図86は構造体の一覧を表示する構造体一
覧画面を示す図、
【図87】 図87はプロジェクトテーブルの作業用テ
ーブルに登録されているインクルードリソースレコード
のデータ形式を説明する図、
【図88】 図88はモジュール作成部の処理手順をあ
らわすフローチャート、
【図89】 図89はモジュール新規登録画面を示す
図、
【図90】 図90はプロジェクトテーブルの作業用テ
ーブルに登録されているモジュールリソースレコードの
データ形式を説明する図、
【図91】 図91は関数作成処理の処理手順を示すフ
ローチャート、
【図92】 図92は関数定義画面を示す図、
【図93】 図93はプロジェクトテーブルの作業用テ
ーブルに登録されている関数リソースレコードのデータ
形式を説明する図、
【図94】 図94はコンパイル環境設定処理の処理手
順を示すフローチャート、
【図95】 図95のコンパイル環境設定画面を示す
図、
【図96】 図96はプログラムがコンパイル時に使用
するライブラリを定義するライブラリ・リンク一覧画面
画面の構成を説明する図、
【図97】 図97はプロジェクトテーブルの作業用テ
ーブルに登録されているライブラリリソースレコードの
データ形式を説明する図、
【図98】 図98はプログラム設計ドキュメント生成
部によるプログラム設計ドキュメント生成処理の処理手
順を示すフローチャート、
【図99】 図99はプログラム設計ドキュメント生成
処理の中の帳票選択処理の処理手順を示すフローチャー
ト、
【図100】 図100はプログラム設計ドキュメント
の目次に対応した帳票の生成方式を定義する帳票生成方
式登録画面の構成を示す図、
【図101】 図101はツール実行時のオプションを
選択するオプション一覧画面の構成を示す図、
【図102】 図102は設計情報の参照情報の切り替
え処理の処理手順を示すフローチャート、
【図103】 図103はモジュールのデータを例にし
てプロジェクトテーブルの作業用テーブルと公開用テー
ブルのデータから更新前と更新後の関係を説明する図、
【図104】 図104は情報バージョン管理部の処理
機能の中の情報の復元処理の手順を示すフローチャー
ト、
【図105】 図105は設計情報の変更履歴を表示す
る画面の構成を説明する図、
【図106】 図106は図103に示す各テーブルの
データが図104の情報の復元処理によって変更された
後のデータの内容を示す図、
【図107】 図107はプログラム取り出し処理の処
理手順を示すフローチャート、
【図108】 図108はプロジェクトリソーステーブ
ルと未定義テーブルの具体的な内容例を示す図、
【図109】 図109はソースコード取込み処理の処
理手順を示すフローチャート、
【図110】 図110はソースコードを入力した場合
のプロジェクトテーブルと未定義テーブルに登録される
データの関係を説明する図、
【図111】 図111は関数がどのモジュールに属し
ているかをあらわした関数インデックスの画面表示を印
刷出力した例を示す図、
【図112】 図112はプログラムやライブラリを構
成するモジュールの一覧と関数の一覧を構成がよくわか
る表形式で画面に表示したものを印刷出力した例を示す
図、
【図113】 図113は関数のコール関連をあらわし
た図の画面表示を印刷出力する場合の例を示す図、
【図114】 図114は拡張した関数のコール関連を
表示する図の画面表示を印刷出力する例を示す図、
【図115】 図115は関数の参照関連を参照元と参
照先を同時に表示する画面表示に対する印刷出力の例を
示す図、
【図116】 図116はインクルードファイルに定義
されている構造体の一覧を画面表示した結果をあらわす
印刷出力の例である。
【符号の説明】
11…制御処理部、12…ソースプログラム作成部、1
3…プログラム分割部、14…仕様書作成部、15…リ
ソース定義選択部、16ツール情報格納部、17…担当
者情報格納部、18…仕様情報格納部、19…リソース
定義ファイル格納部、20…登録処理部、21…リソー
スデータベース、22…ソリースァイル(定義済リソー
スファイル)格納部、23…未定義リソースファイル格
納部、24…リソーステーブル、25…未定義リソース
テーブル、30…リソース定義ファイル、31…プログ
ラムリソース定義、32…仕様リソース定義、33…ド
キュメントリソース定義、34…ツールリソース定義、
35…管理情報リソース定義、81…サーバ装置、82
…外部記憶装置、83…クライアント装置、84…ネッ
トワーク、85…ディスプレイ、86…キーボード、8
7…ポインティングデバイスのマウス、88…プリント
サービス装置、91…情報全体、92…プログラムモジ
ュール、93…関数“main”のプログラム要素、9
4…リソース情報(ツール名称)、95…仕様書の情報
(ドキュメント情報)、96…担当者の情報(担当者名
称)、101…ヘッダファイル“main.h”、10
2…整数型の変数“a”、103…構造体“list”
のメンバ全体、104…構造体“list”、105…
整数型の変数“ak”、106…構造体のメンバ、10
7…モジュール“func.c”、108…型定義文
(typedef)“list_A”、109…変数“a”、
151…表示画面、152…未定義関数一覧、153…
削除ボタン、201…クライアント装置、202…サー
バ装置、203…ネットワーク装置、205…外部記憶
装置、206…表示装置、207…マウス装置、208
…キーボード装置、209…システム制御処理部、21
0…データ入出力部、211…プロジェクト設定部、2
12…ソフトウェア開発処理部、213…未定義テーブ
ル表示部、214…ソースコード取り込み部、215…
ドキュメント出力部、218…リソース種別定義部、2
19…ツール定義部、220システム管理テーブル入出
力部、221…プロジェクトテーブル入出力部、222
…システム管理テーブル、223…作業用テーブル、2
24…公開用テーブル、225…履歴登録部、226…
履歴復元部、227…プログラム取り出し部、230…
プロジェクトテーブル、231…未定義テーブル入出力
部、232…未定義テーブル、235…テーブル入出力
部。
フロントページの続き (72)発明者 船田 勉 神奈川県横浜市中区尾上町6丁目81番地 日立ソフトウェアエンジニアリング株式会 社内 (72)発明者 小沢 誠志 神奈川県横浜市中区尾上町6丁目81番地 日立ソフトウェアエンジニアリング株式会 社内 (72)発明者 新居 健司 神奈川県横浜市中区尾上町6丁目81番地 日立ソフトウェアエンジニアリング株式会 社内 (72)発明者 城戸 高志 神奈川県横浜市中区尾上町6丁目81番地 日立ソフトウェアエンジニアリング株式会 社内 (72)発明者 三橋 尚文 神奈川県横浜市中区尾上町6丁目81番地 日立ソフトウェアエンジニアリング株式会 社内 (72)発明者 平野 寿一 神奈川県横浜市中区尾上町6丁目81番地 日立ソフトウェアエンジニアリング株式会 社内

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 プログラム開発情報を格納する格納手段
    と、 前記プログラム開発情報の属性情報および各プログラム
    開発情報の間の関連情報を生成する生成手段と、 前記プログラム開発情報,前記生成手段により生成した
    属性情報および関連情報をプログラム開発の1つのリソ
    ースとして、当該リソースにユニークな番号を付与して
    管理する管理手段と、 前記関連情報を利用して前記リソースからシステム構成
    要素を生成するシステム構成要素生成手段とを備えたこ
    とを特徴とするプログラム開発支援システム。
  2. 【請求項2】 請求項1に記載のプログラム開発支援シ
    ステムにおいて、前記関連情報は、各プログラム開発情
    報の間の関連を示す関連種別を含むことを特徴とするプ
    ログラム開発支援システム。
  3. 【請求項3】 請求項1に記載のプログラム開発支援シ
    ステムにおいて、更に、 公開するリソースを登録する公開リソース登録手段と、 公開を行わないリソースを登録する非公開リソース登録
    手段を備えることを特徴とするプログラム開発支援シス
    テム。
  4. 【請求項4】 請求項1に記載のプログラム開発支援シ
    ステムにおいて、 前記管理手段はリソースとして管理する情報に、少なく
    ともプロジェクト,担当者,使用ツールのいずれかに関
    する情報を含むことを特徴とするプログラム開発支援シ
    ステム。
  5. 【請求項5】 請求項1に記載のプログラム開発支援シ
    ステムにおいて、更に、 前記リソースが更新された場合に、更新による影響範囲
    を検出する影響範囲検出手段と、 前記影響範囲検出手段により検出された影響範囲に対し
    て前記更新がその影響を直接に反映させる更新であるか
    否かを判定する判定手段と、 前記判定手段により直接に反映させる更新であると判定
    された場合に更新を反映させる更新反映手段と、 前記判定手段により直接に反映させない更新と判定され
    た場合にユーザに対して反映させるか否かを問い合わせ
    る問合せ手段とを有することを特徴とするプログラム開
    発支援システム。
  6. 【請求項6】 請求項1に記載のプログラム開発支援シ
    ステムにおいて、更に、 前記リソースに対する参照要求があった場合に、そのリ
    ソースの関連情報を参照し、関連する他のリソースを特
    定する特定手段と、 参照対象のリソースの更新時刻と前記特定された関連す
    るリソースの更新時刻を比較する比較手段と、 前記比較手段による比較の結果、前記関連するリソース
    の更新時刻が新しい場合に、再度参照対象とするリソー
    スを再生成する再生成手段とを有することを特徴とする
    プログラム開発支援システム。
  7. 【請求項7】 プログラム開発情報を格納する格納手段
    と、 前記プログラム開発情報の属性情報および各情報間の関
    連情報を生成する生成手段と、 前記生成手段によるプログラム開発情報の属性情報およ
    び各情報間の関連情報の生成時に、当該プログラム開発
    情報の実体が定義済みであるかを判定する判定手段と、 前記判定手段による判定の結果、当該プログラム開発情
    報の実体が定義済みの場合に生成した情報を登録する第
    1登録手段と、 前記判定手段による判定の結果、当該プログラム開発情
    報の実体が未定義の場合に生成した情報を登録する第2
    登録手段と、 前記プログラム開発情報と前記生成手段により生成した
    属性情報および各情報間の関連情報を、プログラム開発
    の1つのリソースとして管理する管理手段と、 前記リソースにユニークな番号を付与する番号付与手段
    と、 前記関連情報を利用して前記リソースからシステム構成
    要素を生成するシステム構成要素生成手段を有すること
    を特徴とするプログラム開発支援システム。
  8. 【請求項8】 請求項7に記載のプログラム開発支援シ
    ステムにおいて、更に、 第1登録手段に登録された情報が削除された場合に、他
    の情報との関連の種別により、前記削除された情報を未
    定義情報として第2登録手段に移動する移動手段を有す
    ることを特徴とするプログラム開発支援システム。
JP8035849A 1996-01-31 1996-01-31 プログラム開発支援システム Pending JPH09212352A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP8035849A JPH09212352A (ja) 1996-01-31 1996-01-31 プログラム開発支援システム
US08/790,297 US5878262A (en) 1996-01-31 1997-01-31 Program development support system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8035849A JPH09212352A (ja) 1996-01-31 1996-01-31 プログラム開発支援システム

Publications (1)

Publication Number Publication Date
JPH09212352A true JPH09212352A (ja) 1997-08-15

Family

ID=12453449

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8035849A Pending JPH09212352A (ja) 1996-01-31 1996-01-31 プログラム開発支援システム

Country Status (2)

Country Link
US (1) US5878262A (ja)
JP (1) JPH09212352A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001022574A (ja) * 1999-07-05 2001-01-26 Mitsubishi Electric Corp モジュール保守管理システム
JP2006127067A (ja) * 2004-10-27 2006-05-18 Chugoku Electric Power Co Inc:The リソース管理システム及びプログラム
JP2006172036A (ja) * 2004-12-15 2006-06-29 Methodologysoft Corp 設計コンピュータプログラム
JP2013190890A (ja) * 2012-03-13 2013-09-26 Hitachi Ltd ソフトウェア開発支援装置及び影響波及分析支援手法
JP2017058987A (ja) * 2015-09-17 2017-03-23 株式会社日立製作所 システム開発支援装置
CN107077703A (zh) * 2014-10-24 2017-08-18 三菱重工业株式会社 零部件表管理系统及零部件表管理方法
JP2018092466A (ja) * 2016-12-06 2018-06-14 株式会社日立製作所 変更影響調査支援装置、変更影響調査支援方法および変更影響調査支援プログラム
JP7732696B1 (ja) * 2025-01-23 2025-09-02 株式会社ヒューマンネット 業務システム構築方法及び業務システム構築プログラム

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1115646A (ja) * 1997-06-25 1999-01-22 Fujitsu Ltd 技術情報管理システム
US6073107A (en) * 1997-08-26 2000-06-06 Minkiewicz; Arlene F. Parametric software forecasting system and method
JP4003261B2 (ja) * 1997-10-17 2007-11-07 ソニー株式会社 プログラム生成装置及びプログラム生成方法
US6654954B1 (en) * 1998-02-17 2003-11-25 International Business Machines Corporation Computer system, program product and method utilizing executable file with alternate program code attached as a file attribute
JP4025501B2 (ja) * 2000-03-03 2007-12-19 株式会社ソニー・コンピュータエンタテインメント 楽音発生装置
US7334216B2 (en) * 2000-04-04 2008-02-19 Sosy, Inc. Method and apparatus for automatic generation of information system user interfaces
US6681383B1 (en) 2000-04-04 2004-01-20 Sosy, Inc. Automatic software production system
US7539623B1 (en) 2000-04-06 2009-05-26 Medical Central Online Method and a system for providing bed availability information on a computer network
US6845502B1 (en) 2000-04-25 2005-01-18 International Business Machines Corporation Extended attribute information retention file format for object files
JP2001337823A (ja) * 2000-05-25 2001-12-07 Sony Corp コンポーネントウェア作成方法および記録媒体
US7694218B2 (en) * 2000-09-13 2010-04-06 Canon Kabushiki Kaisha Information processing apparatus, method therefor, and computer-readable memory
US20020161698A1 (en) * 2000-10-04 2002-10-31 Wical Kelly J. Caching system using timing queues based on last access times
US7552065B1 (en) * 2000-12-08 2009-06-23 At&T Intellectual Property I, L.P. Forecasting tool for predicting future demand for parts / materials / equipment
US20020138302A1 (en) * 2001-03-21 2002-09-26 David Bodnick Prepaid telecommunication card for health care compliance
AU2002317447A1 (en) * 2001-07-04 2003-01-21 Kinematik Research Limited An information management and control system
JP2003108373A (ja) * 2001-09-28 2003-04-11 Toshiba Corp 汎用型ソフトウェア開発支援システム、汎用型ソフトウェア開発支援プログラム、およびそのシステムで用いられるソフトウェア部品
US6981268B2 (en) * 2001-12-05 2005-12-27 Microsoft Corporation System and method for persisting and resolving application assembly binds
US7137120B2 (en) * 2001-12-17 2006-11-14 International Business Machines Corporation Dynamic diagnostic program for determining thread wait time
US20030192038A1 (en) * 2002-04-09 2003-10-09 Thomas Hagmann Linking data objects to a project development system
US7065743B2 (en) * 2002-07-11 2006-06-20 International Business Machines Corporation Apparatus and method for caching analyzed program information
US20040064805A1 (en) * 2002-09-27 2004-04-01 Sparago Evan S. Enterprise scoped software factory
US7647344B2 (en) * 2003-05-29 2010-01-12 Experian Marketing Solutions, Inc. System, method and software for providing persistent entity identification and linking entity information in an integrated data repository
WO2005020071A1 (ja) * 2003-08-20 2005-03-03 Japan Tobacco Inc. プログラム生成システム、プログラム生成プログラムおよびプログラム生成モジュール
JP3994090B2 (ja) * 2004-01-29 2007-10-17 ファナック株式会社 数値制御装置
US7729936B2 (en) * 2004-05-20 2010-06-01 Taiwan Semiconductor Manufacturing Co., Ltd. System and method for lot priority adjustment
US20060031819A1 (en) * 2004-08-06 2006-02-09 Microsoft Corporation Methods and apparatus for creating solutions
US20060036990A1 (en) * 2004-08-16 2006-02-16 Lockheed Martin Corporation Tool comprising systems engineering environment for meeting task requirements
CN1972200B (zh) * 2005-02-21 2010-12-22 索尼计算机娱乐公司 网络系统、构成网络上节点的计算机及网络可视化方法
JP2006260314A (ja) * 2005-03-18 2006-09-28 Dainippon Screen Mfg Co Ltd アプリケーションソフトウェア構成管理装置、アプリケーションソフトウェア構成管理方法、およびプログラム
US8700730B2 (en) * 2005-08-18 2014-04-15 Microsoft Corporation Aggregated audio/video crossbar connections
US8627299B2 (en) * 2008-02-29 2014-01-07 International Business Machines Corporation Virtual machine and programming language for event processing
US8365149B2 (en) * 2008-02-29 2013-01-29 International Business Machines Corporation Debugger for a declarative event-driven programming model
US8397216B2 (en) * 2008-02-29 2013-03-12 International Business Machines Corporation Compiler for a declarative event-driven programming model
US8707284B2 (en) * 2009-12-22 2014-04-22 Microsoft Corporation Dictionary-based dependency determination
US20120029965A1 (en) * 2010-07-29 2012-02-02 Steffen Roger J Selecting a project portfolio
US10872027B2 (en) * 2018-04-18 2020-12-22 The Mathworks, Inc. Run-time or compile-time error solutions for locating missing program elements in a programming environment
US11113031B2 (en) * 2018-10-10 2021-09-07 Visa International Service Association Systems and methods for loading project data

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5206951A (en) * 1987-08-21 1993-04-27 Wang Laboratories, Inc. Integration of data between typed objects by mutual, direct invocation between object managers corresponding to object types
IN170793B (ja) * 1987-12-18 1992-05-23 Hitachi Ltd
JPH022419A (ja) * 1988-06-10 1990-01-08 Hitachi Ltd プログラム情報管理方式
JP2606356B2 (ja) * 1988-09-30 1997-04-30 横河電機株式会社 ソフトウエア開発システム
US5603018A (en) * 1991-07-15 1997-02-11 Mitsubishi Denki Kabushiki Kaisha Program developing system allowing a specification definition to be represented by a plurality of different graphical, non-procedural representation formats
JP3408548B2 (ja) * 1991-08-21 2003-05-19 株式会社日立製作所 仕様書作成工程管理装置
JP3181994B2 (ja) * 1992-09-03 2001-07-03 株式会社日立製作所 ジョブフロー仕様書自動作成方法
JPH07306778A (ja) * 1994-05-16 1995-11-21 Fujitsu Ltd ソフトウェアの分散開発環境における開発管理方式

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001022574A (ja) * 1999-07-05 2001-01-26 Mitsubishi Electric Corp モジュール保守管理システム
JP2006127067A (ja) * 2004-10-27 2006-05-18 Chugoku Electric Power Co Inc:The リソース管理システム及びプログラム
JP2006172036A (ja) * 2004-12-15 2006-06-29 Methodologysoft Corp 設計コンピュータプログラム
JP2013190890A (ja) * 2012-03-13 2013-09-26 Hitachi Ltd ソフトウェア開発支援装置及び影響波及分析支援手法
CN107077703A (zh) * 2014-10-24 2017-08-18 三菱重工业株式会社 零部件表管理系统及零部件表管理方法
US20170248930A1 (en) * 2014-10-24 2017-08-31 Mitsubishi Heavy Industries, Ltd. Component table management system and component table management method
JP2017058987A (ja) * 2015-09-17 2017-03-23 株式会社日立製作所 システム開発支援装置
JP2018092466A (ja) * 2016-12-06 2018-06-14 株式会社日立製作所 変更影響調査支援装置、変更影響調査支援方法および変更影響調査支援プログラム
JP7732696B1 (ja) * 2025-01-23 2025-09-02 株式会社ヒューマンネット 業務システム構築方法及び業務システム構築プログラム

Also Published As

Publication number Publication date
US5878262A (en) 1999-03-02

Similar Documents

Publication Publication Date Title
JPH09212352A (ja) プログラム開発支援システム
US10970474B2 (en) Method and system for editing text with a find and replace function leveraging derivations of the find and replace input
US7359990B2 (en) Editing files of remote systems using an integrated development environment
CA2144874C (en) Incremental build system
EP0786109B1 (en) Object-oriented system for configuration history management
US9304764B2 (en) Automated merging in a software development environment
US6219831B1 (en) Device and method for converting computer programming languages
CN108762743B (zh) 一种数据表操作代码生成方法及装置
US20040003091A1 (en) Accessing a remote iSeries or AS/400 computer system from an integrated development environment
US20030212984A1 (en) Sequence analysis method and apparatus
CN117687681B (zh) 一种低代码应用的版本管理方法及系统
JP3577400B2 (ja) システム設計装置及びデータウエアハウス設計システム
US5907851A (en) Editing nested documents by appointing a portion for insertion with an alternative substitute
Brosch et al. Towards end-user adaptable model versioning: The by-example operation recorder
US6453318B1 (en) Control apparatus of structured information and method of controlling the information
Clemm Replacing version-control with job-control
JPH064280A (ja) ウィズィウィグ式エディターでオブジェクトをユーザ制御する機能を備えたグラフィカル・ユーザ・インターフェース
Bowen et al. The REDO Project
Lethbridge et al. Studies of the work practices of software engineers
JP3741450B2 (ja) 項目部品エレメントの実行方法および実行装置
JP3516843B2 (ja) データベースアクセス方法
JPH0683594A (ja) ウィズィウィグ式エディターとコンパイラーとを統合したグラフィカル・ユーザ・インターフェース
Wang et al. The development of Phedias: a CASE Shell
Jafarlou et al. From two-way to three-way: domain-specific model differencing and conflict detection.
Gomanyuk An approach to creating development environments for a wide class of programming languages