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 PDF

Info

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
Application number
JP2006321682A
Other languages
Japanese (ja)
Inventor
Akira Kimura
亮 木村
Hironobu Saito
礼展 斉藤
Hiroko Takiguchi
裕子 滝口
Satoko Takeda
聡子 武田
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.)
Canon IT Solutions Inc
Original Assignee
Canon Software Inc
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 Canon Software Inc filed Critical Canon Software Inc
Priority to JP2006321682A priority Critical patent/JP2008134900A/en
Publication of JP2008134900A publication Critical patent/JP2008134900A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To manage a correction history in detail including corrector information and correction dates in addition to correction information of steps corrected in a program source, and to simultaneously display correction steps in time series in execution order in a program to easily obtain correction contents and a correction procedure of the program. <P>SOLUTION: When a source code is corrected, a CPU 102 of a client terminal 100 accumulates the correction information in the source code, generates the correction history stored in the source code as correction history information displayed in the execution order in the program based on the corrected source code. <P>COPYRIGHT: (C)2008,JPO&INPIT

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, Patent Document 1 proposes the following program source history management method.

この方法では、まず修正前と修正後の各プログラムソースを関数単位で比較し、修正前後のプログラムソース間の差分を修正履歴として取得しデータベースに蓄積する。そして、蓄積された修正履歴の中の修正された関数名を、他の修正された関数名との関連を示しつつ識別可能に出力することによって、複数のモジュール、ソースファイル、関数にまたがった修正箇所を容易に把握することができる。これにより、過去の修正と同様の修正を行う場合に該当する過去の修正箇所を速やかに検索して次の修正に役立てることができ、プログラム修正の効率化を図ることができる。
特開2001−256043号公報
In this method, each program source before and after correction is compared in function units, and a difference between program sources before and after correction is acquired as a correction history and stored in a database. Then, the modified function name in the accumulated modification history is output in an identifiable manner while showing the relation with the other modified function names, and the modification across multiple modules, source files, and functions is performed. The location can be easily grasped. As a result, when the same correction as the past correction is performed, the past correction portion corresponding to the correction can be quickly searched and used for the next correction, and the efficiency of the program correction can be improved.
JP 2001-256043 A

しかしながら、特許文献1では、関連を示して関数毎の修正情報を表示するだけであるため、修正箇所を関数毎に検索することはできても、プログラムが実行される順序との関連は不明であるため、詳細な修正手順を示すことはできなかった。プログラムソースを誰がいつ、どのステップをどの順序で修正したか、それがどの機能に関連する修正であったのか、修正箇所の実行順序はどうなっているのか等といったことは管理できず、詳細な作業状況を共有することができなかった。   However, in Patent Document 1, only the correction information for each function is displayed by indicating the relationship, so that the correction location can be searched for each function, but the relationship with the order in which the programs are executed is unknown. Because of this, detailed correction procedures could not be shown. It is not possible to manage the details of who has modified the program source, in what order, in which order, what function it was related to, and what is the execution order of the modified parts. I couldn't share my work.

その結果、人がプログラムソースと修正履歴を比較して、プログラムが実行される順に修正箇所を追う事によって、行われる場合が多く非常に煩雑であった。   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 Patent Document 1, since the correction history is not managed in the execution order, source management becomes very troublesome, for example, when the number of program corrections increases when arranging correction parts according to the execution order. End up.

本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、プログラムソースで修正されたステップ毎の詳細な修正履歴をプログラムで実行される順に時系列に並べて表示でき、プログラムの修正手順および修正内容を容易に把握でき、さらに、プログラムソース管理も容易な優れたプログラムソース履歴管理環境を構築する仕組を提供することである。   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 client terminals 100 a to 100 c and a server device 200 are connected via a communication network 300 so as to be communicable.

クライアント端末100において、102はCPUであり、クライアント端末の中枢となる制御装置であって各種制御を行う。103はRAM(Random Access Memory)であって、プログラムのワークエリアや一時的に保持するデータのバッファとして利用する。   In the client terminal 100, reference numeral 102 denotes a CPU, which is a control device serving as the center of the client terminal and performs various controls. Reference numeral 103 denotes a RAM (Random Access Memory), which is used as a program work area or a buffer for temporarily holding data.

104はROM(Read Only Memory)であって、CPU102が実行するプログラムの保存等を行う。105は外部メモリであって、CPU102が実行する各種プログラムや各データの保持を行うものであり、具体的にはハードディスクドライブやDVDドライブ等である。   A ROM (Read Only Memory) 104 stores a program executed by the CPU 102. Reference numeral 105 denotes an external memory that holds various programs executed by the CPU 102 and data, and specifically includes a hard disk drive, a DVD drive, and the like.

106は入力装置であって、この装置を通じてCPU102にデータなどの入力を行うためのものであり、具体的には、キーボードやマウスである。   Reference numeral 106 denotes an input device for inputting data and the like to the CPU 102 through this device, and specifically, a keyboard and a mouse.

107は表示装置であって、具体的にはディスプレイ等である。108は通信インターフェースであって、LANなどの伝送路と端末とを接続する部分である。   Reference numeral 107 denotes a display device, specifically a display or the like. A communication interface 108 connects a transmission line such as a LAN and a terminal.

サーバ装置200において、202はCPUであり、サーバ装置の中枢となる制御装置であって各種制御を行う。203はRAM(Random Access Memory)であって、プログラムのワークエリアや一時的に保持するデータのバッファとして利用する。   In the server device 200, 202 is a CPU, which is a control device serving as the center of the server device and performs various controls. Reference numeral 203 denotes a RAM (Random Access Memory), which is used as a work area for a program and a buffer for temporarily stored data.

204はROM(Read Only Memory)であって、CPU202が実行するプログラムの保存等を行う。205は外部メモリであって、CPU202が実行する各種プログラムや各データの保持を行うものであり、具体的にはハードディスクドライブやDVDドライブ等である。   A ROM (Read Only Memory) 204 stores a program executed by the CPU 202. Reference numeral 205 denotes an external memory, which holds various programs executed by the CPU 202 and data, and specifically includes a hard disk drive and a DVD drive.

206は入力装置であって、この装置を通じてCPU202にデータなどの入力を行うためのものであり、具体的には、キーボードやマウスである。   Reference numeral 206 denotes an input device for inputting data and the like to the CPU 202 through this device, and specifically, a keyboard and a mouse.

207は表示装置であって、具体的にはディスプレイ等である。208は通信インターフェースであって、LANなどの伝送路と端末とを接続する部分である。   Reference numeral 207 denotes a display device, specifically a display or the like. Reference numeral 208 denotes a communication interface which connects a transmission line such as a LAN and a terminal.

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 external memory 205 or may be mounted in another storage device.

以下、図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 CPU 102 of the client terminal 100 reading a program from the external memory 105 onto the RAM 103 and executing it.

