JP2008134900A - Source code correction history management device, source code correction history management method, program and recording medium - Google Patents
Source code correction history management device, source code correction history management method, program and recording medium Download PDFInfo
- Publication number
- JP2008134900A JP2008134900A JP2006321682A JP2006321682A JP2008134900A JP 2008134900 A JP2008134900 A JP 2008134900A JP 2006321682 A JP2006321682 A JP 2006321682A JP 2006321682 A JP2006321682 A JP 2006321682A JP 2008134900 A JP2008134900 A JP 2008134900A
- Authority
- JP
- Japan
- Prior art keywords
- correction
- function
- source code
- information
- program
- 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.)
- Withdrawn
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、プログラムソースの修正履歴か管理するソースコード修正履歴管理装置およびソースコード修正履歴管理方法およびプログラムおよび記録媒体に関する。 The present invention relates to a source code correction history management apparatus, a source code correction history management method, a program, and a recording medium for managing a correction history of a program source.
従来、プログラムのバージョン更新等によるソースファイルの修正箇所の履歴を管理することは、過去の修正内容の把握を容易にし、過去の修正と同様の修正を行う場合に過去の修正箇所を参考にできることによって効率的な修正作業が可能となる点で有意義である。 Conventionally, managing the history of revisions of source files due to program version updates, etc. makes it easy to understand past revisions and allows past revisions to be referenced when making revisions similar to past revisions. This is significant in that it enables efficient correction work.
このような利点を生かす方法として、特許文献1には、以下のようなプログラムソースの履歴管理方法が提案されている。
As a method of taking advantage of such advantages,
この方法では、まず修正前と修正後の各プログラムソースを関数単位で比較し、修正前後のプログラムソース間の差分を修正履歴として取得しデータベースに蓄積する。そして、蓄積された修正履歴の中の修正された関数名を、他の修正された関数名との関連を示しつつ識別可能に出力することによって、複数のモジュール、ソースファイル、関数にまたがった修正箇所を容易に把握することができる。これにより、過去の修正と同様の修正を行う場合に該当する過去の修正箇所を速やかに検索して次の修正に役立てることができ、プログラム修正の効率化を図ることができる。
しかしながら、特許文献1では、関連を示して関数毎の修正情報を表示するだけであるため、修正箇所を関数毎に検索することはできても、プログラムが実行される順序との関連は不明であるため、詳細な修正手順を示すことはできなかった。プログラムソースを誰がいつ、どのステップをどの順序で修正したか、それがどの機能に関連する修正であったのか、修正箇所の実行順序はどうなっているのか等といったことは管理できず、詳細な作業状況を共有することができなかった。
However, in
その結果、人がプログラムソースと修正履歴を比較して、プログラムが実行される順に修正箇所を追う事によって、行われる場合が多く非常に煩雑であった。 As a result, it is often complicated because a person compares the program source with the correction history and follows the correction points in the order in which the program is executed.
また、特許文献1の方法では、修正履歴を実行順序で管理していないため、実行順序によって修正箇所を並べる際にプログラムの修正回数が増えた場合等、ソース管理が非常に面倒なものとなってしまう。
Further, in the method of
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、プログラムソースで修正されたステップ毎の詳細な修正履歴をプログラムで実行される順に時系列に並べて表示でき、プログラムの修正手順および修正内容を容易に把握でき、さらに、プログラムソース管理も容易な優れたプログラムソース履歴管理環境を構築する仕組を提供することである。 The present invention has been made to solve the above-described problems. The object of the present invention is to display a detailed correction history for each step corrected by the program source in time series in the order of execution by the program. Another object of the present invention is to provide a mechanism for constructing an excellent program source history management environment in which a program correction procedure and correction contents can be easily grasped and program source management is easy.
本発明は、ソースコードの修正が行われた際に、該修正情報を蓄積する記憶手段と、前記記憶手段に記憶される修正履歴を、前記修正されたソースコードに基づいたプログラムにより実行される順に並べた修正履歴情報として生成する生成手段と、を有することを特徴とする。 According to the present invention, when a source code is corrected, a storage unit for storing the correction information and a correction history stored in the storage unit are executed by a program based on the corrected source code. Generating means for generating correction history information arranged in order.
本発明によれば、プログラムソースで修正されたステップ毎の詳細な修正履歴をプログラムで実行される順に時系列に並べて表示でき、プログラムの修正手順および修正内容を容易に把握でき、さらに、プログラムソース管理も容易な優れたプログラムソース履歴管理環境を構築できる等の効果を奏する。 According to the present invention, the detailed correction history for each step corrected by the program source can be displayed in chronological order in the order of execution by the program, the program correction procedure and the correction contents can be easily grasped, and the program source It has the effect of building an excellent program source history management environment that is easy to manage.
〔第1実施形態〕
図1は、本発明の一実施形態を示すソースコード修正履歴管理装置としての情報処理装置を適用可能なシステムのハードウェア構成の一例を示す図である。
[First Embodiment]
FIG. 1 is a diagram illustrating an example of a hardware configuration of a system to which an information processing apparatus as a source code correction history management apparatus according to an embodiment of the present invention can be applied.
図1において、100はクライアント端末、200はサーバ装置、300は通信ネットワークである。 In FIG. 1, 100 is a client terminal, 200 is a server device, and 300 is a communication network.
図1に示すように、本システムでは、複数のクライアント端末100a〜100cとサーバ装置200が通信ネットワーク300を介して通信可能に接続されている。
As shown in FIG. 1, in this system, a plurality of
クライアント端末100において、102はCPUであり、クライアント端末の中枢となる制御装置であって各種制御を行う。103はRAM(Random Access Memory)であって、プログラムのワークエリアや一時的に保持するデータのバッファとして利用する。
In the
104はROM(Read Only Memory)であって、CPU102が実行するプログラムの保存等を行う。105は外部メモリであって、CPU102が実行する各種プログラムや各データの保持を行うものであり、具体的にはハードディスクドライブやDVDドライブ等である。
A ROM (Read Only Memory) 104 stores a program executed by the
106は入力装置であって、この装置を通じてCPU102にデータなどの入力を行うためのものであり、具体的には、キーボードやマウスである。
107は表示装置であって、具体的にはディスプレイ等である。108は通信インターフェースであって、LANなどの伝送路と端末とを接続する部分である。
サーバ装置200において、202はCPUであり、サーバ装置の中枢となる制御装置であって各種制御を行う。203はRAM(Random Access Memory)であって、プログラムのワークエリアや一時的に保持するデータのバッファとして利用する。
In the
204はROM(Read Only Memory)であって、CPU202が実行するプログラムの保存等を行う。205は外部メモリであって、CPU202が実行する各種プログラムや各データの保持を行うものであり、具体的にはハードディスクドライブやDVDドライブ等である。
A ROM (Read Only Memory) 204 stores a program executed by the
206は入力装置であって、この装置を通じてCPU202にデータなどの入力を行うためのものであり、具体的には、キーボードやマウスである。
207は表示装置であって、具体的にはディスプレイ等である。208は通信インターフェースであって、LANなどの伝送路と端末とを接続する部分である。
201はDBであり、後述するプログラムソース,関数管理テーブル,機能関連ファイル,修正履歴ファイル等を記憶管理するためのものである。なお、DB201は、外部メモリ205内に実装されてもよいし、他の記憶装置内に実装されていてもよい。
A DB 201 stores and manages a program source, a function management table, a function-related file, a modification history file, and the like which will be described later. The DB 201 may be mounted in the
以下、図2〜図16を参照して、本発明の制御処理について説明する。 Hereinafter, the control process of the present invention will be described with reference to FIGS.
まず、図2〜図8を参照して新規プログラムソース作成時の処理について説明する。その後、図9〜図14を参照してプログラムソース修正時の処理について説明する。さらにその後、図15,図16を参照してプログラムソース修正時の処理について説明する。 First, the processing at the time of creating a new program source will be described with reference to FIGS. Thereafter, processing at the time of program source correction will be described with reference to FIGS. Thereafter, the processing at the time of program source correction will be described with reference to FIGS.
図2は、本発明の第1の制御処理の一例を示すシーケンス図であり、プログラムソースを新規作成し、作成後のプログラムを実行することで機能関連ファイルを作成する一連の処理に対応する。なお、図中、S200〜S215はクライアント端末100のCPU102が外部メモリ105からプログラムをRAM103上に読み出して実行することにより実現される処理に対応する。
FIG. 2 is a sequence diagram showing an example of the first control process of the present invention, and corresponds to a series of processes for creating a function-related file by newly creating a program source and executing the created program. In the figure, S200 to S215 correspond to processing realized by the
まず、図3に示す作業パネル1300がクライアント端末100の表示装置107に表示されている状態で、ユーザにより新規作成ボタン1305が押下指示されると、クライアント端末100のCPU102は、プログラムソース(ソースコード)の新規作成処理を実行する。この際、クライアント端末100のCPU102は、作業パネル1300のソースコードウィンドウ1303上でのプログラムソースの作成編集操作を受け付ける。
First, when the user issues an instruction to press the
図3は、本発明における作業パネルの一例を示す模式図である。 FIG. 3 is a schematic view showing an example of a work panel in the present invention.
図3に示すように、作業パネル1300は、選択した機能の機能関連ツリーを表示する機能関連ツリーウィンドウ1301、修正履歴ツリーを表示する修正履歴ツリーウィンドウ1302、ソースコードを作成・表示・修正するソースコードウィンドウ1303、コンソールを表示するコンソールウィンドウ1304を具備している。
As shown in FIG. 3, the
なお、ウィンドウ1301,1302,1303は、新規作成モードでは空白表示される。
Note that the
1305は新規作成ボタンであり、ソースコードを新規作成する際にクライアント端末100の入力装置106により押下指示する。1306は開くボタンであり、作成済のソースコードをオープンする際にクライアント端末100の入力装置106により押下指示する。1307は保存ボタンであり、新規作成又は修正したソースコードを保存する際にクライアント端末100の入力装置106により押下指示する。
また、1308はトリガ関数選択ボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、トリガ関数を選択することができる。
また、1309は作業名設定ボタンであり、後述するプログラムソースの修正処理時に、このボタンをクライアント端末100の入力装置106により押下指示することにより、後述する作業名の設定を行うことができる。
また、1310はコンパイルボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、コンパイル処理を実行することができる。
また、1311は実行ボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、プログラムを実行することができる。
また、1312は検索ボタンであり、トリガ関数名,作業名に基づく検索処理を行う際にクライアント端末100の入力装置106により押下指示する。
以下、図2のシーケンス図の説明に戻る。 Returning to the description of the sequence diagram of FIG.
そして、ユーザがこの作業パネル1300のソースコードウィンドウ1303上でプログラムソースを新規作成した後、保存ボタン1307が指示されると、この指示に応じて、クライアント端末100のCPU102は、S200で作成したソースコードを、サーバ装置200のDB201に登録する(S216)。この時、サーバ装置200のCPU202は、クライアント端末100からのソースコードの登録要求に基づいて、クライアント端末100から受け取ったソースコードをDB201に登録する。
When the user creates a program source on the
次に、ユーザよりトリガ関数選択ボタン1308が指示されると、この指示に応じて、クライアント端末100のCPU102は、トリガ関数選択処理を実行する(S201)。
Next, when the trigger
この際、クライアント端末100のCPU102は、図4に示す新規作成時のトリガ関数選択パネル800を表示装置107に表示し(S202)、トリガ関数の選択を受け付ける。
At this time, the
図4は、本発明においてプログラムソースの新規作成時にトリガ関数を指定するためのトリガ関数選択パネルの一例を示す模式図である。 FIG. 4 is a schematic diagram showing an example of a trigger function selection panel for designating a trigger function when creating a new program source in the present invention.
図4に示すように、トリガ関数選択パネル800には、トリガ関数を指定するためのチェックボックス801と、OKボタン802と、キャンセルボタン803を具備している。
As shown in FIG. 4, the trigger
以下、図2のシーケンス図の説明に戻る。 Returning to the description of the sequence diagram of FIG.
トリガ関数を選択後、ユーザからのコンパイルボタン1310の押下指示(コンパイルまたはビルド指示)に応じて、クライアント端末100のCPU102は、S200で作成したプログラムソースのコンパイル(ビルド)処理を実行する(S203)。この際、クライアント端末100のCPU102は、該コンパイルによってプログラムにエラーコードが無かった場合、プログラムソース作成者のアカウント情報,プログラムソースの全ステップ(行)情報を取得し(S204,S205)、プログラムソース内の全関数にIDを割振り、図6に示す関数管理テーブルを作成する(S206)。
After selecting the trigger function, the
図5は、図2のステップS206で作成される関数管理テーブルの一例を示す模式図である。 FIG. 5 is a schematic diagram showing an example of the function management table created in step S206 of FIG.
図5に示すように、関数管理テーブル1000は、クラス名1001、ユニークな関数ID1002、引数1003、戻り値1004、新規作成日時1005、関連機能1006をデータとして持っている。
As shown in FIG. 5, the function management table 1000 has a
以下、図2のシーケンス図の説明に戻る。 Returning to the description of the sequence diagram of FIG.
そして、クライアント端末100のCPU102は、取得した情報や、関数管理テーブルを、S216で登録したプログラムソースに紐付けてサーバ装置200のDB201に登録する(S207)。この時、サーバ装置200のCPU202は、クライアント端末100からの関数管理テーブル等の登録要求に基づいて、クライアント端末100から受け取った関数管理テーブル等をDB201に登録する。
Then, the
次に、ユーザからの実行ボタン1311の押下指示(ステップS203にて生成されたプログラム実行体の実行指示)に応じて、クライアント端末100のCPU102は、該プログラム実行体を実行する(S208)。この際、クライアント端末100のCPU102は、S201のトリガ関数選択処理において設定(選択)された関数以下の動作情報(関数実行順序)を、図6に示す機能関連ファイルとして作成する(S209)。
Next, in response to a pressing instruction of the
図6は、図2のステップS209で作成される機能関連ファイルの一例を示す模式図である。 FIG. 6 is a schematic diagram illustrating an example of the function-related file created in step S209 of FIG.
図6に示すように、機能関連ファイル1100は、例えばXMLのような階層型データ構造を持つことによって、機能関連ツリー1101のようにトリガ関数によって呼び出される関数の階層構造を保持する。
As shown in FIG. 6, the function-related
以下、図2のシーケンス図の説明に戻る。 Returning to the description of the sequence diagram of FIG.
そして、クライアント端末100のCPU102は、作成した機能関連ファイルを、S216で登録したプログラムソースに紐付けてサーバ装置200のDB201に登録する(S209)。この時、サーバ装置200のCPU202は、クライアント端末100からの機能関連ファイルの登録要求に基づいて、クライアント端末100から受け取った機能関連ファイルをDB201に登録する。
Then, the
次に、クライアント端末100のCPU102は、S216で登録したプログラムソースに対応する関数管理テーブル1000の取得をサーバ装置200のDB201に要求して(S211)、サーバ装置200から返信される関数管理テーブルを取得する(S212)。
Next, the
次に、クライアント端末100のCPU102は、ステップS212で取得した関数管理テーブル1000内の関連機能項目1007に関連機能を登録する(S213)。
Next, the
この関連機能の登録終了後、クライアント端末100のCPU102は、該関連機能が更新された関数管理テーブル1000をDB201に更新登録する(S214)。この時、サーバ装置200のCPU202は、クライアント端末100からの関数管理テーブルの登録要求に基づいて、クライアント端末100から受け取った関数管理テーブルをDB201に更新登録する。
After completing the registration of the related function, the
次に、クライアント端末100のCPU102は、作成された機能関連ファイルをツリー形式で、図3に示した作業パネル1300の機能関連ツリーウィンドウ1301に表示する(S215)。
Next, the
以下、図7のフローチャートを参照して、図2に示したステップS203のコンパイル時の処理を詳細に説明する。 Hereinafter, with reference to the flowchart of FIG. 7, the processing at the time of compilation in step S203 shown in FIG. 2 will be described in detail.
図7は、本発明の第2の制御処理の一例を示すフローチャートであり、図2に示したステップS203のコンパイル時の処理を詳細に説明するフローチャートに対応する。なお、図中、S300〜S312はクライアント端末100のCPU102が外部メモリ105からプログラムをRAM103上に読み出して実行することにより実現される処理に対応する。
FIG. 7 is a flowchart showing an example of the second control process of the present invention, and corresponds to the flowchart for explaining in detail the process at the time of compilation in step S203 shown in FIG. In the figure, S300 to S312 correspond to processing realized by the
まず、ステップS300において、クライアント端末100のCPU102は、図2のS216で登録したプログラムソースのコンパイル処理し、ステップS301において、このコンパイル処理で、エラーが無かったか否かを判定する。
First, in step S300, the
そして、ステップS301で、エラーが有った(エラーコードが返された)と判定した場合には、クライアント端末100のCPU102は、そのまま処理を終了する。
If it is determined in step S301 that an error has occurred (an error code has been returned), the
一方、ステップS301で、エラーが無かった(エラーコードを返さなかった)と判定した場合には、クライアント端末100のCPU102は、ステップS302に処理を進める。
On the other hand, if it is determined in step S301 that there is no error (no error code is returned), the
ステップS302では、クライアント端末100のCPU102は、トリガ関数が設定されているか否かのチェックを行い、トリガ関数が設定されていないと判定した場合には、そのままステップS305に処理を進める。
In step S302, the
一方、ステップS302でトリガ関数が設定されていると判断した場合には、クライアント端末100のCPU102は、ステップS304において、プログラムソースにロギングコードを挿入する。なお、このロギングコードは、トリガ関数、及び、トリガ関数により呼び出される関数内に、開始位置,終了位置を示す情報(例えば・・・や・・・で示し、ロギング関数又はロギング関数により呼び出される関数であることを示す情報を含む),関数名(・・・で示す),関数ID(・・・で示す)をログ出力するロギングコードとする。
On the other hand, if it is determined in step S302 that the trigger function is set, the
次に、ステップS305において、クライアント端末100のCPU102は、プログラムソースをリコンパイルし、ステップS305に処理を進める。
Next, in step S305, the
ステップS305では、クライアント端末100のCPU102は、プログラムソース作成者のアカウント情報を取得する。
In step S305, the
次に、ステップS306において、クライアント端末100のCPU102は、プログラムソースのステップ(行)情報を取得する。
Next, in step S306, the
次に、ステップS307において、クライアント端末100のCPU102は、ステップS306で取得したプログラムソース(1ステップ分)を解析し、ステップS308において、該ステップが関数となるコードであるか否かを判定し、関数となるコードでないと判定した場合には、ステップS306に処理を戻し、次のステップの処理に移行する。
Next, in step S307, the
一方、ステップS308で、このステップが関数となるコードであると判断した場合には、クライアント端末100のCPU102は、ステップS309に処理を進める。
On the other hand, if it is determined in step S308 that this step is a function code, the
次に、ステップS309において、クライアント端末100のCPU102は、ステップS308で判定された関数に関数ID(ユニークな番号)を割り振り、この関数の情報(クラス名,関数名,引数,戻り値,新規作成日等の情報)とともRAM103内に保持する。
Next, in step S309, the
次に、ステップS310において、クライアント端末100のCPU102は、プログラムソースの次のステップ(行)がEOFであるか否かを判定し、EOFでないと判定した場合には、ステップS306に処理を戻し、次のステップの処理に移行する。
Next, in step S310, the
一方、ステップS310で、プログラムソースの次のステップ(行)がEOFであると判定した場合には、クライアント端末100のCPU102は、ステップS311に処理を進める。
On the other hand, if it is determined in step S310 that the next step (row) of the program source is EOF, the
ステップS311では、クライアント端末100のCPU102は、RAM103内に保持された、関数ID,関数の情報(クラス名,関数名,引数,戻り値,新規作成日等の情報)に基づいて、図5に示した関数管理テーブル1000を作成し、ステップS312において、該関数管理テーブル1000を、S300でコンパイルしたプログラムソース(即ち、図2のS216で登録したプログラムソース)に紐付けて、サーバ装置200のDB201に登録処理し、本コンパイル処理を終了する。
In step S311, the
以下、図8のフローチャートを参照して、図2に示したステップS208のプログラム実行時の処理を詳細に説明する。 Hereinafter, with reference to the flowchart of FIG. 8, the processing at the time of program execution in step S208 shown in FIG. 2 will be described in detail.
図8は、本発明の第3の制御処理の一例を示すフローチャートであり、図2に示したステップS208のプログラム実行時の処理を詳細に説明するフローチャートに対応する。なお、図中、S500〜S503はクライアント端末100のCPU102が外部メモリ105からプログラムをRAM103上に読み出して実行することにより実現される処理に対応する。
FIG. 8 is a flowchart showing an example of the third control process of the present invention, and corresponds to the flowchart for explaining in detail the process at the time of executing the program in step S208 shown in FIG. In the figure, S500 to S503 correspond to processing realized by the
まず、ステップS500において、クライアント端末100のCPU102は、図2のS203でコンパイルしたプログラム実行体を実行し、このプログラム実行時に、ロギングコードから機能関連ファイル1100(図6)を外部メモリ105内に生成する(S501)。
First, in step S500, the
そして、ステップS502において、クライアント端末100のCPU102は、ステップS501で生成された機能関連ファイル1100を、S500で実行したプログラム実行体のプログラムソースに紐付けて、サーバ装置200のDB201に登録する。
In step S502, the
次に、ステップS503において、クライアント端末100のCPU102は、関数管理テーブル1000を更新する。詳細には、まずサーバ装置200のDB201から関数管理テーブル1000(図5)を取得する。そして、クライアント端末100のCPU102は、ステップS501で生成した機能関連ファイル1100(図6)内の各関数ID(・・・で示す)と一致する関数管理テーブル1000内の関連機能項目1007に、トリガ関数のID番号を追加する。そして、クライアント端末100のCPU102は、上記関数管理テーブル1000を再びDB201に更新登録する。そして、本プログラム実行時の処理を終了する。
Next, in step S503, the
次に、図9〜図16を参照してプログラムソース修正時の処理について説明する。 Next, processing at the time of program source correction will be described with reference to FIGS.
図9A,図9Bは、本発明の第4の制御処理の一例を示すシーケンス図であり、プログラムソースを修正し、該修正情報及び関数管理テーブル1000及び機能関連ファイル1100から機能毎の修正履歴をプログラム実行順序に沿って表示する一連の処理に対応する。なお、図中、S600〜S625はクライアント端末100のCPU102が外部メモリ105からプログラムをRAM103上に読み出して実行することにより実現される処理に対応する。
9A and 9B are sequence diagrams showing an example of the fourth control processing of the present invention. The program source is corrected, and the correction history for each function is corrected from the correction information, the function management table 1000, and the function related
まず、図3に示す作業パネル1300がクライアント端末100の表示装置107に表示されている状態で、ユーザにより開くボタン1306が押下指示されオープンするプログラムソースが選択されると、クライアント端末100のCPU102は、プログラムソースの新規作成処理を実行する。この際、クライアント端末100のCPU102は、クライアント端末100のCPU102は、修正者であるユーザのアカウント情報をシステムから取得する(S601)。そして、クライアント端末100のCPU102は、選択されたプログラムソースの取得をサーバ装置200のDB201に要求して(S623)、サーバ装置200から返信されるプログラムソースを取得する(S624)。ここで、関数管理テーブル1000,機能関連ファイル1100も一緒に取得するようにしてもよい。そして、クライアント端末100のCPU102は、取得したプログラムソース等を開き作業パネル1300のソースコードウィンドウ1303上に表示する。
First, in the state where the
次に、ユーザからのトリガ関数選択ボタン1308の押下指示に応じて、クライアント端末100のCPU102は、トリガ関数選択処理を実行する(S602)。
Next, the
この際、クライアント端末100のCPU102は、図10に示す修正時のトリガ関数選択パネル1700を表示装置107に表示し(S603)、トリガ関数の選択を受け付ける。
At this time, the
図10は、本発明においてプログラムソースの修正時にトリガ関数を指定するためのトリガ関数選択パネルの一例を示す模式図である。 FIG. 10 is a schematic diagram showing an example of a trigger function selection panel for designating a trigger function when the program source is modified in the present invention.
図10に示すように、トリガ関数選択パネル1700には、トリガ関数を指定するためのチェックボックス1701と、OKボタン1702と、キャンセルボタン1703を具備している。なお、チェックボックス1701でチェック可能な関数は、図2に示したプログラムソース新規作成時にS201でトリガ関数選択パネル800(図4)でトリガ関数として選択された関数に絞られるようにCPU102により制御されているものとする。なお、図2に示したプログラムソース新規作成時にトリガ関数として選択された関数は、機能関連ファイル1100より取得可能である。
As shown in FIG. 10, the trigger
以下、図9のシーケンス図の説明に戻る。 Returning to the description of the sequence diagram of FIG.
トリガ関数を選択後、ユーザからの作業名設定ボタン1309の押下指示に応じて、クライアント端末100のCPU102は、作業名設定処理を実行する(604)。この際、クライアント端末100のCPU102は、図11に示す作業名選択パネル900を表示装置107に表示し(S605)、作業名の設定を受け付ける。
After selecting the trigger function, the
図11は、本発明における作業名選択パネル900の一例を示す模式図である。
FIG. 11 is a schematic diagram showing an example of a work
作業名選択パネル900において、901はコンボボックスであり、プログラムソース修正時に過去の作業名、又は、新規の作業名をクライアント端末100の入力装置106により入力するためのものである。
In the work
902は新規作成ボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、プログラムソースの修正処理に新規の作業名を設定することができる。
903はOKボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、プログラムソースの修正処理に過去の作業名を選択設定することができる。
904はキャンセルボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、作業名の設定をキャンセルすることができる。
以下、図9のシーケンス図の説明に戻る。 Returning to the description of the sequence diagram of FIG.
作業名設定後、設定された作業名をRAM103内に保持し、クライアント端末100のCPU102は、作業パネル1300のソースコードウィンドウ1303上でのプログラムソースの修正操作を受け付け、ユーザはソースコードの編集(修正作業)を行う(S606)。この際、クライアント端末100のCPU102は、内部的に修正箇所情報(ステップS604で設定された作業名,修正後のステップ情報(行番号),修正日時,アカウント情報,バージョン情報,コメント,修正前ソースコード)を修正ラベルとしてプログラムソースの修正箇所に挿入するものとする。
After the work name is set, the set work name is held in the
そして、ユーザがこの作業パネル1300のソースコードウィンドウ1303上でプログラムソースを修正した後、保存ボタン1307が指示されると、この指示に応じて、クライアント端末100のCPU102は、S606で修正したソースコードを、サーバ装置200のDB201に更新登録する(S625)。即ち、ソースコードに対する機能(トリガ関数)毎の一連の修正を一つの作業単位として、該作業単位を識別可能に修正情報を蓄積する(S602で設定した作業名とともにプログラムソース内に蓄積する)。また、これらの情報を、関数名に対応つけてプログラムソース外に蓄積させるように構成してもよい。
Then, after the user corrects the program source on the
なお、S606で、図2に示したプログラムソース新規作成時にS201でトリガ関数として選択された関数が実行された際に呼び出される関数が新たに作成された場合には、CPU102は、その関数に関数IDを付与するとともに、その関数内にロギングコードを挿入する。このロギングコードには、開始位置,終了位置を示す情報,関数名,関数IDをログ出力するロギングコードとする。なお、図2に示したプログラムソース新規作成時にトリガ関数として選択された関数は、機能関連ファイル1100より取得可能である。
In S606, when a function to be called when the function selected as the trigger function in S201 is executed when the program source shown in FIG. 2 is newly created, the
次に、ユーザからのコンパイルボタン1310の押下指示(コンパイルまたはビルド指示)に応じて、クライアント端末100のCPU102は、コンパイル(ビルド)処理を実行する(S607)。この際、クライアント端末100のCPU102は、該コンパイルによってプログラムにエラーコードがあった場合、エラーメッセージをウィンドウ1304に表示し、ユーザにソースコードを再編集させてエラーの修正を行わせる。
Next, the
一方、該コンパイルによってプログラムにエラーコードが無かった場合、クライアント端末100のCPU102は、関数管理テーブル1000の取得をサーバ装置200のDB201に要求して(S608)、サーバ装置200から返信される関数管理テーブル1000を取得する(S609)。
On the other hand, if there is no error code in the program as a result of the compilation, the
次に、クライアント端末100のCPU102は、ステップS606で修正されたプログラムソースに基づいて、ステップS609で取得した関数管理テーブル1000を更新し(S610)、該更新した関数管理テーブルを、サーバ装置200のDB201に更新登録する(S611)。この時、サーバ装置200のCPU202は、クライアント端末100からの関数管理テーブル等の登録要求に基づいて、クライアント端末100から受け取った関数管理テーブル等をDB201に更新登録する。
Next, the
次に、ユーザからの実行ボタン1311の押下指示(ステップS607にて生成されたプログラム実行体の実行指示)に応じて、クライアント端末100のCPU102は、S607でコンパイルしたプログラム実行体を実行する(S612)。この際、クライアント端末100のCPU102は、機能関連ファイル1100の取得をサーバ装置200のDB201に要求して(S613)、サーバ装置200から返信される機能関連ファイル1100を取得する(S614)。
Next, the
そして、クライアント端末100のCPU102は、S602,S603の処理において設定した関数以下の動作情報に変更があった場合、該変更に基づいてS614で取得した機能関連ファイル1100を更新する(S615)。
Then, when there is a change in the operation information below the function set in the processing of S602 and S603, the
次に、クライアント端末100のCPU102は、S615で更新した機能関連ファイル1100を、サーバ装置200のDB201に更新登録する(S616)。この時、サーバ装置200のCPU202は、クライアント端末100からの機能関連ファイル1100の登録要求に基づいて、クライアント端末100から受け取った機能関連ファイル1100をDB201に更新登録する。
Next, the
次に、クライアント端末100のCPU102は、関数管理テーブル1000の取得をサーバ装置200のDB201に要求して(S617)、サーバ装置200から返信される関数管理テーブル1000を取得する(S618)。
Next, the
そして、クライアント端末100のCPU102は、S618で取得した関数管理テーブル1000内関連機能項目1007に変更があった場合、該関数管理テーブル1000内の関連機能項目1007の関連機能を更新・登録する。
Then, when the
そして、クライアント端末100のCPU102は、機能関連ファイル1100に書き込まれた関数のプログラムソースを調べ、プログラムソース内に挿入された修正箇所情報(作業名,修正後のステップ情報(行番号),修正日時,アカウント情報,バージョン情報,コメント,修正前ソースコード)を、作業名毎に修正履歴ファイル1200(図12)に順次書き込むことによって、修正履歴ファイル1200を作成する(S619)。即ち、修正履歴ファイル1200内の修正情報は、機能(トリガ関数)毎に、各機能内では作業毎に、各作業内ではその機能での関数実行順に並べられた情報として生成される。なお、ここで、修正履歴ファイル1200に書き込まれる修正情報は、S602で選択されたトリガ関数に対応するもののみとする。
Then, the
そして、クライアント端末100のCPU102は、S619で作成した修正履歴ファイル1200を、S612で実行したプログラム実行体のプログラムソース及びS603で選択された対応するトリガ関数(機能)に紐付けて、サーバ装置200のDB201に登録する(S620)。この時、サーバ装置200のCPU202は、クライアント端末100からの修正履歴ファイル1200の登録要求に基づいて、クライアント端末100から受け取った修正履歴ファイル1200をDB201に登録する。
Then, the
図12は、図9のステップS619で作成される修正履歴ファイル1200の一例を示す模式図である。
FIG. 12 is a schematic diagram showing an example of the
図12に示すように、修正履歴ファイル1200には、作業名(・・・で示し、複数記載可)毎に、関数毎の修正履歴(・・・で示し、複数記載可)が記載される。
As shown in FIG. 12, the
この関数毎の修正履歴には、関数名(・・・で示す),関数ID(・・・で示す),ステップ(行)毎の修正情報(・・・で示し、複数記載可)が記載される。 In the correction history for each function, a function name (indicated by...), A function ID (indicated by...), And correction information for each step (line) (indicated by. Is done.
ステップ毎の修正情報には、行番号(・・・で示す),修正日時(・・・で示す),アカウント情報(・・・で示す),バージョン情報(・・・で示す),コメント(・・・で示す),修正前ソースコード(・・・で示す)が記載される。 The correction information for each step includes a line number (indicated by...), A correction date and time (indicated by...), Account information (indicated by...), Version information (indicated by. ) And source code before correction (indicated by...) Are described.
なお、アカウント情報(・・・で示す)には、ユーザ名(・・・で示す)が記載される。 In the account information (indicated by...), A user name (indicated by...) Is described.
以下、図9のシーケンス図の説明に戻る。 Returning to the description of the sequence diagram of FIG.
次に、クライアント端末100のCPU102は、ステップS621において、機能ごとの修正履歴を、図12の1201に示すように、関数管理テーブル1000および機能関連ファイル1100に関連付け、ツリー形式で作業パネル1300内の修正履歴ツリーウィンドウ1302に表示する(S622)。そして、プログラムソース修正時の処理を終了する。
Next, in step S621, the
以下、図13のフローチャートを参照して、図9に示したステップS619,S620の修正履歴ファイル作成処理を詳細に説明する。 Hereinafter, the correction history file creation processing in steps S619 and S620 shown in FIG. 9 will be described in detail with reference to the flowchart of FIG.
図13は、本発明の第5の制御処理の一例を示すフローチャートであり、図9に示したステップS619,S620の修正履歴ファイル作成処理を詳細に説明するフローチャートに対応する。なお、図中、S700〜S704はクライアント端末100のCPU102が外部メモリ105からプログラムをRAM103上に読み出して実行することにより実現される処理に対応する。
FIG. 13 is a flowchart showing an example of the fifth control process of the present invention, and corresponds to the flowchart for explaining in detail the correction history file creation process in steps S619 and S620 shown in FIG. In the figure, S700 to S704 correspond to processing realized by the
まず、ステップS700において、クライアント端末100のCPU102は、プログラム実行の操作後、機能関連ファイル1100(図6)を参照し、図9のS602で選択されたトリガ関数及びトリガ関数から呼び出される関数毎に、図9のS606で修正したプログラムソース内の修正ラベルの有無のチェックを行う。
First, in step S700, the
次に、ステップS701において、いずれの関数内に修正ラベルが無いと判定した場合には、クライアント端末100のCPU102は、そのまま処理を終了する。
Next, when it is determined in step S701 that there is no correction label in any function, the
一方、ステップS701で、関数内に修正ラベルが有ると判定した場合には、ステップS702において、クライアント端末100のCPU102は、修正ラベルの有る関数毎に、修正ラベルとしての修正箇所情報(ステップ情報(行番号),修正日時,アカウント情報,バージョン情報,コメント,修正前ソースコード)を、設定された作業情報とともに修正履歴ファイル1200(図12)に順次書き込む。
On the other hand, if it is determined in step S701 that there is a correction label in the function, in step S702, the
次に、ステップS703において、クライアント端末100のCPU102は、他の機能で使用されている関数の処理を実行する。なお、この処理の詳細は、後述する図14に示す。
Next, in step S <b> 703, the
そして、ステップS704において、クライアント端末100のCPU102は、ステップS702,S703で作成した各トリガ関数(機能)に対応する各修正履歴ファイル1200(図12)をサーバ装置200のDB201にそれぞれ更新登録する。
In step S704, the
以下、図14のフローチャートを参照して、図13のステップS703の他の機能で使用されている関数の処理を詳細に説明する。 Hereinafter, with reference to the flowchart of FIG. 14, the processing of the function used by the other function of step S703 of FIG. 13 will be described in detail.
図14は、本発明の第6の制御処理の一例を示すフローチャートであり、図13のステップS703の他の機能で使用されている関数の処理を詳細に説明するフローチャートに対応する。なお、図中、S1601〜1604はクライアント端末100のCPU102が外部メモリ105からプログラムをRAM103上に読み出して実行することにより実現される処理に対応する。
FIG. 14 is a flowchart showing an example of the sixth control process of the present invention, and corresponds to a flowchart for explaining in detail the process of the function used in another function of step S703 in FIG. In the figure, S1601 to 1604 correspond to processing realized by the
まず、ステップS1601において、クライアント端末100のCPU102は、修正部分が関数内か否かを判定し、関数内でないと判定した場合には、そのまま図13のフローチャートに処理を戻す。
First, in step S1601, the
一方、ステップS1601で、修正部分が関数内と判断した場合には、ステップS1602において、クライアント端末100のCPU102は、修正を含む関数の関数IDを取得する。
On the other hand, if it is determined in step S1601 that the corrected portion is within the function, in step S1602, the
次に、ステップS1603において、クライアント端末100のCPU102は、関数管理テーブル1000を参照し、ステップS1602で取得したIDを用いて、修正した関数が当該機能(図9のS602でトリガ関数として設定された機能)以外で使用されているか否かを判定し、使用されていないと判定した場合には、そのまま図13のフローチャートに処理を戻す。
Next, in step S1603, the
一方、ステップS1603で、修正した関数が当該機能(図9のS602でトリガ関数として設定された機能)以外で使用されていと判定した場合には、ステップS1605に処理を進める。 On the other hand, if it is determined in step S1603 that the corrected function is used for other than the function (the function set as the trigger function in S602 in FIG. 9), the process proceeds to step S1605.
ステップS1605では、クライアント端末100のCPU102は、修正した関数を使用している他の機能(トリガ関数)の修正履歴ファイルをサーバ装置200のDB201から取得し、該取得した他の機能(トリガ関数)の修正履歴ファイルをサーバ装置200に対し、当該修正履歴情報を追加して、図13のフローチャートに処理を戻す。
In step S1605, the
以下、図15,図16を参照して、修正履歴参照処理について説明する。 Hereinafter, the correction history reference process will be described with reference to FIGS. 15 and 16.
図15は、本発明の第7の制御処理の一例を示すフローチャートであり、修正履歴参照処理に対応する。なお、図中、S1601〜1604はクライアント端末100のCPU102が外部メモリ105からプログラムをRAM103上に読み出して実行することにより実現される処理に対応する。
FIG. 15 is a flowchart showing an example of the seventh control process of the present invention, and corresponds to the correction history reference process. In the figure, S1601 to 1604 correspond to processing realized by the
まず、図3に示す作業パネル1300がクライアント端末100の表示装置107に表示されている状態で、ユーザにより検索ボタン1312又は開くボタン1306が押下指示されると、クライアント端末100のCPU102は、本フローチャートの処理を開始する。
First, when the user presses the
まず、ステップS1400において、クライアント端末100のCPU102は、ユーザにより検索ボタン1312押下による関数・作業名検索指示があったか否かを判定し、関数・作業名検索指示があったと判定した場合には、クライアント端末100のCPU102は、ステップS1401に処理を進める。
First, in step S1400, the
ステップS1401では、クライアント端末100のCPU102は、図16に示す修正履歴検索パネル1500を表示装置107に表示し、ユーザから入力を受け付ける。
In step S1401, the
図16は、本発明における修正履歴検索パネル1500の一例を示す模式図である。
FIG. 16 is a schematic diagram showing an example of a correction
図16に示すように、修正履歴を参照したいトリガ関数を選択するためのリストボックス1501、作業名を選択するためのリストボックス1502、検索を開始するための検索開始ボタン1503を具備する。なお、修正履歴を検索する際は、トリガ関数または作業名のみでも検索可能である。
As shown in FIG. 16, a
以下、図15のフローチャートの説明に戻る。 Returning to the flowchart of FIG.
そして、ユーザがリストボックス1501,1502から修正したい機能名(トリガ関数名),過去に修正した作業名の両方又はいずれかを選択し、検索開始ボタン1503を押下指示すると、クライアント端末100のCPU102は、この指示に応じて、入力されたトリガ関数名,作業名をキーにして、サーバ装置200内のDB201に登録されている修正履歴ファイル1200(図12),プログラムソース,関数管理テーブル1000(図5),機能関連ファイル(図6)を検索して取得する(S1401)。
When the user selects a function name (trigger function name) to be corrected from the
そして、ステップS1402において、クライアント端末100のCPU102は、ステップS1401で検索して取得した修正履歴ファイル1200(図12),プログラムソース,関数管理テーブル1000(図5),機能関連ファイル(図6)に基づいて、該当する機能のプログラムソース,機能関連ツリー,修正履歴ツリーを、機能関連ツリーウィンドウ1301,修正履歴ツリーウィンドウ1302,プログラムソースウィンドウ1303に表示する。そして、ステップS1405に処理を進める。
In step S1402, the
一方、ステップS1400で、ユーザにより検索ボタン1312押下による関数・作業名検索指示がなかった、即ち、開くボタン1306押下によるファイルオープン指示があったと判定した場合には、クライアント端末100のCPU102は、ステップS1403に処理を進める。
On the other hand, if it is determined in step S1400 that the user has not issued a function / work name search instruction by pressing the
ステップS1403では、クライアント端末100のCPU102は、図示しないダイアログによりオープンするプログラムソースを選択させて、該選択されたプログラムソース、及び、該プログラムソースに紐付けられて登録されている関数管理テーブル1000(図5),機能関連ファイル(図6)をサーバ装置200内のDB201から取得し、該取得した修正履歴ファイル1200(図12),プログラムソース,関数管理テーブル1000(図5),機能関連ファイル(図6)に基づいて、該当する機能のプログラムソース,機能関連ツリー,修正履歴ツリーを、機能関連ツリーウィンドウ1301,修正履歴ツリーウィンドウ1302,プログラムソースウィンドウ1303に表示する。この際、修正履歴ツリーウィンドウ1302には、図17に示すように、修正情報が、機能(トリガ関数)毎に、各機能内では作業毎に、各作業内ではその機能での関数実行順に、ツリー構造に並べて表示出力される。また、各修正情報には、修正後の修正行番号,修正日時情報,修正者情報,バージョン情報,修正時にソース内に記載されたコメント,修正前のソースコードが含まれるものとする。
In step S1403, the
次に、クライアント端末100のCPU102は、ステップS1405に処理を進める。
Next, the
ステップS1405では、クライアント端末100のCPU102は、ユーザが修正履歴ツリーウィンドウ1302上の修正ツリー上で修正履歴を選択したことを検知すると、ステップS1406に処理を進める。なお、修正履歴の選択は、作業名を選択してもよいし、関数名,行番号,修正日時等を選択してもよい。修正履歴として、修正日時を選択した様子を後述する図17の1390に示す。
In step S1405, when the
ステップS1406において、クライアント端末100のCPU102は、現行プログラムソースの修正前ソースコードを修正履歴ファイル1200から取得する。次に、ステップS1407において、クライアント端末100のCPU102は、S1406で取得した修正前ソースコードを現行プログラムソースへ反映し、現行プログラムソースを1つ前の状態に戻す(ロールバックする)。
In step S1406, the
次に、ステップS1408において、クライアント端末100のCPU102は、目的の修正履歴(S1405で選択された修正履歴)の状態まで現行プログラムソースが戻った(ロールバックした)か否かを判定し、まだ、戻っていないと判定した場合には、ステップS1406に処理を戻し、S1406,S1407の処理を繰り返す。
Next, in step S1408, the
一方、ステップS1408で、目的の修正履歴(S1405で選択された修正履歴)の状態まで現行プログラムソースが戻った(ロールバックした)と判定した場合には、クライアント端末100のCPU102は、ステップS1409に処理を進める。
On the other hand, if it is determined in step S1408 that the current program source has returned (rolled back) to the state of the target correction history (the correction history selected in S1405), the
ステップS1409では、クライアント端末100のCPU102は、その時点でのプログラムソース(現行プログラムソース)をプログラムソースウィンドウ1303に表示する。
In step S1409, the
そして、ステップS1410において、クライアント端末100のCPU102は、S1407で反映した修正箇所を全て強調表示(例えば、太字、斜体、異なる書体、アンダーライン、マーカー表示、点滅表示等の強調表示)し、処理を終了する。この様子を、修正履歴を選択した様子を後述する図17の1399に示す。
In step S1410, the
図17は、図3に示した作業パネル1300において修正履歴を参照している様子を示した模式図である。
FIG. 17 is a schematic diagram illustrating a state in which the correction history is referred to in the
以上示したように、プログラムソースで修正されたステップの修正情報に加え、修正者情報および修正日時も含めて修正履歴として蓄積するので、詳細な修正履歴を管理できる。 As described above, in addition to the correction information of the steps corrected by the program source, the correction history including the corrector information and the correction date / time is accumulated, so that the detailed correction history can be managed.
これにより、複数人での作業の際、プログラムソースを誰がいつ、どのステップを修正したかを管理することができるので、作業状況を共有することができる。 As a result, when working with a plurality of people, it is possible to manage who and when and which steps in the program source have been modified, so that the work situation can be shared.
また、過去の修正履歴を表示する際に、修正履歴をシステムの機能のトリガとなる関数ごとに関連名によって視覚的に表示することにより、参照したい過去の修正履歴の探索を速やかに行うことができる。 In addition, when displaying past revision history, the past revision history to be referred to can be quickly searched by visually displaying the revision history for each function that triggers the function of the system by the related name. it can.
さらに修正履歴を表示する際に、複数のモジュール、ソースファイル、関数にまたがった修正コードをプログラムで実行される順に時系列に並べ替えて表示するので、プログラムの修正手順および修正内容の把握が容易になる。これにより、過去の修正と同様の修正を行う場合に、該当する過去の修正箇所を速やかに検索して次の修正に役立てることができる。この結果、プログラムの修正を行う場合に、過去の修正内容の理解とプログラム修正の効率化を図ることができる等の効果を奏する。 In addition, when displaying the revision history, the revision codes across multiple modules, source files, and functions are displayed in chronological order in the order in which they are executed by the program, making it easy to understand the revision procedure and revision details of the program. become. As a result, when the same correction as the past correction is performed, the corresponding past correction portion can be quickly searched and used for the next correction. As a result, when the program is corrected, it is possible to understand past correction contents and improve the efficiency of the program correction.
また、バージョン毎に全てのプログラムソースを保存しておく必要もなく、ソース管理が容易になる等の効果を奏する。 In addition, there is no need to save all program sources for each version, and effects such as easy source management are obtained.
なお、上記実施形態では、サーバ装置200を設け、サーバ装置200内のDB201により、各種データを管理する構成について説明した。しかし、サーバ装置200を設けることなく、クライアント端末100内にDB201を実装して、各種データを管理するように構成してもよい。
In the above-described embodiment, the configuration has been described in which the
また、上記実施形態では、図2に示したプログラムソース作成時の処理,図9に示したプログラムソース修正時の処理において、ソースコードの履歴を管理するトリガ関数(機能)を選択する構成合について説明したが、トリガ関数を選択することなく、全てのトリガ関数(機能)を対象にしてプログラムソース作成時の処理,プログラムソース修正時の処理を行うように構成してもよい。 Further, in the above embodiment, in the processing at the time of creating the program source shown in FIG. 2 and the processing at the time of modifying the program source shown in FIG. As described above, it may be configured to perform processing at the time of program source creation and processing at the time of program source correction for all trigger functions (functions) without selecting a trigger function.
また、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。 Further, the configuration and contents of the various data described above are not limited to this, and it goes without saying that the various data and configurations are configured according to the application and purpose.
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。 Although one embodiment has been described above, the present invention can take an embodiment as, for example, a system, apparatus, method, program, or recording medium, and specifically includes a plurality of devices. The present invention may be applied to a system including a single device.
以下、図18に示すメモリマップを参照して本発明に係るソースコード修正履歴管理装置としての情報処理装置で読み取り可能なデータ処理プログラムの構成について説明する。 The configuration of a data processing program that can be read by the information processing apparatus as the source code correction history management apparatus according to the present invention will be described below with reference to the memory map shown in FIG.
図18は、本発明に係るソースコード修正履歴管理装置としての情報処理装置(クライアント端末100)で読み取り可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。 FIG. 18 is a diagram for explaining a memory map of a recording medium (storage medium) for storing various data processing programs readable by the information processing apparatus (client terminal 100) as the source code correction history management apparatus according to the present invention. .
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。 Although not specifically shown, information for managing a program group stored in the recording medium, for example, version information, creator, etc. is also stored, and information depending on the OS on the program reading side, for example, a program is identified and displayed. Icons may also be stored.
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。 Further, data depending on various programs is also managed in the directory. In addition, when a program or data to be installed is compressed, a program to be decompressed may be stored.
本実施形態における図2,図7,図8,図9A,図9B,図13,図14,図15に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。 The functions shown in FIGS. 2, 7, 8, 9A, 9B, 13, 14, and 15 in this embodiment may be performed by a host computer by a program installed from the outside. In this case, the present invention is applied even when an information group including a program is supplied to the output device from a recording medium such as a CD-ROM, a flash memory, or an FD, or from an external recording medium via a network. Is.
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。 As described above, a recording medium in which a program code of software for realizing the functions of the above-described embodiments is recorded is supplied to the system or apparatus, and the computer (or CPU or MPU) of the system or apparatus is stored in the recording medium. It goes without saying that the object of the present invention can also be achieved by reading and executing the program code.
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。 In this case, the program code itself read from the recording medium realizes the novel function of the present invention, and the recording medium storing the program code constitutes the present invention.
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。 As a recording medium for supplying the program code, for example, a flexible disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, DVD-ROM, magnetic tape, nonvolatile memory card, ROM, EEPROM, A silicon disk or the like can be used.
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) or the like running on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Furthermore, after the program code read from the recording medium is written in a memory provided in a function expansion board inserted in the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the case where the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。 Further, the present invention may be applied to a system composed of a plurality of devices or an apparatus composed of a single device. Needless to say, the present invention can be applied to a case where the present invention is achieved by supplying a program to a system or apparatus. In this case, by reading a recording medium storing a program represented by software for achieving the present invention into the system or apparatus, the system or apparatus can enjoy the effects of the present invention.
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。 Furthermore, by downloading and reading out a program represented by software for achieving the present invention from a server, database, etc. on a network using a communication program, the system or apparatus can enjoy the effects of the present invention. It becomes.
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。 In addition, all the structures which combined each embodiment mentioned above and its modification are also included in this invention.
100 クライアント端末
102 CPU
105 外部メモリ
106 入力装置
107 表示装置
110 機能関連ファイル
200 サーバ装置
200 サーバ装置
201 DB
300 通信ネットワーク
900 作業名選択パネル
1000 関数管理テーブル
1100 機能関連ファイル
1200 修正履歴ファイル
100
105
300
Claims (13)
前記記憶手段に記憶される修正履歴を、前記修正されたソースコードに基づいたプログラムにより実行される順に並べた修正履歴情報として生成する生成手段と、
を有することを特徴とするソースコード修正履歴管理装置。 Storage means for storing the correction information when the source code is corrected;
Generation means for generating correction history stored in the storage means as correction history information arranged in the order of execution by the program based on the corrected source code;
A source code correction history management apparatus comprising:
前記生成手段は、前記記憶手段に記憶される修正履歴を、前記修正情報を機能毎に、各機能内では作業毎に、各作業内ではその機能での関数実行順に並べて出力するための情報を生成する、ことを特徴とする請求項1又は2に記載のソースコード修正履歴管理装置。 The storage means stores a series of corrections for each function of the source code as one work unit, and stores correction information so that the work unit can be identified,
The generating means includes information for outputting the correction history stored in the storage means by arranging the correction information for each function, for each work within each function, and within each work in the order of function execution in that function. The source code correction history management apparatus according to claim 1, wherein the source code correction history management apparatus generates the source code correction history management apparatus.
前記生成手段は、前記機能選択手段に選択された機能に対応する機能に対して、機能毎に、前記修正情報を各機能内では作業毎に、各作業内ではその機能での関数実行順に、ツリー構造に並べて出力するための情報を生成する、ことを特徴とする請求項2乃至4のいずれかに記載のソースコード修正履歴管理装置。 A function selection means for selecting one or a plurality of functions from correction information for each of a plurality of functions is provided,
The generating means, for each function corresponding to the function selected by the function selecting means, the correction information for each work in each function, in each work in the order of function execution in that function, 5. The source code correction history management apparatus according to claim 2, wherein information for arranging and outputting in a tree structure is generated.
前記生成手段により生成された修正履歴情報を表示する表示手段と、
前記表示手段により表示された修正履歴情報からいずれかの修正情報を選択させる選択手段と、
前記選択手段により選択された修正情報に対応する修正前の状態まで順次遡って修正情報内の修正前のコードを前記修正されたソースコードに対して適用するロールバック手段と、
を有することを特徴とする請求項1乃至6のいずれかに記載のソースコード修正履歴管理装置。 The correction information includes a code before correction,
Display means for displaying the correction history information generated by the generating means;
Selecting means for selecting any correction information from the correction history information displayed by the display means;
Rollback means for sequentially applying the code before correction in the correction information to the corrected source code sequentially going back to the state before correction corresponding to the correction information selected by the selection means;
The source code correction history management apparatus according to claim 1, comprising:
前記追加手段によりロギングコードが追加されたソースコードから生成されるプログラムの実行時に、前記ロギングコードによりログ出力される関数識別情報の出力順を関数の実行順序として取得する実行順序取得手段と、を有し、
前記生成手段は、前記記憶手段に記憶される修正履歴を、前記実行順序取得手段により取得されたプログラムの実行順に並べた修正履歴情報として生成する、ことを特徴とする請求項1乃至8のいずれかに記載のソースコード修正履歴管理装置。 An additional means for adding a logging code for logging function identification information for identifying the function when the execution of the function described in the source code is disclosed in the generated source code;
Execution order acquisition means for acquiring the output order of the function identification information output by the logging code as the execution order of the function when executing the program generated from the source code to which the logging code is added by the adding means; Have
9. The generation unit according to claim 1, wherein the generation unit generates the correction history stored in the storage unit as correction history information arranged in an execution order of the programs acquired by the execution order acquisition unit. The source code correction history management device according to the above.
前記記憶手段に記憶される修正履歴を、前記修正されたソースコードに基づいたから取得されるプログラム内の関数実行順に並べた修正履歴情報として生成する生成ステップと、
を有することを特徴とするソースコード修正履歴管理方法。 An accumulation step for accumulating the modification information in the storage means when the source code is modified;
A generation step of generating correction history stored in the storage means as correction history information arranged in the order of function execution in a program acquired from the correction source code based on the correction history;
A source code correction history management method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006321682A JP2008134900A (en) | 2006-11-29 | 2006-11-29 | Source code correction history management device, source code correction history management method, program and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006321682A JP2008134900A (en) | 2006-11-29 | 2006-11-29 | Source code correction history management device, source code correction history management method, program and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008134900A true JP2008134900A (en) | 2008-06-12 |
Family
ID=39559707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006321682A Withdrawn JP2008134900A (en) | 2006-11-29 | 2006-11-29 | Source code correction history management device, source code correction history management method, program and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008134900A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013131002A (en) * | 2011-12-21 | 2013-07-04 | Internatl Business Mach Corp <Ibm> | Method for retrieving change content in source code from change history data, computer thereof, and computer program |
WO2018073865A1 (en) * | 2016-10-17 | 2018-04-26 | 三菱電機株式会社 | Program development assistance device, program development assistance method, program development assistance program, and recording medium |
-
2006
- 2006-11-29 JP JP2006321682A patent/JP2008134900A/en not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013131002A (en) * | 2011-12-21 | 2013-07-04 | Internatl Business Mach Corp <Ibm> | Method for retrieving change content in source code from change history data, computer thereof, and computer program |
WO2018073865A1 (en) * | 2016-10-17 | 2018-04-26 | 三菱電機株式会社 | Program development assistance device, program development assistance method, program development assistance program, and recording medium |
JP6355861B1 (en) * | 2016-10-17 | 2018-07-11 | 三菱電機株式会社 | Program development support apparatus, program development support method, program development support program, and recording medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0915427A2 (en) | Method and apparatus for displaying version and configuration information, and computer-readable medium storing display program | |
JP2010033373A (en) | Software configuration management method and system | |
CN112965785A (en) | Container-based micro-service application development method and development platform | |
AU2015211152B2 (en) | Batch generation of links to documents based on document name and page content matching | |
JP2009205190A (en) | Automatic software configuration device | |
CN110110072A (en) | A kind of method, system, terminal and storage medium generating interactive electronic handbook | |
EP1768034A1 (en) | Document processing device and document processing method | |
EP1744255A1 (en) | Document processing device and document processing method | |
JP2008134900A (en) | Source code correction history management device, source code correction history management method, program and recording medium | |
CN112596706A (en) | Patterned code generation method, device and computer readable storage medium | |
JP2003030016A (en) | Method and system for converting data, and processing program therefor | |
Samuel et al. | UrbanCo2Fab: Comprehension of concurrent viewpoints of urban fabric based on GIT | |
JP3754438B2 (en) | Information management method, information management program, and information management apparatus | |
JP4889593B2 (en) | Configuration management system | |
US20030220939A1 (en) | Information processing system, information processing method, and information processing program | |
US7979476B2 (en) | Information processing apparatus, control method therefor, program, and storage medium | |
JP2007004239A (en) | Design-support device, design-support method, and program | |
CN117453189B (en) | Method, system, equipment and medium for layered development of application | |
CN116167728B (en) | BIM project information linkage realization method and device | |
CN106528183B (en) | Method and device for creating control and computer program | |
JP3861780B2 (en) | CAD generation management system and generation management program | |
US20200356879A1 (en) | Information processing device, control method of information processing device, and storage medium | |
JP2008210040A (en) | Conversion program | |
JPH056291A (en) | Method for preparing and managing test resources | |
JP2012118812A (en) | Information processing apparatus, control method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080403 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20100202 |