(57)【要約】【課題】    ソフトウエアの開発工程において複数の開発者が並行して開発するときに生じる影響を最小限に抑えてプログラムのカスタマイズやバージョンアップの作業を円滑に進める。【解決手段】特定の利用者がプログラムソースの修正箇所を指定している間は、その利用者以外にはプログラムソースへのアクセスを禁止し（Ｓ２１）、修正箇所を特定した後はアクセス禁止を解除し（Ｓ２４）、指定した箇所の修正内容は子部品プログラムソースとして別ファイルで記述させるように、当該プログラムソースに分岐処理を追加した。【選択図】  図２
2005165698.tif 000002
【特許請求の範囲】
【請求項１】
特定の記録領域に記録されたプログラムソースを、複数の端末から読み込みや書き込みをするときに次のステップでプログラムソースを更新することを特徴とするプログラム開発システムのプログラム更新方法。
（Ｓ１）ある端末の要求に応じて前記プログラムソースを前記記憶領域から呼び出すと同時に、前記端末以外には前記プログラムソースへのアクセスを禁止して更新権を獲得し（更新権獲得ステップ）、
（Ｓ２２）前記プログラムソースのうち、変更もしくは挿入させる部分ソースを、前記端末に指定させ（部分ソース指定ステップ）、
（Ｓ２３）プログラム実行時にある特定の識別詞を認識したときには子部品プログラムソースに記述された処理をさせるソースと、プログラム実行時に前記識別詞を認識しなかったときには前記部分ソースをそのまま処理させるためのソースと、をあわせた分岐処理を、前記部分ソースと入れ替えた後に前記記憶領域に記録し（分岐処理記述ステップ）、
（Ｓ２４）前記プログラムソースへのアクセスの禁止を解除して更新権を返還し（更新権返還ステップ）、
（Ｓ３）前記端末の要求に応じて前記子部品プログラムソースを前記記憶領域に追加記録する（子部品登録ステップ）。
【請求項２】
更新権を獲得すると、前記プログラムソースあるいは前記子部品プログラムソースの任意箇所を直接編集することを特徴とする請求項１に記載のプログラム開発システムのプログラム更新方法。
【請求項３】
更新権を獲得すると、時間を計数してその時間を前記端末に通知し、あるいは、所定の時間以内に前記更新権返還ステップ（Ｓ２４）を終了しないときは、前記端末に対して、前記所定の時間を経過したことを通知することを特徴とする請求項１または請求項２のいずれかに記載のプログラム開発システムのプログラム更新方法。
【請求項４】
更新権を獲得する前に、前記端末の要求に応じて、特定の識別詞を付与することを特徴とする請求項１乃至請求項３のいずれか１項に記載のプログラム開発システムのプログラム更新方法。
【請求項５】
特定の記録領域に記録されたプログラムソースを、複数の端末から読み込みや書き込みをするときに、次のステップでプログラムソースを更新することを特徴とするプログラム開発システムのプログラム更新方法。
（１）プログラム実行時にある特定の識別詞を認識したときには前記子部品プログラムソースに記述された処理をさせるソースと、前記識別詞を認識しなかったときのソース、をあわせた分岐処理が記述されたプログラムソースと、前記子部品プログラムソースとを前記記憶領域に備え、
（２）前記端末の要求に応じて、前記プログラムソースと前記子部品プログラムソースを前記記憶領域から呼び出し、
（３）前記プログラムソースのうち、前記子部品プログラムソースに記述された処理をさせるソースを、前記子部品プログラムソースに記述された処理と入れ替えて、前記記憶領域に記録した後に、前記子部品プログラムソースを削除する。
【請求項６】
特定の記録領域に記録されたプログラムソースを、複数の端末から読み込みや書き込みをするときに、次のステップでプログラムソースを更新することを特徴とするプログラム開発システムのプログラム更新方法。
（１１）プログラム実行時にある特定の識別詞を認識したときには前記子部品プログラムソースに記述された処理をさせるソースと、前記識別詞を認識しなかったときのソース、をあわせた分岐処理が記述されたプログラムソースと、前記子部品プログラムソースと、を前記記憶領域に備え、
（１２）利用者の要求に応じて、前記プログラムソースと前記子部品プログラムソースを前記記憶領域から呼び出し、
（１３）前記プログラムソースに記述された前記分岐処理を、前記子部品プログラムソースに記述された処理と入れ替え、
（１４）前記記憶領域に記録した後に、前記子部品プログラムソースを削除する。
【請求項７】
プログラム実行時に引数として与えられる識別詞ごとに異なる処理をすることを特徴とする請求項１ないし６の何れかに記載のプログラム開発システムのプログラム更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムソースの再利用を伴うソフトウエアの開発工程において、複数の開発者が同時に並行してプログラムのカスタマイズやバージョンアップをすることができるプログラム開発システムのプログラム更新方法に関するものである。
【背景技術】
【０００２】
ソフトウエアを開発するときは、仕様に応じてプログラムをカスタマイズしたり、プログラムに潜んでいるバグなどの障害を取り除いてバージョンアップすることがあるが、このようなときはプログラムソースを再利用することが多い。
そして時には、このようなカスタマイズやバージョンアップの複数の作業が、同じ時期に重複することがある。このように重複するときはそれぞれの仕様を統合して並行して開発が進められる。
図７は、プログラムのカスタマイズやバージョンアップの複数の開発が、同じ時期に重複するときの従来の作業の流れを示す説明図である。
図において仕様７１Ａ、７１Ｂ、７１Ｃ・・・を同じ時期にリリース（製品化）するときは、それぞれの仕様を調整し統合して仕様を設計する。そして各仕様７１Ａ、７１Ｂ、７１Ｃ・・・に対応してプログラム設計書７２Ａ、７２Ｂ、７２Ｃ・・・が作成されると、この設計書に基づいてプログラムを開発し、コンパイルした後にプログラムがリリース（製品化）されるのである。
【０００３】
他の従来例として、特許文献１に開示されたソフトウエア生成装置があり、図８はその構成を示す説明図である。このソフトウエア生成装置は、主に骨格生成部８４と、プログラム生成部８８と、ビルディング部８７から構成されている。骨格生成部８４はソースコード部とパラメータ情報から構成される部品８２を組み合わせることによりプログラム骨格８３を生成する。プログラム生成部８８はオペレータが入力した情報に基づいてプログラム骨格８３を抽出して組み立て、このプログラム骨格８３にパラメータ情報を用いてパラメータ値８１を設定することにより、ソースプログラム８５を生成する。ビルディング部８７はこれをさらに実行形式プログラム８６に変換する。この従来例によると、プログラムのコーディング作業を部品の組み立てとパラメータの設定のみで行うことができ、プログラム仕様書とソースプログラムの間の整合性を保つことができて再利用しやすい形のプログラムを蓄積することができるのである。
【特許文献１】特開平８−３２８８４１号公報（第３頁および第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが近年はプログラムソースを再利用することが特に活発になってきており、再利用上の問題が顕在化している。
同じソフトウエアでも仕様の違いによって実行形式のプログラムにすると異なってしまうことが多く、たとえば、特許文献１によるソフトウエア生成装置を用いたときには、各仕様によって内容の異なる複数のプログラムをその仕様の数に応じてそれぞれ生成させなければならなかった。バグ等の障害に対応するためバージョンアップするときは、異なる仕様に基づいて複数回のコンパイルが必要となるだけでなく、コンパイルされた複数個のプログラムを、仕様に応じて配布し、管理する必要もあった。
そこで、本発明の第１の課題は、各ユーザの仕様とリリース時期が異なるプログラムであっても、仕様の違いを意識することがなく、バージョンアップ後のプログラムのコンパイル作業や管理・配布の作業を円滑に行うことができるプログラム開発システムを提供することにある。
【０００５】
またプログラムソースを再利用するソフトウエアの開発工程では、複数の開発者が同時に一つのプログラムソースを編集するというケースも生じている。しかし、一つのプログラムソースがカスタマイズされているときに、他の開発者がそのプログラムソースに障害対策を施した場合は、そのカスタマイズされたプログラムソースに障害対策が反映されなかったり、あるいはその障害対策が施されたプログラムソースの上に、障害対策が施されていないカスタマイズされたプログラムソースが上書きされてしまうことがあった。また、図７で示したように、複数の仕様を統合してプログラム仕様書７２Ａ、７２Ｂ、７２Ｃ・・・が作成されたときには、他のプログラム開発に影響を及ぼさないように、その開発スケジュールを厳守する必要があり、スケジュール変更や仕様変更等の弾力的運用ができないという問題があった。
そこで、本発明の第２の課題は、プログラムソースの再利用をするときに複数の開発者が並行して円滑に開発を進めることができるプログラム開発システムを提供することにある。
【０００６】
また、リリースされたプログラムに潜んでいるバグなどの障害を発見したときには、そのプログラムのほか、再利用しているプログラム全てについて、障害対策を施さなければならず、プログラミングやテスト（検証）作業にかかる負荷を増大させる原因となっていた。
そこで、本発明の第３の課題は、障害対策を施こすときに、プログラムやそのプログラムを再利用したプログラムの仕様の違いを意識することなく、プログラミングやテスト作業を円滑に行うことができるプログラム開発システムを提供することにある。
【課題を解決するための手段】
【０００７】
上記問題を解決するため、本発明は、次のようにしたのである。
すなわち、第１乃至第３の課題を解決するために、請求項１に記載の本発明は、特定の記録領域に記録されたプログラムソースを、複数の端末から読み込みや書き込みをするときに次のステップでプログラムソースを更新することを特徴としている。すなわち、（Ｓ１）ある端末の要求に応じて前記プログラムソースを前記記憶領域から呼び出すと同時に、前記端末以外には前記プログラムソースへのアクセスを禁止して更新権を獲得し（更新権獲得ステップ）、（Ｓ２２）前記プログラムソースのうち、変更もしくは挿入させる部分ソースを、前記端末に指定させ（部分ソース指定ステップ）、（Ｓ２３）プログラム実行時にある特定の識別詞を認識したときには子部品プログラムソースに記述された処理をさせるソースと、プログラム実行時に前記識別詞を認識しなかったときには前記部分ソースをそのまま処理させるためのソースと、をあわせた分岐処理を、前記部分ソースと入れ替えた後に前記記憶領域に記録し（分岐処理記述ステップ）、（Ｓ２４）前記プログラムソースへのアクセスの禁止を解除して更新権を返還し（更新権返還ステップ）、（Ｓ３）前記端末の要求に応じて前記子部品プログラムソースを前記記憶領域に追加記録する（子部品登録ステップ）。
【０００８】
また第１の課題を解決するために、請求項４に記載の本発明は、更新権を獲得する前に、前記端末の要求に応じて、特定の識別詞を付与することを特徴としており、請求項７に記載の本発明は、プログラム実行時に引数として与えられる識別詞ごとに異なる処理をすることを特徴としている。
【０００９】
また第２の課題を解決するために、請求項３に記載の本発明は、更新権を獲得すると時間を計数してその時間を前記端末に通知し、あるいは、所定の時間以内に前記更新権返還ステップ（Ｓ２４）を終了しないときは、前記端末に対して前記所定の時間を経過したことを通知することを特徴としている。
【００１０】
また第３の課題を解決するために、請求項２に記載の本発明は、更新権を獲得すると、前記プログラムソースあるいは前記子部品プログラムソースの任意箇所を直接編集することを特徴としており、請求項６に記載の本発明は、特定の記録領域に記録されたプログラムソースを、複数の端末から読み込みや書き込みをするときに、次のステップでプログラムソースを更新することを特徴としている。すなわち、（１１）プログラム実行時にある特定の識別詞を認識したときには前記子部品プログラムソースに記述された処理をさせるソースと、前記識別詞を認識しなかったときのソース、をあわせた分岐処理が記述されたプログラムソースと、前記子部品プログラムソースと、を前記記憶領域に備え、（１２）利用者の要求に応じて、前記プログラムソースと前記子部品プログラムソースを前記記憶領域から呼び出し、（１３）前記プログラムソースに記述された前記分岐処理を、前記子部品プログラムソースに記述された処理と入れ替え、（１４）前記記憶領域に記録した後に、前記子部品プログラムソースを削除する。
また、請求項７に記載の本発明は、プログラム実行時に引数として与えられる識別詞ごとに異なる処理をすることを特徴としている。
【発明の効果】
【００１１】
請求項１に記載の本発明によれば、特定の利用者がプログラムソースの修正する箇所を指定している間は、その利用者以外にはプログラムソースへのアクセスを禁止し、その修正する箇所を特定した後は、アクセス禁止を解除し、かつその指定した箇所の修正内容は子部品プログラムソースとして別ファイルで記述させるように、該プログラムソースに分岐処理を追加するようにしたので、各ユーザによって仕様およびリリース時期が異なるプログラムにおいても、その仕様の違いを意識することなく、バージョンアップ等のなされたプログラムのコンパイル作業や管理・配布の作業を円滑に行うことができる。また、カスタマイズや、バージョンアップなどによるプログラムソースの再利用が伴うソフトウエアの開発工程で、複数の開発者が円滑に並行して開発を進めることができる。また、障害対応（バグ対応）などによる対策において、プログラムおよびそのプログラムを再利用したものの仕様の違いを意識することなく、プログラミングおよびテストを円滑に行うことができる。
【００１２】
請求項２に記載の本発明によれば、バグなどの障害対応にかかわるソースを直接編集するので、その後のコンパイルにおいては、その編集されたソースが必ず反映されるようにしているので、障害対応（バグ対応）などによる対策において、プログラムおよびそのプログラムを再利用したものの仕様の違いを意識することなく、プログラミングおよびテストを円滑に行うことができる。
【００１３】
請求項３に記載の本発明によれば、更新権が特定の利用者に与えられている時間を計数管理し、その確保された時間を更新権獲得者に通知させ、プログラム更新の独占権を不当に長時間占有出来ないようにしているので、カスタマイズや、バージョンアップなどによるプログラムソースの再利用が伴うソフトウエアの開発工程で、複数の開発者が円滑に並行して開発を進めることができる。
【００１４】
請求項４に記載の本発明によれば、利用者の要求に応じて、特定の識別詞を付与しているので、各ユーザによって仕様およびリリース時期が異なるプログラムにおいても、その仕様の違いを意識することなく、バージョンアップ等のなされたプログラムのコンパイル作業や管理・配布の作業を円滑に行うことができる。
【００１５】
請求項５と請求項６に記載の本発明によれば、プログラムソースのなかで修正を行いたい箇所と、その修正箇所を記述した子部品プログラムソースとの間で、ソースを入れ替えることで、その後のコンパイルにおいては、その編集されたソースが必ず反映されるようにしているので、障害対応（バグ対応）などによる対策において、プログラムおよびそのプログラムを再利用したものの仕様の違いを意識することなく、プログラミングおよびテストを円滑に行うことができる。
【００１６】
請求項７に記載の本発明によれば、利用目的（仕様）毎に付与された特定の識別詞をプログラム実行時に読み込ませ、その仕様に応じたプログラムが分岐、実行されるので、各ユーザによって仕様およびリリース時期が異なるプログラムにおいても、その仕様の違いを意識することなく、バージョンアップ等のなされたプログラムのコンパイル作業や管理・配布の作業を円滑に行うことができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施の形態について図に基づいて説明する。
【実施例１】
【００１８】
図１は、本発明の第１実施例のプログラム開発システムの構成図であり、図２は本発明のプログラム開発システムを用いたプログラム作成の流れを示すフローチャート、図３は本発明のプログラム開発システムで変更したプログラムの変更前後のプログラムソースを示す説明図である。
図１において、プログラム開発システム１０は、記憶領域１１と、識別詞管理部１２と、部分ソース選択部１３と、更新権管理部１５と、分岐処理追加部１４と、子部品登録部１６と、コンパイル部１７を備えている。記憶領域１１は、識別詞データ１１１と、プログラムソース１１２と、子部品プログラムソース１１３と、プログラム実行体１１４を記憶しており、識別詞管理部１２が識別詞データ１１１を管理する。プログラム開発システム１０は複数の端末２１、２２、・・・２３と接続されており、記録領域１１に記録されたプログラムソース１１２や子部品プログラムソース１１３にアクセスして読み込みや書き込みを行う。
【００１９】
次に利用者が端末２１を用いてプログラムソース１１２の修正を行うときは、図２のフローチャートに従って、およそ次のように動作する。
（Ｓ１）まず端末２１の要求に応じて特定の識別詞を付与する。
（Ｓ２１）端末２１の要求に応じてプログラムソース１１２を記憶領域１１から呼び出し、更新権を獲得する。同時にその端末以外の端末２２、２３にはプログラムソース１１２へのアクセスが禁止される。
（Ｓ２２）プログラムソース１１２に記述されたソースのうち、変更もしくは挿入させる部分ソースを端末２１が指定する。
（Ｓ２３）プログラム実行時にある特定の識別詞を認識したときには、子部品プログラムソース１１３に記述された処理をさせるソースと、プログラム実行時に識別詞を認識しなかったときには部分ソースをそのまま処理させるためのソースと、をあわせた分岐処理を、部分ソースと入れ替えた後に記憶領域１１に記録する。
（Ｓ２４）そのプログラムソースへのアクセスの禁止を解除して更新権を返還する。
（Ｓ３）端末２１の要求に応じて子部品プログラムソース１１３を記憶領域１１に追加記録する。
（Ｓ２６）なお、更新権獲得ステップＳ２１開始後は、部分ソース指定ステップＳ２２と並行して経過時間を計数し、端末２１に通知する。そして所定の時間内にＳ２４を終了しなければ所定の時間を経過したことを端末２１に通知する。
【００２０】
上記のＳ２１とＳ２２、Ｓ２３、Ｓ２４でプログラムソース１１２を更新する一連のステップＳ２をなしており、端末２１がプログラムの更新権を独占するのはこのステップＳ２を処理している僅かな時間だけですむのである。
【００２１】
このような手順で、プログラムを開発した時のプログラムソースは図３のように変遷する。変更前後のプログラムソース３０、３２の先頭の行３０１、３０１’では、特定のファイル名の識別詞ファイルが読み込まれ、その識別詞ファイルに記述された識別詞に応じて処理が分岐するようになっている。したがって、プログラムの変更の有無に関係なく、一つの最新のプログラムで、それぞれの仕様に基づいた処理を行わせることができる。
【００２２】
次に識別詞付与ステップＳ１から、子部品登録ステップＳ３までの流れを詳細に説明する。
識別詞付与ステップＳ１ではプログラムソース１１２を修正するに先立ち、利用者が端末２１からその仕様を特定する識別詞の発行を識別詞管理部１２に要求する。例えば、識別詞管理部１２において「仕様Ａ」という符号による識別詞の照会があった場合には識別詞データ１１１に同一の識別詞があるかどうかを確認し、同一の識別詞が登録されていなければ端末２１に要求のあった識別詞の使用を許可するとともに、その識別詞「仕様Ａ」を識別詞データ１１１に登録する。なお、識別詞の付与にあたっては、識別詞管理部１２が任意に識別詞を発生させて端末２１の利用者に通知するようにしてもよい。
【００２３】
更新権獲得ステップＳ２１では、端末２１の要求に応じて更新権管理部１５が記憶領域１１からプログラムソース１１２を呼び出すと同時に、他の端末にはプログラムソース１１２のアクセスを禁止する。更新権管理部１５が呼び出したプログラムソース１１２の内容すなわち変更前のプログラムソース３０は端末２１にディスプレイ表示される。
【００２４】
部分ソース指定ステップＳ２２では、変更前のプログラムソース３０のうち、変更したい領域や挿入したい箇所をマウスで指定する。本実施例では領域３０２を部分ソースとして指定しており、その内容が部分ソース選択部１３に通知される。このとき、指定した領域の内容を翻訳してその領域を指定することがコーディング規則上許されないと判明したときは、その旨を端末２１に対して通知するようにしてもよい。
【００２５】
分岐処理記述ステップＳ２３では、部分ソース選択部１３に通知された内容に基づいて、分岐処理追加部１４が分岐処理記述内容３１を記述する。
例えば、「ＩＦ，条件式，ＴＨＥＮ，処理１，ＥＬＳＥ，処理２，ＥＮＤＩＦ」というコーディングが「条件式が真であるときに処理１を行い、そうでないときには処理２を行う」という意味のときは、分岐処置記述内容３１は、３１１，３１２，３１３，３１４および３０２’で構成されるソースとなる。条件式を、先頭行３０１’で読み込んだ識別詞が、特定の識別詞すなわち、本実施例では、「仕様Ａ」という識別詞であるか否かとし、「ＩＦ，条件式，ＴＨＥＮ」を記述した行３１１に続いて、コンパイル時に子部品プログラムソース１１２をコピーしてコンパイルさせるようなファイル差込指令３１２を処理１とし、「ＥＬＳＥ」を記述した行３１３に続いて、部分ソース３０２をそのままコピーした３０２’を処理２とし、挿入する箇所として部分ソース３０２が指定されたのであれば、処理２は空文のままとする。最後に「ＥＮＤＩＦ」を行３１４に記述したものとなる。
【００２６】
そして、分岐処理追加部１４は、変更前のプログラムソース３０のうちの変更に係る部分コード３０２を分岐処理記述内容３１と入れ替えて、プログラムソース３２に変更する。すなわち、変更後のプログラムソース３２は変更前のプログラムソース３０のうちの変更しない部分３０３、３０４をそのまま３０３’，３０４’とし、部分コード３０２の前後段に処理３１１，３１２，３１３および３１４を追加したソースとなる。このようにして作られたプログラムソース３２を新たなプログラムソース１１２として記憶媒体１１に記録する。
なお識別詞を条件式３１１に記述するときは端末２１から直接入力してもよいが、識別詞管理部１２が識別詞データ１１１を参照した上でこれを端末２１に表示させ、表示された複数の識別詞の中からその仕様のために付与された識別詞を選択させるようにしてもよい。
【００２７】
ファイル差込指令３１２で用いる子部品プログラムソース１１３のファイル名は、次のような命名規則を用いると好適である。すなわち、
（規則ａ）ファイル名の上位１桁で子部品プログラムソースをあらわす符号、
（規則ｂ）続く３桁でプログラムソースのファイルを特定する符号、
（規則ｃ）続く２桁で識別詞を特定する符号、
（規則ｄ）続く２桁で子部品プログラムソースの追番をあらわす符号、
という命名規則などを用いることにより、ファイル名を自動的に付与し、さらに、付与した子部品プログラムソースのファイル名は、識別詞データ１１１の中に関連付けて追加記録させるなどしてもよい。
【００２８】
更新権返還ステップＳ２４では、更新権管理部１５が更新権獲得ステップＳ２１のアクセス制限を解除し、他の利用者のプログラム修正を受け付けられるようにする。
【００２９】
また、経過時間管理ステップＳ２６では、更新権獲得ステップＳ２１を開始したと同時に起動してその後の時間を計数し、更新権管理部１５が計数した時間を利用者に通知する。所定の時間内に更新権返還ステップＳ２４が終了しなければ、所定の時間が経過したことを通知するようにしておく。この他、更新権管理部１５が更新権を持っている端末２１の情報を他の端末に表示させたり、計数した時間を通知したり、所定の時間が経過したことを通知したりした後で、独自にアクセス制限を強制解除して他の端末のプログラム修正を受け付けられるようにしてもよい。
【００３０】
子部品登録ステップＳ３では、利用者が子部品登録部１６を用いて子部品プログラムソース１１３を作成する。子部品プログラムソース１１３は、部分ソース３０２の代わりに処理させる内容３３を記述し、その子部品プログラムソース１１３のファイル名をファイル差込指令３１２で指定したファイル名と同一の名前にして記憶領域１１に追加記録する。
【００３１】
このようにプログラム１１２、１１３を作成したあと、コンパイル部１７でプログラムソース１１２をコンパイルすると、子部品プログラムソース１１３ごとコンパイルされて新たなプログラム実行体１１４が作成される。このプログラム実行体１１４は、識別詞を記述した図示しない識別詞ファイルとともに用いられ、プログラムを起動した直後に識別詞ファイルを読み込んで分岐処理を行うので、新たに定義された仕様に基づく識別詞「仕様Ａ」に対しても、その仕様に基づいた処理が行われる。そしてプログラムの変更前後に定義された識別詞、すなわち「仕様Ａ」以外の識別詞によって動作させる場合は、そのプログラム変更前後の仕様に応じた処理を行なうこととなる。
【００３２】
例として、異なる二つの仕様Ａ、Ｂで同時に一つのプログラムソース１１２を修正するにしても、その修正作業では更新ステップＳ２で修正する箇所を宣言する以外に双方の開発者が競合することがないため、すなわち、一つのプログラムソース１１２に二人以上のものが同時にアクセスすることがないため、円滑に作業を進めることが出来る。
【実施例２】
【００３３】
次に、本発明の第２実施例について図４乃至図６を用いて説明する。なお、第１の実施例と同じ機能を有するものについては同一の符号を付し、詳細な説明を省略する。
図４は、第２実施例のプログラム開発システムの構成図であり、図５はそのプログラム開発システムのプログラム作成の流れを示すフローチャート、図６は変更前と変更後のプログラムソースを示す説明図である。図４のプログラム開発システム１０はソース編集部４１を備えている。
【００３４】
第１の実施例のように別ファイルで修正するのではなく、バグなどの障害対策として直ちにプログラムソース１１２や子部品プログラムソース１１３を修正したい場合に備えており、更新権獲得ステップＳ２１と更新権返還ステップＳ２４との間にソースの任意箇所を直接編集するソース編集ステップＳ２５を含むようにする。
なお、このような障害対策に関しては、識別詞の付与を必要としない。
【００３５】
具体的には、図５のフローチャートに従う。更新権獲得ステップＳ２１の後は、ソース編集を行うか否かの判断を促してソースコード直接編集判断ステップＳ２１’を加える。利用者がソース編集を選択した場合は、ソース編集ステップＳ２５で、ソースコード編集部４１がプログラムソース１１２か子部品プログラムソース１１３を端末２１に表示させ、端末２１から直接ソースの修正作業をする。利用者が修正を終了すると、ソース編集部４１がその修正内容に基づいて新たなプログラムソース１１２か子部品プログラムソース１１３を記憶媒体１１に記録する。
ソースコード直接編集判断ステップＳ２１’において、端末２１からソース編集を選択しなければ部分ソース指定ステップＳ２２に進み、第１の実施例と同様の処理を行う。
【００３６】
なお、図２に示すように、ソース編集ステップＳ２５と分岐処理記述ステップＳ２３の後に編集継続判断Ｓ２４’を追加し、ソースコード直接編集判断ステップＳ２１’に戻るか否かを促して再びソースの編集を行えるようにしてもよい。
【００３７】
また、子部品登録ステップＳ３の後でプログラムソース更新ステップＳ４を追加し、要求に応じてプログラムソース１１２と子部品プログラムソース１１３を記憶領域１１から呼び出してもよい。そしてプログラムソース１１２のうちの子部品プログラムソース１１３に記述された処理をさせるソースを、子部品プログラムソース１１３に記述された処理と入れ替え、記憶領域１１に記録した後に子部品プログラムソース１１３を削除する処理を加えてもよい。
【００３８】
このような方法でプログラムを開発すると、変更前後のプログラムソースは図６のように変遷する。要求に応じて変更前のプログラムソース６０のなかからファイル差込指令６０２を検索する。そこに記述されたファイル名に基づいて子部品プログラムソース１１３を呼び出し、ファイル差込指令６０２の内容を、子部品プログラムソースの内容６１と入れ変える。変更後プログラムソース６２として記憶領域１１に上書きするとともに、不要となった子部品プログラムソース１１３を削除する。
すなわち、変更後のプログラムソース６２は変更前のプログラムソース６０のうち、変更しないファイル差込指令６０２以外の部分６０１、６０３をそのまま６０１’、６０３’とし、ファイル差込指令６０２の替わりに子部品プログラムソース６１を記述したソースとなる。
【００３９】
また、上記のほかにプログラムソース６０に記述された分岐処理６０２を子部品プログラムソース６１と入れ替えるようにしてもよい。要求に応じて変更前のプログラムソース６０のなかから分岐処理６０５を検索する。そこに記述されたファイル名に基づいて子部品プログラムソース１１３を呼び出し、分岐処理６０５の内容を子部品プログラムソースの内容６１と入れ変える。変更後プログラムソース６３として記憶領域１１に上書きするとともに、不要となった子部品プログラムソース１１３を削除する。すなわち、変更後のプログラムソース６３は変更前のプログラムソース６０のうちの変更しない分岐処理６０５以外の部分６０４、６０６を、そのまま６０４’、６０６’とし、分岐処理６０５の代わりに子部品プログラムソース６１を記述したソースとなる。こうして修正した内容がその後再利用される全てのプログラムで反映されることとなる。 
【００４０】
このようなプログラムソース更新ステップＳ４は、その修正した子部品プログラムソース１１３のデバック等の試験を行った後、そのプログラムソース１１２か子部品プログラムソース１１３の信頼性が確保された段階で行うとよい。
【産業上の利用可能性】
【００４１】
本発明は一つのプログラムソースを複数の人が並行して円滑に開発をすることができるプログラム開発手段であるので、情報サービス産業におけるプログラム開発やその最適な管理をするという用途に利用することができる。
【図面の簡単な説明】
【００４２】
【図１】本発明の第１実施例で説明するプログラム開発システムの構成図。
【図２】本発明の第１実施例で説明するプログラム作成の流れを示すフローチャート。
【図３】本発明の第１実施例による変更前後のプログラムソースの説明図。
【図４】本発明の第２実施例で説明するプログラム開発システムの構成図。
【図５】本発明の第２実施例で説明するプログラム作成の流れを示すフローチャート。
【図６】本発明の第２実施例による変更前後のプログラムソースの説明図。
【図７】プログラムの開発作業が同じ時期に重複したときの従来の流れを示す説明図。
【図８】特許文献１に記載のソフトウエア生成装置の構成を示す説明図
【符号の説明】
【００４３】
Ｓ１      識別詞付与ステップ、                Ｓ２      更新ステップ、
Ｓ２１    更新権獲得ステップ、     
Ｓ２１’  ソースコード直接編集判断ステップ、  Ｓ２２    部分ソース選択ステップ、
Ｓ２３    分岐処理記述ステップ、              Ｓ２４    更新権返還ステップ、
Ｓ２４’  編集継続判断、                      Ｓ２５    ソース編集ステップ、
Ｓ２６    経過時間管理ステップ、              Ｓ３      子部品登録ステップ、
Ｓ４      プログラムソース更新ステップ、      １０      プログラム開発システム、
１１      記憶領域、                          １１１    識別詞データ、
１１２    プログラムソース、                  １１３    子部品プログラムソース、
１１４    プログラム実行体、                  １２      識別詞管理部、
１３      部分ソース選択部、                  １４      分岐処理追加部、
１５      更新権管理部、                      １６      子部品登録部、
１７      コンパイル部、                      ２１〜２３  端末、
４１      ソース編集部
【図１】
2005165698.tif 000003
【図２】
2005165698.tif 000004
【図３】
2005165698.tif 000005
【図４】
2005165698.tif 000006
【図５】
2005165698.tif 000007
【図６】
2005165698.tif 000008
【図７】
2005165698.tif 000009
【図８】
2005165698.tif 000010