まず、図3に示す作業パネル1300がクライアント端末100の表示装置107に表示されている状態で、ユーザにより新規作成ボタン1305が押下指示されると、クライアント端末100のCPU102は、プログラムソース(ソースコード)の新規作成処理を実行する。この際、クライアント端末100のCPU102は、作業パネル1300のソースコードウィンドウ1303上でのプログラムソースの作成編集操作を受け付ける。   First, when the user issues an instruction to press the new creation button 1305 while the work panel 1300 shown in FIG. 3 is displayed on the display device 107 of the client terminal 100, the CPU 102 of the client terminal 100 displays the program source (source code). ) New creation processing is executed. At this time, the CPU 102 of the client terminal 100 accepts a program source creation / edit operation on the source code window 1303 of the work panel 1300.

図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 work panel 1300 includes a function-related tree window 1301 that displays a function-related tree of a selected function, a correction history tree window 1302 that displays a correction history tree, and a source that creates, displays, and corrects source code. A code window 1303 and a console window 1304 for displaying a console are provided.

なお、ウィンドウ1301,1302,1303は、新規作成モードでは空白表示される。   Note that the windows 1301, 1302, and 1303 are displayed blank in the new creation mode.

1305は新規作成ボタンであり、ソースコードを新規作成する際にクライアント端末100の入力装置106により押下指示する。1306は開くボタンであり、作成済のソースコードをオープンする際にクライアント端末100の入力装置106により押下指示する。1307は保存ボタンであり、新規作成又は修正したソースコードを保存する際にクライアント端末100の入力装置106により押下指示する。   Reference numeral 1305 denotes a new creation button, which is pressed by the input device 106 of the client terminal 100 when creating a new source code. Reference numeral 1306 denotes an open button, which is pressed by the input device 106 of the client terminal 100 when opening the created source code. A save button 1307 is instructed to be pressed by the input device 106 of the client terminal 100 when the newly created or modified source code is saved.

また、1308はトリガ関数選択ボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、トリガ関数を選択することができる。   Reference numeral 1308 denotes a trigger function selection button. By pressing this button with the input device 106 of the client terminal 100, a trigger function can be selected.

また、1309は作業名設定ボタンであり、後述するプログラムソースの修正処理時に、このボタンをクライアント端末100の入力装置106により押下指示することにより、後述する作業名の設定を行うことができる。   Reference numeral 1309 denotes a work name setting button. When a program source is corrected, which will be described later, an instruction to press this button is given by the input device 106 of the client terminal 100, whereby a work name described later can be set.

また、1310はコンパイルボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、コンパイル処理を実行することができる。   Reference numeral 1310 denotes a compile button. When the button is pressed by the input device 106 of the client terminal 100, the compile process can be executed.

また、1311は実行ボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、プログラムを実行することができる。   Reference numeral 1311 denotes an execution button. By instructing this button to be pressed by the input device 106 of the client terminal 100, the program can be executed.

また、1312は検索ボタンであり、トリガ関数名,作業名に基づく検索処理を行う際にクライアント端末100の入力装置106により押下指示する。   Reference numeral 1312 denotes a search button, which is pressed by the input device 106 of the client terminal 100 when performing search processing based on the trigger function name and work name.

以下、図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 source code window 1303 of the work panel 1300 and then designates a save button 1307, the CPU 102 of the client terminal 100 responds to the instruction by the source created in S200. The code is registered in the DB 201 of the server device 200 (S216). At this time, the CPU 202 of the server device 200 registers the source code received from the client terminal 100 in the DB 201 based on the source code registration request from the client terminal 100.

次に、ユーザよりトリガ関数選択ボタン1308が指示されると、この指示に応じて、クライアント端末100のCPU102は、トリガ関数選択処理を実行する(S201)。   Next, when the trigger function selection button 1308 is instructed by the user, the CPU 102 of the client terminal 100 executes trigger function selection processing in response to this instruction (S201).

この際、クライアント端末100のCPU102は、図4に示す新規作成時のトリガ関数選択パネル800を表示装置107に表示し(S202)、トリガ関数の選択を受け付ける。   At this time, the CPU 102 of the client terminal 100 displays the trigger function selection panel 800 at the time of new creation shown in FIG. 4 on the display device 107 (S202), and accepts the selection of the trigger function.

図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 function selection panel 800 includes a check box 801 for specifying a trigger function, an OK button 802, and a cancel button 803.

以下、図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 CPU 102 of the client terminal 100 executes a compile (build) process of the program source created in S200 in response to a press instruction (compile or build instruction) of the compile button 1310 from the user (S203). . At this time, if there is no error code in the program by the compilation, the CPU 102 of the client terminal 100 acquires account information of the program source creator and all step (line) information of the program source (S204, S205). IDs are assigned to all the functions in FIG. 6 to create a function management table shown in FIG. 6 (S206).

図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 class name 1001, a unique function ID 1002, an argument 1003, a return value 1004, a newly created date and time 1005, and a related function 1006 as data.

以下、図2のシーケンス図の説明に戻る。   Returning to the description of the sequence diagram of FIG.

そして、クライアント端末100のCPU102は、取得した情報や、関数管理テーブルを、S216で登録したプログラムソースに紐付けてサーバ装置200のDB201に登録する(S207)。この時、サーバ装置200のCPU202は、クライアント端末100からの関数管理テーブル等の登録要求に基づいて、クライアント端末100から受け取った関数管理テーブル等をDB201に登録する。   Then, the CPU 102 of the client terminal 100 registers the acquired information and the function management table in the DB 201 of the server device 200 in association with the program source registered in S216 (S207). At this time, the CPU 202 of the server apparatus 200 registers the function management table and the like received from the client terminal 100 in the DB 201 based on the registration request for the function management table and the like from the client terminal 100.

次に、ユーザからの実行ボタン1311の押下指示(ステップS203にて生成されたプログラム実行体の実行指示)に応じて、クライアント端末100のCPU102は、該プログラム実行体を実行する(S208)。この際、クライアント端末100のCPU102は、S201のトリガ関数選択処理において設定(選択)された関数以下の動作情報(関数実行順序)を、図6に示す機能関連ファイルとして作成する(S209)。   Next, in response to a pressing instruction of the execution button 1311 from the user (execution instruction for the program execution body generated in step S203), the CPU 102 of the client terminal 100 executes the program execution body (S208). At this time, the CPU 102 of the client terminal 100 creates operation information (function execution order) below the function set (selected) in the trigger function selection process of S201 as a function-related file shown in FIG. 6 (S209).

図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 file 1100 has a hierarchical data structure such as XML, for example, and holds a hierarchical structure of functions called by the trigger function like a function-related tree 1101.

以下、図2のシーケンス図の説明に戻る。   Returning to the description of the sequence diagram of FIG.

そして、クライアント端末100のCPU102は、作成した機能関連ファイルを、S216で登録したプログラムソースに紐付けてサーバ装置200のDB201に登録する(S209)。この時、サーバ装置200のCPU202は、クライアント端末100からの機能関連ファイルの登録要求に基づいて、クライアント端末100から受け取った機能関連ファイルをDB201に登録する。   Then, the CPU 102 of the client terminal 100 registers the created function-related file in the DB 201 of the server device 200 in association with the program source registered in S216 (S209). At this time, the CPU 202 of the server device 200 registers the function-related file received from the client terminal 100 in the DB 201 based on the function-related file registration request from the client terminal 100.

