JP4490084B2 - プログラム開発システムにおけるプログラム作成方法 - Google Patents
プログラム開発システムにおけるプログラム作成方法 Download PDFInfo
- Publication number
- JP4490084B2 JP4490084B2 JP2003403897A JP2003403897A JP4490084B2 JP 4490084 B2 JP4490084 B2 JP 4490084B2 JP 2003403897 A JP2003403897 A JP 2003403897A JP 2003403897 A JP2003403897 A JP 2003403897A JP 4490084 B2 JP4490084 B2 JP 4490084B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- program source
- source
- terminal
- description
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Description
そして時には、このようなカスタマイズやバージョンアップの複数の作業が、同じ時期に重複することがある。このように重複するときはそれぞれの仕様を統合して並行して開発が進められる。
図7は、プログラムのカスタマイズやバージョンアップの複数の開発が、同じ時期に重複するときの従来の作業の流れを示す説明図である。
図において仕様71A、71B、71C・・・を同じ時期にリリース(製品化)するときは、それぞれの仕様を調整し統合して仕様を設計する。そして各仕様71A、71B、71C・・・に対応してプログラム設計書72A、72B、72C・・・が作成されると、この設計書に基づいてプログラムを開発し、コンパイルした後にプログラムがリリース(製品化)されるのである。
同じソフトウエアでも仕様の違いによって実行形式のプログラムにすると異なってしまうことが多く、たとえば、特許文献1によるソフトウエア生成装置を用いたときには、各仕様によって内容の異なる複数のプログラムをその仕様の数に応じてそれぞれ生成させなければならなかった。バグ等の障害に対応するためバージョンアップするときは、異なる仕様に基づいて複数回のコンパイルが必要となるだけでなく、コンパイルされた複数個のプログラムを、仕様に応じて配布し、管理する必要もあった。
そこで、本発明の第1の課題は、各ユーザの仕様とリリース時期が異なるプログラムであっても、仕様の違いを意識することがなく、バージョンアップ後のプログラムのコンパイル作業や管理・配布の作業を円滑に行うことができるプログラム開発システムを提供することにある。
そこで、本発明の第2の課題は、プログラムソースの再利用をするときに複数の開発者が並行して円滑に開発を進めることができるプログラム開発システムを提供することにある。
そこで、本発明の第3の課題は、障害対策を施こすときに、プログラムやそのプログラムを再利用したプログラムの仕様の違いを意識することなく、プログラミングやテスト作業を円滑に行うことができるプログラム開発システムを提供することにある。
すなわち、第1乃至第3の課題を解決するために、本発明第1の態様は、特定の記憶領域に記録されたプログラムソースを、複数の端末から読み込みや書き込みをするときに次のステップでプログラムソースを更新することを特徴としている。すなわち、(S1)ある端末の要求に応じて前記プログラムソースを前記記憶領域から呼び出すと同時に、前記端末以外には前記プログラムソースへのアクセスを禁止して更新権を獲得し(更新権獲得ステップ)、(S22)前記プログラムソースのうち、変更もしくは挿入させる部分ソースを、前記端末に指定させ(部分ソース指定ステップ)、(S23)プログラム実行時にある特定の識別詞を認識したときには子部品プログラムソースに記述された処理をさせるソースと、プログラム実行時に前記識別詞を認識しなかったときには前記部分ソースをそのまま処理させるためのソースと、をあわせた分岐処理を、前記部分ソースと入れ替えた後に前記記憶領域に記録し(分岐処理記述ステップ)、(S24)前記プログラムソースへのアクセスの禁止を解除して更新権を返還し(更新権返還ステップ)、(S3)前記端末の要求に応じて前記子部品プログラムソースを前記記憶領域に追加記録する(子部品登録ステップ)。
また、本発明第5の態様は、特定の記憶領域に記録されたプログラムソースを、複数の端末から読み込みや書き込みをするときに、次のステップでプログラムソースを更新することを特徴としている。すなわち、(1)プログラム実行時にある特定の識別詞を認識したときには前記子部品プログラムソースに記述された処理をさせるソースと、前記識別詞を認識しなかったときのソース、をあわせた分岐処理が記述されたプログラムソースと、前記子部品プログラムソースとを前記記憶領域に備え、(2)前記端末の要求に応じて、前記プログラムソースと前記子部品プログラムソースを前記記憶領域から呼び出し、(3)前記プログラムソースのうち、前記子部品プログラムソースに記述された処理をさせるソースを、前記子部品プログラムソースに記述された処理と入れ替えて、前記記憶領域に記録した後に、前記子部品プログラムソースを削除する。
図1において、プログラム開発システム10は、記憶領域11と、識別詞管理部12と、部分ソース選択部13と、更新権管理部15と、分岐処理追加部14と、子部品登録部16と、コンパイル部17を備えている。記憶領域11は、識別詞データ111と、プログラムソース112と、子部品プログラムソース113と、プログラム実行体114を記憶しており、識別詞管理部12が識別詞データ111を管理する。プログラム開発システム10は複数の端末21、22、・・・23と接続されており、記憶領域11に記録されたプログラムソース112や子部品プログラムソース113にアクセスして読み込みや書き込みを行う。
(S1)まず端末21の要求に応じて特定の識別詞を付与する。
(S21)端末21の要求に応じてプログラムソース112を記憶領域11から呼び出し、更新権を獲得する。同時にその端末以外の端末22、23は、プログラムソース112へのアクセスが禁止される。
(S22)プログラムソース112に記述されたソースのうち、変更もしくは挿入させる部分ソースを端末21が指定する。
(S23)プログラム実行時にある特定の識別詞を認識したときには、子部品プログラムソース113に記述された処理をさせるソースと、プログラム実行時に識別詞を認識しなかったときには部分ソースをそのまま処理させるためのソースと、をあわせた分岐処理を、部分ソースと入れ替えた後に記憶領域11に記録する。
(S24)そのプログラムソースへのアクセスの禁止を解除して更新権を返還する。
(S3)端末21の要求に応じて子部品プログラムソース113を記憶領域11に追加記録する。
(S26)なお、更新権獲得ステップS21開始後は、部分ソース指定ステップS22と並行して経過時間を計数し、端末21に通知する。そして所定の時間内にS24を終了しなければ所定の時間を経過したことを端末21に通知する。
識別詞付与ステップS1ではプログラムソース112を修正するに先立ち、利用者が端末21からその仕様を特定する識別詞の発行を識別詞管理部12に要求する。例えば、識別詞管理部12において「仕様A」という符号による識別詞の照会があった場合には識別詞データ111に同一の識別詞があるかどうかを確認し、同一の識別詞が登録されていなければ端末21に要求のあった識別詞の使用を許可するとともに、その識別詞「仕様A」を識別詞データ111に登録する。なお、識別詞の付与にあたっては、識別詞管理部12が任意に識別詞を発生させて端末21の利用者に通知するようにしてもよい。
例えば、「IF,条件式,THEN,処理1,ELSE,処理2,ENDIF」というコーディングが「条件式が真であるときに処理1を行い、そうでないときには処理2を行う」という意味のときは、分岐処置記述内容31は、311,312,313,314および302’で構成されるソースとなる。条件式を、先頭行301’で読み込んだ識別詞が、特定の識別詞すなわち、本実施例では、「仕様A」という識別詞であるか否かとし、「IF,条件式,THEN」を記述した行311に続いて、コンパイル時に子部品プログラムソース113をコピーしてコンパイルさせるようなファイル差込指令312を処理1とし、「ELSE」を記述した行313に続いて、部分ソース302をそのままコピーした302’を処理2とし、挿入する箇所として部分ソース302が指定されたのであれば、処理2は空文のままとする。最後に「ENDIF」を行314に記述したものとなる。
なお識別詞を条件式311に記述するときは端末21から直接入力してもよいが、識別詞管理部12が識別詞データ111を参照した上でこれを端末21に表示させ、表示された複数の識別詞の中からその仕様のために付与された識別詞を選択させるようにしてもよい。
(規則a)ファイル名の上位1桁で子部品プログラムソースをあらわす符号、
(規則b)続く3桁でプログラムソースのファイルを特定する符号、
(規則c)続く2桁で識別詞を特定する符号、
(規則d)続く2桁で子部品プログラムソースの追番をあらわす符号、
という命名規則などを用いることにより、ファイル名を自動的に付与し、さらに、付与した子部品プログラムソースのファイル名は、識別詞データ111の中に関連付けて追加記録させるなどしてもよい。
図4は、第2実施例のプログラム開発システムの構成図であり、図5はそのプログラム開発システムによるプログラム作成の流れを示すフローチャート、図6は変更前と変更後のプログラムソースを示す説明図である。図4のプログラム開発システム10はソース編集部41を備えている。
なお、このような障害対策に関しては、識別詞の付与を必要としない。
ソースコード直接編集判断ステップS21’において、端末21からソース編集を選択しなければ部分ソース指定ステップS22に進み、第1の実施例と同様の処理を行う。
すなわち、変更後のプログラムソース62は変更前のプログラムソース60のうち、変更しないファイル差込指令602以外の部分601、603をそのまま601’、603’とし、ファイル差込指令602の替わりに子部品プログラムソース61を記述したソースとなる。
S2 更新ステップ、
S21 更新権獲得ステップ、
S21’ ソースコード直接編集判断ステップ、
S22 部分ソース選択ステップ、
S23 分岐処理記述ステップ、
S24 更新権返還ステップ、
S24’ 編集継続判断、
S25 ソース編集ステップ、
S26 経過時間管理ステップ、
S3 子部品登録ステップ、
S4 プログラムソース更新ステップ、
10 プログラム開発システム、
11 記憶領域、
111 識別詞データ、
112 プログラムソース、
113 子部品プログラムソース、
114 プログラム実行体、
12 識別詞管理部、
13 部分ソース選択部、
14 分岐処理追加部、
15 更新権管理部、
16 子部品登録部、
17 コンパイル部、
21〜23 端末、
41 ソース編集部
Claims (3)
- 外部の複数の端末と接続され、プログラムソースおよび子部品プログラムソースをシステム内部にある特定の記憶領域に記録し、前記端末から前記プログラムソースおよび前記子部品プログラムソースの読み込みや書き込みを行うプログラム開発システムによるプログラム作成方法であって、
新たな仕様に基づいて前記端末からプログラムソースを更新するときに、
その端末からの更新要求を受けて、更新後のプログラムの仕様に対応する特定の識別詞を生成させて、その識別詞データを前記記憶領域に登録する処理(識別詞付与ステップ)と、
その端末からの更新要求を受けて、その端末以外の端末から前記プログラムソースへのアクセスを制限する処理(排他制限ステップ)と、
前記プログラムソースの更新範囲をその端末に指定させ、指定された前記更新範囲の通知を受ける処理(更新範囲指定ステップ)と、
前記識別詞と前記子部品プログラムソースの組を表す記述、前記更新範囲と同じ記述およびこれらの記述を識別するための記述からなる分岐処理記述を生成させ、前記記憶領域に記憶された前記プログラムソースのうち、前記更新範囲にあたる箇所の記述を、前記分岐処理記述に置き換える処理(分岐処理追記ステップ)と、
前記分岐処理追記ステップの終了後に前記排他制限ステップによるアクセス制限を解除する処理(排他制限解除ステップ)と、
その端末から前記記憶領域に対して、前記識別詞に対応する子部品プログラムソースの書き込みを行わせる処理(子部品プログラムソース記録ステップ)と、
の各処理を実行し、
前記プログラムソースおよび前記子部品プログラムソースの翻訳時に利用者が前記識別詞を指定すると、
前記プログラムソースの記述内容に基づいてプログラムへの翻訳を行う処理と、
その翻訳の途中で前記プログラムソースの中に前記分岐処理記述があったときには、前記指定された識別詞と前記分岐処理記述に対応する識別詞とを比較して、それらの識別詞が同一の場合には、その識別詞に対応する子部品プログラムソースの記述内容に基づいてプログラムへの翻訳を行い、それらの識別詞が同一でない場合には、前記更新範囲の記述内容に基づいてプログラムへの翻訳を行う処理と、
の各処理を実行することを特徴とするプログラム開発システムにおけるプログラム作成方法。 - 新たな仕様に基づいて前記端末からプログラムソースを更新するときに、
前記排他制限ステップを開始してからの時間を計測し、その計測した時間が、所定の時間を超過したときには、前記端末に対して所定の時間を経過した旨を通知する処理(排他制御時間計測ステップ)
をさらに含むことを特徴とする請求項1に記載のプログラム開発システムにおけるプログラム作成方法。 - 前記端末からの要求を受けて、前記記憶領域に記録された前記プログラムソースから前記分岐処理記述を検索し、その分岐処理記述に対応する前記更新範囲に記載された記述内容を、その分岐処理記述に対応する前記子部品プログラムソースに記載された記述内容に置き換えて前記記憶領域に記録すると共に、前記記憶領域に記録された前記分岐処理記述を削除する処理(分岐処理削除ステップ)
をさらに含むことを特徴とする請求項1に記載のプログラム開発システムにおけるプログラム作成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003403897A JP4490084B2 (ja) | 2003-12-03 | 2003-12-03 | プログラム開発システムにおけるプログラム作成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003403897A JP4490084B2 (ja) | 2003-12-03 | 2003-12-03 | プログラム開発システムにおけるプログラム作成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005165698A JP2005165698A (ja) | 2005-06-23 |
JP4490084B2 true JP4490084B2 (ja) | 2010-06-23 |
Family
ID=34727029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003403897A Expired - Fee Related JP4490084B2 (ja) | 2003-12-03 | 2003-12-03 | プログラム開発システムにおけるプログラム作成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4490084B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101599470B1 (ko) * | 2014-06-25 | 2016-03-14 | 주식회사 포워드벤처스 | 소스 배포 장치, 시스템 및 방법, 컴퓨터 판독 가능한 기록 매체 |
KR101593633B1 (ko) * | 2014-06-30 | 2016-02-12 | 주식회사 포워드벤처스 | 소스 배포 장치, 방법, 및 컴퓨터 판독 가능한 기록 매체 |
JP2020526811A (ja) * | 2017-07-07 | 2020-08-31 | エヌチェーン ホールディングス リミテッドNchain Holdings Limited | ブロックチェーンスクリプトにおける制御フロー |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6326730A (ja) * | 1986-07-18 | 1988-02-04 | Fujitsu Ltd | プログラム修正方式 |
JPH07175644A (ja) * | 1993-12-20 | 1995-07-14 | Nec Corp | 分散プログラム開発におけるリビジョン管理装置 |
-
2003
- 2003-12-03 JP JP2003403897A patent/JP4490084B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6326730A (ja) * | 1986-07-18 | 1988-02-04 | Fujitsu Ltd | プログラム修正方式 |
JPH07175644A (ja) * | 1993-12-20 | 1995-07-14 | Nec Corp | 分散プログラム開発におけるリビジョン管理装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2005165698A (ja) | 2005-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101821711B (zh) | 二进制库 | |
US5617533A (en) | System and method for determining whether a software package conforms to packaging rules and requirements | |
US7793256B2 (en) | Methods and systems for supporting and deploying distributed computing components | |
US20080082974A1 (en) | Managing Software Component Version Identifications in a Componentised Software System | |
US7836106B2 (en) | Method, apparatus and computer program product for change management in a data processing environment | |
US20110191750A1 (en) | Methods and systems for displaying distributed computing components using symbols | |
CN111796831B (zh) | 一种多芯片兼容的编译方法和装置 | |
US20070234316A1 (en) | Methods and systems for development of software for complex systems | |
US20050065953A1 (en) | System and method for changing defined elements in a previously compiled program using a description file | |
US20050177828A1 (en) | Restore media build automation | |
US8302087B2 (en) | Quality assurance in software systems through autonomic reliability, availability and serviceability code generation | |
US7624381B1 (en) | Portable detection of start and completion of object construction | |
Stevens | Connecting software build with maintaining consistency between models: towards sound, optimal, and flexible building from megamodels | |
US20050262486A1 (en) | System and method for version control for software development | |
JP4490084B2 (ja) | プログラム開発システムにおけるプログラム作成方法 | |
CN103455288A (zh) | 信息处理装置及控制方法 | |
CN110806891B (zh) | 嵌入式设备软件版本的生成方法及装置 | |
CN109766125B (zh) | 批次间追平冲突的识别方法及装置 | |
Pietsch et al. | Delta-oriented development of model-based software product lines with DeltaEcore and SiPL: A comparison | |
CN115456628A (zh) | 基于区块链的智能合约查看方法、装置、存储介质及设备 | |
JP2004252719A (ja) | データ管理装置及びデータ管理方法及びデータ管理プログラム | |
WO2008015110A2 (en) | Methods, apparatus and computer programs for modelling computer programs | |
JP6798156B2 (ja) | コントローラシステム、そのコントローラ、支援装置 | |
JP2001022560A (ja) | ライブラリ関数バージョンアップ方法 | |
CN116243971B (zh) | 一种基于静态依赖自举的内核无关的模块构建方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20060721 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20060721 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090929 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091124 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091222 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100218 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100330 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100401 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130409 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130409 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140409 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |