JP2010191580A - File management method, system, and program - Google Patents
File management method, system, and program Download PDFInfo
- Publication number
- JP2010191580A JP2010191580A JP2009033741A JP2009033741A JP2010191580A JP 2010191580 A JP2010191580 A JP 2010191580A JP 2009033741 A JP2009033741 A JP 2009033741A JP 2009033741 A JP2009033741 A JP 2009033741A JP 2010191580 A JP2010191580 A JP 2010191580A
- Authority
- JP
- Japan
- Prior art keywords
- file
- processed
- identification information
- files
- paired
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
Description
本発明は、ファイル管理方法、システム、及び、プログラムに関し、更に詳しくは、あるファイルに対して、そのファイルに関連があるファイルを提示できるファイル管理方法、システム、及び、プログラムに関する。 The present invention relates to a file management method, system, and program. More specifically, the present invention relates to a file management method, system, and program capable of presenting a file related to the file to a file.
ソフトウェア開発の過程では、プログラムの元になるソースコードや、仕様書などといった文書が修正される。ソフトウェアを変更するなどの修正が必要な場合、開発者は、修正すべきファイルを特定し、それに対して修正を行う。ところが、ソフトウェア開発が大規模化していくに伴ってファイルの数も多くなるので、複数の箇所に修正が波及していると、修正すべきファイルを迅速に見つけ出すことが困難になる。また、修正漏れを起こすことで、不具合が生じるといった問題もある。 In the process of software development, documents such as source code and specifications for the program are modified. When a modification such as changing the software is necessary, the developer specifies a file to be modified, and performs the modification on the file. However, as software development becomes larger, the number of files increases. Therefore, if correction is spread to a plurality of locations, it is difficult to quickly find a file to be corrected. In addition, there is a problem that a malfunction occurs due to omission of correction.
上記問題に対し、特許文献1には、ある構成管理要素が変更された際に、その変更に関連する構成管理要素を作業者に提示できるソフトウェア構成管理装置が記載されている。特許文献1では、開発されたプログラムや設計情報などのソフトウェアの構成管理要素相互間の関係を記憶する関係情報記憶手段を用いる。特許文献1では、ある構成管理要素が変更されると、関係情報記憶手段に記憶した関係情報に基づいて、変更された構成管理要素に関連する構成管理要素を特定する。 In response to the above problem, Patent Document 1 describes a software configuration management device that can present a configuration management element related to a change to a worker when the configuration management element is changed. In Patent Document 1, a relation information storage means for storing a relation between software configuration management elements such as a developed program and design information is used. In Patent Document 1, when a configuration management element is changed, the configuration management element related to the changed configuration management element is specified based on the relationship information stored in the relationship information storage unit.
特許文献1では、構成管理要素間の関連情報は、ソースコード上に書かれた“#include”宣言から抽出できるファイルから得られる。ファイル間の依存は、直接的な依存に加えて、ソースコードを解析するだけでは依存関係がわからない間接的な依存もある。しかし、ソースコード上から抽出できる依存関係は、直接的に限られるので、特許文献1では、間接的に依存している複数の箇所に修正が必要なときに、全ての修正箇所を探すことが困難である。また、全ての修正箇所を抽出できないことで、修正漏れが生じる可能性もある。 In Patent Document 1, information related to configuration management elements is obtained from a file that can be extracted from a “#include” declaration written on the source code. In addition to direct dependencies, inter-file dependencies include indirect dependencies whose dependencies cannot be determined simply by analyzing the source code. However, since the dependency relationships that can be extracted from the source code are limited directly, in Patent Document 1, when correction is necessary for a plurality of locations that are indirectly dependent, all the correction locations are searched. Have difficulty. In addition, since all the correction portions cannot be extracted, there is a possibility that a correction omission occurs.
本発明は、直接的な依存関係がないファイルについても、関連ファイルとして提示可能なファイル管理方法、システム、及び、プログラムに関する。 The present invention relates to a file management method, system, and program capable of presenting a file having no direct dependency as a related file.
上記目的を達成するために、本発明のファイル管理システムは、処理対象のファイルのファイル識別情報を受け取り、作成又は変更された時刻の差が所定時間以内の複数のファイルのファイル識別情報を組として記録する組ファイル記録手段を参照して、前記処理対象のファイルと組になるファイルを調べ、該組になるファイルの情報を提示する対ファイル提示手段を有することを特徴とする。 In order to achieve the above object, the file management system of the present invention receives file identification information of a file to be processed, and sets the file identification information of a plurality of files whose difference in creation time or modification time is within a predetermined time. Reference is made to a set file recording means for recording, and a file pairing means for checking a file paired with the file to be processed and presenting information of the paired file is provided.
本発明のファイル管理方法は、ファイル管理装置が、処理対象のファイルのファイル識別情報を受け取るステップと、前記ファイル管理装置が、作成又は変更された時刻の差が所定時間以内の複数のファイルのファイル識別情報を組として記録する組ファイル記録手段を参照し、前記処理対象のファイルと組になるファイルを調べ、該組になるファイルの情報を提示するステップとを有することを特徴とする。 According to the file management method of the present invention, a file management device receives a file identification information of a file to be processed, and a file of a plurality of files whose difference in time when the file management device is created or changed is within a predetermined time. A pair file recording means for recording identification information as a pair, examining a file paired with the file to be processed, and presenting information of the file paired.
本発明のプログラムは、コンピュータに、処理対象のファイルのファイル識別情報を受け取る処理と、作成又は変更された時刻の差が所定時間以内の複数のファイルのファイル識別情報を組として記録する組ファイル記録手段を参照し、前記処理対象のファイルと組になるファイルを調べ、該組になるファイルの情報を提示する処理とを実行させることを特徴とする。 The program of the present invention is a set file record for recording, as a set, a process for receiving file identification information of a file to be processed and a set of file identification information of a plurality of files whose difference between created or changed times is within a predetermined time. Means for checking a file paired with the file to be processed and executing a process of presenting information of the file paired.
本発明のファイル管理方法、システム、及び、プログラムは、直接的な依存関係がないファイルについても、関連ファイルとして提示することができる。 The file management method, system, and program of the present invention can present a file having no direct dependency as a related file.
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図1は、本発明の第1実施形態のファイル管理システムを示している。ファイル管理システムは、ファイル管理装置100と組ファイル記録手段101とを有する。ファイル管理装置100は、ファイル修正検出手段102及び対ファイル提示手段103を有する。ファイル管理装置100内の各手段は、その機能をハードウェア的に実現することができるほか、コンピュータシステム上で所定のプログラムを実行することでも実現できる。プログラムは、磁気ディスクや半導体メモリなどのコンピュータ可読記録媒体に記録されて提供される。コンピュータが、プログラムを記録した記録媒体を読み取り、プログラムに従って動作することで、コンピュータ内に、ファイル管理装置100内の各手段の機能を実現できる。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 shows a file management system according to a first embodiment of the present invention. The file management system includes a
組ファイル記録手段101は、作成・変更された時刻の差が、所定時間以内の複数のファイルのファイル名を組として記録している。例えば、あるファイルAがあり、そのファイルAの修正時刻から所定時間T以内に別のファイルBが修正されていたとき、組ファイル記録手段101は、ファイルAとファイルBとを組として記録する。所定時間Tは、常に一定でなくてもよく、ファイルに応じて異なっていてもよい。ファイルが作成・変更された時刻(修正された時刻)としては、修正されたファイルが記憶装置に保存された時刻を用いる。或いは、版管理システムを用いてソフトウェア開発を版管理しているような場合は、ファイルを版管理システムに登録(コミット)した時刻を、修正された時刻としてもよい。
The group
ファイル修正検出手段102は、ファイルの修正を検出する。ファイル修正検出手段102は、例えば、修正中(編集中)のファイルが記憶装置に保存されると、ファイルの修正を検出する。版管理システムを用いる場合は、修正を版管理システムにコミットしたときに、ファイルの修正を検出してもよい。ファイル修正の検出の手法は、特に限定されない。ファイル修正検出手段102は、ファイルの修正を検出すると、修正されたファイルの情報(ファイル識別情報)を対ファイル提示手段103に通知する。対ファイル提示手段103は、組ファイル記録手段101を参照し、受け取ったファイル識別情報に該当するファイルと同じ組として記録されているファイルを調べる。対ファイル提示手段103は、修正ファイルと組になるファイルの情報を、ユーザに提示する。
The file correction detection means 102 detects file correction. For example, when the file being modified (edited) is stored in the storage device, the file
図2に、組ファイル記録手段101が記録する情報の具体例を示す。図2では、組ファイル記録手段101は、組1〜組3までのファイルの組の情報を記録している。組ファイル記録手段101への情報の記録は、例えばオペレータが随時行う。或いは、コンピュータが、定期的にファイルの更新履歴などを参照し、組ファイル記録手段101への情報記録を行ってもよい。各組は、作成・変更された時間差が所定時間内にある複数のファイルを特定する情報を記憶する。ファイルを特定する情報には、ファイル名を用いることができる。例えば、図2では、組1は、ファイルAのファイル名と、ファイルBのファイル名とを記憶している。ファイルを特定する情報は、ファイル名には限られず、その他の情報でもよい。
FIG. 2 shows a specific example of information recorded by the set
ここで、組ファイル記録手段101には、ファイルの最終修正時刻から所定時間以内に作成・変更されたファイルだけでなく、ファイルの過去の修正時刻から所定時間以内に作成・変更されたファイルも組として記憶しておく。過去の修正時刻から所定時間以内に作成・変更されたファイルは、ファイルの更新履歴などを用いることで特定できる。例えば、ファイルAが修正され、その修正時刻から所定時間以内にファイルBが修正されていたとき、組ファイル記録手段101にファイルAとファイルBの組(組1)を記録する。また、ファイルAが、それ以前にも修正されており、その修正時刻から所定時間以内にファイルCが修正されていたとき、組ファイル記録手段101にファイルAとファイルCの組(組2)を記録する。
Here, the set
図3に、動作手順を示す。ファイル修正検出手段102は、ファイルが修正されると(ステップA1)、ファイルの修正を検出する(ステップA2)。ファイル修正検出手段102は、対ファイル提示手段103に、検出されたファイルのファイル識別情報を通知する(ステップA3)。このときファイル修正検出手段102が対ファイル提示手段103に通知するファイル識別情報は、対ファイル提示手段103が組ファイル記録手段101から組になるファイルを取得できる程度の情報を含む。例えば、ステップA1でファイルAが作成・変更されたとき、ファイル修正検出手段102は、ステップA2でファイルAの修正を検出し、ステップA3で、ファイルAのファイル識別情報を対ファイル提示手段103に通知する。
FIG. 3 shows an operation procedure. When the file is corrected (step A1), the file
対ファイル提示手段103は、ファイル修正検出手段102から修正ファイルの通知を受けると、組ファイル記録手段101を参照して通知されたファイルを含む組を検索し、通知されたファイルと組になるファイルを抽出する(ステップA4)。対ファイル提示手段103は、例えば、ファイル修正検出手段102からファイルAのファイル識別情報を受け取ると、組ファイル記録手段101を参照して、ファイルAが記録された組を探す。対ファイル提示手段103は、組ファイル記録手段101に、ファイルAと共に記録されたファイルを、組になるファイルとして抽出する。具体的には、図2の例では、ファイルAと共に記録されたファイルB(組1)と、ファイルC(組2)とを抽出する。
When the
対ファイル提示手段103は、ステップA4でファイルが抽出できたか否かを判断する(ステップA5)。対ファイル提示手段103は、ステップA4でファイルが1つ以上抽出できたときは、抽出したファイルをユーザに提示する(ステップA6)。例えば、対ファイル提示手段103は、ステップA4で、ファイルAと対になるファイルとしてファイルBとファイルCとが取得したとき、ステップA6で、ファイルBとファイルCとをユーザに提示する。ステップA4で対になるファイルが取得できなかったときは、そのまま処理を終了する。
The
例えば、作成・変更されたファイルが記憶装置に保存された時刻の差が所定時間以内のファイルを対になるファイルとして提示する場合を考える。組ファイル記録手段101には、保存時刻の差が所定時間以内のファイルを組として記録しておく。開発者は、ソフトウェアに必要な変更に対して、意味的にまとまりがある単位でファイルに修正を加える。例えば、複数の不具合を修正する必要があるときは、同時に複数の不具合を修正するよりも、不具合を1つずつ修正していく方が効率的である。従って、修正されて保存された時刻が近いファイル群は、同じ変更に対する修正が行われた可能性が高い。このことから、組ファイル記録手段101には、各々の変更に対して同時に修正すべきファイル群が組として記録されているといえる。この組を用いることで、その後ファイルを修正したときに、同時に修正される可能性が高いファイルをユーザに提示することができる。 For example, consider a case where a file whose difference in time when a created / changed file is stored in a storage device is within a predetermined time is presented as a paired file. In the set file recording means 101, files having a difference in storage time within a predetermined time are recorded as a set. Developers modify files in units that are semantically coherent to changes required in the software. For example, when it is necessary to correct a plurality of defects, it is more efficient to correct the defects one by one than to correct a plurality of defects at the same time. Therefore, it is highly probable that a file group with a modified and saved time is close to the same change. From this, it can be said that the group file recording means 101 records a group of files to be corrected simultaneously for each change as a group. By using this set, it is possible to present to the user a file that is likely to be modified at the same time when the file is subsequently modified.
また、作成・変更されたファイルが版管理システムにコミットされた時刻の差が所定時間以内のファイルを対になるファイルとして提示する場合を考える。組ファイル記録手段101には、版管理システムにコミットされた時刻の差が所定時間以内のファイルを組として記録しておく。ソフトウェア管理に版管理を利用する利点の一つに、過去の変更内容を記録することで、例えばある時点でソフトウェアに不備が生じたとき、履歴をさかのぼって不備を生じさせた修正を特定することができると共に、ソフトウェアを正常な状態に戻すことができるということが挙げられる。この利点を活かすためにも、版管理への登録は、意味的にまとまった単位で行われるべきである。従って、同時期に版管理システムに登録されたファイル群は、同じ変更に対する修正が行われた可能性が高い。このことから、上記と同様に、組ファイル記録手段101には、各々の変更に対して同時に修正すべきファイル群が組として記録されているといえる。この組を用いることで、その後ファイルを修正したときに、同時に修正される可能性が高いファイルをユーザに提示することができる。 Also, consider a case where a file whose difference in time when a created / changed file is committed to the version management system is within a predetermined time is presented as a paired file. In the set file recording means 101, files whose difference in time committed to the version management system is within a predetermined time are recorded as a set. One of the advantages of using version management for software management is to record past changes, for example, when software is incomplete at a certain point in time, identifying the correction that caused deficiencies by going back in the history. And the ability to return the software to a normal state. To take advantage of this advantage, registration to version control should be done in semantically unity units. Therefore, the file group registered in the version management system at the same time is highly likely to have been corrected for the same change. From this, it can be said that, similarly to the above, the set file recording means 101 records a group of files to be corrected simultaneously for each change. By using this set, it is possible to present to the user a file that is likely to be modified at the same time when the file is subsequently modified.
本実施形態のファイル管理システムは、最小構成として、対ファイル提示手段103を有する。対ファイル提示手段103は、作成・変更された時刻が所定時間以内のファイルを組として記録する組ファイル記録手段101を参照して、処理対象のファイルと組になるファイルを調べ、組になるファイルをユーザに提示する。このようにすることで、処理対象のファイルが過去に作成・変更された時刻と近い時刻に作成・変更されたファイルを、ユーザに提示することができる。特許文献1など、ファイルを解析して依存関係を求めておく手法では、ファイルから依存関係を抽出できないファイルを提示することができなかった。本実施形態では、処理対象のファイルが作成・変更された時刻と近い時刻に作成・変更されたファイルをユーザに提示するため、処理対象のファイルに対して、ファイルからは依存関係がわからない間接的に依存するファイルも、関連ファイルとしてユーザに提示することができる。
The file management system of this embodiment has a
本実施形態では、ファイル修正検出手段102を用い、対ファイル提示手段103は、ファイル修正検出手段102が検出した修正ファイルを処理対象に、修正ファイルと組になるファイルを提示する。修正ファイルと作成・変更された時刻が近いファイルは、修正ファイルと直接に又は間接的に依存する可能性が高いファイルであるので、修正ファイルの修正後に修正が必要になる可能性が高いファイルであるといえる。本実施形態では、あるファイルの修正を契機として、その修正ファイルに直接に又は間接的に依存するファイルをユーザに提示する。このようにすることで、ユーザに、修正ファイルと同時に修正すべきファイルを提示することができ、依存関係にあるファイルの修正漏れを低減できる効果が期待できる。
In the present embodiment, the file
図4は、本発明の第2実施形態のファイル管理システムを示している。本実施形態のファイル管理システムは、ファイル管理装置100aが、ファイル修正検出手段102(図1)に代えて、ファイル受付手段104を有する点で、第1実施形態のファイル管理システムと相違する。組ファイル記録手段101及び対ファイル提示手段103は、第1実施形態と同じである。すなわち、組ファイル記録手段101は、作成又は変更された時刻の差が所定時間以内の複数のファイルのファイル識別情報を組として記録する。対ファイル提示手段103は、組ファイル記録手段101を参照し、処理対象のファイルと組になるファイルを調べ、組になるファイルの情報を提示する。
FIG. 4 shows a file management system according to the second embodiment of the present invention. The file management system according to the present embodiment is different from the file management system according to the first embodiment in that the
ファイル受付手段104は、外部から、ファイルの指定を受け付ける。ユーザは、任意のファイルを、指定ファイルとしてファイル受付手段104に指定することができる。ユーザは、例えば、ファイル修正に先立って、修正しようとしているファイルを、ファイル受付手段104に対して指定する。ファイル受付手段104は、ファイルの指定を受けると、指定されたファイルのファイル識別情報を、対ファイル提示手段103に通知する。対ファイル提示手段103は、組ファイル記録手段101を参照して、ファイル受付手段104から通知されたファイル識別情報に該当するファイルと組になるファイルを調べ、その組になるファイルの情報をユーザに提示する。
The
図5に、第2実施形態のファイル管理システムの動作手順を示す。ソフトウェア開発者などが、ファイル受付手段104に対してファイルを指定する(ステップB1)。ファイル受付手段104は、指定されたファイルのファイル識別情報を、対ファイル提示手段103に通知する(ステップB2)。以降の動作は、図3のステップA4〜A6と同様である。すなわち、対ファイル提示手段103は、ステップA4で組ファイル記録手段101を参照して指定ファイルと組になるファイルを抽出し、ステップA5で組になるファイルが存在するか否かを判断する。対ファイル提示手段103は、組になるファイルが存在する場合は、ステップA6で、指定ファイルと組になるファイルをユーザに提示する。
FIG. 5 shows an operation procedure of the file management system of the second embodiment. A software developer or the like designates a file to the file receiving means 104 (step B1). The
本実施形態では、ファイル受付手段104は、ファイルの指定を受け付け、指定されたファイルのファイル識別情報を対ファイル提示手段103に通知する。対ファイル提示手段103は、ファイル受付手段104から通知された指定ファイルを処理対象ファイルとして、組ファイル記録手段101から指定ファイルと組になるファイルの情報を抽出し、ユーザに提示する。本実施形態では、ユーザが、任意の時点で、任意のファイルを指定できる。従って、ファイル修正の有無にかかわらず、任意の時点で、任意のファイルと依存する関係にあるファイルを、ユーザに提示することができる。ユーザは、提示された情報を、ソフトウェア理解の補助に用いることができる。ユーザに間接的に依存する関係にあるファイルを提示できる点は、第1実施形態と同様である。
In the present embodiment, the
図6は、本発明の第3実施形態のファイル管理システムを示している。本実施形態のファイル管理システムは、ファイル管理装置100bが、ファイル修正検出手段102及び対ファイル提示手段103に加えて、組ファイル登録手段105を有する点で、第1実施形態のファイル管理システムと相違する。組ファイル記録手段101、ファイル修正検出手段102、及び、対ファイル提示手段103は、第1実施形態と同じである。すなわち、組ファイル記録手段101は、作成又は変更された時刻の差が所定時間以内の複数のファイルのファイル識別情報を組として記録する。ファイル修正検出手段102は、ファイルの修正を検出する。対ファイル提示手段103は、組ファイル記録手段101を参照し、修正ファイルと組になるファイルを調べ、組になるファイルの情報を提示する。
FIG. 6 shows a file management system according to the third embodiment of the present invention. The file management system according to the present embodiment is different from the file management system according to the first embodiment in that the
組ファイル登録手段105は、ファイル修正検出手段102から修正ファイルのファイル識別情報を受け取ると共に、対ファイル提示手段103から、修正ファイルと組になるファイルのファイル識別情報を受け取る。組ファイル登録手段105は、修正ファイルと組になるファイルのうちで、修正されたファイルがあるか否かを判断する。組ファイル登録手段105は、修正ファイルのファイル識別情報と、修正ファイルと組になるファイルのうち、修正が行われたファイルのファイル識別情報とを組にして、組ファイル記録手段101に記録する。
The set
図7に、第3実施形態のファイル管理システムの動作手順を示す。ファイルの修正から、修正ファイルと組になるファイルの提示までの動作は、第1実施形態と同様である。すなわち、ステップA1でファイルが修正されると、ファイル修正検出手段102は、ステップA2でファイルの修正を検出し、ステップA3で修正ファイルのファイル識別情報を対ファイル提示手段103に通知する。対ファイル提示手段103は、ステップA4で組ファイル記録手段101を参照して修正ファイルと組になるファイルを抽出し、ステップA5で組になるファイルが存在するか否かを判断する。対ファイル提示手段103は、組になるファイルが存在する場合は、ステップA6で、修正ファイルと組になるファイルをユーザに提示する。
FIG. 7 shows an operation procedure of the file management system according to the third embodiment. The operations from the modification of the file to the presentation of the file paired with the modified file are the same as in the first embodiment. That is, when the file is corrected in step A1, the file
組ファイル登録手段105は、ファイル修正検出手段102から、ステップA2で修正を検出したファイルのファイル識別情報を受け取る。また、組ファイル登録手段105は、対ファイル提示手段103から、ステップA6でユーザに提示したファイル、すなわち、ステップA4で抽出した修正ファイルと組になるファイルのファイル識別情報を受け取る。ユーザは、提示されたファイルから適宜ファイルを選択し、ファイルの修正を行う。組ファイル登録手段105は、ユーザが、ステップA1で修正されたファイルに付随して、提示されたファイルのうちの少なくとも1つを修正すると、ステップA1で修正されたファイルのファイル識別情報と、ユーザに提示されたファイルのうちで実際に修正されたファイルのファイル識別情報とを組にして、組ファイル記録手段101に登録する(ステップC7)。
The set
本実施形態では、組ファイル登録手段105は、修正ファイルのファイル識別情報と、対ファイル提示手段103が提示したファイルのうち、修正が行われたファイルのファイル識別情報とを組にして、組ファイル記録手段101に登録する。このようにすることで、次回以降、組ファイル登録手段105が記録した情報を用いて、修正ファイルと組になるファイルをユーザに提示できる。また、ファイルの修正を契機として、組ファイル記録手段101に記録された情報を更新することができ、別途、編集履歴などを用いて、組ファイル記録手段101に記録された情報を定期的に更新する処理が不要になる。その他の効果は、第1実施形態と同様である。
In the present embodiment, the set
以下、実施例を用いて説明する。ファイルは、C言語で記述されたソースファイルとする。また、版管理システムとしてSubversionを利用する。組ファイル記録手段101には、Subversionに同時にコミットされたファイル群が、作成・変更された時刻の差が一定時間内のファイルの組として記録されている。
Hereinafter, description will be made using examples. The file is a source file described in C language. Subversion is used as a version management system. The group
図8に、ソフトウェア開発環境を示す。クライアント801は、開発者からの入力を受け付けるキーボードや、編集状態や各種情報を表示するディスプレイ等を備えている。開発者は、クライアント801を利用してソフトウェアの開発を行う。クライアント801では、svnラッパープログラム802が動作している。svnラッパープログラム802は、クライアント801内にファイル管理装置の機能を実現するプログラムを含む。
FIG. 8 shows a software development environment. The
サーバ811上では、Subversion812が動作している。開発中のファイルは、Subversion812で管理される。サーバ811とクライアント801とは、ネットワーク821を介して接続されている。
図9(a)〜(c)に、プログラムのソースファイルを示す。図9(a)はファイルA(ファイル名a.c)を示し、(b)はファイルB(ファイル名b.c)を示し、(c)はファイルC(ファイル名c.c)を示している。ファイルAには、関数ポインタを通して、ファイルBとファイルCで定義されている関数を呼び出す記述がある。これらファイルA〜Cの版は、Subversion812で版管理されている。ファイルBとファイルCの開発者は同じであり、開発者は、これら2つのファイルをSubversion812に同時にコミットしている。
9A to 9C show program source files. 9A shows the file A (file name a.c), (b) shows the file B (file name b.c), and (c) shows the file C (file name c.c). File A has a description for calling the functions defined in file B and file C through the function pointer. Versions of these files A to C are managed by
ある開発者が、関数の戻り値となるデータ構造の変更に伴って、ファイルAとファイルBとを修正し、svnラッパープログラム802を用いてファイルAとファイルBとをコミットしたとする。svnラッパープログラム802は、ファイルAとファイルBとを受け取ると、Subversion812から過去にファイルBと同時にコミットされたファイルCを得る。svnラッパープログラム802は、ファイルCをクライアント801のディスプレイに表示し、開発者にファイルCの存在を知らせる。
Assume that a developer modifies file A and file B in accordance with a change in the data structure that is the return value of the function, and commits file A and file B using the
コールグラフなどを用いたソースコード解析では、関数ポインタに代入される関数を正確に特定することはできない。従って、ソースコード解析では、ファイルAの関数ポインタに代入されるファイルC内の関数を抽出することはできず、ファイルAとファイルCとが依存関係にあることを把握することはできない。また、ファイルBとファイルCとには依存関係はない。従って、ソースコードを解析する手法では、ファイルA及びファイルBの修正時に、同時に修正すべきファイルCを開発者に提示することができない。 In source code analysis using a call graph or the like, the function assigned to the function pointer cannot be specified accurately. Therefore, in the source code analysis, it is impossible to extract the function in the file C that is substituted for the function pointer of the file A, and it is impossible to grasp that the file A and the file C are in a dependency relationship. Further, there is no dependency between file B and file C. Therefore, in the method of analyzing the source code, when the file A and the file B are corrected, the file C to be corrected cannot be presented to the developer at the same time.
本実施例では、ファイルBとファイルCとがSubversion812に同時にコミットされ、ファイルBとファイルCとの組が組ファイル記録手段101に記録されている。開発者が、関数の戻り値のデータ構造変更に伴ってファイルAとファイルBとを修正すると、対ファイル提示手段103(図1)は、ファイルBと同時にコミットされたファイルCを、開発者に提示する。開発者が、提示されたファイルCについても、関数の戻り値のデータ構造を変更することで、ファイルの修正漏れを防ぐことができる。
In this embodiment, file B and file C are simultaneously committed to
なお、上記各実施形態は、適宜組み合わせて用いることができる。例えば、図4のファイル管理装置100aが、ファイル修正検出手段102を更に有する構成も可能である。この場合、対ファイル提示手段103は、ファイル修正検出手段102がファイル修正を検出したとき、及び、ファイル受付手段104がファイルの指定を受けたときに、組となるファイルを提示する。また、第3実施形態では、組ファイル登録手段105がユーザに提示したファイルのうちで、修正されたファイルを組として組ファイル記録手段101に記録するとしたが、これに加えて、ユーザに提示したファイル以外で修正したファイルも、組ファイル記録手段101に記録してよい。
The above embodiments can be used in appropriate combination. For example, the
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のファイル管理方法、システム、及び、プログラムは、上記実施形態にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。 Although the present invention has been described based on the preferred embodiment, the file management method, system, and program of the present invention are not limited to the above embodiment, and various configurations are possible from the configuration of the above embodiment. Those modified and changed as described above are also included in the scope of the present invention.
100:ファイル管理装置
101:組ファイル記録手段
102:ファイル修正検出手段
103:対ファイル提示手段
104:ファイル受付手段
105:組ファイル登録手段
801:クライアント
802:svnラッパープログラム
811:サーバ
812:Subversion
821:ネットワーク
100: file management apparatus 101: set file recording means 102: file modification detecting means 103: file presentation means 104: file receiving means 105: set file registration means 801: client 802: svn wrapper program 811: server 812: Subversion
821: Network
Claims (12)
前記ファイル管理装置が、作成又は変更された時刻の差が所定時間以内の複数のファイルのファイル識別情報を組として記録する組ファイル記録手段を参照し、前記処理対象のファイルと組になるファイルを調べ、該組になるファイルの情報を提示するステップとを有するファイル管理方法。 A file management device receiving file identification information of a file to be processed;
The file management device refers to a set file recording unit that records a set of file identification information of a plurality of files having a difference in time of creation or change within a predetermined time, and sets a file to be paired with the file to be processed. A file management method comprising: examining and presenting information of the files in the set.
処理対象のファイルのファイル識別情報を受け取る処理と、
作成又は変更された時刻の差が所定時間以内の複数のファイルのファイル識別情報を組として記録する組ファイル記録手段を参照し、前記処理対象のファイルと組になるファイルを調べ、該組になるファイルの情報を提示する処理とを実行させるプログラム。 On the computer,
A process of receiving file identification information of a file to be processed;
A set file recording means for recording a set of file identification information of a plurality of files having a difference in time created or changed within a predetermined time is referred to, and a file to be paired with the file to be processed is checked to become the set. A program that executes a process of presenting file information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009033741A JP2010191580A (en) | 2009-02-17 | 2009-02-17 | File management method, system, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009033741A JP2010191580A (en) | 2009-02-17 | 2009-02-17 | File management method, system, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010191580A true JP2010191580A (en) | 2010-09-02 |
Family
ID=42817586
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009033741A Pending JP2010191580A (en) | 2009-02-17 | 2009-02-17 | File management method, system, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010191580A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9891911B2 (en) | 2012-12-21 | 2018-02-13 | International Business Machines Corporation | Software development work item management system |
WO2021250812A1 (en) * | 2020-06-10 | 2021-12-16 | 三菱電機株式会社 | Information processing device and program |
-
2009
- 2009-02-17 JP JP2009033741A patent/JP2010191580A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9891911B2 (en) | 2012-12-21 | 2018-02-13 | International Business Machines Corporation | Software development work item management system |
US10768928B2 (en) | 2012-12-21 | 2020-09-08 | International Business Machines Corporation | Software development work item management system |
WO2021250812A1 (en) * | 2020-06-10 | 2021-12-16 | 三菱電機株式会社 | Information processing device and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8713552B2 (en) | Avoiding conflict in update in distributed environment employing multiple clients | |
KR101921052B1 (en) | Method and apparatus for identifying security vulnerability and cause point thereof of executable binaries | |
US9213625B1 (en) | Method and apparatus for performing automated user-interface layout testing | |
US10621212B2 (en) | Language tag management on international data storage | |
US8065672B2 (en) | Simplifying rollback to prior versions of patches used to fix errors in pre-installed software | |
WO2019019643A1 (en) | Application program hot update method and apparatus, and terminal and storage medium | |
US20150095619A1 (en) | Request change tracker | |
US10768928B2 (en) | Software development work item management system | |
CN111158730B (en) | System updating method, device, electronic equipment and readable storage medium | |
WO2018176812A1 (en) | Static resource issuing method and device | |
CN116830105A (en) | System and method for selecting and discovering vulnerable software packages | |
JP2018005535A (en) | Software development assist method and system | |
US9442719B2 (en) | Regression alerts | |
US10599424B2 (en) | Committed program-code management | |
US11228611B1 (en) | Scanning unexposed web applications for vulnerabilities | |
KR20190020363A (en) | Method and apparatus for analyzing program by associating dynamic analysis with static analysis | |
JP2010191580A (en) | File management method, system, and program | |
JP2018181020A (en) | Calculation device and influence output system | |
US9396239B2 (en) | Compiling method, storage medium and compiling apparatus | |
JP2009253847A (en) | Information processing apparatus and method of controlling the same, program, and storage medium | |
US20240202333A1 (en) | Method and apparatus for disarming ole object in ms-ooxml | |
JP2006294019A (en) | Generic software requirement analyzer | |
US20230131643A1 (en) | System and method for reference-aware application identification in container deployment environments | |
KR20190055776A (en) | Method and apparatus for identifying security vulnerability and cause point thereof of executable binaries | |
CN109213748B (en) | Database script file updating method, server and medium |