次に、クライアント端末100のCPU102は、S216で登録したプログラムソースに対応する関数管理テーブル1000の取得をサーバ装置200のDB201に要求して(S211)、サーバ装置200から返信される関数管理テーブルを取得する(S212)。   Next, the CPU 102 of the client terminal 100 requests the DB 201 of the server apparatus 200 to acquire the function management table 1000 corresponding to the program source registered in S216 (S211), and returns a function management table returned from the server apparatus 200. Obtain (S212).

次に、クライアント端末100のCPU102は、ステップS212で取得した関数管理テーブル1000内の関連機能項目1007に関連機能を登録する(S213)。   Next, the CPU 102 of the client terminal 100 registers the related function in the related function item 1007 in the function management table 1000 acquired in step S212 (S213).

この関連機能の登録終了後、クライアント端末100のCPU102は、該関連機能が更新された関数管理テーブル1000をDB201に更新登録する(S214)。この時、サーバ装置200のCPU202は、クライアント端末100からの関数管理テーブルの登録要求に基づいて、クライアント端末100から受け取った関数管理テーブルをDB201に更新登録する。   After completing the registration of the related function, the CPU 102 of the client terminal 100 updates and registers the function management table 1000 in which the related function is updated in the DB 201 (S214). At this time, the CPU 202 of the server apparatus 200 updates and registers the function management table received from the client terminal 100 in the DB 201 based on the function management table registration request from the client terminal 100.

次に、クライアント端末100のCPU102は、作成された機能関連ファイルをツリー形式で、図3に示した作業パネル1300の機能関連ツリーウィンドウ1301に表示する(S215)。   Next, the CPU 102 of the client terminal 100 displays the created function-related file in a tree format on the function-related tree window 1301 of the work panel 1300 shown in FIG. 3 (S215).

以下、図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 CPU 102 of the client terminal 100 reading out the program from the external memory 105 to the RAM 103 and executing it.

まず、ステップS300において、クライアント端末100のCPU102は、図2のS216で登録したプログラムソースのコンパイル処理し、ステップS301において、このコンパイル処理で、エラーが無かったか否かを判定する。   First, in step S300, the CPU 102 of the client terminal 100 compiles the program source registered in S216 in FIG. 2, and in step S301, determines whether there is no error in the compile process.

そして、ステップS301で、エラーが有った(エラーコードが返された)と判定した場合には、クライアント端末100のCPU102は、そのまま処理を終了する。   If it is determined in step S301 that an error has occurred (an error code has been returned), the CPU 102 of the client terminal 100 ends the process as it is.

一方、ステップ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 CPU 102 of the client terminal 100 proceeds to step S302.

ステップS302では、クライアント端末100のCPU102は、トリガ関数が設定されているか否かのチェックを行い、トリガ関数が設定されていないと判定した場合には、そのままステップS305に処理を進める。   In step S302, the CPU 102 of the client terminal 100 checks whether or not the trigger function is set. If it is determined that the trigger function is not set, the process proceeds to step S305 as it is.

