[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2014241071A - Analysis system, analysis method, and analysis program - Google Patents

Analysis system, analysis method, and analysis program Download PDF

Info

Publication number
JP2014241071A
JP2014241071A JP2013123541A JP2013123541A JP2014241071A JP 2014241071 A JP2014241071 A JP 2014241071A JP 2013123541 A JP2013123541 A JP 2013123541A JP 2013123541 A JP2013123541 A JP 2013123541A JP 2014241071 A JP2014241071 A JP 2014241071A
Authority
JP
Japan
Prior art keywords
program
attribute
attribute value
identifier
analysis
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
Application number
JP2013123541A
Other languages
Japanese (ja)
Inventor
健士 西村
Kenshi Nishimura
健士 西村
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2013123541A priority Critical patent/JP2014241071A/en
Publication of JP2014241071A publication Critical patent/JP2014241071A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an analysis apparatus for determining whether a program is a program that could change data including given attribute values.SOLUTION: An analysis apparatus according to the present invention includes: program storage means for storing therein a program for changing data provided in a database and including attribute values that are values of attributes associated with identifiers of the attributes; specific data acquisition means for acquiring a combination of the identifiers of the attributes and the attribute values associated with the identifiers; program analysis means for analyzing processing performed by the program; and association determination means for determining whether the program could change specific data that is the data provided in the database and including the attribute values included in the combination as the attribute values of the attributes whose identifiers are included in the combination on the basis of a result of the analysis, and obtaining a determination result.

Description

本発明は、プログラムの分析を行う技術分野に関する。   The present invention relates to a technical field for analyzing a program.

プログラムコードから、データベースにアクセスするアクセス命令を抽出する情報処理装置の一例が、特許文献1に記載されている。   An example of an information processing apparatus that extracts an access instruction for accessing a database from a program code is described in Patent Document 1.

特許文献1の情報処理システムは、アプリケーションのプログラムコードに含まれるアプリケーションクラスから、データアクセスクラスを抽出する。そして、この情報処理システムは、抽出されたデータアクセスクラスから、所定の言語により記述された、データベースにアクセスするアクセス命令を抽出する。   The information processing system of Patent Literature 1 extracts a data access class from an application class included in a program code of an application. Then, the information processing system extracts an access command for accessing the database described in a predetermined language from the extracted data access class.

特許文献2には、仕様変更に伴い修正が必要とされるプログラムを特定する仕様変更保守作業支援システムが記載されている。この仕様変更保守作業支援システムでは、仕様変更を表すキーワードと、その仕様変更に伴う保守の対象となるプログラムのプログラム名が、関連付けられてデータベース化される。この仕様変更保守作業支援システムは、入力された、仕様変更を表すキーワードによって、データベースを検索する。そして、この仕様変更保守作業支援システムは、仕様変更を表すキーワードに関連付けられているプログラムの識別子を出力する。   Patent Document 2 describes a specification change maintenance work support system that identifies a program that needs to be corrected along with a specification change. In this specification change maintenance work support system, a keyword indicating a specification change and a program name of a maintenance target associated with the specification change are associated and stored in a database. This specification change maintenance work support system searches the database with the input keyword indicating the specification change. The specification change maintenance work support system outputs the identifier of the program associated with the keyword indicating the specification change.

特許文献3には、プログラムが処理を行う、ファイル名とそのファイル中の項目名を検索キーとして、プログラム名を検索する管理装置が記載されている。この管理装置は、プログラム名と、プログラムが処理を行うファイル名と、ファイル中の、プログラムが処理を行う項目名との関連を表す、あらかじめ記憶されている情報から、プログラム名を検索する。   Patent Document 3 describes a management apparatus that searches for a program name using a file name and an item name in the file as a search key. This management apparatus searches for a program name from information stored in advance that represents the relationship between a program name, a file name processed by the program, and an item name in the file processed by the program.

特開2011−248631号公報JP2011-248631A 特開平11−126160号公報JP-A-11-126160 特開2001−075795号公報Japanese Patent Application Laid-Open No. 2001-075795

一般に、関係モデルに基づくデータベースにおける属性は、その属性の名称を表す属性名と、その属性の定義域の名称によって表される。定義域は、その属性が取り得る値の集合である。属性の値は、属性値と表記される。データベース中の個々のデータは、それぞれ属性名に関連付けられた、1個以上の属性値の集合で表される。   In general, an attribute in a database based on a relation model is represented by an attribute name indicating the name of the attribute and a name of a definition area of the attribute. A domain is a set of values that an attribute can take. The attribute value is expressed as an attribute value. Each piece of data in the database is represented by a set of one or more attribute values each associated with an attribute name.

データベース中の個々のデータを、挿入、更新、および削除する操作は、いずれか1個以上の属性の属性値を指定して行われる。   Operations for inserting, updating, and deleting individual data in the database are performed by designating attribute values of any one or more attributes.

以下、後述する各実施形態を例に説明する本願において、データの「挿入」は、データベース中に、1個以上の属性の属性値を含む、新しいデータを生成することを表す。データを挿入する操作は、例えば、1個以上の属性の属性値を含む新しいデータを、データベース中に生成する命令を、データベースを管理するデータベース装置に送信することにより行われる。   In the present application, which will be described below by taking each embodiment described below as an example, “insertion” of data represents generation of new data including attribute values of one or more attributes in the database. The operation of inserting data is performed, for example, by transmitting an instruction for generating new data including attribute values of one or more attributes in the database to a database device that manages the database.

また、データの「更新」は、データが含む属性の属性値のうち少なくとも一部の属性値を、新しい属性値にすることを表す。属性値の更新は、その属性値を新しい属性値にすることを表す。データベース中のデータを更新する操作は、例えば、更新の対象であるデータと、更新する属性及びその属性の更新後の属性値とが指定された更新命令を、データベースを管理するデータベース装置に送信することにより行われる。更新の対象であるデータの指定は、例えば、更新の対象であるデータが含む1個以上の属性の属性値を指定することによって行われる。   Further, “update” of data indicates that at least a part of attribute values of attributes included in the data is changed to new attribute values. Updating the attribute value represents making the attribute value a new attribute value. In the operation of updating data in the database, for example, an update command in which data to be updated, an attribute to be updated, and an attribute value after updating the attribute are specified is transmitted to a database device that manages the database. Is done. The designation of data to be updated is performed, for example, by designating attribute values of one or more attributes included in the data to be updated.

データベース中のデータを削除する操作は、例えば、削除の対象であるデータが指定された削除命令を、データベースを管理するデータベース装置に送信することにより行われる。削除の対象であるデータの指定は、例えば、削除の対象であるデータが含む1個以上の属性の属性値を指定することによって行われる。データベース装置は、データベース中からのデータの削除を、例えば、削除の対象であるデータが含む、削除済みであるか否かを表す属性の属性値を、削除済みであることを表す属性値に変更することによって行ってもよい。以上の挿入、更新、および削除は、以下では、まとめて「変更」と表記する。データベース中のデータに対する変更は、挿入、更新、および削除だけでなく、データベース中のデータに変化が生じさせる操作を含んでいてもよい。   The operation of deleting data in the database is performed, for example, by transmitting a deletion command specifying data to be deleted to a database device that manages the database. The designation of data to be deleted is performed, for example, by designating attribute values of one or more attributes included in the data to be deleted. The database device changes the attribute value of the attribute indicating whether or not the deletion is included in the data to be deleted, for example, to the attribute value indicating that the data has been deleted. It may be done by doing. The above insertion, update, and deletion are collectively referred to as “change” below. Changes to data in the database may include operations that cause changes to the data in the database as well as inserts, updates, and deletes.

以上のように、データベース中のデータに対する変更は、属性値を指定することによって行われる。上述したデータの挿入の例では、指定される属性値は、例えば、新たに生成されるデータが含む属性の属性値である。また、データの削除の例では、指定される属性値は、例えば、削除の対象であるデータを特定する属性の属性値である。さらに、データの更新の例では、指定される属性値は、例えば、更新の対象であるデータを特定する属性の属性値と、更新される属性の属性値である。   As described above, changes to data in the database are performed by specifying attribute values. In the example of data insertion described above, the specified attribute value is, for example, an attribute value of an attribute included in newly generated data. In the example of data deletion, the specified attribute value is, for example, an attribute value of an attribute that specifies data to be deleted. Further, in the example of data update, the specified attribute values are, for example, an attribute value of an attribute that specifies data to be updated and an attribute value of the attribute to be updated.

特許文献1の情報処理装置は、所定の言語によって記述された、データベースにアクセスするアクセス命令を抽出する。しかし、特許文献1の情報処理装置は、プログラムが、データベース中のデータに対して、与えられた属性値が指定された変更を行うか否かを判定することはできない。   The information processing apparatus disclosed in Patent Literature 1 extracts an access command described in a predetermined language for accessing a database. However, the information processing apparatus disclosed in Patent Document 1 cannot determine whether or not the program performs a change in which a given attribute value is specified for data in the database.

特許文献2の仕様変更保守作業支援システムは、仕様変更を表すキーワードに関連付けられている、その仕様変更による保守の対象となるプログラムのプログラム名を出力する。しかし、特許文献2の仕様変更保守作業支援システムは、プログラムが、データベース中のデータに対して、与えられた属性値が指定された変更を行うか否かを判定することはできない。   The specification change maintenance work support system of Patent Document 2 outputs a program name of a program that is associated with a keyword indicating a specification change and is a maintenance target due to the specification change. However, the specification change maintenance work support system of Patent Document 2 cannot determine whether or not the program makes a change in which a given attribute value is specified for data in the database.

特許文献3の管理装置は、ファイル名とそのファイル中の項目名に基づき、そのファイル中のその項目名の項目にアクセスするプログラム名を検索する。しかし、特許文献3の管理装置は、例えば、所定の値である項目を含むファイルに対して、プログラムが更新を行うか否かを判定することはできない。すなわち、特許文献3の管理装置は、プログラムが、データベース中のデータに対して、与えられた属性値が指定された変更を行うか否かを判定することはできない。   Based on the file name and the item name in the file, the management device of Patent Document 3 searches for a program name that accesses the item of the item name in the file. However, the management device of Patent Literature 3 cannot determine whether or not the program updates a file including an item having a predetermined value, for example. In other words, the management device of Patent Literature 3 cannot determine whether or not the program performs a change in which a given attribute value is designated for data in the database.

本発明の目的の一つは、プログラムが、与えられた属性値を含むデータに対する変更を行い得たプログラムであるか否かを判定する分析装置を提供することにある。   One of the objects of the present invention is to provide an analysis apparatus that determines whether or not a program is a program that can change a data including a given attribute value.

本発明の分析装置は、データベース中の、属性の識別子に関連付けられた前記属性の値である属性値を含むデータに対して、変更を行うプログラムを記憶するプログラム記憶手段と、属性の識別子と、当該識別子に関連付けられた属性値の組み合わせを、取得する特定データ取得手段と、前記プログラムによって行われる処理の解析を行うプログラム解析手段と、前記解析の結果に基づき、前記組み合わせに識別子が含まれる属性の属性値として、前記組み合わせに含まれる前記属性値を含む前記データベース中のデータである特定データに対して、前記プログラムによって変更が行われ得たか否かを判定し、判定結果を求める関連判定手段とを含む。   The analysis apparatus of the present invention includes a program storage unit that stores a program for changing data including an attribute value that is a value of the attribute associated with the attribute identifier in the database, an attribute identifier, Specific data acquisition means for acquiring a combination of attribute values associated with the identifier, program analysis means for analyzing processing performed by the program, and an attribute whose identifier is included in the combination based on the result of the analysis Relevant determination means for determining whether or not the specific data, which is data in the database including the attribute value included in the combination, can be changed by the program as an attribute value of the combination, and obtaining a determination result Including.

本発明の分析方法は、データベース中の、属性の識別子に関連付けられた前記属性の値である属性値を含むデータに対して、変更を行うプログラムをプログラム記憶手段に記憶し、属性の識別子と、当該識別子に関連付けられた属性値の組み合わせを、取得し、前記プログラムによって行われる処理の解析を行い、前記解析の結果に基づき、前記組み合わせに識別子が含まれる属性の属性値として、前記組み合わせに含まれる前記属性値を含む前記データベース中のデータである特定データに対して、前記プログラムによって変更が行われ得たか否かを判定し、判定結果を求める。   The analysis method of the present invention stores, in a program storage means, a program for making a change to data including an attribute value that is the value of the attribute associated with the attribute identifier in the database, the attribute identifier, Acquire a combination of attribute values associated with the identifier, analyze the processing performed by the program, and include the combination as an attribute value of an attribute including the identifier in the combination based on the result of the analysis It is determined whether or not the specific data, which is data in the database including the attribute value, can be changed by the program, and a determination result is obtained.

本発明の分析プログラムは、コンピュータを、データベース中の、属性の識別子に関連付けられた前記属性の値である属性値を含むデータに対して、変更を行うプログラムを記憶するプログラム記憶手段と、属性の識別子と、当該識別子に関連付けられた属性値の組み合わせを、取得する特定データ取得手段と、前記プログラムによって行われる処理の解析を行うプログラム解析手段と、前記解析の結果に基づき、前記組み合わせに識別子が含まれる属性の属性値として、前記組み合わせに含まれる前記属性値を含む前記データベース中のデータである特定データに対して、前記プログラムによって変更が行われ得たか否かを判定し、判定結果を求める関連判定手段として動作させる。   The analysis program of the present invention includes a program storage means for storing a program for changing a computer to data including an attribute value that is a value of the attribute associated with the identifier of the attribute in the database; Based on the result of the analysis, the identifier is included in the combination based on the result of the analysis, the specific data acquisition means for acquiring the identifier and the combination of the attribute values associated with the identifier, the program analysis means for analyzing the processing performed by the program As the attribute value of the included attribute, it is determined whether or not the specific data that is the data in the database including the attribute value included in the combination can be changed by the program, and the determination result is obtained. Operate as an association determination means.

本発明には、プログラムが、与えられた属性値を含むデータに対する変更を行い得たプログラムであるか否かを判定できるという効果がある。   The present invention has an effect that it can be determined whether or not the program is a program that can be changed to data including a given attribute value.

図1は、第1、第2、第3、及び第4の実施形態の情報処理システム100の構成の一例を表すブロック図である。FIG. 1 is a block diagram illustrating an example of a configuration of an information processing system 100 according to the first, second, third, and fourth embodiments. 図2は、第1、第2、第3、及び第4の実施形態の分析装置1の全体の動作の一例を表すフローチャートである。FIG. 2 is a flowchart illustrating an example of the overall operation of the analyzer 1 according to the first, second, third, and fourth embodiments. 図3は、データベース201中のデータの一例を表す図である。FIG. 3 is a diagram illustrating an example of data in the database 201. 図4は、特定データ取得部11が取得したデータに対して、ユーザが指定した属性を表す図である。FIG. 4 is a diagram illustrating attributes specified by the user for the data acquired by the specific data acquisition unit 11. 図5は、第1、及び第5の実施形態の関連判定部12の、ステップS104における判定処理の詳細を例示するフローチャートである。FIG. 5 is a flowchart illustrating the details of the determination processing in step S104 of the association determination unit 12 of the first and fifth embodiments. 図6は、第2、第3、第4、及び第5の実施形態の関連判定部12の、ステップS104における判定処理の詳細を例示するフローチャートである。FIG. 6 is a flowchart illustrating the details of the determination process in step S104 of the association determination unit 12 of the second, third, fourth, and fifth embodiments. 図7は、第5の実施形態の情報処理システム100の構成を表すブロック図である。FIG. 7 is a block diagram illustrating the configuration of the information processing system 100 according to the fifth embodiment. 図8は、第5の実施形態の分析装置1の全体の動作の一例を表すフローチャートである。FIG. 8 is a flowchart illustrating an example of the overall operation of the analyzer 1 according to the fifth embodiment. 図9は、特定データ取得部11が取得する、データとデータに関連付けられた特徴量の一例を表す図である。FIG. 9 is a diagram illustrating an example of data and a feature amount associated with the data acquired by the specific data acquisition unit 11. 図10は、プログラム記憶部10が記憶するプログラムの、関連箇所の例を表す図である。FIG. 10 is a diagram illustrating an example of a related portion of a program stored in the program storage unit 10. 図11は、プログラム記憶部10が記憶するプログラムの、関連箇所の例を表す図である。FIG. 11 is a diagram illustrating an example of a related portion of a program stored in the program storage unit 10. 図12は、プログラム記憶部10が記憶するプログラムの、関連箇所の例を表す図である。FIG. 12 is a diagram illustrating an example of a related portion of a program stored in the program storage unit 10. 図13は、プログラム記憶部10が記憶するプログラムの、関連箇所の例を表す図である。FIG. 13 is a diagram illustrating an example of a related portion of a program stored in the program storage unit 10. 図14は、プログラム記憶部10が記憶するプログラムの、関連箇所の例を表す図である。FIG. 14 is a diagram illustrating an example of a related portion of a program stored in the program storage unit 10. 図15は、構成例の関連箇所判定部12の動作の例を表すフローチャートである。FIG. 15 is a flowchart illustrating an example of the operation of the related part determination unit 12 in the configuration example. 図16は、第6の実施形態の分析装置1の構成の例を表すブロック図である。FIG. 16 is a block diagram illustrating an example of a configuration of the analysis apparatus 1 according to the sixth embodiment. 図17は、分析装置1を実現するために使用される、コンピュータ1000の構成の一例を表す図である。FIG. 17 is a diagram illustrating an example of a configuration of a computer 1000 that is used to realize the analysis apparatus 1.

(第1の実施形態)
次に、本発明の第1の実施形態について、図面を参照して詳細に説明する。
(First embodiment)
Next, a first embodiment of the present invention will be described in detail with reference to the drawings.

図1は、第1の実施形態の情報処理システム100の構成の一例を表す図である。   FIG. 1 is a diagram illustrating an example of a configuration of an information processing system 100 according to the first embodiment.

図1を参照すると、情報処理システム100は、分析装置1と、データベース装置2と、入力装置4と、出力装置5を含む。情報処理システム100は、アクセス装置3を含んでいてもよい。分析装置1とデータベース装置2は、互いに通信することができる。データベース装置2とアクセス装置3は、互いに通信することができる。データベース装置2は、分析装置1を含んでいてもよい。また、データベース装置2は、アクセス装置3を含んでいてもよい。データベース装置2は、分析装置1とアクセス装置3を含んでいてもよい。   Referring to FIG. 1, the information processing system 100 includes an analysis device 1, a database device 2, an input device 4, and an output device 5. The information processing system 100 may include the access device 3. The analysis device 1 and the database device 2 can communicate with each other. The database device 2 and the access device 3 can communicate with each other. The database device 2 may include the analysis device 1. Further, the database device 2 may include an access device 3. The database device 2 may include the analysis device 1 and the access device 3.

データベース装置2は、データベース記憶部20と、アクセス処理部21を含む。   The database device 2 includes a database storage unit 20 and an access processing unit 21.

データベース記憶部20は、データベース201を記憶する。データベース201は、例えば、前述のような、関係モデルに基づくデータベースである。データベース201は、必ずしも関係モデルに基づくデータベースでなくてもよい。データベース201は、1個以上の属性の属性値を含むデータを含んでいればよい。そして、データベース201にアクセスするプログラムが、データベース201が含むデータに対して、属性値を指定してデータを変更することが可能であればよい。   The database storage unit 20 stores the database 201. The database 201 is a database based on the relationship model as described above, for example. The database 201 is not necessarily a database based on the relation model. The database 201 only needs to include data including attribute values of one or more attributes. The program that accesses the database 201 only needs to be able to change data by specifying attribute values for the data included in the database 201.

アクセス処理部21は、データベース201に対するアクセスの要求を受信する。そして、アクセス処理部21は、アクセスの要求に応じた、データベース201に対する処理を行う。さらに、アクセス処理部21は、必要に応じて、アクセスの要求に対する結果を返信する。データベース201に対するアクセスの要求は、データベース201からのデータの検索、データベース201が含むデータに対する更新及び削除、データベース201へのデータの挿入の要求を含む。   The access processing unit 21 receives a request for access to the database 201. The access processing unit 21 performs processing on the database 201 in response to the access request. Furthermore, the access processing unit 21 returns a result for the access request as necessary. The request for access to the database 201 includes a request for searching for data from the database 201, updating and deleting data included in the database 201, and inserting data into the database 201.

アクセス装置3は、CPU30(Central Processing Unit)と、コンピュータプログラムであるプログラム311がロードされたメモリ31を含む。プログラム311は、データベース201のデータに対して変更を行うプログラムである。CPU30がプログラム311を実行することにより、アクセス装置3は、データベース201のデータの変更を含むアクセスの要求を、データベース装置2に対して送信する。CPU30は、メモリ31にロードされた、複数の種類のプログラム311を実行してもよい。複数のアクセス装置3が、異なる種類のプログラム311を実行してもよい。   The access device 3 includes a CPU 30 (Central Processing Unit) and a memory 31 loaded with a program 311 that is a computer program. The program 311 is a program that changes data in the database 201. When the CPU 30 executes the program 311, the access device 3 transmits an access request including data change of the database 201 to the database device 2. The CPU 30 may execute a plurality of types of programs 311 loaded in the memory 31. A plurality of access devices 3 may execute different types of programs 311.

アクセス装置3は、例えば、図示されない端末からの指示に基づき、データベース201へのアクセス要求を行ってもよい。アクセス装置3は、例えば、あらかじめ与えられた手順に従って、あらかじめ与えられたパラメータを使用してプログラム311を実行することにより、データベース201へのアクセスを行ってもよい。   For example, the access device 3 may make an access request to the database 201 based on an instruction from a terminal (not shown). For example, the access device 3 may access the database 201 by executing the program 311 using parameters given in advance according to a procedure given in advance.

分析装置1は、プログラム記憶部10と、特定データ取得部11と、関連判定部12と、出力部13と、プログラム解析部15とを含む。   The analysis device 1 includes a program storage unit 10, a specific data acquisition unit 11, an association determination unit 12, an output unit 13, and a program analysis unit 15.

プログラム記憶部10は、データベース201に含まれるデータに対して変更を行うプログラム311を記憶する。   The program storage unit 10 stores a program 311 that changes data included in the database 201.

特定データ取得部11は、属性の識別子と、その識別子に関連付けられた属性との組み合わせを、1個以上取得する。属性の識別子は、その属性の属性名やその他の、属性を特定できるデータである。特定データ取得部11により取得された組み合わせに識別子が含まれる属性の属性値として、その組み合わせに含まれる属性値を含むデータは、本実施の説明では、「特定データ」と表記される。後述される他の実施形態の説明においても同様である。   The specific data acquisition unit 11 acquires one or more combinations of attribute identifiers and attributes associated with the identifiers. The attribute identifier is the attribute name of the attribute or other data that can specify the attribute. As an attribute value of an attribute whose identifier is included in the combination acquired by the specific data acquisition unit 11, data including the attribute value included in the combination is expressed as “specific data” in the description of the present embodiment. The same applies to the description of other embodiments described later.

関連判定部12は、後述されるプログラム解析部15によって読み出され、解析されたプログラム311が、データベース201中の特定データに対して、アクセスを行い得たか否かを、解析の結果に基づき判定する。   The association determination unit 12 determines whether or not the program 311 read and analyzed by the program analysis unit 15 described later has been able to access specific data in the database 201 based on the analysis result. To do.

関連判定部12は、さらに、プログラム記憶部10が記憶するプログラム311のコードにおいて、特定データ取得部11により取得された属性値が指定される場所を特定してもよい。また、関連判定部12は、特定データ取得部11により取得された属性値が指定された変更が、データベース201中のデータに対して行われる場所を特定してもよい。それぞれの属性値が指定される場所と、データベース201中のデータに対する、属性値が指定された変更が行われる場所は、まとめて、データベース201に対する変更を行うコードの場所とも表記される。関連判定部12は、例えば後述されるプログラム解析部15による、プログラム311の解析の結果を使用して、その場所の特定を行えばよい。   The association determination unit 12 may further specify a place where the attribute value acquired by the specific data acquisition unit 11 is specified in the code of the program 311 stored in the program storage unit 10. In addition, the association determination unit 12 may specify a place where the change in which the attribute value acquired by the specific data acquisition unit 11 is specified is performed on the data in the database 201. The place where each attribute value is designated and the place where the change in which the attribute value is designated for the data in the database 201 are collectively referred to as the place of the code for making a change to the database 201. For example, the association determination unit 12 may specify the location by using the analysis result of the program 311 by the program analysis unit 15 described later.

出力部13は、関連判定部12による判定の結果を出力する。また、関連判定部12がプログラム311中でデータベース201に対する変更を行うコードの場所を特定する場合、出力部13は、関連判定部12により特定された場所を出力する。   The output unit 13 outputs the result of determination by the association determination unit 12. In addition, when the association determination unit 12 specifies the location of the code for changing the database 201 in the program 311, the output unit 13 outputs the location specified by the association determination unit 12.

プログラム解析部15は、プログラム記憶部10に格納されているプログラム311の解析を行う。プログラム解析部15は、特に、プログラム記憶部10に格納されているプログラム311によって行われる、データベース201中のデータを変更する処理の解析を、プログラム311を解析することによって行う。   The program analysis unit 15 analyzes the program 311 stored in the program storage unit 10. In particular, the program analysis unit 15 analyzes the process of changing data in the database 201 performed by the program 311 stored in the program storage unit 10 by analyzing the program 311.

入力装置4は、ユーザが分析装置1に対して入力を行う装置である。入力装置4は、キーボード、マウス、あるいは他の入力装置である。   The input device 4 is a device for a user to input to the analysis device 1. The input device 4 is a keyboard, a mouse, or another input device.

出力装置5は、分析装置1がユーザに対して出力を行う装置である。出力装置5は、例えばディスプレイ装置である。   The output device 5 is a device that the analysis device 1 outputs to the user. The output device 5 is a display device, for example.

次に、本実施形態の動作について、図面を参照して詳細に説明する。   Next, the operation of the present embodiment will be described in detail with reference to the drawings.

図2は、本実施形態の分析装置1の動作の一例を表すフローチャートである。   FIG. 2 is a flowchart showing an example of the operation of the analysis apparatus 1 of the present embodiment.

図2に示す動作の開始時に、プログラム記憶部10は、データベース201に含まれるデータに対して変更を行うプログラム311を記憶している。   At the start of the operation illustrated in FIG. 2, the program storage unit 10 stores a program 311 that changes data included in the database 201.

プログラム記憶部10が記憶するプログラム311は、例えば、アクセス装置3が実行するプログラム311のソースコードである。プログラム記憶部10が記憶するプログラム311は、関連判定部12やプログラム解析部15が構造の解析を行える形式で格納されていればよい。例えば、プログラム記憶部10が記憶するプログラム311は、ソースコードに関連付けられた、コンパイル後の実行可能コードであってもよい。以下では、主に、プログラム記憶部10に格納されているプログラム311が、アクセス装置3が実行するプログラム311のソースコードである場合の説明を行う。なお、アクセス装置3が、コンパイル後のコードではなく、ソースコードの形式のプログラム311をメモリにロードして実行するよう構成されている場合、プログラム311のソースコードは、実行可能コードと見なすことができる。プログラム記憶部10が記憶するプログラム311が、アクセス装置3のCPU30が実行可能な形式である場合、アクセス装置3のCPU30は、プログラム記憶部10から読み出したプログラム311を、メモリ31にロードして実行してもよい。また、プログラム311は複数のファイルで構成されていてもよい。   The program 311 stored in the program storage unit 10 is, for example, the source code of the program 311 executed by the access device 3. The program 311 stored in the program storage unit 10 only needs to be stored in a format that allows the relationship determination unit 12 and the program analysis unit 15 to analyze the structure. For example, the program 311 stored in the program storage unit 10 may be a compiled executable code associated with the source code. Below, the case where the program 311 stored in the program storage part 10 is the source code of the program 311 which the access apparatus 3 performs mainly is demonstrated. When the access device 3 is configured to load a program 311 in the form of source code into a memory and execute it instead of the compiled code, the source code of the program 311 may be regarded as executable code. it can. When the program 311 stored in the program storage unit 10 has a format that can be executed by the CPU 30 of the access device 3, the CPU 30 of the access device 3 loads the program 311 read from the program storage unit 10 into the memory 31 and executes it. May be. The program 311 may be composed of a plurality of files.

アクセス装置3が、与えられたパラメータを使用してプログラム311を実行する場合、プログラム記憶部10は、過去にアクセス装置3によってプログラム311が実行された時のパラメータを、プログラム311に関連付けて記憶していてもよい。アクセス装置3が、一度に複数のパラメータを使用してプログラム311を実行する場合、プログラム記憶部10は、一度に使用されるパラメータの組み合わせを、プログラム311に関連付けて記憶する。アクセス装置3が、異なるパラメータを使用して、同じプログラム311を複数回実行した場合、プログラム記憶部10は、同じプログラム311にパラメータの組み合わせを2つ以上関連付けて記憶する。分析装置1は、そのようなパラメータを、アクセス装置3から取得し、プログラム記憶部10に格納すればよい。また、アクセス装置3は、パラメータを表すデータとプログラム311の識別子を、例えばプログラム311の実行時に、分析装置1に送信するよう構成されていればよい。   When the access device 3 executes the program 311 using the given parameters, the program storage unit 10 stores parameters associated with the program 311 when the program 311 has been executed by the access device 3 in the past. It may be. When the access device 3 executes the program 311 using a plurality of parameters at a time, the program storage unit 10 stores a combination of parameters used at a time in association with the program 311. When the access device 3 executes the same program 311 multiple times using different parameters, the program storage unit 10 stores two or more parameter combinations in association with the same program 311. The analysis device 1 may acquire such parameters from the access device 3 and store them in the program storage unit 10. The access device 3 only needs to be configured to transmit data representing parameters and the identifier of the program 311 to the analysis device 1 when the program 311 is executed, for example.

プログラム記憶部10は、複数のプログラム311を記憶していてもよい。それぞれのプログラム311が1個以上のファイルで構成される場合、プログラム記憶部10は、それぞれのファイルを、そのファイルが属するプログラム311の識別子に関連付けて記憶する。   The program storage unit 10 may store a plurality of programs 311. When each program 311 is composed of one or more files, the program storage unit 10 stores each file in association with the identifier of the program 311 to which the file belongs.

図2に示す動作の例では、まず、プログラム解析部15が、プログラム記憶部10から、プログラム311を読み出す(ステップS101)。   In the example of the operation illustrated in FIG. 2, first, the program analysis unit 15 reads the program 311 from the program storage unit 10 (step S101).

プログラム311が複数のファイルによって構成されている場合、プログラム解析部15は、プログラム311を構成する複数のファイルをまとめて読み出せばよい。プログラム記憶部10に複数のプログラム311が格納されている場合、プログラム解析部15は、それらの複数のプログラム311を読み出す。そして、分析装置1は、読み出された複数のプログラム311からプログラム311を順次選択しながら、ステップS102以下の動作を繰り返せばよい。プログラム311に関連付けられたパラメータが存在する場合は、プログラム解析部15は、さらに、そのパラメータを読み出す。   When the program 311 includes a plurality of files, the program analysis unit 15 may read the plurality of files constituting the program 311 together. When a plurality of programs 311 are stored in the program storage unit 10, the program analysis unit 15 reads the plurality of programs 311. And the analyzer 1 should just repeat the operation | movement after step S102, selecting the program 311 from the some program 311 read sequentially. When there is a parameter associated with the program 311, the program analysis unit 15 further reads out the parameter.

次に、プログラム解析部15が、読み出されたプログラム311を解析する(ステップS102)。   Next, the program analysis unit 15 analyzes the read program 311 (step S102).

ステップS102で、プログラム解析部15は、プログラム311の解析を行う。プログラム解析部15は、プログラム記憶部10が記憶するプログラム311に使用されている言語に応じた、既存の解析技術を使用して、プログラム311の解析を行えばよい。プログラム解析部15における解析技術として、例えば、プログラム311のデバッガに使用される解析技術が使用可能である。   In step S102, the program analysis unit 15 analyzes the program 311. The program analysis unit 15 may analyze the program 311 using an existing analysis technique according to the language used for the program 311 stored in the program storage unit 10. As an analysis technique in the program analysis unit 15, for example, an analysis technique used for a debugger of the program 311 can be used.

プログラム311の構造の解析では、プログラム解析部15は、プログラム311の制御構造を解析する。また、プログラム解析部15は、データベース201のデータに対して、挿入を行う命令、更新を行う命令、及び削除を行う命令を抽出する。本発明の実施形態の説明では、データベース201のデータに対する、挿入、更新、及び削除は、変更と表記される。さらに、これらの挿入を行う命令、更新を行う命令、及び削除を行う命令は変更命令と表記される。変更は、データベース201中のデータに変化を生じさせる他の処理を含んでいてもよい。変更命令は、命令を実行することによりデータベース201中のデータに変化が生じる他の命令を含んでいてもよい。命令は、コンピュータに行わせる処理を表すプログラム311の一部分である。   In the analysis of the structure of the program 311, the program analysis unit 15 analyzes the control structure of the program 311. In addition, the program analysis unit 15 extracts an instruction for insertion, an instruction for update, and an instruction for deletion from the data in the database 201. In the description of the embodiment of the present invention, insertion, update, and deletion with respect to data in the database 201 are referred to as change. Furthermore, these instructions for inserting, updating, and deleting are denoted as change instructions. The change may include other processing that causes a change in the data in the database 201. The change instruction may include another instruction that causes a change in data in the database 201 by executing the instruction. The instruction is a part of the program 311 that represents processing to be performed by the computer.

さらに、プログラム解析部15は、データベース201のデータに対する変更命令において、指定される属性とその属性値や、指定される属性値を表す変数を抽出する。そして、プログラム解析部15は、指定される属性値を表す変数に、具体的な値を設定する命令を抽出する。プログラム解析部15は、プログラム311の制御構造の中で、変数に設定された値が有効な範囲を抽出する。変数に設定された値が有効な範囲は、変数に値が代入される場所から、その変数に他の値が代入される場所までの範囲を意味する。   Further, the program analysis unit 15 extracts a specified attribute, its attribute value, and a variable representing the specified attribute value in a change instruction for data in the database 201. Then, the program analysis unit 15 extracts a command for setting a specific value in the variable representing the designated attribute value. The program analysis unit 15 extracts a range in which the value set for the variable is valid in the control structure of the program 311. The range in which the value set for the variable is valid means the range from the place where the value is assigned to the variable to the place where another value is assigned to the variable.

プログラム解析部15が出力する解析の結果は、例えば、抽出された、変更命令、属性値を設定する命令、変数に属性値を設定する命令と、それらがプログラム311中で記述されている場所を含む。プログラム311中で記述されている場所は、例えば、ファイルの識別子と、そのファイル内の記述の位置である。記述の位置は、例えば、その記述の行の番号、あるいは、ファイルの先頭からのバイト数等で表される。解析の結果は、それぞれの命令において指定されている属性と属性値の情報を含む。属性値が代入された変数が属性値として命令に与えられている場合、属性値の情報は、その変数を特定する情報である。値が属性値として命令に与えられている場合、属性値の情報は、その値である。また、解析の結果は、変数と、その変数に代入される値と、変数に値が代入される場所を含む。変数への値の代入は、引数として関数に与えられる値が、関数内の引数を表す変数に代入されることも含む。そして、解析の結果は、変数に設定された値が有効な範囲を含む。解析の結果は、以上の例に限られない。   The analysis result output by the program analysis unit 15 includes, for example, the extracted change instruction, instruction to set an attribute value, instruction to set an attribute value in a variable, and a place where these are described in the program 311 Including. The location described in the program 311 is, for example, a file identifier and a description position in the file. The position of the description is represented by, for example, the line number of the description or the number of bytes from the beginning of the file. The result of the analysis includes the attribute and attribute value information specified in each instruction. When a variable to which an attribute value is assigned is given to the instruction as an attribute value, the attribute value information is information for specifying the variable. When a value is given to an instruction as an attribute value, the attribute value information is that value. The analysis result includes a variable, a value assigned to the variable, and a place where the value is assigned to the variable. Assigning a value to a variable includes assigning a value given to a function as an argument to a variable representing the argument in the function. The analysis result includes a range in which the value set in the variable is valid. The result of the analysis is not limited to the above example.

プログラム311に関連付けられているパラメータが存在する場合、プログラム解析部15は、そのパラメータを使用して、プログラム311の解析を行うこともできる。プログラム311に関連付けられているパラメータの組み合わせが複数存在する場合、プログラム解析部15は、パラメータの組み合わせ毎に、組み合わせに含まれるパラメータを使用してプログラム311の解析を行うことができる。   When there is a parameter associated with the program 311, the program analysis unit 15 can also analyze the program 311 using the parameter. When there are a plurality of parameter combinations associated with the program 311, the program analysis unit 15 can analyze the program 311 using the parameters included in the combination for each parameter combination.

そして、プログラム解析部15は、解析の結果を、関連判定部12に送信する。あるいは、プログラム解析部15は、解析の結果を、プログラム記憶部10に格納してもよい。プログラム記憶部10に複数のプログラム311が格納されている場合、プログラム解析部15は、解析の結果を、例えばプログラム311の識別子に関連付けて、プログラム記憶部10に格納してもよい。そして、関連判定部12が、プログラム記憶部10から、解析の結果を読み出してもよい。   Then, the program analysis unit 15 transmits the analysis result to the association determination unit 12. Alternatively, the program analysis unit 15 may store the analysis result in the program storage unit 10. When a plurality of programs 311 are stored in the program storage unit 10, the program analysis unit 15 may store the analysis result in the program storage unit 10 in association with the identifier of the program 311, for example. Then, the association determination unit 12 may read the analysis result from the program storage unit 10.

次に、特定データ取得部11が、属性の識別子と、その識別子に関連付けられた属性値との組み合わせを、1個以上取得する(ステップS103)。   Next, the specific data acquisition unit 11 acquires one or more combinations of attribute identifiers and attribute values associated with the identifiers (step S103).

特定データ取得部11は、例えば、入力装置4を介してユーザが入力した、属性の識別子と属性値の組み合わせを取得する。   For example, the specific data acquisition unit 11 acquires a combination of an attribute identifier and an attribute value input by the user via the input device 4.

特定データ取得部11は、入力装置4を介してユーザが指定した、データベース201が含むデータを、データベース装置2から取得してもよい。そして特定データ取得部11は、取得したデータに含まれる属性の、識別子と属性値の組み合わせを取得してもよい。特定データ取得部11は、取得したデータが含む全ての属性の、識別子と属性値の組み合わせではなく、取得したデータが含む属性のうち、属性入力装置4を介してユーザが指定した属性の、識別子と属性値の組み合わせを取得してもよい。特定データ取得部11は、ユーザが入力した条件によってデータベース201から検索されたデータを取得してもよい。特定データ取得部11は、あらかじめ決められている条件によってデータベース201から検索されたデータを取得してもよい。例えば、特定データ取得部11は、挿入された時期が最も新しいデータを取得してもよい。あるいは、特定データ取得部11は、特定データ取得部11は、データベース201中に最も多く存在するデータを取得してもよい。上述のように、特定データ取得部11が取得する全ての組み合わせに含まれる属性値を、その属性値と同じ組み合わせに識別子が含まれる属性の属性値として含むデータは、特定データと表記される。ステップS103で特定データ取得部11がデータを取得し、取得したデータに含まれるいずれか1個以上の属性の、識別子と属性値の組み合わせを取得する場合、その取得されるデータは特定データである。   The specific data acquisition unit 11 may acquire data included in the database 201 specified by the user via the input device 4 from the database device 2. Then, the specific data acquisition unit 11 may acquire a combination of an identifier and an attribute value of the attribute included in the acquired data. The specific data acquisition unit 11 is not a combination of identifiers and attribute values of all the attributes included in the acquired data, but the identifiers of the attributes specified by the user via the attribute input device 4 among the attributes included in the acquired data And a combination of attribute values may be acquired. The specific data acquisition unit 11 may acquire data searched from the database 201 according to conditions input by the user. The specific data acquisition unit 11 may acquire data searched from the database 201 under a predetermined condition. For example, the specific data acquisition unit 11 may acquire data with the latest insertion time. Alternatively, the specific data acquisition unit 11 may acquire the most existing data in the database 201. As described above, data including attribute values included in all combinations acquired by the specific data acquiring unit 11 as attribute values of attributes including identifiers in the same combination as the attribute values is denoted as specific data. When the specific data acquisition unit 11 acquires data in step S103 and acquires a combination of an identifier and an attribute value of any one or more attributes included in the acquired data, the acquired data is specific data. .

図3は、データベース201中のデータの一例を表す図である。図3に示す例では、データは、属性名すなわち属性の識別子がAである属性の識別子及び属性値の組み合わせと、属性名がBである属性の識別子及び属性値の組み合わせを含む。図3に示すデータでは、属性Aの属性値は100である。また、属性Bの属性値は200である。   FIG. 3 is a diagram illustrating an example of data in the database 201. In the example shown in FIG. 3, the data includes a combination of an attribute identifier and an attribute value whose attribute name is an attribute identifier A, and a combination of an attribute identifier and an attribute value whose attribute name is B. In the data shown in FIG. 3, the attribute value of attribute A is 100. The attribute value of attribute B is 200.

図4は、特定データ取得部11が取得したデータに対して、ユーザが指定した属性を表す図である。図4に示す例では、データが含む属性は、属性A、属性B、及び属性Cである。また、ユーザが指定した属性は、属性Aである。   FIG. 4 is a diagram illustrating attributes specified by the user for the data acquired by the specific data acquisition unit 11. In the example illustrated in FIG. 4, the attributes included in the data are attribute A, attribute B, and attribute C. The attribute designated by the user is attribute A.

次に、関連判定部12は、データベース201中の特定データに対して、プログラム311が変更を行った可能性があるか否かを判定する(ステップS104)。言い換えると、関連判定部12は、取得された組み合わせに識別子が含まれる属性の属性値として、組み合わせに含まれる属性値が指定される変更が、プログラム311によってデータベース201中のデータに対して行われ得たか否かを判定する。   Next, the association determination unit 12 determines whether or not there is a possibility that the program 311 has changed the specific data in the database 201 (step S104). In other words, the association determination unit 12 changes the data in the database 201 by the program 311 so that the attribute value included in the combination is specified as the attribute value of the attribute whose identifier is included in the acquired combination. It is determined whether or not it has been obtained.

関連判定部12は、例えば、プログラム解析部15がプログラム311を解析した結果に基づき、プログラム311から、以下で説明される、データベース201中の特定データに対する変更命令を検出することによって、ステップS104における判定を行えばよい。データベース201中の特定データに対して変更を行う変更命令を、以下では、特定データ変更命令とも表記する。特定データ変更命令は、取得された組み合わせに識別子が含まれるいずれか1個以上の属性の属性値として、その組み合わせに含まれ、その識別子に関連付けられている属性値が、変更命令の実行時に指定され得る変更命令である。ただし、特定データ変更命令には、取得されたいずれか組み合わせに対して、組み合わせに識別子が含まれる属性の属性値として、その組み合わせに含まれる属性値とは異なる属性値が、変更命令の実行時に指定される変更命令は含まれない。   For example, the association determination unit 12 detects the change instruction for the specific data in the database 201 described below from the program 311 based on the result of the analysis of the program 311 by the program analysis unit 15. A determination may be made. A change command for changing specific data in the database 201 is also referred to as a specific data change command below. The specific data change instruction is included in the combination as an attribute value of one or more attributes whose identifier is included in the acquired combination, and the attribute value associated with the identifier is specified when the change instruction is executed Change order that can be done. However, in the specific data change instruction, for any combination obtained, an attribute value different from the attribute value included in the combination as an attribute value including an identifier in the combination is displayed when the change instruction is executed. The specified change order is not included.

例えば、1個の組み合わせが取得される場合、関連判定部12は、その組み合わせに識別子が含まれる属性の属性値として、その組み合わせに含まれる属性値が指定される変更命令を検出する。2個以上の組み合わせが取得される場合、関連判定部12は、少なくともいずれか1個の組み合わせに対して、その組み合わせに識別子が含まれる属性の属性値として、その組み合わせに含まれる属性値が指定される変更命令を検出する。ただし、関連判定部12は、取得された他の組み合わせに対して、その組み合わせに識別子が含まれる属性の属性値として、その組み合わせに含まれる属性値以外の属性値が指定される変更命令を検出しない。   For example, when one combination is acquired, the association determination unit 12 detects a change instruction in which an attribute value included in the combination is specified as an attribute value of an attribute whose identifier is included in the combination. When two or more combinations are acquired, the association determination unit 12 designates, for at least any one combination, an attribute value included in the combination as an attribute value including an identifier in the combination. Detect change instruction to be executed. However, the association determination unit 12 detects a change instruction in which an attribute value other than the attribute value included in the combination is specified as the attribute value of the attribute including the identifier for the other combination acquired. do not do.

関連判定部12は、プログラム311から特定データ変更命令が検出された場合、データベース201中の特定データに対して、プログラム311が変更を行った可能性があると判断する。関連判定部12は、プログラム311から特定データ変更命令が検出されない場合、データベース201中の特定データに対して、プログラム311が変更を行った可能性がないと判断する。   When the specific data change instruction is detected from the program 311, the association determination unit 12 determines that there is a possibility that the program 311 has changed the specific data in the database 201. When the specific data change instruction is not detected from the program 311, the association determination unit 12 determines that there is no possibility that the program 311 has changed the specific data in the database 201.

関連判定部12は、具体的には、例えば次のように、ステップS104における判定を行う。   Specifically, the association determination unit 12 performs the determination in step S104 as follows, for example.

図5は、関連判定部12の、ステップS104における判定処理の詳細を例示する府フローチャートである。   FIG. 5 is a flowchart illustrating details of the determination processing in step S104 by the association determination unit 12.

図5によると、関連判定部12は、まず、プログラム解析部15から、プログラム311の解析結果を取得する(ステップS111)。前述のように、プログラム311の解析結果は、プログラム311中の制御構造、変更命令、変更命令で指定される属性値や変数、変数に代入される値、変数に代入された値が有効な範囲、及び、それらがプログラム311中で記述されている場所を含む。上述のように、本発明の実施形態の説明では、挿入を行う命令、更新を行う命令、削除を行う命令は、まとめて、変更命令とも表記される。また、上述のように、変更命令は、命令を実行することによりデータベース201中のデータに変化が生じる、他の命令を含んでいてもよい。   According to FIG. 5, the association determination unit 12 first acquires the analysis result of the program 311 from the program analysis unit 15 (step S111). As described above, the analysis result of the program 311 indicates that the control structure in the program 311, the change instruction, the attribute value or variable specified by the change instruction, the value assigned to the variable, and the value assigned to the variable are valid ranges And the location where they are described in program 311. As described above, in the description of the embodiment of the present invention, the instruction to perform insertion, the instruction to perform update, and the instruction to perform deletion are collectively referred to as a change instruction. Further, as described above, the change instruction may include another instruction that causes a change in data in the database 201 by executing the instruction.

解析結果に未選択の変更命令が存在する場合(ステップS112でYes)、関連判定部12は、未選択の変更命令からいずれか一つの変更命令を選択する(ステップS113)。   If there is an unselected change command in the analysis result (Yes in step S112), the association determination unit 12 selects any one change command from the unselected change commands (step S113).

そして、関連判定部12は、プログラム311の解析結果に基づき、選択された変更命令の実行時に、指定されている属性を特定する(ステップS114)。すなわち、関連判定部12は、変更命令の対象であるデータを選択するための条件としてプログラム311中で指定される、属性を特定する。さらに、関連判定部12は、変更命令の対象であるデータの、変更命令による変更後の属性値としてプログラム311中で指定される、属性を特定する。   Then, the association determination unit 12 identifies the specified attribute when executing the selected change instruction based on the analysis result of the program 311 (step S114). That is, the association determination unit 12 specifies an attribute specified in the program 311 as a condition for selecting data that is the target of the change instruction. Further, the association determination unit 12 specifies an attribute specified in the program 311 as the attribute value after the change by the change instruction of the data to be changed.

次に、関連判定部12は、選択された変更命令が特定データ変更命令であるか否かを判定する(ステップS115)。   Next, the association determination unit 12 determines whether or not the selected change instruction is a specific data change instruction (step S115).

ステップS115で、まず、関連判定部12は、選択された変更命令において、ステップS103で取得された組み合わせに識別子が含まれる属性が指定されているか否かを判定する。選択された変更命令において、ステップS103で取得された組み合わせに識別子が含まれる属性が指定されていない場合、関連判定部12は、選択された変更命令が特定データ変更命令ではないと判定する。   In step S115, the association determination unit 12 first determines whether or not an attribute including an identifier is specified in the combination acquired in step S103 in the selected change instruction. In the selected change instruction, when the attribute including the identifier is not specified in the combination acquired in step S103, the association determination unit 12 determines that the selected change instruction is not the specific data change instruction.

選択された変更命令において、ステップS103で取得された組み合わせに識別子が含まれる属性が指定されている場合、関連判定部12は、変更命令に対して指定されている各属性の属性値を特定する。   In the selected change instruction, when an attribute including an identifier is specified in the combination acquired in step S103, the association determination unit 12 specifies an attribute value of each attribute specified for the change instruction. .

具体的には、まず、関連判定部12は、選択された属性の属性値が設定されている、プログラム311中の場所を特定する。例えば、属性値が直接変更命令に渡されている場合、すなわち、プログラム311中の変更命令の場所に属性値の値そのものが記述されている場合、プログラム311中で属性値が設定されている場所は、変更命令の場所である。また、属性値が格納されている変数が変更命令に渡されている場合、プログラム311中で属性値が設定されている場所は、その属性値が変数に代入されている場所ある。   Specifically, first, the association determination unit 12 specifies a place in the program 311 where the attribute value of the selected attribute is set. For example, when the attribute value is directly passed to the change command, that is, when the attribute value itself is described in the location of the change command in the program 311, the location where the attribute value is set in the program 311 Is the location of the change order. When a variable in which an attribute value is stored is passed to the change instruction, the place where the attribute value is set in the program 311 is a place where the attribute value is assigned to the variable.

以下の説明において、プログラム311中の、属性値が設定されている場所を、属性値確定箇所と表記する。また、プログラム311中の、変更命令が記述されている場所と、その変更命令で指定される属性値が設定されている場所を、関連歌書と表記する。   In the following description, a place where an attribute value is set in the program 311 will be referred to as an attribute value fixed place. Further, a place where a change command is described in the program 311 and a place where an attribute value specified by the change command is set are referred to as related song books.

関連判定部12は、特定された場所で設定されている属性値を特定する。特定された場所で、2個以上の値が属性値として設定されうる場合、関連判定部12は、設定される得る属性値の集合や、設定される得る属性値の範囲を特定する。その範囲は、有限でなくてもよい。例えば、プログラム311を実行する際のパラメータとして属性値が与えられる場合や、プログラム311の実行中のユーザによる入力により属性値が与えられる場合、属性値はプログラム311を実行するまで定まらない。属性値が定まらない場合、関連判定部12は、変更命令の実行時に、その属性値が取りうる全ての値が設定されうると判定する。プログラム記憶部10に、プログラム311に関連付けられている、そのプログラム311が過去に実行された際与えられたパラメータが格納されている場合、関連判定部12は、そのパラメータを使用して、属性値を特定してもよい。   The association determination unit 12 specifies an attribute value set at the specified location. When two or more values can be set as attribute values at the specified location, the association determination unit 12 specifies a set of attribute values that can be set and a range of attribute values that can be set. The range need not be finite. For example, when an attribute value is given as a parameter when executing the program 311 or when an attribute value is given by an input by a user who is executing the program 311, the attribute value is not determined until the program 311 is executed. When the attribute value is not determined, the association determination unit 12 determines that all values that can be taken by the attribute value can be set when the change instruction is executed. When the program storage unit 10 stores a parameter associated with the program 311 and given when the program 311 has been executed in the past, the association determination unit 12 uses the parameter to determine the attribute value. May be specified.

データを選択するための条件として属性値が指定されている属性が、変更後の属性値が指定されている属性に含まれる、関連判定部12は、変更後の属性値として指定されている属性値を、指定されている属性値として選択する。   The attribute for which the attribute value is specified as a condition for selecting data is included in the attribute for which the attribute value after the change is specified. The association determination unit 12 uses the attribute specified as the attribute value after the change. Select the value as the specified attribute value.

そして、関連判定部12は、例えば、未選択の属性が無くなるまで、以下の動作を繰り返す。   Then, for example, the association determination unit 12 repeats the following operation until there is no unselected attribute.

関連判定部12は、変更命令に指定されている属性とその属性値から、未選択の属性とその属性値を一つ選択する。この選択された属性値を、第1の属性値と表記する。   The association determination unit 12 selects one unselected attribute and its attribute value from the attribute specified in the change command and its attribute value. This selected attribute value is referred to as a first attribute value.

関連判定部12は、選択された属性の識別子に関連付けられている属性値を、ステップS103で取得された組み合わせから抽出する。この抽出された属性値を、第2の属性値と表記する。関連判定部12は、第1の属性値と第2の属性値を比較し、それらが整合するか否かを判定する。第1の属性値と第2の属性値が一致する場合、関連判定部12は、第1の属性値と第2の属性値が整合すると判定する。ステップS115で特定された第1の属性値が、属性値の集合または属性値の範囲である場合、第2の属性値がその属性値の集合又は属性値の範囲に含まれれば、関連判定部12は、第1の属性値と第2の属性値が整合すると判定する。例えば、第1の属性値が、実行時にプログラム311に与えられるパラメータによって定まる場合、第1の属性値は、プログラム311の実行時まで定まらない。第1の属性値が、プログラム311の実行時まで定まらない場合、関連判定部12は、第1の属性値と第2の属性値が整合すると判定する。   The association determination unit 12 extracts the attribute value associated with the selected attribute identifier from the combination acquired in step S103. This extracted attribute value is referred to as a second attribute value. The association determination unit 12 compares the first attribute value and the second attribute value, and determines whether or not they match. When the first attribute value matches the second attribute value, the association determination unit 12 determines that the first attribute value matches the second attribute value. If the first attribute value identified in step S115 is a set of attribute values or a range of attribute values, the association determination unit if the second attribute value is included in the set of attribute values or the range of attribute values 12 determines that the first attribute value matches the second attribute value. For example, when the first attribute value is determined by a parameter given to the program 311 at the time of execution, the first attribute value is not determined until the program 311 is executed. If the first attribute value is not determined until the program 311 is executed, the association determination unit 12 determines that the first attribute value matches the second attribute value.

第1の属性値が一つの値であり、第1の属性値と第2の属性値が一致しない場合、関連判定部12は、第1の属性値と第2の属性値が整合しないと判定する。第1の属性値が、属性値の集合または属性値の範囲であり、第2の属性値がその属性値の集合又は属性値の範囲に含まれない場合、関連判定部12は、第1の属性値と第2の属性値が整合しないと判定する。   When the first attribute value is one value and the first attribute value and the second attribute value do not match, the association determination unit 12 determines that the first attribute value and the second attribute value do not match To do. When the first attribute value is a set of attribute values or a range of attribute values, and the second attribute value is not included in the set of attribute values or the range of attribute values, the association determination unit 12 It is determined that the attribute value and the second attribute value do not match.

ステップS103で取得された組み合わせに、選択された属性の属性値が含まれていない場合、関連判定部12は、第1の属性値と第2の属性値の比較を行わない。   If the combination acquired in step S103 does not include the attribute value of the selected attribute, the association determination unit 12 does not compare the first attribute value and the second attribute value.

第1の属性値と第2の属性値が整合しない属性が存在しない場合、関連判定部12は、選択された変更命令が特定データ変更命令であると判定する。少なくともいずれか一つの属性の、第1の属性値と第2の属性値が整合しない場合、関連判定部12は、選択された変更命令が特定データ変更命令ではないと判定する。   When there is no attribute that does not match the first attribute value and the second attribute value, the association determination unit 12 determines that the selected change instruction is a specific data change instruction. When the first attribute value and the second attribute value of at least one of the attributes do not match, the association determination unit 12 determines that the selected change instruction is not a specific data change instruction.

選択された変更命令が特定データ変更命令であると判定された場合(ステップS116でYes)、すなわち、プログラム311から特定データ変更命令が検出された場合、プログラム311を実行することにより、特定データが変更される可能性がある。したがって、この場合、関連判定部12は、データベース201中の特定データに対して、プログラム311が変更を行った可能性があると判断する(ステップS117)。そして、関連判定部12は、図5に示す動作を終了する。   When it is determined that the selected change instruction is a specific data change instruction (Yes in step S116), that is, when a specific data change instruction is detected from the program 311, the specific data is obtained by executing the program 311. Subject to change. Therefore, in this case, the association determination unit 12 determines that there is a possibility that the program 311 has changed the specific data in the database 201 (step S117). Then, the association determination unit 12 ends the operation illustrated in FIG.

選択された変更命令が特定データ変更命令ではないと判定された場合(ステップS116でNo)、関連判定部12の動作は、ステップS112に戻る。   When it is determined that the selected change command is not the specific data change command (No in step S116), the operation of the association determination unit 12 returns to step S112.

プログラム311の解析結果に、変更命令が含まれない場合、未選択の変更命令は存在しない。また、プログラム311の解析結果に含まれる全ての変更命令が、特定データ変更命令でない場合、最終的に未選択の変更命令は存在しなくなる。   If the analysis result of the program 311 does not include a change command, there is no unselected change command. In addition, when all the change commands included in the analysis result of the program 311 are not specific data change commands, there are finally no unselected change commands.

未選択の変更命令が存在しない場合(ステップS112でNo)、関連判定部12は、データベース201中の特定データに対して、プログラム311が変更を行った可能性がないと判断する(ステップS118)。そして、関連判定部12は、図5に示す動作は終了する。   When there is no unselected change command (No in step S112), the association determination unit 12 determines that there is no possibility that the program 311 has changed the specific data in the database 201 (step S118). . Then, the association determination unit 12 ends the operation illustrated in FIG.

ステップS104の動作の終了後、出力部13は、ステップS104の結果を出力する(ステップS105)。出力部13は、ステップS104の結果を、プログラム311の識別子に関連付けて出力してもよい。   After the operation of step S104 is completed, the output unit 13 outputs the result of step S104 (step S105). The output unit 13 may output the result of step S104 in association with the identifier of the program 311.

データベース201中の特定データに対して、プログラム311が変更を行った可能性がある場合、出力部13は、データベース201中の特定データに対して、プログラム311が変更を行った可能性があることを表す文字列、記号、あるいは図形等を出力する。データベース201中の特定データに対して、プログラム311が変更を行った可能性がある場合、出力部13は、ステップS104の結果として、プログラム311中の変更命令の場所や、変更命令の実行時に指定される属性値が設定される場所を表示してもよい。   If there is a possibility that the program 311 has changed the specific data in the database 201, the output unit 13 may have changed the specific data in the database 201. A character string, symbol, figure or the like representing is output. When there is a possibility that the program 311 has changed the specific data in the database 201, the output unit 13 designates the location of the change instruction in the program 311 and the execution time of the change instruction as a result of step S104. The location where the attribute value to be set is set may be displayed.

データベース201中の特定データに対して、プログラム311が変更を行った可能性が無い場合、出力部13は、データベース201中の特定データに対して、プログラム311が変更を行った可能性が無いことを表す文字列、記号、あるいは図形等を出力する。データベース201中の特定データに対して、プログラム311が変更を行った可能性が無い場合、出力部13は、出力を行わなくてもよい。   When there is no possibility that the program 311 has changed the specific data in the database 201, the output unit 13 has no possibility that the program 311 has changed the specific data in the database 201. A character string, symbol, figure or the like representing is output. If there is no possibility that the program 311 has changed the specific data in the database 201, the output unit 13 may not perform output.

次に、本実施形態の効果について説明する。   Next, the effect of this embodiment will be described.

本実施形態には、プログラム311が、与えられた属性値を含むデータに対する変更を行い得たプログラム311であるか否かを判定できるという効果がある。   In this embodiment, there is an effect that it can be determined whether or not the program 311 is a program 311 that has been able to change data including a given attribute value.

その理由は、関連判定部12が、特定データ取得部11が取得した属性値が指定されている、データを変更する変更命令を、プログラム311から検出するからである。   The reason is that the association determination unit 12 detects from the program 311 a change instruction for changing data, in which the attribute value acquired by the specific data acquisition unit 11 is specified.

また、本実施形態には、ユーザが個々の属性値を入力する必要がなくなるという他の効果がある。   In addition, this embodiment has another effect that the user does not need to input individual attribute values.

その理由は、特定データ取得部11が、ユーザにより指定されたデータから、属性値を取得するからである。   The reason is that the specific data acquisition unit 11 acquires the attribute value from the data specified by the user.

(第2の実施形態)
次に、本発明の第2の実施形態について、図面を参照して詳細に説明する。
(Second Embodiment)
Next, a second embodiment of the present invention will be described in detail with reference to the drawings.

本実施形態の情報処理システム100の構成は、図1に示す、第1の実施形態の情報処理システム100の構成と同じである。   The configuration of the information processing system 100 of the present embodiment is the same as the configuration of the information processing system 100 of the first embodiment shown in FIG.

本実施形態の関連判定部12は、さらに、プログラム311に含まれる、それぞれの特定データ変更命令の場所を特定する。また、本実施形態の関連判定部12は、それぞれの特定データ変更命令の実行時に指定される全ての属性値に対して、属性値が設定される場所を特定する。すなわち、本実施形態の関連判定部12は、抽出された全ての特定データ変更命令に対して、関連箇所を特定する。   The association determination unit 12 of the present embodiment further specifies the location of each specific data change instruction included in the program 311. In addition, the association determination unit 12 of the present embodiment specifies a place where the attribute value is set for all the attribute values specified when each specific data change instruction is executed. That is, the association determination unit 12 of the present embodiment identifies the relevant portion for all the extracted specific data change commands.

本実施形態の出力部13は、特定された、特定データ変更命令の場所と、属性値が設定される場所を出力する。すなわち、本実施形態の出力部13は、抽出された全ての特定データ変更命令に対して、関連箇所を出力する。   The output unit 13 of the present embodiment outputs the specified location of the specific data change instruction and the location where the attribute value is set. In other words, the output unit 13 of the present embodiment outputs related portions for all the extracted specific data change commands.

本実施形態の情報処理システム100の他の構成要素は、同じ番号が付与された、第1の実施形態の構成要素と同じである。従って、詳細な説明を省略する。   The other components of the information processing system 100 of the present embodiment are the same as the components of the first embodiment, which are assigned the same numbers. Therefore, detailed description is omitted.

次に、本実施形態の分析装置1の動作について、図面を参照して詳細に説明する。   Next, operation | movement of the analyzer 1 of this embodiment is demonstrated in detail with reference to drawings.

図2は、本実施形態の分析装置1の全体の動作を表す図である。   FIG. 2 is a diagram illustrating the overall operation of the analysis apparatus 1 of the present embodiment.

本実施形態の分析装置1の、ステップS101からステップS103までの動作は、第1の実施形態の分析装置1の、ステップS101からステップS103までの動作と同じである。   The operation from step S101 to step S103 of the analyzer 1 of the present embodiment is the same as the operation from step S101 to step S103 of the analyzer 1 of the first embodiment.

関連判定部12は、ステップS104において、プログラム311中の、特定データ変更命令の場所及びその特定データ変更命令で指定される属性値が設定される場所を特定する。   In step S <b> 104, the association determination unit 12 specifies the location of the specific data change command and the location where the attribute value specified by the specific data change command is set in the program 311.

図6は、特定データ変更命令の場所を全て特定する場合の、関連判定部12の、ステップS104における判定処理の詳細を例示するフローチャートである。   FIG. 6 is a flowchart illustrating the details of the determination processing in step S104 of the association determination unit 12 when all the locations of the specific data change instruction are specified.

本実施形態の分析装置1の、ステップS111からステップS116までの動作は、第1の実施形態の分析装置1の、同じ番号が付与されたステップの動作と同じである。   The operation from step S111 to step S116 of the analysis apparatus 1 of the present embodiment is the same as the operation of the steps assigned with the same numbers as the analysis apparatus 1 of the first embodiment.

ステップS115で特定された属性の、識別子と属性値の組み合わせの全てが、取得された組み合わせに含まれる場合(ステップS116でYes)、関連判定部12は、ステップS201の動作を行う。   When all the combinations of the identifier and attribute value of the attribute specified in step S115 are included in the acquired combination (Yes in step S116), the association determination unit 12 performs the operation of step S201.

ステップS201で、関連判定部12は、選択された変更命令の場所と、その変更命令に対して指定されている属性値が設定されている場所を、検出結果に追加する。関連判定部12は、例えば、プログラム311中における、選択された変更命令の記述及びその場所と、その変更命令に対して指定されている属性値を設定する記述及びその場所を、検出結果に追加してもよい。   In step S201, the association determination unit 12 adds the location of the selected change command and the location where the attribute value specified for the change command is set to the detection result. The association determination unit 12 adds, for example, the description and location of the selected change command in the program 311 and the description and location for setting the attribute value specified for the change command to the detection result. May be.

ステップS115で特定された属性の、識別子と属性値の組み合わせの全てが、取得された組み合わせに含まれない場合(ステップS116でYes)、関連判定部12の動作は、ステップS112に戻る。   When all the combinations of identifiers and attribute values of the attribute specified in step S115 are not included in the acquired combination (Yes in step S116), the operation of the association determination unit 12 returns to step S112.

ステップS112で、未選択の変更命令が存在しない場合(ステップS112でNo)、関連判定部12は、図6に示す動作を終了する。   If there is no unselected change command in Step S112 (No in Step S112), the association determination unit 12 ends the operation illustrated in FIG.

プログラム311が上述した特定データ変更命令を含んでいる場合、図6に示す動作の終了時に、検出結果には、特定データ変更命令の場所及びその特定データ変更命令で指定される属性値の設定場所が含まれる。検出結果が、特定データ変更命令を含む場合、データベース201中の特定データに対して、プログラム311が変更を行った可能性がある。プログラム311が特定データ変更命令を含まない場合、検出結果は特定データ変更命令の場所を含まれない。検出結果が特定データ変更命令を含まない場合、データベース201中の特定データに対して、プログラム311が変更を行った可能性はない。従って、本実施形態の関連判定部12も、プログラム311中の特定データ変更命令を抽出することにより、データベース201中の特定データに対して、プログラム311が変更を行った可能性の有無を判定していることになる。検出結果を、データベース201中の特定データに対して、プログラム311が変更を行った可能性の有無の判断結果と見なすことができる。   When the program 311 includes the specific data change command described above, at the end of the operation shown in FIG. 6, the detection result includes the location of the specific data change command and the setting location of the attribute value specified by the specific data change command. Is included. When the detection result includes a specific data change command, the program 311 may have changed the specific data in the database 201. When the program 311 does not include the specific data change instruction, the detection result does not include the location of the specific data change instruction. When the detection result does not include the specific data change instruction, there is no possibility that the program 311 has changed the specific data in the database 201. Therefore, the association determination unit 12 of this embodiment also determines whether or not there is a possibility that the program 311 has changed the specific data in the database 201 by extracting the specific data change instruction in the program 311. Will be. The detection result can be regarded as a determination result of the possibility that the program 311 has changed the specific data in the database 201.

ステップS105で、出力部13は、上述した検出結果を出力する。すなわち、プログラム311が上述した特定データ変更命令を含む場合、出力部13は、選択された変更命令の場所と、その変更命令に対して指定されている属性値が設定されている場所を出力する。この場合、出力部13は、例えば、プログラム311中における、選択された変更命令の記述及びその場所と、その変更命令に対して指定されている属性値を設定する記述及びその場所を、検出結果に追加してもよい。プログラム311が上述した特定データ変更命令を含まない場合、出力部13は、例えば、プログラム311がデータベース201中の上述した特定データを変更する変更命令を含まないことを出力する。あるいは、この場合、出力部13は、何も出力しなくてもよい。   In step S105, the output unit 13 outputs the detection result described above. That is, when the program 311 includes the specific data change command described above, the output unit 13 outputs the location of the selected change command and the location where the attribute value specified for the change command is set. . In this case, the output unit 13 detects, for example, the description and location of the selected change instruction in the program 311 and the description and location where the attribute value specified for the change instruction is set. May be added to When the program 311 does not include the above-described specific data change instruction, the output unit 13 outputs, for example, that the program 311 does not include the change instruction for changing the above-described specific data in the database 201. Alternatively, in this case, the output unit 13 may not output anything.

以上で説明した本実施形態には、第1の実施形態と同じ効果がある。その理由は、第1の実施形態における理由と同じである。   The present embodiment described above has the same effect as the first embodiment. The reason is the same as the reason in the first embodiment.

本実施形態には、さらに、与えられた属性値を含むデータに対する変更を行い得たプログラム311の、その変更の処理に関係する箇所を表示できるという効果がある。また、本実施形態には、データベース装置2が、データベース201のデータを変更するアクセスを記録する必要がなくなるという効果がある。   The present embodiment further has an effect of displaying a portion related to the change processing of the program 311 that can change the data including the given attribute value. In addition, this embodiment has an effect that the database apparatus 2 does not need to record an access to change data in the database 201.

その理由は、関連判定部12が、プログラム311が含む各特定データ変更命令と、その関連箇所を抽出するからである。前述のように、特定データは、特定データ取得部11が取得した識別子により特定される属性の属性値と指定、その識別子に関連付けられている、特定データ取得部11が取得した属性値を含むデータである。特定データ変更命令は、特定データに対して変更を行い得た命令である。関連箇所は、プログラム311中の特定データ変更命令と、その特定データ変更命令で指定される属性値が記載されている場所である。   The reason is that the relation determination unit 12 extracts each specific data change command included in the program 311 and its related part. As described above, the specific data is data including the attribute value and designation of the attribute specified by the identifier acquired by the specific data acquisition unit 11 and the attribute value acquired by the specific data acquisition unit 11 associated with the identifier. It is. The specific data change instruction is an instruction that can change the specific data. The related part is a place where the specific data change instruction in the program 311 and the attribute value specified by the specific data change instruction are described.

(第3の実施形態)
次に、本発明の第3の実施形態について、図面を参照して詳細に説明する。
(Third embodiment)
Next, a third embodiment of the present invention will be described in detail with reference to the drawings.

本実施形態の情報処理システム100の構成は、図1に示す、第1の実施形態の情報処理システム100の構成と同じである。   The configuration of the information processing system 100 of the present embodiment is the same as the configuration of the information processing system 100 of the first embodiment shown in FIG.

本実施形態の情報処理システム100の構成要素は、以下で説明される事項を除き、同じ番号が付与された、第2の実施形態の構成要素と同じである。   The components of the information processing system 100 of the present embodiment are the same as the components of the second embodiment, to which the same numbers are assigned, except for matters described below.

本実施形態では、特定データ変更命令は、特定データ取得部11が取得した、属性の識別子と属性値の全ての組み合わせに対して、組み合わせに識別子が含まれる属性の属性値として、組み合わせに含まれる属性値が指定される変更命令である。   In the present embodiment, the specific data change command is included in the combination as the attribute value of the attribute including the identifier in the combination for all combinations of the attribute identifier and the attribute value acquired by the specific data acquisition unit 11. This is a change instruction in which attribute values are specified.

本実施形態の関連判定部12は、上述した特定データ変更命令の場所と、その特定データ変更命令で指定される属性値が設定される場所を、プログラム311中で特定する。   In the program 311, the association determination unit 12 of the present embodiment specifies the location of the specific data change instruction described above and the location where the attribute value specified by the specific data change instruction is set.

次に、本実施形態の分析装置1の動作について、図面を参照して詳細に説明する。   Next, operation | movement of the analyzer 1 of this embodiment is demonstrated in detail with reference to drawings.

図2は、本実施形態の分析装置1の全体の動作の一例を表す図である。本実施形態の分析装置1の全体の動作は、ステップS104の動作を除き、第2の実施形態の分析装置1の全体の動作と同じである。   FIG. 2 is a diagram illustrating an example of the overall operation of the analysis apparatus 1 of the present embodiment. The overall operation of the analyzer 1 of the present embodiment is the same as the overall operation of the analyzer 1 of the second embodiment, except for the operation of step S104.

図6は、本実施形態の分析装置1の、ステップS104の動作の一例を表す図である。   FIG. 6 is a diagram illustrating an example of the operation in step S <b> 104 of the analyzer 1 according to the present embodiment.

本実施形態の分析装置1のステップS104の動作は、図6に示すステップS115の動作が、第2の実施形態の分析装置1のステップS104の動作と異なる。本実施形態の分析装置1は、ステップS104において、ステップS115の動作を除き、第2の実施形態の分析装置1と同じ動作を行う。   The operation of step S104 of the analyzer 1 of the present embodiment is different from the operation of step S104 of the analyzer 1 of the second embodiment in the operation of step S115 shown in FIG. In step S104, the analyzer 1 of the present embodiment performs the same operation as the analyzer 1 of the second embodiment, except for the operation of step S115.

ステップS115において、関連判定部12は、さらに、ステップS103で取得された組み合わせに、選択された変更命令において属性値が指定されない属性の識別子が含まれるか否かを判定する。関連判定部12は、この判定を、例えば、ステップS103で取得された組み合わせに識別子が含まれる属性が、選択された変更命令において指定されているか否かを判定した後に、行えばよい。そして、関連判定部12は、ステップS103で取得された組み合わせに、選択された変更命令において属性値が指定されない属性の識別子が含まれる場合、選択された変更命令は特定データ変更命令でないと判定する。   In step S115, the association determination unit 12 further determines whether or not the combination acquired in step S103 includes an identifier of an attribute whose attribute value is not specified in the selected change instruction. For example, the association determination unit 12 may perform this determination after determining whether or not the attribute whose identifier is included in the combination acquired in step S103 is specified in the selected change instruction. Then, when the combination acquired in step S103 includes an identifier of an attribute whose attribute value is not specified in the selected change instruction, the association determination unit 12 determines that the selected change instruction is not a specific data change instruction. .

本実施形態の関連判定部12は、ステップS115において、以上の動作を除き、第2の実施形態の関連判定部12と同じ動作を行う。   In step S115, the association determination unit 12 of the present embodiment performs the same operation as the association determination unit 12 of the second embodiment except for the above operations.

以上で説明した本実施形態には、第1及び第2の実施形態と同じ効果がある。その理由は、第1及び第2の実施形態における理由と同じである。   The present embodiment described above has the same effect as the first and second embodiments. The reason is the same as the reason in the first and second embodiments.

本実施形態には、さらに、与えられた属性値の一部を含まないデータに対する変更の処理に関連する箇所を、表示から除外することができるという効果がある。   The present embodiment further has an effect that it is possible to exclude from the display a portion related to a change process for data that does not include a part of a given attribute value.

その理由は、関連判定部12が、与えられた全ての属性値が指定された変更命令を、プログラム311から抽出するからである。   The reason is that the association determination unit 12 extracts from the program 311 a change command in which all given attribute values are specified.

(第4の実施形態)
次に、本発明の第4の実施形態について、図面を参照して詳細に説明する。
(Fourth embodiment)
Next, a fourth embodiment of the present invention will be described in detail with reference to the drawings.

本実施形態の情報処理システム100の構成は、図1に示す、第1の実施形態の情報処理システム100の構成と同じである。   The configuration of the information processing system 100 of the present embodiment is the same as the configuration of the information processing system 100 of the first embodiment shown in FIG.

本実施形態の情報処理システム100の構成要素は、以下で説明される事項を除き、同じ番号が付与された、第3の実施形態の構成要素と同じである。   The components of the information processing system 100 of the present embodiment are the same as the components of the third embodiment, to which the same numbers are assigned, except for matters described below.

本実施形態の特定データ取得部11は、属性の識別子と属性値の組み合わせに加えて、属性値が関連付けられていない属性の識別子を取得する。以下の説明では、特定データ取得部11が取得する識別子に、属性値が関連付けられていない属性は、任意値属性と表記される。   The specific data acquisition unit 11 according to the present embodiment acquires an attribute identifier that is not associated with an attribute value, in addition to a combination of an attribute identifier and an attribute value. In the following description, an attribute that is not associated with an identifier acquired by the specific data acquisition unit 11 is referred to as an arbitrary value attribute.

本実施形態では、特定データ変更命令は、前述の組み合わせに識別子が含まれる属性の属性値として、その組み合わせに含まれる属性値が指定され、任意値属性にいずれかの属性値が指定される変更命令である。また、本実施形態では、プログラム311中で、特定データ取得部11が取得した組み合わせに識別子が含まれる属性の属性値が設定される場所が、属性値確定箇所である。属性値確定箇所は、任意値属性に属性値が設定される場所は含まれない。また、プログラム311中の、特定データ変更命令が記述されている場所と、属性値確定箇所が、関連箇所である。   In the present embodiment, the specific data change instruction is a change in which the attribute value included in the combination is specified as the attribute value of the attribute including the identifier in the combination, and any attribute value is specified in the arbitrary value attribute. It is an instruction. In the present embodiment, a place where an attribute value of an attribute whose identifier is included in the combination acquired by the specific data acquisition unit 11 in the program 311 is an attribute value determination part. The attribute value fixed part does not include a place where the attribute value is set in the arbitrary value attribute. Further, the location where the specific data change instruction is described in the program 311 and the attribute value determination location are related locations.

本実施形態の関連判定部12は、本実施形態の特定データ変更命令の場所と、その特定データ変更命令で指定される、任意値属性以外の属性の属性値が設定される場所を、プログラム311中で特定する。関連判定部12は、任意値属性に属性値が設定される場所の抽出を行わない。   The association determination unit 12 according to the present embodiment determines the location of the specific data change instruction according to the present embodiment and the location where the attribute value of an attribute other than the arbitrary value attribute specified by the specific data change instruction is set as a program 311. Identify in. The association determination unit 12 does not extract a place where the attribute value is set in the arbitrary value attribute.

本実施形態の出力部13は、抽出された特定データ変更命令の関連箇所を出力する。   The output unit 13 of the present embodiment outputs a related portion of the extracted specific data change instruction.

次に、本実施形態の分析装置1の動作について、図面を参照して詳細に説明する。   Next, operation | movement of the analyzer 1 of this embodiment is demonstrated in detail with reference to drawings.

図2は、本実施形態の分析装置1の全体の動作の一例を表す図である。本実施形態の分析装置1の全体の動作は、ステップS104の動作を除き、第3の実施形態の分析装置1の全体の動作と同じである。   FIG. 2 is a diagram illustrating an example of the overall operation of the analysis apparatus 1 of the present embodiment. The overall operation of the analyzer 1 of the present embodiment is the same as the overall operation of the analyzer 1 of the third embodiment, except for the operation of step S104.

図6は、本実施形態の分析装置1の、ステップS104の動作の一例を表す図である。   FIG. 6 is a diagram illustrating an example of the operation in step S <b> 104 of the analyzer 1 according to the present embodiment.

本実施形態の分析装置1のステップS104の動作は、図6に示すステップS115の動作が、第3の実施形態の分析装置1のステップS104の動作と異なる。本実施形態の分析装置1は、ステップS104において、ステップS115の動作を除き、第3の実施形態の分析装置1と同じ動作を行う。   The operation of step S104 of the analyzer 1 of the present embodiment is different from the operation of step S104 of the analyzer 1 of the third embodiment in the operation of step S115 shown in FIG. In step S104, the analyzer 1 of this embodiment performs the same operation as that of the analyzer 1 of the third embodiment, except for the operation of step S115.

ステップS115において、関連判定部12は、さらに、選択された変更命令において、それぞれの任意値属性に属性値が指定されているか否かを判定する。関連判定部12は、この判定を、例えば、ステップS103で取得された組み合わせに、選択された変更命令において属性値が指定されない属性の識別子が含まれるか否かを判定した後に、行えばよい。そして、関連判定部12は、選択された変更命令において、いずれかの任意値属性に属性値が指定されない場合、選択された変更命令は特定データ変更命令でないと判定する。すなわち、関連判定部12は、選択された変更命令において属性値が指定される属性に、いずれかの任意値属性が含まれない場合、選択された変更命令は特定データ変更命令でないと判定する。   In step S115, the association determination unit 12 further determines whether or not an attribute value is specified for each arbitrary value attribute in the selected change instruction. For example, the association determination unit 12 may perform this determination after determining whether or not the combination acquired in step S103 includes an identifier of an attribute whose attribute value is not specified in the selected change instruction. Then, when the attribute value is not specified for any arbitrary value attribute in the selected change instruction, the association determination unit 12 determines that the selected change instruction is not a specific data change instruction. That is, the association determination unit 12 determines that the selected change instruction is not a specific data change instruction when any of the optional value attributes is not included in the attribute for which the attribute value is specified in the selected change instruction.

本実施形態の関連判定部12は、ステップS115において、以上の動作を除き、第3の実施形態の関連判定部12と同じ動作を行う。   In step S115, the association determination unit 12 of the present embodiment performs the same operation as the association determination unit 12 of the third embodiment except for the above operations.

以上で説明した本実施形態には、第1、第2、及び第3の実施形態と同じ効果がある。その理由は、第1、第2、及び第3の実施形態における理由と同じである。   The present embodiment described above has the same effects as the first, second, and third embodiments. The reason is the same as the reason in the first, second, and third embodiments.

本実施形態には、さらに、抽出する変更命令が変更を行うデータの柔軟な指定が可能になるという効果がある。   This embodiment further has an effect that the change instruction to be extracted can flexibly specify data to be changed.

その理由は、関連判定部12が、特定データ取得部11が識別子だけを取得した属性に対して、その属性の属性値が指定されている変更命令を、指定されている値によらず、抽出するからである。   The reason is that the relevancy determination unit 12 extracts a change command in which the attribute value of the attribute is specified for the attribute for which the specific data acquisition unit 11 has acquired only the identifier, regardless of the specified value. Because it does.

(第5の実施形態)
次に、本発明の第5の実施形態について、図面を参照して詳細に説明する。
(Fifth embodiment)
Next, a fifth embodiment of the present invention will be described in detail with reference to the drawings.

図7は、本実施形態の情報処理システム100Aの構成を表すブロック図である。図1に示される第1の実施形態の情報処理システム100と比較すると、本実施形態の情報処理システム100Aは、分析装置1の代わりに分析装置1Aを含む。   FIG. 7 is a block diagram showing the configuration of the information processing system 100A of the present embodiment. Compared with the information processing system 100 of the first embodiment shown in FIG. 1, the information processing system 100 </ b> A of the present embodiment includes an analysis device 1 </ b> A instead of the analysis device 1.

本実施形態の分析装置1Aは、第1の実施形態の分析装置1の各構成要素に加えて、データ順序付け部14を含む。   The analysis apparatus 1A of the present embodiment includes a data ordering unit 14 in addition to the components of the analysis apparatus 1 of the first embodiment.

本実施形態の特定データ取得部11は、属性の識別子と属性値の組み合わせを1個以上含む組と、その組に関連付けられた特徴量を取得する。   The specific data acquisition unit 11 of the present embodiment acquires a set including one or more combinations of attribute identifiers and attribute values, and a feature amount associated with the set.

本実施形態の順位付け部14は、取得された特徴量に基づき、組の順位を決定する。   The ranking unit 14 according to the present embodiment determines a group ranking based on the acquired feature amount.

本実施形態の関連判定部12は、決定された順位に従って順次組を選択する。そして、本実施形態の関連判定部12は、選択された組に含まれる組み合わせの各々に対して、第1の実施形態の関連判定部12と同様の動作を行う。本実施形態の関連判定部12は、選択された組に含まれる組み合わせの各々に対して、第2の実施形態の関連判定部12と同様の動作を行ってもよい。本実施形態の関連判定部12は、選択された組に含まれる組み合わせの各々に対して、第3の実施形態の関連判定部12と同様の動作を行ってもよい。本実施形態の特定データ取得部11は、第4の実施形態の特定データ取得部11と同様の動作を行ってもよい。そして、本実施形態の関連判定部12は、選択された組に含まれる組み合わせの各々に対して、第4の実施形態の関連判定部12と同様の動作を行ってもよい。   The association determination unit 12 of the present embodiment sequentially selects a set according to the determined order. Then, the association determination unit 12 of the present embodiment performs the same operation as the association determination unit 12 of the first embodiment for each combination included in the selected set. The association determination unit 12 of the present embodiment may perform the same operation as that of the association determination unit 12 of the second embodiment for each combination included in the selected set. The association determination unit 12 of the present embodiment may perform the same operation as that of the association determination unit 12 of the third embodiment for each combination included in the selected set. The specific data acquisition unit 11 of the present embodiment may perform the same operation as the specific data acquisition unit 11 of the fourth embodiment. Then, the association determination unit 12 of the present embodiment may perform the same operation as the association determination unit 12 of the fourth embodiment for each combination included in the selected set.

図8は、本実施形態の分析装置1Aの全体の動作の一例を表す図である。   FIG. 8 is a diagram illustrating an example of the overall operation of the analysis apparatus 1A of the present embodiment.

図8に示す、分析装置1AのステップS101とステップS102の動作は、第1の実施形態の分析装置1のステップS101とステップS102の動作と同じである。   The operations of step S101 and step S102 of the analysis apparatus 1A shown in FIG. 8 are the same as the operations of step S101 and step S102 of the analysis apparatus 1 of the first embodiment.

次に、特定データ取得部11は、それぞれ、属性の識別子とその識別子に関連付けられた属性値の組み合わせを1個以上含む、複数の組を取得する(ステップS300)。また、特定データ取得部11は、それぞれの組に関連付けられた特徴量を取得する(ステップS301)。   Next, the specific data acquisition unit 11 acquires a plurality of sets each including one or more combinations of attribute identifiers and attribute values associated with the identifiers (step S300). Further, the specific data acquisition unit 11 acquires a feature amount associated with each set (step S301).

特定データ取得部11は、例えば、ユーザが入力装置4を使用して指定した、複数の上述した組を取得する。   The specific data acquisition unit 11 acquires, for example, a plurality of the above-described sets designated by the user using the input device 4.

特定データ取得部11は、属性の識別子とその識別子に関連付けられた属性値の組み合わせを1個以上含む、複数のデータを、上述した組として取得してもよい。特定データ取得部11は、例えば、ユーザが入力装置4を使用して指定した、複数のデータを、データベース装置2のデータベース201から取得する。特定データ取得部11は、例えば、ユーザが入力装置4を使用して指定した条件や、あらかじめ指定された条件に合致するデータを、データベース201中のデータから検索してもよい。そして、特定データ取得部11は、検索された複数のデータをデータベース装置2から取得してもよい。   The specific data acquisition unit 11 may acquire a plurality of data including one or more combinations of attribute identifiers and attribute values associated with the identifiers as the above-described sets. The specific data acquisition unit 11 acquires, for example, a plurality of data designated by the user using the input device 4 from the database 201 of the database device 2. For example, the specific data acquisition unit 11 may search the data in the database 201 for data that matches a condition specified by the user using the input device 4 or a condition specified in advance. Then, the specific data acquisition unit 11 may acquire a plurality of searched data from the database device 2.

特定データ取得部11は、例えばデータベース装置2から、取得された組あるいはデータに関連付けられた特徴量を取得する。特徴量は、例えば、データベース201中の同一データが出現する頻度、すなわち、データベース201中に存在する、特徴量が関連付けられるデータと同一のデータの個数である。特徴量は、他の値であってもよい。一つのデータに対して、複数のデータが関連付けられていてもよい。特定データ取得部11は、複数のデータと、それぞれのデータに関連付けられた複数の特徴量を取得してもよい。特徴量は、あらかじめ抽出され、データに関連付けられてデータベース装置2に格納されていてもよい。また、特定データ取得部11が、それぞれのデータの特徴量を抽出してもよい。その場合、特定データ取得部11は、例えば、入力装置4を介してユーザによって指示された特徴量を、それぞれのデータに対して抽出すればよい。   The specific data acquisition unit 11 acquires, for example, the feature amount associated with the acquired set or data from the database device 2. The feature amount is, for example, the frequency at which the same data appears in the database 201, that is, the number of data that is present in the database 201 and is the same as the data associated with the feature amount. The feature amount may be another value. A plurality of data may be associated with one data. The specific data acquisition unit 11 may acquire a plurality of data and a plurality of feature amounts associated with each data. The feature amount may be extracted in advance and stored in the database device 2 in association with the data. Further, the specific data acquisition unit 11 may extract the feature amount of each data. In that case, the specific data acquisition unit 11 may extract, for example, feature amounts instructed by the user via the input device 4 for each data.

図9は、特定データ取得部11が取得する、データとデータに関連付けられた特徴量の一例を表す図である。   FIG. 9 is a diagram illustrating an example of data and a feature amount associated with the data acquired by the specific data acquisition unit 11.

図9に示す例では、それぞれのデータに、二つの特徴量が関連付けられている。また、データは、属性の識別子と属性値の組み合わせを一つ含む。さらに、データは、属性値が関連付けられていない属性の識別子を2つ含む。   In the example shown in FIG. 9, two feature amounts are associated with each data. The data includes one combination of an attribute identifier and an attribute value. Further, the data includes two identifiers of attributes that are not associated with attribute values.

次に、順位付け部14が、それぞれの組に関連付けられた特徴量に基づき、各組の順位を決定する(ステップS302)。   Next, the ranking unit 14 determines the rank of each group based on the feature amount associated with each group (step S302).

例えば、特徴量が、データベース201中の同一データが出現する頻度である場合、例えば、順位付け部14は、頻度が多い順になるよう、組であるデータの順位を決定する。順位の決定方法は、既存の任意の方法でよい。順位付け部14は、複数の種類の特徴量を使用して、順位を決定してもよい。   For example, when the feature amount is the frequency at which the same data appears in the database 201, for example, the ranking unit 14 determines the rank of data that is a set so that the frequency is in the descending order. The order determination method may be any existing method. The ranking unit 14 may determine the ranking using a plurality of types of feature amounts.

次に、特定データ取得部11は、決定された順位に従って、順次一つの組を選択する(ステップS303)。   Next, the specific data acquisition unit 11 sequentially selects one set according to the determined order (step S303).

そして、特定データ取得部11は、選択された組に含まれる、属性の識別子と、その識別子に関連付けられている属性値の組み合わせを取得する(ステップS304)。   Then, the specific data acquisition unit 11 acquires a combination of an attribute identifier and an attribute value associated with the identifier included in the selected set (step S304).

次に、関連判定部12が、ステップS104の動作を行う。さらに、出力部13が、ステップS105の動作を行う。   Next, the association determination unit 12 performs the operation of step S104. Further, the output unit 13 performs the operation of step S105.

ステップS104において、関連判定部12は、第1の実施形態の関連判定部12が行うステップS104の動作と同じ動作を行ってもよい。さらに、ステップS105において、出力部13は、第1の実施形態の出力部13が行うステップS105の動作と同じ動作を行ってもよい。   In step S104, the association determination unit 12 may perform the same operation as the operation of step S104 performed by the association determination unit 12 of the first embodiment. Furthermore, in step S105, the output unit 13 may perform the same operation as the operation in step S105 performed by the output unit 13 of the first embodiment.

ステップS104において、関連判定部12は、第2の実施形態の関連判定部12が行うステップS104の動作と同じ動作を行ってもよい。さらに、ステップS105において、出力部13は、第1の実施形態の出力部13が行うステップS105の動作と同じ動作を行ってもよい。   In step S104, the association determination unit 12 may perform the same operation as the operation of step S104 performed by the association determination unit 12 of the second embodiment. Furthermore, in step S105, the output unit 13 may perform the same operation as the operation in step S105 performed by the output unit 13 of the first embodiment.

ステップS104において、関連判定部12は、第3の実施形態の関連判定部12が行うステップS104の動作と同じ動作を行ってもよい。さらに、ステップS105において、出力部13は、第1の実施形態の出力部13が行うステップS105の動作と同じ動作を行ってもよい。   In step S104, the association determination unit 12 may perform the same operation as the operation of step S104 performed by the association determination unit 12 of the third embodiment. Furthermore, in step S105, the output unit 13 may perform the same operation as the operation in step S105 performed by the output unit 13 of the first embodiment.

ステップS104において、関連判定部12は、第4の実施形態の関連判定部12が行うステップS104の動作と同じ動作を行ってもよい。さらに、ステップS105において、出力部13は、第1の実施形態の出力部13が行うステップS105の動作と同じ動作を行ってもよい。   In step S104, the association determination unit 12 may perform the same operation as the operation of step S104 performed by the association determination unit 12 of the fourth embodiment. Furthermore, in step S105, the output unit 13 may perform the same operation as the operation in step S105 performed by the output unit 13 of the first embodiment.

ステップS105の動作が終了した後、未選択の組あるいはデータが存在する場合(ステップS305でYes)、分析装置1Aの動作は、ステップS302に戻る。   After the operation of step S105 is completed, when there is an unselected set or data (Yes in step S305), the operation of the analyzer 1A returns to step S302.

ステップS105の動作が終了した後、未選択の組あるいはデータが存在しない場合(ステップS305でNo)、分析装置1Aは動作を終了する。   After the operation of step S105 is completed, if there is no unselected group or data (No in step S305), the analysis apparatus 1A ends the operation.

以上で説明した本実施形態には、さらに、分析装置1Aが複数の特定データをに対して処理を行う場合に、処理の順序を制御できるという効果がある。   The present embodiment described above has an effect that the processing order can be controlled when the analyzing apparatus 1A processes a plurality of specific data.

その理由は、順位付け部14が、複数の特定データのそれぞれに関連付けられた特徴量に基づき、処理の順序を決定するからである。   The reason is that the ranking unit 14 determines the processing order based on the feature amounts associated with each of the plurality of specific data.

(第6の実施形態)
次に、本発明の第6の実施形態について、図面を参照して詳細に説明する。
(Sixth embodiment)
Next, a sixth embodiment of the present invention will be described in detail with reference to the drawings.

図16は、本実施形態の分析装置1の構成の例を表すブロック図である。   FIG. 16 is a block diagram illustrating an example of the configuration of the analysis apparatus 1 of the present embodiment.

図16を参照すると、本実施形態の分析装置1は、データベース中の、属性の識別子に関連付けられた前記属性の値である属性値を含むデータに対して、変更を行うプログラムを記憶するプログラム記憶部10と、属性の識別子と、当該識別子に関連付けられた属性値の組み合わせを、取得する特定データ取得部11と、前記プログラムによって行われる処理の解析を行うプログラム解析部15と、前記解析の結果に基づき、前記組み合わせに識別子が含まれる属性の属性値として、前記組み合わせに含まれる前記属性値を含む前記データベース中のデータである特定データに対して、前記プログラムによって変更が行われ得たか否かを判定し、判定結果を求める関連判定部12とを含む
以上で説明した本実施形態には、第1の実施形態と同じ効果がある。
Referring to FIG. 16, the analysis apparatus 1 of the present embodiment stores a program for storing a program for changing data including an attribute value that is the value of the attribute associated with the attribute identifier in the database. Unit 10, a specific data acquisition unit 11 that acquires a combination of an attribute identifier and an attribute value associated with the identifier, a program analysis unit 15 that analyzes a process performed by the program, and a result of the analysis Whether or not the specific data, which is data in the database including the attribute value included in the combination, can be changed by the program as the attribute value of the attribute including the identifier in the combination In this embodiment described above, the same as the first embodiment is included. Has the same effect.

その理由は、第1の実施形態の効果の理由を同じである。   The reason is the same as the reason for the effect of the first embodiment.

(構成例)
次に、第1の実施形態に基づく本発明の情報処理システム100における、分析装置1の構成例について、図面を参照して詳細に説明する。
(Configuration example)
Next, a configuration example of the analysis apparatus 1 in the information processing system 100 of the present invention based on the first embodiment will be described in detail with reference to the drawings.

本構成例の分析装置1の構成は、図1に示される第1の実施形態の分析装置1の構成と同じである。   The configuration of the analyzer 1 of this configuration example is the same as the configuration of the analyzer 1 of the first embodiment shown in FIG.

また、図10から図14までの図は、プログラム記憶部10が記憶するプログラム311が含む、変更命令とその関連箇所の例を、概念的に表す図である。これらの例では、属性名である、A及びBが、属性の識別子である。   FIGS. 10 to 14 are diagrams conceptually showing examples of change commands and related points included in the program 311 stored in the program storage unit 10. In these examples, attribute names A and B are attribute identifiers.

プログラム記憶部10が記憶するプログラム311の記述に使用される言語は、特定のデータベース操作言語に限定されない。プログラム311の記述に使用される言語は、データベース201のどの属性をどのように変更するのかを、明示的に表せる言語であればよい。図10から図14までの例は、属性値を更新する更新命令の例である。プログラム311中の変更命令の種別は、これらの図の例に限定されない。プログラム311中の変更命令は、挿入、削除、あるいは、その他の命令であってもよい。   The language used to describe the program 311 stored in the program storage unit 10 is not limited to a specific database operation language. The language used for the description of the program 311 may be any language that can explicitly express which attribute of the database 201 is to be changed. The examples from FIG. 10 to FIG. 14 are examples of update instructions for updating attribute values. The type of change instruction in the program 311 is not limited to the examples in these drawings. The change instruction in the program 311 may be insertion, deletion, or other instructions.

図10は、属性Bの属性値が100であるデータの、属性Aの属性を100に更新する更新命令の例である。図10の例では、Updatteが更新命令である。図10の例では、更新命令の場所で、属性値が指定されている。従って、更新命令の場所が、属性値確定箇所である。そして、更新命令の場所が、関連箇所である。図10から図14の例では、関連箇所以外の部分は省略されている。   FIG. 10 shows an example of an update command for updating the attribute A attribute to 100 for the data whose attribute value is 100. In the example of FIG. 10, Update is an update command. In the example of FIG. 10, the attribute value is specified at the location of the update command. Therefore, the location of the update command is the attribute value determination location. The location of the update command is a related location. In the examples of FIGS. 10 to 14, portions other than the related portions are omitted.

図11は、図10と同様に、属性Bの属性値が100であるデータの、属性Aの属性を100に更新する命令の例である。ただし、図11の例では、属性値を格納するための変数が使用される。図11の例で、属性値を格納するための変数は、vaとvbである。図11の例では、まず、vaに100という値が格納される。また、vbに100という値が格納される。これらの変数に格納された値は、更新命令まで、そのまま保たれる。そして、変更命令によって、属性Aの属性値が更新される。図11の例では、二つの変数に属性値が格納される場所が、属性値確定箇所である。また、2つの変数に属性値が格納される場所と、変更命令の場所が、関連箇所である。   FIG. 11 shows an example of an instruction for updating the attribute A attribute to 100 for data whose attribute value is 100 as in FIG. However, in the example of FIG. 11, a variable for storing an attribute value is used. In the example of FIG. 11, the variables for storing the attribute values are va and vb. In the example of FIG. 11, first, a value of 100 is stored in va. Also, a value of 100 is stored in vb. The values stored in these variables are kept as they are until the update instruction. Then, the attribute value of attribute A is updated by the change command. In the example of FIG. 11, the place where the attribute values are stored in the two variables is the attribute value determined place. Further, the location where the attribute value is stored in the two variables and the location of the change command are related locations.

図12は、図10及び図11と同様に、属性Bの属性値が100であるデータの、属性Aの属性を100に更新する命令の例である。図11の例では、行1は、関数simpleが呼び出される場所を表す。また、行2以降の行が、関数simpleで行われる処理を表す。行3は、関数simpleの中で、更新命令が呼び出される場所を表す。行1において、関数simpleの引数として、属性値が定まる。行1の記述により関数simpleが呼び出されることで、行2に記載される変数va及び変数vbに値が格納される。そして、行3の変更命令によって、属性Aの属性値が更新される。図12の例では、行1が属性値確定箇所である。そして、行1、行2、行3が関連箇所である。プログラム解析部15は、図12のような関数呼び出しの構造を解析する。   FIG. 12 is an example of an instruction for updating the attribute A attribute to 100 for data in which the attribute value of the attribute B is 100, as in FIGS. 10 and 11. In the example of FIG. 11, row 1 represents a place where the function “simple” is called. Further, the lines after the line 2 represent processing performed by the function simple. Line 3 represents the location in the function simple where the update instruction is called. In line 1, an attribute value is determined as an argument of the function simple. By calling the function “simple” according to the description of the line 1, values are stored in the variable va and the variable vb described in the line 2. Then, the attribute value of attribute A is updated by the change instruction in line 3. In the example of FIG. 12, row 1 is an attribute value determination location. Rows 1, 2, and 3 are related portions. The program analysis unit 15 analyzes the function call structure as shown in FIG.

図13は、属性値Bが入力された値であるデータの属性値Aを、同様に入力された値に更新する命令の例である。図13の1行目は、変数va及び変数vbに、外部から入力された値が格納される。図13の1行目に含まれるSTDINは、一般に、標準入力を表すプログラム記述上の慣用的な語である。図13の例では、例えば、プログラム311を起動したとき、あるいは、プログラム311が実行されている間に、プログラム311に入力される値が、変数va及び変数vbに格納されることを表す。プログラム311に入力される値は、例えば、ユーザが端末から入力する値や、外部のファイルから入力される値である。図13の例では、変数va及び変数vbに格納される値は、プログラム311が実行されるまでは定まらない。図13の1行目が、後述される変数代入箇所である。図13の1行目と変更命令が、関連箇所である。プログラム解析部15は、図13の例のように、プログラム311が実行されるまで具体的な属性値が定まらない場合でも、プログラム311を解析して関連箇所を導出する。   FIG. 13 is an example of an instruction for updating the attribute value A of data, which is the value to which the attribute value B is input, to the same input value. In the first line of FIG. 13, values input from the outside are stored in the variable va and the variable vb. STDIN included in the first line of FIG. 13 is generally an idiomatic word on a program description representing standard input. In the example of FIG. 13, for example, the value input to the program 311 is stored in the variable va and the variable vb when the program 311 is started or while the program 311 is being executed. The value input to the program 311 is, for example, a value input by the user from the terminal or a value input from an external file. In the example of FIG. 13, the values stored in the variable va and the variable vb are not determined until the program 311 is executed. The first line in FIG. 13 is a variable substitution place described later. The first line in FIG. 13 and the change command are related parts. As shown in the example of FIG. 13, the program analysis unit 15 analyzes the program 311 and derives a related portion even when a specific attribute value is not determined until the program 311 is executed.

図14は、属性Bの属性値を変化させながら、繰り返し更新命令が実行される例である。図14の例では、行4において、属性Aの属性値が定まる。行4では、属性Aの属性値として更新命令に与えられる変数vaに値が代入される。行5では、0から1000までの値が、順次、変数vbに格納される。そして、変数vbに値が格納される度に、行6の更新命令が実行される。すなわち、属性Bの属性値が、0から1000まで順次増加させられながら、行6の更新命令が実行される。プログラム311が図14のような繰り返し構造を含む場合、プログラム解析部15は、プログラム311を解析することにより、更新命令に与えられる属性値が取りうる値の範囲を特定する。図14の例では、プログラム解析部15は、更新命令に与えられる属性値が格納される変数vbが取りうる値の範囲が、0から1000までであることを特定する。図14の例では、行4が属性値確定箇所である。また、行5が変数代入箇所である。行4、行5、行6が関連箇所である。   FIG. 14 shows an example in which the update instruction is repeatedly executed while changing the attribute value of attribute B. In the example of FIG. 14, the attribute value of attribute A is determined in line 4. In line 4, the value is assigned to the variable va given to the update instruction as the attribute value of attribute A. In line 5, values from 0 to 1000 are sequentially stored in the variable vb. Then, every time a value is stored in the variable vb, the update instruction in the row 6 is executed. That is, while the attribute value of attribute B is sequentially increased from 0 to 1000, the update instruction for line 6 is executed. When the program 311 includes a repetitive structure as shown in FIG. 14, the program analysis unit 15 analyzes the program 311 to identify a range of values that can be taken by the attribute value given to the update instruction. In the example of FIG. 14, the program analysis unit 15 specifies that the range of values that can be taken by the variable vb in which the attribute value given to the update instruction is stored is 0 to 1000. In the example of FIG. 14, line 4 is an attribute value determination location. Further, line 5 is a variable substitution place. Lines 4, 5 and 6 are related parts.

以上のように、プログラム311中で注目すべき箇所の一つは、データベース201の更新を実行する命令である更新命令である。また、プログラム311中で注目すべき箇所の一つは、更新命令で指定される属性値が定まる場所である、属性値確定箇所である。属性値確定箇所には、更新命令に与えられる属性値が格納される変数に、特定データ取得部11が取得した属性値が代入される場所も含まれる。さらに、プログラム311中で注目すべき箇所の一つは、更新命令に与えられる属性値が格納される変数に、特定データ取得部11が取得した属性値である可能性がある値が代入される場所である、変数代入箇所である。変数代入箇所は、例えば、プログラム311が起動されたとき、あるいは、プログラム311が実行されている間に、プログラム311に与えられる値が、更新命令に与えられる属性値が格納される変数に代入される場所である。変数代入箇所は、例えば、変数が属性値として与えられる変更命令が繰り返し実行されるプログラム311中のループにおいて、特定データ取得部11が取得した属性値を含む範囲に含まれる値が、順次、更新命令に与えられる変数に代入される場所である。変数代入箇所は、以上の例に限られない。   As described above, one of the points to be noted in the program 311 is an update command that is a command for updating the database 201. In addition, one of the notable locations in the program 311 is an attribute value determination location where the attribute value specified by the update command is determined. The attribute value determination part includes a place where the attribute value acquired by the specific data acquisition unit 11 is substituted into a variable in which the attribute value given to the update command is stored. Further, one of the points to be noted in the program 311 is that a value that may be the attribute value acquired by the specific data acquisition unit 11 is substituted into a variable in which the attribute value given to the update command is stored. This is the place where the variable is assigned. For example, a value assigned to the program 311 is assigned to a variable in which an attribute value given to the update instruction is stored when the program 311 is started or while the program 311 is being executed. It is a place. For example, in a loop in the program 311 in which a change instruction in which a variable is given as an attribute value is repeatedly executed, values included in a range including the attribute value acquired by the specific data acquisition unit 11 are sequentially updated. This is where it is assigned to the variable given to the instruction. The variable substitution location is not limited to the above example.

次に、本構成例の関連判定部12による、関連箇所を特定する動作について、図面を参照して詳細に説明する。   Next, the operation of specifying the related part by the related determination unit 12 of this configuration example will be described in detail with reference to the drawings.

図15は、本構成例の関連判定部12の、関連箇所を特定する動作の例を表すフローチャートである。図15の動作は、図5や図6に示すステップS114からステップS116までのステップにおいて行われる動作におおむね相当する。   FIG. 15 is a flowchart illustrating an example of an operation of specifying a related portion of the related determination unit 12 of this configuration example. The operation in FIG. 15 roughly corresponds to the operation performed in steps S114 to S116 shown in FIGS.

また、本構成例の出力部13は、判定の結果として、関連箇所を出力する。   In addition, the output unit 13 of this configuration example outputs a related portion as a result of the determination.

プログラム311が特定データに対する変更を行い得ると判定された場合、出力部13は、関連箇所を出力することによって、判定の結果を出力する。また、プログラム311が特定データに対する変更を行い得ると判定された場合、出力部13は、関連箇所が検出されなかったことを出力することによって、判定の結果を出力する。   When it is determined that the program 311 can change the specific data, the output unit 13 outputs the result of the determination by outputting the relevant part. When it is determined that the program 311 can change the specific data, the output unit 13 outputs the result of the determination by outputting that the related part has not been detected.

本構成例の分析装置1の他の動作は、図2及び図5に示される、第1の実施形態の分析装置1の動作と同じである。従って、その説明を省略する。   Other operations of the analyzer 1 of this configuration example are the same as the operations of the analyzer 1 of the first embodiment shown in FIGS. 2 and 5. Therefore, the description is omitted.

まず、関連判定部12は、特定データ取得部11が取得した組み合わせに識別子が含まれる属性に対して、属性値が指定される変更命令を、プログラム311中で検出する(ステップS401)。関連判定部12がステップS401で検出する変更命令では、それぞれの属性に対して指定される属性値は、いずれの値であってもよい。   First, the association determination unit 12 detects, in the program 311, a change command in which an attribute value is specified for an attribute whose identifier is included in the combination acquired by the specific data acquisition unit 11 (step S <b> 401). In the change instruction detected by the association determination unit 12 in step S401, the attribute value designated for each attribute may be any value.

ステップS401で変更命令が検出されない場合(ステップS402でNo)、関連判定部12は、関連箇所に、特定データ変更命令が存在しないことを表す情報を設定してもよい(ステップS403)。そして、関連判定部12は、図15の動作を終了する。   When the change command is not detected in step S401 (No in step S402), the association determination unit 12 may set information indicating that the specific data change command does not exist in the related portion (step S403). Then, the association determination unit 12 ends the operation of FIG.

次に、関連判定部12は、プログラム311中に記載されている場所が全ての属性の属性値確定箇所でもある、特定データ変更命令を検出する(ステップS404)。前述のように、特定データ変更命令は、特定データ取得部11が取得した組み合わせに識別子が含まれる属性の属性値として、その組み合わせに含まれる属性値が指定される変更命令である。プログラム311中に記載されている場所が全ての属性の属性値確定箇所でもある特定データ変更命令は、例えば、属性値の具体的な値が変更命令の場所に記述されている変更命令である。   Next, the association determination unit 12 detects a specific data change command in which the place described in the program 311 is also an attribute value determination place for all attributes (step S404). As described above, the specific data change instruction is a change instruction in which the attribute value included in the combination is specified as the attribute value of the attribute including the identifier in the combination acquired by the specific data acquisition unit 11. The specific data change instruction in which the place described in the program 311 is also the attribute value determination place of all attributes is, for example, a change instruction in which a specific value of the attribute value is described in the place of the change instruction.

プログラム311中に記載されている場所が全ての属性の属性値確定箇所でもある、特定データ変更命令が検出された場合(ステップS405でYes)、関連判定部12は、検出された特定データ変更命令を、関連箇所にする(ステップS406)。そして、関連判定部12は、図15の動作を終了する。   When a specific data change command is detected in which the location described in the program 311 is also an attribute value determination location for all attributes (Yes in step S405), the association determination unit 12 detects the specific data change command detected Are related places (step S406). Then, the association determination unit 12 ends the operation of FIG.

プログラム311中で記載されている場所が全ての属性の属性値確定箇所でもある、特定データ変更命令が検出されない場合(ステップS405でNo)、関連判定部12の動作は、ステップS407に進む。前述のように、プログラム311中で記載されている場所が属性値確定箇所でない属性は、例えば、変更命令に対して指定される属性値が変数として記述されている変更命令である。   When the specific data change command is not detected in which the location described in the program 311 is also the attribute value determination location for all attributes (No in step S405), the operation of the association determination unit 12 proceeds to step S407. As described above, the attribute where the place described in the program 311 is not the attribute value fixed place is, for example, a change instruction in which the attribute value specified for the change instruction is described as a variable.

次に、関連判定部12は、特定データ変更命令の場所が属性値確定箇所でない属性の属性値が、特定データ取得部11が取得した属性値であることが確定する、属性値確定箇所を検出する(ステップS407)。属性値確定箇所は、例えば、属性値が格納される変数に、具体的な値が代入される場所である。属性値確定箇所は、変更命令に対して指定される属性値の具体的な値が記述されている、他の種類の場所であってもよい。   Next, the relevance determination unit 12 detects an attribute value determination location where the attribute value of the attribute whose location of the specific data change instruction is not the attribute value determination location is determined to be the attribute value acquired by the specific data acquisition unit 11 (Step S407). The attribute value fixed place is a place where a specific value is substituted into a variable in which the attribute value is stored, for example. The attribute value determination part may be another type of place where a specific value of the attribute value specified for the change instruction is described.

属性値確定箇所が検出された場合(ステップS408でYes)、関連判定部12は、検出された、変更命令と属性値確定箇所を、関連箇所にする(ステップS409)。そして、関連判定部12は、図15の動作を終了する。   When the attribute value fixed location is detected (Yes in step S408), the association determining unit 12 sets the detected change command and attribute value determined location as the related location (step S409). Then, the association determination unit 12 ends the operation of FIG.

属性値確定箇所が検出されない場合(ステップS408でNo)、関連判定部12は、変数代入箇所を検出する(ステップS410)。すなわち、関連判定部12は、ステップS404において検出された更新命令に与えられる属性値が格納される変数に、何らかの値が代入される場所を検出する。関連判定部12は、さらに、その変数に代入される値が、特定データ取得部11が取得した、その変数が属性値として指定される属性の識別子と同じ組み合わせに含まれる属性値である可能性があるか否かを判定する。例えばプログラム311が実行されている間に入力される値が、変数に代入される場合、その値は、特定データ取得部11が取得した属性値である可能性がある。また、特定データ取得部11が取得した属性値を含む範囲に含まれる値が変数に代入される場合、特定データ取得部11が取得した属性値が、変数に代入される可能性がある。   When the attribute value fixed place is not detected (No in step S408), the association determining unit 12 detects a variable substitution place (step S410). That is, the association determination unit 12 detects a place where some value is substituted into a variable in which an attribute value given to the update instruction detected in step S404 is stored. Further, in the association determination unit 12, there is a possibility that the value assigned to the variable is an attribute value included in the same combination as the identifier of the attribute that is acquired by the specific data acquisition unit 11 and the variable is specified as the attribute value. It is determined whether or not there is. For example, when a value input while the program 311 is executed is assigned to a variable, the value may be an attribute value acquired by the specific data acquisition unit 11. In addition, when a value included in the range including the attribute value acquired by the specific data acquisition unit 11 is assigned to a variable, the attribute value acquired by the specific data acquisition unit 11 may be assigned to the variable.

変数代入箇所が検出された場合(ステップS411でYes)、関連判定部12は、検出された、変更命令と変数代入箇所を、関連箇所にする(ステップS412)。そして、関連判定部12は、図15の動作を終了する。   When a variable substitution location is detected (Yes in step S411), the association determination unit 12 sets the detected change instruction and variable substitution location as a relevant location (step S412). Then, the association determination unit 12 ends the operation of FIG.

変数代入箇所が検出されない場合(ステップS411でNo)、関連判定部12は、関連箇所に、特定データ変更命令が存在しないことを表す情報を設定してもよい(ステップS413)。関連判定部12は、関連箇所に、ステップS401で検出された変更命令と、特定データ変更命令が存在しないことを表す情報を設定してもよい。そして、関連判定部12は、図15の動作を終了する。   When the variable substitution part is not detected (No in Step S411), the association determination unit 12 may set information indicating that the specific data change instruction does not exist in the related part (Step S413). The association determination unit 12 may set information indicating that the change command detected in step S401 and the specific data change command do not exist in the related portion. Then, the association determination unit 12 ends the operation of FIG.

なお、関連判定部12は、プログラム311に含まれる全ての変更命令に対して、図15に示される動作を繰り返してもよい。   Note that the association determination unit 12 may repeat the operation illustrated in FIG. 15 for all the change commands included in the program 311.

以上で説明した各実施形態の、分析装置1、データベース装置2、アクセス装置3、入力装置4、出力装置5は、それぞれ、コンピュータ及びそのコンピュータを制御するプログラム、専用のハードウェア、又は、コンピュータ及びそのコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することができる。   The analysis device 1, the database device 2, the access device 3, the input device 4, and the output device 5 of each embodiment described above are respectively a computer and a program for controlling the computer, dedicated hardware, or a computer and It can be realized by a combination of a program for controlling the computer and dedicated hardware.

図17は、分析装置1を実現するために使用される、コンピュータ1000の構成の一例を表す図である。図17を参照すると、コンピュータ1000は、プロセッサ1001と、メモリ1002と、記憶装置1003と、I/O(Input/Output)インタフェース1004とを含む。また、コンピュータ1000は、記録媒体1005にアクセスすることができる。メモリ1002と記憶装置1003は、例えば、RAM(Random Access Memory)、ハードディスクなどの記憶装置である。記録媒体1005は、例えば、RAM、ハードディスクなどの記憶装置、ROM(Read Only Memory)、可搬記録媒体である。記憶装置1003が記録媒体1005であってもよい。プロセッサ1001は、メモリ1002と、記憶装置1003に対して、データやプログラムの読み出しと書き込みを行うことができる。プロセッサ1001は、I/Oインタフェース1004を介して、例えば、データベース装置2が記憶するデータベース201にアクセスすることができる。プロセッサ1001は、記録媒体1005にアクセスすることができる。記録媒体1005には、コンピュータ1000を分析装置1として動作させるプログラムが格納されている。   FIG. 17 is a diagram illustrating an example of a configuration of a computer 1000 that is used to realize the analysis apparatus 1. Referring to FIG. 17, a computer 1000 includes a processor 1001, a memory 1002, a storage device 1003, and an I / O (Input / Output) interface 1004. The computer 1000 can access the recording medium 1005. The memory 1002 and the storage device 1003 are storage devices such as a RAM (Random Access Memory) and a hard disk, for example. The recording medium 1005 is, for example, a storage device such as a RAM or a hard disk, a ROM (Read Only Memory), or a portable recording medium. The storage device 1003 may be the recording medium 1005. The processor 1001 can read and write data and programs from and to the memory 1002 and the storage device 1003. The processor 1001 can access, for example, the database 201 stored in the database device 2 via the I / O interface 1004. The processor 1001 can access the recording medium 1005. The recording medium 1005 stores a program that causes the computer 1000 to operate as the analyzer 1.

プロセッサ1001は、記録媒体1005に格納されている、コンピュータ1000を分析装置1として動作させるプログラムを、メモリ1002にロードする。そして、プロセッサ1001が、メモリ1002にロードされたプログラムを実行することにより、コンピュータ1000は分析装置1として動作する。   The processor 1001 loads a program stored in the recording medium 1005 and causing the computer 1000 to operate as the analysis apparatus 1 into the memory 1002. Then, when the processor 1001 executes the program loaded in the memory 1002, the computer 1000 operates as the analysis apparatus 1.

特定データ取得部11、関連判定部12、出力部13、順位付け部14、プログラム解析部15、アクセス処理部21は、例えば、プログラムを記憶する記録媒体1005からメモリに読み込まれた、各部の機能を実現するための専用のプログラムと、そのプログラムを実行するプロセッサ1001により実現することができる。また、プログラム記憶部10、データベース記憶部20は、コンピュータ1000が含むメモリ1002やハードディスク装置等の記憶装置1003により実現することができる。あるいは、プログラム記憶部10、特定データ取得部11、関連判定部12、出力部13、順位付け部14、プログラム解析部15、データベース記憶部20、アクセス処理部21の一部又は全部を、各部の機能を実現する専用の回路によって実現することもできる。   For example, the specific data acquisition unit 11, the association determination unit 12, the output unit 13, the ranking unit 14, the program analysis unit 15, and the access processing unit 21 are read from the recording medium 1005 that stores the program into the memory. Can be realized by a dedicated program for realizing the above and a processor 1001 that executes the program. The program storage unit 10 and the database storage unit 20 can be realized by a memory 1002 included in the computer 1000 or a storage device 1003 such as a hard disk device. Alternatively, some or all of the program storage unit 10, the specific data acquisition unit 11, the association determination unit 12, the output unit 13, the ranking unit 14, the program analysis unit 15, the database storage unit 20, and the access processing unit 21 It can also be realized by a dedicated circuit for realizing the function.

以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。   The present invention has been described above with reference to the embodiments, but the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.

1、1A 分析装置
2 データベース装置
3 アクセス装置
4 入力装置
5 出力装置
10 プログラム記憶部
11 特定データ取得部
12 関連判定部
13 出力部
14 順位付け部
15 プログラム解析部
20 データベース記憶部
21 アクセス処理部
30 CPU
31 メモリ
100、100A 情報処理システム
201 データベース
311 プログラム
1000 コンピュータ
1001 プロセッサ
1002 メモリ
1003 記憶装置
1004 I/Oインタフェース
1005 記録媒体
DESCRIPTION OF SYMBOLS 1, 1A Analysis apparatus 2 Database apparatus 3 Access apparatus 4 Input apparatus 5 Output apparatus 10 Program storage part 11 Specific data acquisition part 12 Related determination part 13 Output part 14 Ranking part 15 Program analysis part 20 Database storage part 21 Access processing part 30 CPU
31 Memory 100, 100A Information processing system 201 Database 311 Program 1000 Computer 1001 Processor 1002 Memory 1003 Storage device 1004 I / O interface 1005 Recording medium

Claims (10)

データベース中の、属性の識別子に関連付けられた前記属性の値である属性値を含むデータに対して、変更を行うプログラムを記憶するプログラム記憶手段と、
属性の識別子と、当該識別子に関連付けられた属性値の組み合わせを、取得する特定データ取得手段と、
前記プログラムによって行われる処理の解析を行うプログラム解析手段と、
前記解析の結果に基づき、前記組み合わせに識別子が含まれる属性の属性値として、前記組み合わせに含まれる前記属性値を含む前記データベース中のデータである特定データに対して、前記プログラムによって変更が行われ得たか否かを判定し、判定結果を求める関連判定手段と
を含む分析装置。
Program storage means for storing a program for making a change to data including an attribute value that is the value of the attribute associated with the identifier of the attribute in the database;
Specific data acquisition means for acquiring a combination of an attribute identifier and an attribute value associated with the identifier;
Program analysis means for analyzing the processing performed by the program;
Based on the result of the analysis, as the attribute value of the attribute whose identifier is included in the combination, specific data that is data in the database including the attribute value included in the combination is changed by the program. And an association determination means for determining whether or not it is obtained and obtaining a determination result.
前記関連判定手段は、前記組み合わせに含まれる前記属性値が、当該属性値に識別子が関連付けられている前記属性の属性値として指定される属性値確定場所と、前記組み合わせに識別子が含まれる前記属性の属性値として、前記識別子に関連付けられている前記属性値が指定された、前記データに対して変更を行う変更命令の場所とを、前記プログラム中で特定し、
前記関連判定手段は、前記属性値確定場所と、前記変更命令の場所とを出力する出力手段を含む
請求項1に記載の分析装置。
The association determination means includes: an attribute value determination place where the attribute value included in the combination is designated as an attribute value of the attribute associated with the attribute value; and the attribute including the identifier in the combination The attribute value associated with the identifier is specified as the attribute value, and the location of the change instruction for changing the data is specified in the program,
The analysis apparatus according to claim 1, wherein the association determination unit includes an output unit that outputs the attribute value determination place and the change instruction place.
前記特定データ取得手段は、前記組を1個以上と、前記組の各々に関連付けられた特徴量を取得し、
前記分析装置は、さらに、前記特徴量に基づいて、前記組の順位を決定する順位付け手段を含み、
前記関連判定手段は、決定された前記順位に従った順番で、前記組の各々に対して、前記関連判定を行う
請求項1又は2に記載の分析装置。
The specific data acquisition means acquires one or more sets and feature quantities associated with each of the sets,
The analysis apparatus further includes a ranking unit that determines the rank of the set based on the feature amount,
The analysis device according to claim 1, wherein the association determination unit performs the association determination on each of the groups in an order according to the determined rank.
前記データベースを記憶するデータベース装置と、前記データベース装置と通信可能である請求項1乃至3のいずれかに記載の分析装置とを含み、
前記特定データ取得手段は、前記データベース装置から、所定の条件に合致する、前記属性の識別子と前記属性の属性値との組み合わせを取得する
情報処理システム。
A database device that stores the database; and the analyzer according to any one of claims 1 to 3 that is communicable with the database device.
The specific data acquisition unit acquires a combination of an identifier of the attribute and an attribute value of the attribute that meets a predetermined condition from the database device.
データベース中の、属性の識別子に関連付けられた前記属性の値である属性値を含むデータに対して、変更を行うプログラムをプログラム記憶手段に記憶し、
属性の識別子と、当該識別子に関連付けられた属性値の組み合わせを、取得し、
前記プログラムによって行われる処理の解析を行い、
前記解析の結果に基づき、前記組み合わせに識別子が含まれる属性の属性値として、前記組み合わせに含まれる前記属性値を含む前記データベース中のデータである特定データに対して、前記プログラムによって変更が行われ得たか否かを判定し、判定結果を求める
分析方法。
A program for changing the data including the attribute value that is the value of the attribute associated with the attribute identifier in the database is stored in the program storage unit,
Obtain a combination of an attribute identifier and the attribute value associated with the identifier,
Analyzing the processing performed by the program,
Based on the result of the analysis, as the attribute value of the attribute whose identifier is included in the combination, specific data that is data in the database including the attribute value included in the combination is changed by the program. An analysis method that determines whether or not it has been obtained and obtains the determination result.
前記組み合わせに含まれる前記属性値が、当該属性値に識別子が関連付けられている前記属性の属性値として指定される属性値確定場所と、前記組み合わせに識別子が含まれる前記属性の属性値として、前記識別子に関連付けられている前記属性値が指定された、前記データに対して変更を行う変更命令の場所とを、前記プログラム中で特定し、
前記属性値確定場所と、前記変更命令の場所とを出力する
請求項5に記載の分析方法。
The attribute value included in the combination includes an attribute value determination location specified as the attribute value of the attribute associated with the attribute value, and the attribute value of the attribute including the identifier in the combination, A location of a change instruction for changing the data, in which the attribute value associated with an identifier is specified, is specified in the program;
The analysis method according to claim 5, wherein the attribute value confirmation location and the location of the change instruction are output.
前記組を1個以上と、前記組の各々に関連付けられた特徴量を取得し、
前記特徴量に基づいて、前記組の順位を決定し、
決定された前記順位に従った順番で、前記組の各々に対して、前記関連判定を行う
請求項5又は6に記載の分析方法。
Obtaining one or more sets and feature quantities associated with each of the sets;
Based on the feature amount, the order of the set is determined,
The analysis method according to claim 5 or 6, wherein the association determination is performed on each of the sets in an order according to the determined rank.
コンピュータを、
データベース中の、属性の識別子に関連付けられた前記属性の値である属性値を含むデータに対して、変更を行うプログラムを記憶するプログラム記憶手段と、
属性の識別子と、当該識別子に関連付けられた属性値の組み合わせを、取得する特定データ取得手段と、
前記プログラムによって行われる処理の解析を行うプログラム解析手段と、
前記解析の結果に基づき、前記組み合わせに識別子が含まれる属性の属性値として、前記組み合わせに含まれる前記属性値を含む前記データベース中のデータである特定データに対して、前記プログラムによって変更が行われ得たか否かを判定し、判定結果を求める関連判定手段と
して動作させる分析プログラム。
Computer
Program storage means for storing a program for making a change to data including an attribute value that is the value of the attribute associated with the identifier of the attribute in the database;
Specific data acquisition means for acquiring a combination of an attribute identifier and an attribute value associated with the identifier;
Program analysis means for analyzing the processing performed by the program;
Based on the result of the analysis, as the attribute value of the attribute whose identifier is included in the combination, specific data that is data in the database including the attribute value included in the combination is changed by the program. An analysis program that determines whether or not it has been obtained and operates as a related determination means for determining the determination result.
コンピュータを、
前記組み合わせに含まれる前記属性値が、当該属性値に識別子が関連付けられている前記属性の属性値として指定される属性値確定場所と、前記組み合わせに識別子が含まれる前記属性の属性値として、前記識別子に関連付けられている前記属性値が指定された、前記データに対して変更を行う変更命令の場所とを、前記プログラム中で特定する前記関連判定手段と、
前記属性値確定場所と、前記変更命令の場所とを出力する出力手段を含む前記関連判定手段と、
して動作させる請求項8に記載の分析プログラム。
Computer
The attribute value included in the combination includes an attribute value determination location specified as the attribute value of the attribute associated with the attribute value, and the attribute value of the attribute including the identifier in the combination, The association determination means for specifying in the program a location of a change instruction for making a change to the data, in which the attribute value associated with an identifier is specified;
The association determination means including an output means for outputting the attribute value determination location and the location of the change instruction;
The analysis program according to claim 8, which is operated as described above.
コンピュータを、
前記組を1個以上と、前記組の各々に関連付けられた特徴量を取得する前記特定データ取得手段と、
前記特徴量に基づいて、前記組の順位を決定する順位付け手段と、
決定された前記順位に従った順番で、前記組の各々に対して、前記関連判定を行う前記関連判定手段と、
して動作させる請求項8又は9に記載の分析プログラム。
Computer
One or more sets, and the specific data acquisition means for acquiring feature quantities associated with each of the sets;
Ranking means for determining the rank of the set based on the feature amount;
The association determination means for performing the association determination for each of the sets in an order according to the determined rank;
The analysis program according to claim 8 or 9, wherein the analysis program is operated.
JP2013123541A 2013-06-12 2013-06-12 Analysis system, analysis method, and analysis program Pending JP2014241071A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013123541A JP2014241071A (en) 2013-06-12 2013-06-12 Analysis system, analysis method, and analysis program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013123541A JP2014241071A (en) 2013-06-12 2013-06-12 Analysis system, analysis method, and analysis program

Publications (1)

Publication Number Publication Date
JP2014241071A true JP2014241071A (en) 2014-12-25

Family

ID=52140281

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013123541A Pending JP2014241071A (en) 2013-06-12 2013-06-12 Analysis system, analysis method, and analysis program

Country Status (1)

Country Link
JP (1) JP2014241071A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190118618A (en) * 2017-03-17 2019-10-18 엔에스 솔루션즈 가부시끼가이샤 Information processing apparatus, information processing method and recording medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190118618A (en) * 2017-03-17 2019-10-18 엔에스 솔루션즈 가부시끼가이샤 Information processing apparatus, information processing method and recording medium
KR102275032B1 (en) * 2017-03-17 2021-07-07 엔에스 솔루션즈 가부시끼가이샤 Information processing apparatus, information processing method and recording medium
US11620406B2 (en) 2017-03-17 2023-04-04 Ns Solutions Corporation Information processing device, information processing method, and recording medium

Similar Documents

Publication Publication Date Title
KR102230661B1 (en) SQL review methods, devices, servers and storage media
US10152488B2 (en) Static-analysis-assisted dynamic application crawling architecture
JP6493506B1 (en) INDUSTRIAL CONTROL SYSTEM, ITS SUPPORT DEVICE, CONTROL SUPPORT METHOD AND PROGRAM
AU2018203442B2 (en) Program code comparison and reporting
CN117453713A (en) SQL sentence generation method, device and storage medium for multi-type database
KR101986476B1 (en) Program writing device
US9164991B2 (en) Document management system and method thereof
US10310958B2 (en) Recording medium recording analysis program, analysis method, and analysis apparatus
US20130218928A1 (en) Information processing device
JP2014241071A (en) Analysis system, analysis method, and analysis program
JP6122742B2 (en) Specification change support apparatus, information processing method, and program
JP4899544B2 (en) Program analysis method, program, and program analysis apparatus
US10977282B2 (en) Generating device, generating method, and non-transitory computer-readable recording medium
US20220206934A1 (en) Test apparatus, test method and program
CN116627409A (en) Method, device, equipment and storage medium for replacing fields of low-code page
US8775873B2 (en) Data processing apparatus that performs test validation and computer-readable storage medium
JP6217440B2 (en) Symbolic execution program, symbolic execution method, and symbolic execution device
CN110286894B (en) Script generation method, script generation device, computer equipment and storage medium
JP5076290B2 (en) Operation management rule diversion device, operation management rule diversion method, and program
JP6091471B2 (en) Source code analysis apparatus, source code analysis method, and source code analysis program
CN113778450A (en) Processing method, device and equipment for dependency conflict and storage medium
JP2018092466A (en) Change impact research support device, change impact research support method, and change impact research support program
JP2021117763A (en) Computer system and data access control method
CN114385584B (en) A data writing method and a data reading method
JP2013125429A (en) Analysis object determination device