一方、ステップS302でトリガ関数が設定されていると判断した場合には、クライアント端末100のCPU102は、ステップS304において、プログラムソースにロギングコードを挿入する。なお、このロギングコードは、トリガ関数、及び、トリガ関数により呼び出される関数内に、開始位置,終了位置を示す情報(例えば・・・や・・・で示し、ロギング関数又はロギング関数により呼び出される関数であることを示す情報を含む),関数名(・・・で示す),関数ID(・・・で示す)をログ出力するロギングコードとする。   On the other hand, if it is determined in step S302 that the trigger function is set, the CPU 102 of the client terminal 100 inserts a logging code into the program source in step S304. This logging code is a trigger function and information indicating the start position and end position in the function called by the trigger function (for example, indicated by... Logging information that includes a function name (indicated by...) And a function ID (indicated by.

次に、ステップS305において、クライアント端末100のCPU102は、プログラムソースをリコンパイルし、ステップS305に処理を進める。   Next, in step S305, the CPU 102 of the client terminal 100 recompiles the program source and proceeds to step S305.

ステップS305では、クライアント端末100のCPU102は、プログラムソース作成者のアカウント情報を取得する。   In step S305, the CPU 102 of the client terminal 100 acquires account information of the program source creator.

次に、ステップS306において、クライアント端末100のCPU102は、プログラムソースのステップ(行)情報を取得する。   Next, in step S306, the CPU 102 of the client terminal 100 acquires step (row) information of the program source.

次に、ステップS307において、クライアント端末100のCPU102は、ステップS306で取得したプログラムソース(1ステップ分)を解析し、ステップS308において、該ステップが関数となるコードであるか否かを判定し、関数となるコードでないと判定した場合には、ステップS306に処理を戻し、次のステップの処理に移行する。   Next, in step S307, the CPU 102 of the client terminal 100 analyzes the program source (for one step) acquired in step S306, and in step S308, determines whether or not the step is a function code. If it is determined that the code is not a function, the process returns to step S306, and the process proceeds to the next step.

一方、ステップS308で、このステップが関数となるコードであると判断した場合には、クライアント端末100のCPU102は、ステップS309に処理を進める。   On the other hand, if it is determined in step S308 that this step is a function code, the CPU 102 of the client terminal 100 proceeds to step S309.

次に、ステップS309において、クライアント端末100のCPU102は、ステップS308で判定された関数に関数ID(ユニークな番号)を割り振り、この関数の情報(クラス名,関数名,引数,戻り値,新規作成日等の情報)とともRAM103内に保持する。   Next, in step S309, the CPU 102 of the client terminal 100 assigns a function ID (unique number) to the function determined in step S308, and information on this function (class name, function name, argument, return value, newly created). (Information such as date) is stored in the RAM 103.

次に、ステップS310において、クライアント端末100のCPU102は、プログラムソースの次のステップ(行)がEOFであるか否かを判定し、EOFでないと判定した場合には、ステップS306に処理を戻し、次のステップの処理に移行する。   Next, in step S310, the CPU 102 of the client terminal 100 determines whether or not the next step (row) of the program source is EOF. If it is determined that the program source is not EOF, the process returns to step S306. The process proceeds to the next step.

一方、ステップ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 CPU 102 of the client terminal 100 advances the processing to step S311.

ステップS311では、クライアント端末100のCPU102は、RAM103内に保持された、関数ID,関数の情報(クラス名,関数名,引数,戻り値,新規作成日等の情報)に基づいて、図5に示した関数管理テーブル1000を作成し、ステップS312において、該関数管理テーブル1000を、S300でコンパイルしたプログラムソース(即ち、図2のS216で登録したプログラムソース)に紐付けて、サーバ装置200のDB201に登録処理し、本コンパイル処理を終了する。   In step S311, the CPU 102 of the client terminal 100 uses the function ID and the function information (class name, function name, argument, return value, new creation date, etc. information) stored in the RAM 103 as shown in FIG. The function management table 1000 shown is created, and in step S312, the function management table 1000 is linked to the program source compiled in S300 (that is, the program source registered in S216 of FIG. 2), and the DB 201 of the server apparatus 200 is linked. Registration processing, and this compilation processing ends.

以下、図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 CPU 102 of the client terminal 100 reading a program from the external memory 105 onto the RAM 103 and executing it.

まず、ステップS500において、クライアント端末100のCPU102は、図2のS203でコンパイルしたプログラム実行体を実行し、このプログラム実行時に、ロギングコードから機能関連ファイル1100(図6)を外部メモリ105内に生成する(S501)。   First, in step S500, the CPU 102 of the client terminal 100 executes the program execution body compiled in S203 of FIG. 2, and generates a function-related file 1100 (FIG. 6) from the logging code in the external memory 105 when the program is executed. (S501).

そして、ステップS502において、クライアント端末100のCPU102は、ステップS501で生成された機能関連ファイル1100を、S500で実行したプログラム実行体のプログラムソースに紐付けて、サーバ装置200のDB201に登録する。   In step S502, the CPU 102 of the client terminal 100 registers the function-related file 1100 generated in step S501 in the DB 201 of the server device 200 in association with the program source of the program execution body executed in S500.

次に、ステップ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 CPU 102 of the client terminal 100 updates the function management table 1000. Specifically, first, the function management table 1000 (FIG. 5) is acquired from the DB 201 of the server device 200. Then, the CPU 102 of the client terminal 100 triggers the related function item 1007 in the function management table 1000 that matches each function ID (indicated by...) In the function related file 1100 (FIG. 6) generated in step S501. Add function ID number. Then, the CPU 102 of the client terminal 100 updates and registers the function management table 1000 in the DB 201 again. And the process at the time of this program execution is complete | finished.

次に、図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 file 1100. Corresponds to a series of processes displayed in the program execution order. In the figure, S600 to S625 correspond to processing realized by the CPU 102 of the client terminal 100 reading a program from the external memory 105 onto the RAM 103 and executing it.

まず、図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 work panel 1300 shown in FIG. 3 is displayed on the display device 107 of the client terminal 100, when the user presses the open button 1306 and selects the program source to be opened, the CPU 102 of the client terminal 100 Then, a new program source creation process is executed. At this time, the CPU 102 of the client terminal 100 acquires the account information of the user who is the corrector from the system (S601). Then, the CPU 102 of the client terminal 100 requests the DB 201 of the server device 200 to acquire the selected program source (S623), and acquires the program source returned from the server device 200 (S624). Here, the function management table 1000 and the function related file 1100 may be acquired together. Then, the CPU 102 of the client terminal 100 opens the acquired program source or the like and displays it on the source code window 1303 of the work panel 1300.

次に、ユーザからのトリガ関数選択ボタン1308の押下指示に応じて、クライアント端末100のCPU102は、トリガ関数選択処理を実行する(S602)。   Next, the CPU 102 of the client terminal 100 executes a trigger function selection process in response to a pressing instruction of the trigger function selection button 1308 from the user (S602).

この際、クライアント端末100のCPU102は、図10に示す修正時のトリガ関数選択パネル1700を表示装置107に表示し(S603)、トリガ関数の選択を受け付ける。   At this time, the CPU 102 of the client terminal 100 displays the trigger function selection panel 1700 at the time of correction shown in FIG. 10 on the display device 107 (S603), and accepts the selection of the trigger function.

図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 function selection panel 1700 includes a check box 1701 for specifying a trigger function, an OK button 1702, and a cancel button 1703. The functions that can be checked in the check box 1701 are controlled by the CPU 102 so as to be narrowed down to functions selected as trigger functions in the trigger function selection panel 800 (FIG. 4) in S201 when a new program source shown in FIG. 2 is created. It shall be. Note that the function selected as the trigger function when creating the new program source shown in FIG. 2 can be acquired from the function-related file 1100.

以下、図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 CPU 102 of the client terminal 100 executes a work name setting process in response to a pressing instruction of the work name setting button 1309 from the user (604). At this time, the CPU 102 of the client terminal 100 displays the work name selection panel 900 shown in FIG. 11 on the display device 107 (S605), and accepts the setting of the work name.

図11は、本発明における作業名選択パネル900の一例を示す模式図である。   FIG. 11 is a schematic diagram showing an example of a work name selection panel 900 in the present invention.

作業名選択パネル900において、901はコンボボックスであり、プログラムソース修正時に過去の作業名、又は、新規の作業名をクライアント端末100の入力装置106により入力するためのものである。   In the work name selection panel 900, reference numeral 901 denotes a combo box for inputting a past work name or a new work name with the input device 106 of the client terminal 100 when the program source is corrected.

902は新規作成ボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、プログラムソースの修正処理に新規の作業名を設定することができる。   Reference numeral 902 denotes a new creation button. By instructing this button to be pressed by the input device 106 of the client terminal 100, a new work name can be set for the program source correction process.

903はOKボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、プログラムソースの修正処理に過去の作業名を選択設定することができる。   Reference numeral 903 denotes an OK button. By instructing this button to be pressed by the input device 106 of the client terminal 100, a past work name can be selected and set for the program source correction process.

904はキャンセルボタンであり、このボタンをクライアント端末100の入力装置106により押下指示することにより、作業名の設定をキャンセルすることができる。   Reference numeral 904 denotes a cancel button. By instructing this button to be pressed by the input device 106 of the client terminal 100, the setting of the work name can be canceled.

以下、図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 RAM 103, and the CPU 102 of the client terminal 100 accepts a program source correction operation on the source code window 1303 of the work panel 1300, and the user edits the source code ( (Correction work) is performed (S606). At this time, the CPU 102 of the client terminal 100 internally modifies the correction location information (work name set in step S604, step information after correction (line number), correction date / time, account information, version information, comment, source before correction) Code) is inserted as a correction label in the correction part of the program source.

そして、ユーザがこの作業パネル1300のソースコードウィンドウ1303上でプログラムソースを修正した後、保存ボタン1307が指示されると、この指示に応じて、クライアント端末100のCPU102は、S606で修正したソースコードを、サーバ装置200のDB201に更新登録する(S625)。即ち、ソースコードに対する機能(トリガ関数)毎の一連の修正を一つの作業単位として、該作業単位を識別可能に修正情報を蓄積する(S602で設定した作業名とともにプログラムソース内に蓄積する)。また、これらの情報を、関数名に対応つけてプログラムソース外に蓄積させるように構成してもよい。   Then, after the user corrects the program source on the source code window 1303 of the work panel 1300 and the save button 1307 is instructed, the CPU 102 of the client terminal 100 responds to the instruction and the source code corrected in S606. Is updated and registered in the DB 201 of the server apparatus 200 (S625). That is, a series of corrections for each function (trigger function) for the source code is taken as one work unit, and correction information is stored so that the work unit can be identified (stored in the program source together with the work name set in S602). Further, such information may be configured to be stored outside the program source in association with the function name.

なお、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 CPU 102 adds a function to the function. An ID is given and a logging code is inserted in the function. The logging code is a logging code that outputs information indicating a start position and an end position, a function name, and a function ID. Note that the function selected as the trigger function when creating the new program source shown in FIG. 2 can be acquired from the function-related file 1100.

次に、ユーザからのコンパイルボタン1310の押下指示(コンパイルまたはビルド指示)に応じて、クライアント端末100のCPU102は、コンパイル(ビルド)処理を実行する(S607)。この際、クライアント端末100のCPU102は、該コンパイルによってプログラムにエラーコードがあった場合、エラーメッセージをウィンドウ1304に表示し、ユーザにソースコードを再編集させてエラーの修正を行わせる。   Next, the CPU 102 of the client terminal 100 executes a compile (build) process in response to a pressing instruction (compile or build instruction) on the compile button 1310 from the user (S607). At this time, if there is an error code in the program as a result of the compilation, the CPU 102 of the client terminal 100 displays an error message on the window 1304 and causes the user to re-edit the source code to correct the error.

一方、該コンパイルによってプログラムにエラーコードが無かった場合、クライアント端末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 CPU 102 of the client terminal 100 requests the DB 201 of the server apparatus 200 to acquire the function management table 1000 (S608) and returns the function management returned from the server apparatus 200. The table 1000 is acquired (S609).

次に、クライアント端末100のCPU102は、ステップS606で修正されたプログラムソースに基づいて、ステップS609で取得した関数管理テーブル1000を更新し(S610)、該更新した関数管理テーブルを、サーバ装置200のDB201に更新登録する(S611)。この時、サーバ装置200のCPU202は、クライアント端末100からの関数管理テーブル等の登録要求に基づいて、クライアント端末100から受け取った関数管理テーブル等をDB201に更新登録する。   Next, the CPU 102 of the client terminal 100 updates the function management table 1000 acquired in step S609 based on the program source corrected in step S606 (S610), and the updated function management table is updated in the server device 200. Update registration is performed in the DB 201 (S611). At this time, the CPU 202 of the server device 200 updates and registers the function management table and the like received from the client terminal 100 in the DB 201 based on the registration request for the function management table and the like from the client terminal 100.

次に、ユーザからの実行ボタン1311の押下指示(ステップS607にて生成されたプログラム実行体の実行指示)に応じて、クライアント端末100のCPU102は、S607でコンパイルしたプログラム実行体を実行する(S612)。この際、クライアント端末100のCPU102は、機能関連ファイル1100の取得をサーバ装置200のDB201に要求して(S613)、サーバ装置200から返信される機能関連ファイル1100を取得する(S614)。   Next, the CPU 102 of the client terminal 100 executes the program execution body compiled in S607 in response to a pressing instruction of the execution button 1311 from the user (execution instruction of the program execution body generated in step S607) (S612). ). At this time, the CPU 102 of the client terminal 100 requests the DB 201 of the server device 200 to acquire the function-related file 1100 (S613), and acquires the function-related file 1100 returned from the server device 200 (S614).

そして、クライアント端末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 CPU 102 of the client terminal 100 updates the function related file 1100 acquired in S614 based on the change (S615).

次に、クライアント端末100のCPU102は、S615で更新した機能関連ファイル1100を、サーバ装置200のDB201に更新登録する(S616)。この時、サーバ装置200のCPU202は、クライアント端末100からの機能関連ファイル1100の登録要求に基づいて、クライアント端末100から受け取った機能関連ファイル1100をDB201に更新登録する。   Next, the CPU 102 of the client terminal 100 updates and registers the function-related file 1100 updated in S615 in the DB 201 of the server device 200 (S616). At this time, the CPU 202 of the server device 200 updates and registers the function-related file 1100 received from the client terminal 100 in the DB 201 based on the registration request for the function-related file 1100 from the client terminal 100.

次に、クライアント端末100のCPU102は、関数管理テーブル1000の取得をサーバ装置200のDB201に要求して(S617)、サーバ装置200から返信される関数管理テーブル1000を取得する(S618)。   Next, the CPU 102 of the client terminal 100 requests the DB 201 of the server apparatus 200 to acquire the function management table 1000 (S617), and acquires the function management table 1000 returned from the server apparatus 200 (S618).

そして、クライアント端末100のCPU102は、S618で取得した関数管理テーブル1000内関連機能項目1007に変更があった場合、該関数管理テーブル1000内の関連機能項目1007の関連機能を更新・登録する。   Then, when the related function item 1007 in the function management table 1000 acquired in S618 is changed, the CPU 102 of the client terminal 100 updates / registers the related function of the related function item 1007 in the function management table 1000.

そして、クライアント端末100のCPU102は、機能関連ファイル1100に書き込まれた関数のプログラムソースを調べ、プログラムソース内に挿入された修正箇所情報(作業名,修正後のステップ情報(行番号),修正日時,アカウント情報,バージョン情報,コメント,修正前ソースコード)を、作業名毎に修正履歴ファイル1200(図12)に順次書き込むことによって、修正履歴ファイル1200を作成する(S619)。即ち、修正履歴ファイル1200内の修正情報は、機能(トリガ関数)毎に、各機能内では作業毎に、各作業内ではその機能での関数実行順に並べられた情報として生成される。なお、ここで、修正履歴ファイル1200に書き込まれる修正情報は、S602で選択されたトリガ関数に対応するもののみとする。   Then, the CPU 102 of the client terminal 100 examines the program source of the function written in the function-related file 1100, and the correction location information (work name, corrected step information (line number), correction date and time) inserted in the program source. , Account information, version information, comments, source code before correction) are sequentially written in the correction history file 1200 (FIG. 12) for each work name, thereby creating the correction history file 1200 (S619). That is, the correction information in the correction history file 1200 is generated as information arranged for each function (trigger function), for each work within each function, and within each work in the order of function execution in that function. Here, the correction information written in the correction history file 1200 is only information corresponding to the trigger function selected in S602.

そして、クライアント端末100のCPU102は、S619で作成した修正履歴ファイル1200を、S612で実行したプログラム実行体のプログラムソース及びS603で選択された対応するトリガ関数(機能)に紐付けて、サーバ装置200のDB201に登録する(S620)。この時、サーバ装置200のCPU202は、クライアント端末100からの修正履歴ファイル1200の登録要求に基づいて、クライアント端末100から受け取った修正履歴ファイル1200をDB201に登録する。   Then, the CPU 102 of the client terminal 100 associates the modification history file 1200 created in S619 with the program source of the program execution body executed in S612 and the corresponding trigger function (function) selected in S603. Is registered in the DB 201 (S620). At this time, the CPU 202 of the server device 200 registers the modification history file 1200 received from the client terminal 100 in the DB 201 based on the registration request for the modification history file 1200 from the client terminal 100.

図12は、図9のステップS619で作成される修正履歴ファイル1200の一例を示す模式図である。   FIG. 12 is a schematic diagram showing an example of the correction history file 1200 created in step S619 of FIG.

図12に示すように、修正履歴ファイル1200には、作業名(・・・で示し、複数記載可)毎に、関数毎の修正履歴(・・・で示し、複数記載可)が記載される。   As shown in FIG. 12, the correction history file 1200 describes the correction history for each function (indicated by..., And can be described in plural) for each work name (indicated by. .

この関数毎の修正履歴には、関数名(・・・で示す),関数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 CPU 102 of the client terminal 100 associates the correction history for each function with the function management table 1000 and the function related file 1100 as shown by 1201 in FIG. The information is displayed on the correction history tree window 1302 (S622). And the process at the time of program source correction is complete | finished.

以下、図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 CPU 102 of the client terminal 100 reading a program from the external memory 105 onto the RAM 103 and executing it.

まず、ステップS700において、クライアント端末100のCPU102は、プログラム実行の操作後、機能関連ファイル1100(図6)を参照し、図9のS602で選択されたトリガ関数及びトリガ関数から呼び出される関数毎に、図9のS606で修正したプログラムソース内の修正ラベルの有無のチェックを行う。   First, in step S700, the CPU 102 of the client terminal 100 refers to the function-related file 1100 (FIG. 6) after the program execution operation, and for each function called from the trigger function and the trigger function selected in S602 of FIG. The presence / absence of a correction label in the program source corrected in S606 of FIG. 9 is checked.

次に、ステップS701において、いずれの関数内に修正ラベルが無いと判定した場合には、クライアント端末100のCPU102は、そのまま処理を終了する。   Next, when it is determined in step S701 that there is no correction label in any function, the CPU 102 of the client terminal 100 ends the process as it is.

一方、ステップ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 CPU 102 of the client terminal 100 sets correction part information (step information (step information (step information)) for each function having the correction label. Line number), modification date / time, account information, version information, comment, and source code before modification) are sequentially written in the modification history file 1200 (FIG. 12) together with the set work information.

次に、ステップS703において、クライアント端末100のCPU102は、他の機能で使用されている関数の処理を実行する。なお、この処理の詳細は、後述する図14に示す。   Next, in step S <b> 703, the CPU 102 of the client terminal 100 executes processing of functions used for other functions. Details of this processing are shown in FIG.

そして、ステップS704において、クライアント端末100のCPU102は、ステップS702,S703で作成した各トリガ関数(機能)に対応する各修正履歴ファイル1200(図12)をサーバ装置200のDB201にそれぞれ更新登録する。   In step S704, the CPU 102 of the client terminal 100 updates and registers each correction history file 1200 (FIG. 12) corresponding to each trigger function (function) created in steps S702 and S703 in the DB 201 of the server apparatus 200.

以下、図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 CPU 102 of the client terminal 100 reading out the program from the external memory 105 to the RAM 103 and executing it.

まず、ステップS1601において、クライアント端末100のCPU102は、修正部分が関数内か否かを判定し、関数内でないと判定した場合には、そのまま図13のフローチャートに処理を戻す。   First, in step S1601, the CPU 102 of the client terminal 100 determines whether or not the correction portion is within the function. If it is determined that the correction portion is not within the function, the process directly returns to the flowchart of FIG.

一方、ステップ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 CPU 102 of the client terminal 100 acquires the function ID of the function including the correction.

次に、ステップS1603において、クライアント端末100のCPU102は、関数管理テーブル1000を参照し、ステップS1602で取得したIDを用いて、修正した関数が当該機能(図9のS602でトリガ関数として設定された機能)以外で使用されているか否かを判定し、使用されていないと判定した場合には、そのまま図13のフローチャートに処理を戻す。   Next, in step S1603, the CPU 102 of the client terminal 100 refers to the function management table 1000 and uses the ID acquired in step S1602, and the corrected function is set as the trigger function in S602 in FIG. It is determined whether or not it is used for anything other than (Function), and if it is determined that it is not being used, the process returns to the flowchart of FIG.

一方、ステップ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 CPU 102 of the client terminal 100 acquires a correction history file of another function (trigger function) using the corrected function from the DB 201 of the server apparatus 200, and the acquired other function (trigger function). The correction history information is added to the server device 200, and the process returns to the flowchart of FIG.

以下、図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 CPU 102 of the client terminal 100 reading out the program from the external memory 105 to the RAM 103 and executing it.

まず、図3に示す作業パネル1300がクライアント端末100の表示装置107に表示されている状態で、ユーザにより検索ボタン1312又は開くボタン1306が押下指示されると、クライアント端末100のCPU102は、本フローチャートの処理を開始する。   First, when the user presses the search button 1312 or the open button 1306 while the work panel 1300 shown in FIG. 3 is displayed on the display device 107 of the client terminal 100, the CPU 102 of the client terminal 100 performs this flowchart. Start processing.

まず、ステップS1400において、クライアント端末100のCPU102は、ユーザにより検索ボタン1312押下による関数・作業名検索指示があったか否かを判定し、関数・作業名検索指示があったと判定した場合には、クライアント端末100のCPU102は、ステップS1401に処理を進める。   First, in step S1400, the CPU 102 of the client terminal 100 determines whether or not there is a function / work name search instruction by pressing the search button 1312 by the user. The CPU 102 of the terminal 100 advances the process to step S1401.

ステップS1401では、クライアント端末100のCPU102は、図16に示す修正履歴検索パネル1500を表示装置107に表示し、ユーザから入力を受け付ける。   In step S1401, the CPU 102 of the client terminal 100 displays the correction history search panel 1500 shown in FIG. 16 on the display device 107 and accepts input from the user.

図16は、本発明における修正履歴検索パネル1500の一例を示す模式図である。   FIG. 16 is a schematic diagram showing an example of a correction history search panel 1500 according to the present invention.

図16に示すように、修正履歴を参照したいトリガ関数を選択するためのリストボックス1501、作業名を選択するためのリストボックス1502、検索を開始するための検索開始ボタン1503を具備する。なお、修正履歴を検索する際は、トリガ関数または作業名のみでも検索可能である。   As shown in FIG. 16, a list box 1501 for selecting a trigger function to refer to the correction history, a list box 1502 for selecting a work name, and a search start button 1503 for starting a search are provided. When searching for the correction history, it is possible to search using only the trigger function or the work name.

以下、図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 list boxes 1501 and 1502 and / or a work name corrected in the past, and presses the search start button 1503, the CPU 102 of the client terminal 100 In response to this instruction, using the input trigger function name and work name as keys, the modification history file 1200 (FIG. 12), program source, and function management table 1000 (FIG. 12) registered in the DB 201 in the server apparatus 200. 5) The function related file (FIG. 6) is searched and acquired (S1401).

そして、ステップS1402において、クライアント端末100のCPU102は、ステップS1401で検索して取得した修正履歴ファイル1200(図12),プログラムソース,関数管理テーブル1000(図5),機能関連ファイル(図6)に基づいて、該当する機能のプログラムソース,機能関連ツリー,修正履歴ツリーを、機能関連ツリーウィンドウ1301,修正履歴ツリーウィンドウ1302,プログラムソースウィンドウ1303に表示する。そして、ステップS1405に処理を進める。   In step S1402, the CPU 102 of the client terminal 100 stores the correction history file 1200 (FIG. 12), the program source, the function management table 1000 (FIG. 5), and the function related file (FIG. 6) acquired by searching in step S1401. Based on this, the program source, the function related tree, and the correction history tree of the corresponding function are displayed in the function related tree window 1301, the correction history tree window 1302, and the program source window 1303. Then, the process proceeds to step S1405.

一方、ステップ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 search button 1312, that is, a file open instruction by pressing the open button 1306, the CPU 102 of the client terminal 100 performs the step The process proceeds to S1403.

ステップS1403では、クライアント端末100のCPU102は、図示しないダイアログによりオープンするプログラムソースを選択させて、該選択されたプログラムソース、及び、該プログラムソースに紐付けられて登録されている関数管理テーブル1000(図5),機能関連ファイル(図6)をサーバ装置200内のDB201から取得し、該取得した修正履歴ファイル1200(図12),プログラムソース,関数管理テーブル1000(図5),機能関連ファイル(図6)に基づいて、該当する機能のプログラムソース,機能関連ツリー,修正履歴ツリーを、機能関連ツリーウィンドウ1301,修正履歴ツリーウィンドウ1302,プログラムソースウィンドウ1303に表示する。この際、修正履歴ツリーウィンドウ1302には、図17に示すように、修正情報が、機能(トリガ関数)毎に、各機能内では作業毎に、各作業内ではその機能での関数実行順に、ツリー構造に並べて表示出力される。また、各修正情報には、修正後の修正行番号,修正日時情報,修正者情報,バージョン情報,修正時にソース内に記載されたコメント,修正前のソースコードが含まれるものとする。   In step S1403, the CPU 102 of the client terminal 100 selects a program source to be opened by a dialog (not shown), and the selected program source and the function management table 1000 (registered in association with the program source). 5), a function-related file (FIG. 6) is acquired from the DB 201 in the server apparatus 200, and the acquired correction history file 1200 (FIG. 12), program source, function management table 1000 (FIG. 5), function-related file ( Based on FIG. 6), the program source, the function related tree, and the correction history tree of the corresponding function are displayed in the function related tree window 1301, the correction history tree window 1302, and the program source window 1303. At this time, as shown in FIG. 17, the correction history tree window 1302 includes correction information for each function (trigger function), for each work within each function, and within each work in the order of function execution in that function. Displayed in a tree structure. Each correction information includes a corrected line number after correction, correction date and time information, corrector information, version information, comments written in the source at the time of correction, and source code before correction.

次に、クライアント端末100のCPU102は、ステップS1405に処理を進める。   Next, the CPU 102 of the client terminal 100 advances the processing to step S1405.

ステップS1405では、クライアント端末100のCPU102は、ユーザが修正履歴ツリーウィンドウ1302上の修正ツリー上で修正履歴を選択したことを検知すると、ステップS1406に処理を進める。なお、修正履歴の選択は、作業名を選択してもよいし、関数名,行番号,修正日時等を選択してもよい。修正履歴として、修正日時を選択した様子を後述する図17の1390に示す。   In step S1405, when the CPU 102 of the client terminal 100 detects that the user has selected a correction history on the correction tree on the correction history tree window 1302, the process proceeds to step S1406. The correction history may be selected by selecting a work name, a function name, a line number, a correction date and time, or the like. A state in which the correction date and time is selected as the correction history is shown in 1390 of FIG.

ステップS1406において、クライアント端末100のCPU102は、現行プログラムソースの修正前ソースコードを修正履歴ファイル1200から取得する。次に、ステップS1407において、クライアント端末100のCPU102は、S1406で取得した修正前ソースコードを現行プログラムソースへ反映し、現行プログラムソースを1つ前の状態に戻す(ロールバックする)。   In step S1406, the CPU 102 of the client terminal 100 acquires the source code before correction of the current program source from the correction history file 1200. Next, in step S1407, the CPU 102 of the client terminal 100 reflects the uncorrected source code acquired in S1406 to the current program source, and returns (rolls back) the current program source to the previous state.

次に、ステップS1408において、クライアント端末100のCPU102は、目的の修正履歴(S1405で選択された修正履歴)の状態まで現行プログラムソースが戻った(ロールバックした)か否かを判定し、まだ、戻っていないと判定した場合には、ステップS1406に処理を戻し、S1406,S1407の処理を繰り返す。   Next, in step S1408, the CPU 102 of the client terminal 100 determines whether the current program source has returned (rolled back) to the state of the target correction history (the correction history selected in S1405). If it is determined that it has not returned, the process returns to step S1406, and the processes of S1406 and S1407 are repeated.

一方、ステップ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 CPU 102 of the client terminal 100 proceeds to step S1409. Proceed with the process.

ステップS1409では、クライアント端末100のCPU102は、その時点でのプログラムソース(現行プログラムソース)をプログラムソースウィンドウ1303に表示する。   In step S1409, the CPU 102 of the client terminal 100 displays the program source (current program source) at that time in the program source window 1303.

そして、ステップS1410において、クライアント端末100のCPU102は、S1407で反映した修正箇所を全て強調表示(例えば、太字、斜体、異なる書体、アンダーライン、マーカー表示、点滅表示等の強調表示)し、処理を終了する。この様子を、修正履歴を選択した様子を後述する図17の1399に示す。   In step S1410, the CPU 102 of the client terminal 100 highlights all the correction points reflected in S1407 (for example, bold, italic, different typefaces, underline, marker display, blinking display, etc.) and performs processing. finish. This state is shown by 1399 in FIG. 17 to be described later when the correction history is selected.

図17は、図3に示した作業パネル1300において修正履歴を参照している様子を示した模式図である。   FIG. 17 is a schematic diagram illustrating a state in which the correction history is referred to in the work panel 1300 illustrated in FIG.

以上示したように、プログラムソースで修正されたステップの修正情報に加え、修正者情報および修正日時も含めて修正履歴として蓄積するので、詳細な修正履歴を管理できる。   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 server device 200 is provided and various data are managed by the DB 201 in the server device 200. However, without providing the server device 200, the DB 201 may be mounted in the client terminal 100 to manage various data.

また、上記実施形態では、図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.

本発明の一実施形態を示すソースコード修正履歴管理装置としての情報処理装置を適用可能なシステムのハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions of the system which can apply the information processing apparatus as a source code correction log | history management apparatus which shows one Embodiment of this invention. 本発明の第1の制御処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the 1st control processing of this invention. 本発明における作業パネルの一例を示す模式図である。It is a schematic diagram which shows an example of the work panel in this invention. 本発明においてプログラムソースの新規作成時にトリガ関数を指定するためのトリガ関数選択パネルの一例を示す模式図である。It is a schematic diagram which shows an example of the trigger function selection panel for designating a trigger function when creating a new program source in the present invention. 図2のステップS206で作成される関数管理テーブルの一例を示す模式図である。It is a schematic diagram which shows an example of the function management table produced | generated by step S206 of FIG. 図2のステップS209で作成される機能関連ファイルの一例を示す模式図である。It is a schematic diagram which shows an example of the function related file created by step S209 of FIG. 本発明の第2の制御処理の一例を示すフローチャートである。 フローチャートである。It is a flowchart which shows an example of the 2nd control processing of this invention. It is a flowchart. 本発明の第3の制御処理の一例を示すフローチャートである。It is a flowchart which shows an example of the 3rd control processing of this invention. 本発明の第4の制御処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the 4th control processing of this invention. 本発明の第4の制御処理の一例を示すシーケンス図である。It is a sequence diagram which shows an example of the 4th control processing of this invention. 本発明においてプログラムソースの修正時にトリガ関数を指定するためのトリガ関数選択パネルの一例を示す模式図である。It is a schematic diagram which shows an example of the trigger function selection panel for designating a trigger function at the time of correction of a program source in this invention. 本発明における作業名選択パネル900の一例を示す模式図である。It is a schematic diagram which shows an example of the work name selection panel 900 in this invention. 図9のステップS619で作成される修正履歴ファイル1200の一例を示す模式図である。It is a schematic diagram which shows an example of the correction log | history file 1200 produced by step S619 of FIG. 本発明の第5の制御処理の一例を示すフローチャートである。 フローチャートである。It is a flowchart which shows an example of the 5th control processing of this invention. It is a flowchart. 本発明の第6の制御処理の一例を示すフローチャートである。 フローチャートである。It is a flowchart which shows an example of the 6th control processing of this invention. It is a flowchart. 本発明の第7の制御処理の一例を示すフローチャートである。It is a flowchart which shows an example of the 7th control processing of this invention. 本発明における修正履歴検索パネル1500の一例を示す模式図である。It is a schematic diagram which shows an example of the correction log | history search panel 1500 in this invention. 図3に示した作業パネル1300において修正履歴を参照している様子を示した模式図である。It is the schematic diagram which showed a mode that the correction log | history was referred in the work panel 1300 shown in FIG. 本発明に係るソースコード修正履歴管理装置としての情報処理装置(クライアント端末100)で読み取り可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。It is a figure explaining the memory map of the recording medium (storage medium) which stores the various data processing program which can be read with the information processing apparatus (client terminal 100) as a source code correction log | history management apparatus concerning this invention.

符号の説明Explanation of symbols

100 クライアント端末
102 CPU
105 外部メモリ
106 入力装置
107 表示装置
110 機能関連ファイル
200 サーバ装置
200 サーバ装置
201 DB
300 通信ネットワーク
900 作業名選択パネル
1000 関数管理テーブル
1100 機能関連ファイル
1200 修正履歴ファイル
100 Client terminal 102 CPU
105 External Memory 106 Input Device 107 Display Device 110 Function-Related File 200 Server Device 200 Server Device 201 DB
300 Communication network 900 Work name selection panel 1000 Function management table 1100 Function-related file 1200 Modification history file

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 source code according to claim 1, wherein the generation unit generates information for outputting the correction history stored in the storage unit by arranging the correction information for each function in order of function execution. Correction history management device. 前記記憶手段は、ソースコードに対する機能毎の一連の修正を一つの作業単位として、該作業単位を識別可能に修正情報を蓄積するものであり、
前記生成手段は、前記記憶手段に記憶される修正履歴を、前記修正情報を機能毎に、各機能内では作業毎に、各作業内ではその機能での関数実行順に並べて出力するための情報を生成する、ことを特徴とする請求項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又は3に記載のソースコード修正履歴管理装置。   4. The source code correction history management apparatus according to claim 2, wherein the generation unit generates information for outputting the correction information in a tree structure in order of function execution. 複数の機能毎の修正情報の中から、1または複数の機能を選択する機能選択手段を設け、
前記生成手段は、前記機能選択手段に選択された機能に対応する機能に対して、機能毎に、前記修正情報を各機能内では作業毎に、各作業内ではその機能での関数実行順に、ツリー構造に並べて出力するための情報を生成する、ことを特徴とする請求項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つを含むことを特徴とする請求項2乃至4のいずれかに記載のソースコード修正履歴管理装置。   The correction information includes at least one of a work unit name, a function name, a correction line number, correction date / time information, corrector information, version information, a comment written in the source at the time of correction, and source code before correction. 5. The source code correction history management apparatus according to claim 2, wherein 前記修正情報は、修正前のコードを含むものであり、
前記生成手段により生成された修正履歴情報を表示する表示手段と、
前記表示手段により表示された修正履歴情報からいずれかの修正情報を選択させる選択手段と、
前記選択手段により選択された修正情報に対応する修正前の状態まで順次遡って修正情報内の修正前のコードを前記修正されたソースコードに対して適用するロールバック手段と、
を有することを特徴とする請求項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:
前記表示手段は、前記ロールバック手段により適用された修正前のコードを強調表示する、ことを特徴とする請求項7に記載のソースコード修正履歴管理装置。   The source code correction history management apparatus according to claim 7, wherein the display unit highlights the code before correction applied by the rollback unit. 作成されたソースコード内に、該ソースコードに記述された関数の実行開示時に該関数を識別するための関数識別情報をログ出力するためのロギングコードを追加する追加手段と、
前記追加手段によりロギングコードが追加されたソースコードから生成されるプログラムの実行時に、前記ロギングコードによりログ出力される関数識別情報の出力順を関数の実行順序として取得する実行順序取得手段と、を有し、
前記生成手段は、前記記憶手段に記憶される修正履歴を、前記実行順序取得手段により取得されたプログラムの実行順に並べた修正履歴情報として生成する、ことを特徴とする請求項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.
前記記憶手段は、ソースコードの修正が行われた際に、該修正情報を該ソースコード内に蓄積する、ことを特徴とする請求項1乃至9のいずれかに記載のソースコード修正履歴管理装置。   10. The source code correction history management apparatus according to claim 1, wherein the storage unit stores the correction information in the source code when the source code is corrected. . ソースコードの修正が行われた際に、該修正情報を記憶手段に蓄積する蓄積ステップと、
前記記憶手段に記憶される修正履歴を、前記修正されたソースコードに基づいたから取得されるプログラム内の関数実行順に並べた修正履歴情報として生成する生成ステップと、
を有することを特徴とするソースコード修正履歴管理方法。
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:
請求項1乃至10のいずれかに記載されたソースコード修正履歴管理装置としてコンピュータを機能させるための、又は、請求項11に記載されたソースコード修正履歴管理方法をコンピュータに実行させるためのプログラム。   A program for causing a computer to function as the source code correction history management device according to any one of claims 1 to 10, or for causing a computer to execute the source code correction history management method according to claim 11. 請求項1乃至10のいずれかに記載されたソースコード修正履歴管理装置としてコンピュータを機能させるためのプログラム、又は、請求項11に記載されたソースコード修正履歴管理方法をコンピュータに実行させるためのプログラムをコンピュータが読み取り可能に記憶した記録媒体。   A program for causing a computer to function as the source code correction history management apparatus according to any one of claims 1 to 10, or a program for causing a computer to execute the source code correction history management method according to claim 11. Is a computer-readable storage medium.
JP2006321682A 2006-11-29 2006-11-29 Source code correction history management device, source code correction history management method, program and recording medium Withdrawn JP2008134900A (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (3)

* Cited by examiner, † Cited by third party
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