JP6310527B1 - Object analysis apparatus, object analysis method, and program - Google Patents

Object analysis apparatus, object analysis method, and program Download PDF

Info

Publication number
JP6310527B1
JP6310527B1 JP2016210770A JP2016210770A JP6310527B1 JP 6310527 B1 JP6310527 B1 JP 6310527B1 JP 2016210770 A JP2016210770 A JP 2016210770A JP 2016210770 A JP2016210770 A JP 2016210770A JP 6310527 B1 JP6310527 B1 JP 6310527B1
Authority
JP
Japan
Prior art keywords
function
display
nth
analysis
unit
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.)
Active
Application number
JP2016210770A
Other languages
Japanese (ja)
Other versions
JP2018073054A (en
Inventor
幸一 野口
幸一 野口
忠海 三好
忠海 三好
峰子 村上
峰子 村上
Original Assignee
株式会社Dtsインサイト
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 株式会社Dtsインサイト filed Critical 株式会社Dtsインサイト
Priority to JP2016210770A priority Critical patent/JP6310527B1/en
Application granted granted Critical
Publication of JP6310527B1 publication Critical patent/JP6310527B1/en
Publication of JP2018073054A publication Critical patent/JP2018073054A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

【課題】ソフトウェアの影響度を可視化し、設計時における変更点の妥当性確認に活用可能とするオブジェクト分析プログラム及び方法を提供する。【解決手段】オブジェクト分析装置1は、所定の表示を行う表示部6と、コンパイル、リンク後のオブジェクトを入力としてオブジェクト分析を行い、影響度及び構造出力ファイルを生成するオブジェクト分析部3aと、影響度及び構造出力ファイルを記憶する記憶部5と、影響度及び構造出力ファイルに基づいて表示部による表示を制御する分析結果表示制御部3bとを有し、オブジェクトには、コンパイル後、ソースコードが機械語に翻訳された命令コードと、この命令コードと前記ソースコードの関数と結び付きを示した関数ブロック情報と、ソースコード上で関数コールした際に生成される分岐命令とを含む。【選択図】図1An object analysis program and method for visualizing the degree of influence of software and enabling it to be used for checking the validity of changes at the time of design. An object analysis apparatus includes a display unit that performs a predetermined display, an object analysis unit that performs object analysis using a compiled and linked object as an input, and generates an influence level and a structure output file. A storage unit 5 for storing the degree and the structure output file, and an analysis result display control unit 3b for controlling the display by the display unit based on the influence and the structure output file. It includes an instruction code translated into a machine language, function block information indicating a connection between the instruction code and the function of the source code, and a branch instruction generated when a function call is made on the source code. [Selection] Figure 1

Description

本発明は、例えばソフトウェアの流用開発又は派生開発において、変更部位に関する他部位への影響度を確認可能とする、オブジェクト分析装置、オブジェクト分析方法、及びプログラムに関する。   The present invention relates to an object analysis apparatus, an object analysis method, and a program that enable confirmation of the degree of influence of a changed part on other parts in, for example, software diversion development or derivative development.

近年、組み込み機器開発において、特定のベースライン部品から改良開発する、所謂流用開発が主流になりつつある。その理由としては、ソフトウェアの、部品化、プラットフォーム化が進み、ソフトウェアを1から新たに開発する必要性がなくなったことや、エンドユーザの多様なニーズに対応した製品開発が嘱望されていることが挙げられる。   In recent years, in the development of embedded devices, so-called diversion development, in which improvements are developed from specific baseline parts, is becoming mainstream. The reason for this is that software has become part and platform, and there is no need to develop new software from scratch, and product development that meets the diverse needs of end users is desired. Can be mentioned.

しかし、このような流用開発では、現状は想定以上に効率が上がっていない。その理由としては、モジュールの追加、変更、及び削除の部位(以下、変化点という)が、既存のソフトウェア全体にどのような影響を与えているか分からず、その結果、考慮不足による不具合が生じ、手もどりが発生していることが挙げられる。   However, in such diversion development, the current efficiency is not higher than expected. The reason for this is that we do not know how the addition, change, and deletion of modules (hereinafter referred to as “change points”) affect the entire existing software. It is mentioned that hand return has occurred.

また、このような流用開発においては、ソフトウェア部品は、過去の資産の積み上げとなる。そのため、流用部品の構造がそもそも複雑な場合、ソフトウェアへの影響度が大きくなり、膨大な変化点の確認作業が必要となる。新規部品においても、以後の流用開発に直結するため、簡素に設計しておくことが望ましい。このような観点からも、ソフトウェア部品は、流用、新規を問わず、可視化及び指標化が求められる。   Moreover, in such diversion development, software components are the accumulation of past assets. For this reason, if the structure of the diverted component is complicated in the first place, the influence on the software becomes large, and it is necessary to confirm a huge change point. Even for new parts, it is desirable to design them in a simple manner because it is directly linked to the subsequent diversion development. From this point of view, software components are required to be visualized and indexed regardless of whether they are diverted or new.

一方、従来、ソフトウェアの構造分析について、ソースコードレベルでの分析手法は存在する。例えば、特許文献1では、複数のモジュールで構成されたコンピュータシステムが組み込まれた組込システムの保守支援装置において、コンピュータシステムに対する一連の指示であるモジュールの情報、つまりソースコードと、モジュールで使用されコンピュータ上で処理を行う構成要素の集合であるクラスとの情報、つまり変数クラスタ情報とを入力し、テストを行う保守支援装置が開示されている。   On the other hand, conventionally, there is an analysis method at the source code level for software structure analysis. For example, in Patent Document 1, in a maintenance support device for an embedded system in which a computer system composed of a plurality of modules is incorporated, module information that is a series of instructions for the computer system, that is, source code and modules are used. A maintenance support apparatus is disclosed that inputs information about a class that is a set of components to be processed on a computer, that is, variable cluster information, and performs a test.

しかしながら、ソースコードレベルでの分析の場合、ソースコード中に存在する例えば#IFDEFなどの条件コンパイルのためのパラメータの設定をはじめとした、複雑な設定をしなければならない。このような設定は、各ソースコードで異なるものであり、ソースコードすべてに設定する場合、非常に導入が難しい。   However, in the case of analysis at the source code level, complicated settings such as setting parameters for conditional compilation such as #IFDEF existing in the source code must be made. Such setting is different for each source code, and it is very difficult to introduce it when setting all source codes.

また、ソフトウェアの流用開発、派生開発においては、従来、機能テストによる確認作業が一般的になされている。   In addition, in the diversion development and derivative development of software, conventionally, confirmation work by function tests has been generally performed.

しかしながら、機能テストの場合、確認項目によっては、影響のあるソースコードの評価ができていないケースがある。その反面、毎回、すべてのテストを実施するのは、膨大な工数を必要とするので効率的に好ましくない。   However, in the case of a function test, depending on the confirmation item, there are cases in which the affected source code cannot be evaluated. On the other hand, it is not preferable to perform all tests every time because it requires a huge number of man-hours.

特開2012−73692号公報JP 2012-73692 A

以上を総括すると、従来技術では以下のような課題が生じていた。   Summarizing the above, the following problems have occurred in the prior art.

即ち、第1に、ソフトウェアの流用開発、派生開発において、変更部位に関する影響度を簡易に可視化する技術が実現されていない。第2に、ソフトウェアの流用開発、派生開発、及び新規開発において、プログラムの構造を、手間をかけずに改善し簡素化する技術が実現されていない。第3に、ソースコードによる分析では、分析前の手順が複雑になってしまうので効率が良くない。そして、第4に、流用部品適用後、ソフトウェアに関して行う機能テストでは、テストケースの適切な判断ができていない。   That is, first, in software diversion development and derivative development, a technique for easily visualizing the degree of influence regarding a changed part has not been realized. Second, in software diversion development, derivative development, and new development, a technique for improving and simplifying the structure of a program without taking time is not realized. Third, the analysis using the source code is not efficient because the procedure before the analysis becomes complicated. And fourthly, after applying the diverted parts, in the function test performed on the software, an appropriate test case cannot be determined.

本発明は、このような課題に鑑みてなされたものであり、ソフトウェアの影響度を可視化し、設計時における変更点の妥当性の確認に活用可能とすることを目的とする。   The present invention has been made in view of such problems, and an object of the present invention is to visualize the degree of influence of software so that it can be used for confirming the validity of changes at the time of design.

さらに、ソフトウェア構造を可視化し、構造の簡素化を支援することを目的とする。   Furthermore, it aims at visualizing the software structure and supporting the simplification of the structure.

また、コンパイル、リンク後のオブジェクトをインプットデータとして解析することにより、解析の手間を簡素化することを目的とする。   Another object of the present invention is to simplify the analysis effort by analyzing the compiled and linked objects as input data.

そして、ソフトウェア影響箇所、ソフトウェア構造を差分分析し、テスト活用可能とすることを目的とする。   The purpose is to enable differential analysis of software-affected locations and software structures to enable test utilization.

上記課題を解決するため、本発明の第1の態様に係るオブジェクト分析装置は、表示部と、関数ブロック情報をリードし、関数ノード情報を作成し、第1乃至第Nの関数ノードについて、関数範囲に分岐命令が含まれるかを判断し、含まれている場合には、分岐先ノードと現ノードを関連付けるオブジェクト分析部と、前記オブジェクト分析部が、すべての関数ノードNについて関連付けを完了すると、関数コールグラフ表示、又は関数コールマトリクス表示を前記表示部に行うよう制御する分析結果表示制御部と、を備え、前記関数コールグラフ表示では、コール先が矢印で示され、前記関数コールマトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクスの中に塗りつぶしで示され、各関数間の対応関係を示唆する。 In order to solve the above-described problem, an object analysis apparatus according to a first aspect of the present invention reads a function block information by reading a display unit and function block information, and generates function node information for the first to Nth function nodes. It is determined whether a branch instruction is included in the range, and if included, an object analysis unit that associates the branch destination node with the current node, and the object analysis unit completes the association for all the function nodes N. An analysis result display control unit that controls the function call graph display or the function call matrix display to be performed on the display unit. In the function call graph display, a call destination is indicated by an arrow, and in the function call matrix display. If there is a corresponding relationship between the calling side and the calling side, it is indicated by a solid fill in the matrix, indicating the corresponding relationship between each function. To.

本発明の第2の態様に係るオブジェクト分析装置は、表示部と、第1乃至第Nの関数ブロックのそれぞれに対して第1乃至第Nのグローバル変数を処理対象とし、前記第1乃至第Nの関数ブロックのそれぞれにグローバル変数参照命令が存在するか否かを判断し、存在する場合には、前記第1乃至第Nの関数ブロックのぞれぞれと前記第1乃至第Nのグローバル変数とを関連付けるオブジェクト分析部と、前記第1乃至第Nの関数ブロックについて、前記関連付けを終えると、前記表示部に変数構造マトリクス表示を行う分析結果表示制御部と、を備え、前記変数構造マトリクス表示では、前記第1乃至第Nのグローバル変数と各関数との変数構造が視覚化され、前記分析結果表示制御部は、変数構造影響マトリクス表示を前記表示部に更に行うように制御し、前記変数構造影響マトリクス表示では、グローバル変数と各関数との変数構造が視覚化されると共に、着目した変数の強調表示がなされる。 The object analysis apparatus according to the second aspect of the present invention uses the first to Nth global variables as processing targets for the display unit and the first to Nth function blocks, respectively. It is determined whether or not a global variable reference instruction exists in each of the function blocks. If there are, a first to Nth global variable and each of the first to Nth global variables are determined. And an analysis result display control unit that displays a variable structure matrix on the display unit when the association is completed for the first to Nth function blocks, and the variable structure matrix display in the variable structure of the global variables and the functions of the first to N is visualized, wherein the analysis result display control unit further row variable structure impact matrix display on the display unit Controlled to, in the variable structure impact matrix display, with variable structure of the global variables and each function is visualized, highlighting the focused variable is made.

本発明の第3の態様に係るオブジェクト分析方法は、オブジェクト分析部が、関数ブロック情報をリードし、関数ノード情報を作成し、第1乃至第Nの関数ノードについて、関数範囲に分岐命令が含まれるかを判断し、含まれている場合には、分岐先ノードと現ノードを関連付けるステップと、分析結果表示制御部が、前記オブジェクト分析部がすべての関数ノードNについて関連付けを完了すると、関数コールグラフ表示、又は関数コールマトリクス表示を表示部に行うよう制御するステップと、を有し、前記関数コールグラフ表示では、コール先が矢印で示され、前記関数コールマトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクスの中に塗りつぶしで示され、各関数間の対応関係を示唆する。 In the object analysis method according to the third aspect of the present invention, the object analysis unit reads function block information to create function node information, and the first to Nth function nodes include branch instructions in the function range. If it is included, the step of associating the branch destination node with the current node and the analysis result display control unit, when the object analysis unit completes the association for all the function nodes N, the function call A step of controlling the display unit to perform graph display or function call matrix display on the display unit. In the function call graph display, a call destination is indicated by an arrow, and in the function call matrix display, a call side is set. If there is a correspondence relationship on the other side, it is indicated by a solid fill in the matrix, suggesting a correspondence relationship between each function.

本発明の第4の態様に係るオブジェクト分析方法は、オブジェクト分析部が、第1乃至第Nの関数ブロックのそれぞれに対して第1乃至第Nのグローバル変数を処理対象とし、前記第1乃至第Nの関数ブロックのそれぞれにグローバル変数参照命令が存在するか否かを判断し、存在する場合には、前記第1乃至第Nの関数ブロックのぞれぞれと前記第1乃至第Nのグローバル変数とを関連付けるステップと、分析結果表示制御部が、前記第1乃至第Nの関数ブロックについて、前記関連付けを終えると、表示部に変数構造マトリクス表示を行うステップと、を有し、前記変数構造マトリクス表示では、前記第1乃至第Nのグローバル変数と各関数との変数構造が視覚化され、前記分析結果表示制御部は、変数構造影響マトリクス表示を前記表示部に更に行うように制御し、前記変数構造影響マトリクス表示では、グローバル変数と各関数との変数構造が視覚化されると共に、着目した変数の強調表示がなされる。 In the object analysis method according to the fourth aspect of the present invention, the object analysis unit sets the first to Nth global variables as processing targets for the first to Nth function blocks, respectively. It is determined whether or not a global variable reference instruction exists in each of the N function blocks. If there is a global variable reference instruction, each of the first to Nth function blocks and the first to Nth global blocks are determined. A step of associating variables, and a step of displaying a variable structure matrix on the display unit when the analysis result display control unit finishes the association with respect to the first to Nth function blocks. the matrix display, variable structure of the global variables and the functions of the first to N is visualized, the analysis result display control unit, the display variable structure impact matrix display Further controls to perform, in the said variable structure impact matrix display, with variable structure of the global variables and each function is visualized, highlighting the focused variable is made.

本発明の第5の態様に係るプログラムは、コンピュータを、関数ブロック情報をリードし、関数ノード情報を作成し、第1乃至第Nの関数ノードについて、関数範囲に分岐命令が含まれるかを判断し、含まれている場合には、分岐先ノードと現ノードを関連付けるオブジェクト分析部と、前記オブジェクト分析部が、すべての関数ノードNについて関連付けを完了すると、関数コールグラフ表示、又は関数コールマトリクス表示を表示部に行うよう制御する分析結果表示制御部と、して機能させ、前記関数コールグラフ表示では、コール先が矢印で示され、前記関数コールマトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクスの中に塗りつぶしで示され、各関数間の対応関係を示唆する。 A program according to a fifth aspect of the present invention causes a computer to read function block information, create function node information, and determine whether the function range includes a branch instruction for the first to Nth function nodes. If included, the object analysis unit for associating the branch destination node with the current node, and when the object analysis unit completes the association for all the function nodes N, the function call graph display or the function call matrix display The function call graph display indicates the call destination by an arrow, and the function call matrix display indicates the side to be called as the calling side. If there is a correspondence, it is shown as a solid fill in the matrix, suggesting a correspondence between each function.

本発明の第6の態様に係るプログラムは、コンピュータを、第1乃至第Nの関数ブロックのそれぞれに対して第1乃至第Nのグローバル変数を処理対象とし、前記第乃至第Nの関数ブロックのそれぞれにグローバル変数参照命令が存在するか否かを判断し、存在する場合には、前記第1乃至第Nの関数ブロックのぞれぞれと前記第1乃至第Nのグローバル変数とを関連付けるオブジェクト分析部と、前記第1乃至第Nの関数ブロックについて、前記関連付けを終えると、表示部に変数構造マトリクス表示を行う分析結果表示制御部と、して機能させ、前記変数構造マトリクス表示では、前記第1乃至第Nのグローバル変数と各関数との変数構造が視覚化され、前記分析結果表示制御部は、変数構造影響マトリクス表示を前記表示部に更に行うように制御し、前記変数構造影響マトリクス表示では、グローバル変数と各関数との変数構造が視覚化されると共に、着目した変数の強調表示がなされる。 Program according to a sixth aspect of the present invention, a computer, a first to a global variable of the N for each of the function blocks of the first through N and processed, first through a function block of the N Each of the first to Nth function blocks is associated with each of the first to Nth global variables. When the association is completed for the object analysis unit and the first to Nth function blocks, the display unit functions as an analysis result display control unit that performs variable structure matrix display. In the variable structure matrix display, The variable structure of the first to Nth global variables and each function is visualized, and the analysis result display control unit further performs variable structure influence matrix display on the display unit. In the variable structure influence matrix display, the variable structure of the global variable and each function is visualized, and the focused variable is highlighted.

本発明によれば、ソフトウェアの影響度を可視化し、設計時における変更点の妥当性確認に活用可能とするオブジェクト分析装置、オブジェクト分析方法、及びプログラムを提供することができる。   According to the present invention, it is possible to provide an object analysis device, an object analysis method, and a program that can visualize the degree of influence of software and can be used for checking the validity of changes at the time of design.

さらに、ソフトウェア構造を可視化し、構造の簡素化を支援可能とするオブジェクト分析装置、オブジェクト分析方法、及びプログラムを提供することができる。   Furthermore, it is possible to provide an object analysis device, an object analysis method, and a program that can visualize the software structure and support the simplification of the structure.

また、コンパイル、リンク後のオブジェクトをインプットデータとして解析することにより、解析の手間の簡素化が可能とするオブジェクト分析装置、オブジェクト分析方法、及びプログラムを提供することができる。   Further, it is possible to provide an object analysis apparatus, an object analysis method, and a program that can simplify the time and effort of analysis by analyzing the compiled and linked objects as input data.

そして、ソフトウェア影響箇所、ソフトウェア構造を差分分析し、テスト活用可能とするオブジェクト分析装置、オブジェクト分析方法、及びプログラムを提供することができる。   Then, it is possible to provide an object analysis apparatus, an object analysis method, and a program that enable differential analysis of software-affected locations and software structures to enable test utilization.

本発明の第1実施形態乃至第4実施形態に係るソフトウェア分析装置の機能ブロック図である。It is a functional block diagram of the software analyzer which concerns on 1st Embodiment thru | or 4th Embodiment of this invention. 第1実施形態に係るソフトウェア分析装置によりユーザオブジェクトを生成する過程を説明する概念図である。It is a conceptual diagram explaining the process in which a user object is produced | generated by the software analyzer which concerns on 1st Embodiment. 第1実施形態に係るソフトウェア分析装置の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the software analyzer which concerns on 1st Embodiment. 第1実施形態に係るソフトウェア分析装置による関数コールグラフ表示の一例を示す図である。It is a figure which shows an example of the function call graph display by the software analyzer which concerns on 1st Embodiment. 第1実施形態に係るソフトウェア分析装置による関数コールマトリクス表示の一例を示す図である。It is a figure which shows an example of the function call matrix display by the software analyzer which concerns on 1st Embodiment. 第2実施形態に係るソフトウェア分析装置の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the software analyzer which concerns on 2nd Embodiment. 第2実施形態に係るソフトウェア分析装置による関数コール影響グラフ表示の一例を示す図である。It is a figure which shows an example of the function call influence graph display by the software analyzer which concerns on 2nd Embodiment. 第2実施形態に係るソフトウェア分析装置による関数コール影響マトリクス表示の一例を示す図である。It is a figure which shows an example of the function call influence matrix display by the software analyzer which concerns on 2nd Embodiment. 第3実施形態に係るソフトウェア分析装置によりユーザオブジェクトを生成する過程を説明する概念図である。It is a conceptual diagram explaining the process in which a user object is produced | generated by the software analyzer which concerns on 3rd Embodiment. 第3実施形態に係るソフトウェア分析装置の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the software analyzer which concerns on 3rd Embodiment. 第3実施形態に係るソフトウェア分析装置による変数構造マトリクス表示の一例を示す図である。It is a figure which shows an example of the variable structure matrix display by the software analyzer which concerns on 3rd Embodiment. 第4実施形態に係るソフトウェア分析装置の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the software analyzer which concerns on 4th Embodiment. 第4実施形態に係るソフトウェア分析装置による変数構造影響マトリクス表示の一例を示す図である。It is a figure which shows an example of the variable structure influence matrix display by the software analyzer which concerns on 4th Embodiment. 本発明の第5実施形態に係るソフトウェア分析装置の機能ブロック図である。It is a functional block diagram of the software analyzer which concerns on 5th Embodiment of this invention. 第5実施形態に係るソフトウェア分析装置の処理手順を示すフローチャートである。It is a flowchart which shows the process sequence of the software analyzer which concerns on 5th Embodiment. 第5実施形態に係るソフトウェア分析装置による差分関数コール影響グラフ表示の一例を示す図である。It is a figure which shows an example of the difference function call influence graph display by the software analyzer which concerns on 5th Embodiment.

以下、図面を参照しつつ本発明の一実施形態について説明する。   Hereinafter, an embodiment of the present invention will be described with reference to the drawings.

<第1実施形態> <First Embodiment>

図1には、本発明の第1実施形態乃至第4実施形態に係るソフトウェア分析装置の機能ブロック図を示し説明する。この第1実施形態に係る装置及び方法では、ソフトウェアの影響度を可視化し、設計時における変更点の妥当性確認に活用可能とする。さらに、ソフトウェア構造を可視化し、構造の簡素化を支援可能とする。   FIG. 1 is a functional block diagram of a software analysis apparatus according to the first to fourth embodiments of the present invention. In the apparatus and method according to the first embodiment, the degree of influence of software is visualized and can be used for validity confirmation of changes at the time of design. In addition, the software structure can be visualized, and simplification of the structure can be supported.

同図に示されるように、ソフトウェア分析装置1は、CPU(Central Processing Unit)等の制御部2を備えており、制御部2は、解析表示プログラム3を実行することで、オブジェクト分析部3a、分析結果表示制御部3bとして機能する。制御部2は、第1記憶部4、第2記憶部5、及び表示部6と接続されている。   As shown in the figure, the software analysis apparatus 1 includes a control unit 2 such as a CPU (Central Processing Unit). The control unit 2 executes an analysis display program 3 to thereby execute an object analysis unit 3a, It functions as the analysis result display control unit 3b. The control unit 2 is connected to the first storage unit 4, the second storage unit 5, and the display unit 6.

このような構成において、この実施形態では、コンパイル、リンク後のオブジェクトをインプットデータとして解析することにより、解析の手間の簡素化が可能とする。オブジェクト分析部3aは、第1記憶部4のユーザオブジェクトについてオブジェクト分析を行い、詳細は後述するが、影響度や、構造出力ファイル等を生成する。この影響度や構造出力ファイルは、第2記憶部5に格納される。分析結果表示制御部3bは、この影響度、構造出力ファイルに基づいて、表示部6に所定の表示を行うように制御する。所定の表示としては、関数コールグラフ表示、関数コールマトリクス表示等がある。   In this configuration, in this embodiment, it is possible to simplify the time and effort of analysis by analyzing the compiled and linked object as input data. The object analysis unit 3a performs object analysis on the user object in the first storage unit 4, and generates an influence level, a structure output file, and the like, as will be described in detail later. The influence level and the structure output file are stored in the second storage unit 5. The analysis result display control unit 3b controls the display unit 6 to perform a predetermined display based on the degree of influence and the structure output file. Examples of the predetermined display include a function call graph display and a function call matrix display.

図2には、第1実施形態に係るソフトウェア分析装置によりユーザオブジェクトを生成する過程を示し説明する。   FIG. 2 shows and describes a process of generating a user object by the software analysis apparatus according to the first embodiment.

ソースコードをコンパイル、リンクした結果、実行プログラム、つまりユーザオブジェクトが生成される。ユーザオブジェクトには、命令コード、関数ブロック情報、及び分岐命令が含まれている。「命令コード」とは、コンパイル後、ソースコードが機械語に翻訳されたものをいう。「関数ブロック情報」とは、どの命令がソースコードのどの関数と結びつくのかを示したものをいう。そして、「分岐命令」とは、ソースコード上で関数コールした際に生成される分岐命令をいう。   As a result of compiling and linking the source code, an execution program, that is, a user object is generated. The user object includes an instruction code, function block information, and a branch instruction. “Instruction code” means a source code translated into a machine language after compilation. “Function block information” refers to information indicating which instruction is associated with which function in the source code. The “branch instruction” refers to a branch instruction generated when a function call is made on the source code.

以下、図3のフローチャートを参照して、第1実施形態に係るソフトウェア分析装置の処理手順を説明する。   Hereinafter, the processing procedure of the software analyzer according to the first embodiment will be described with reference to the flowchart of FIG.

処理を開始すると、制御部2のオブジェクト分析部3aは、関数ブロック情報をリードし、関数ノード情報を作成する(S1)。先ず、関数ノード0について、関数範囲に分岐命令が含まれるかを判断し(S3)、含まれている場合には、分岐先ノードと現ノードを関連付ける(S4)。そして、関数範囲の終端まで走査したかを判断し(S5)、走査していなければ(S5をNO)、ステップS3に戻り上記処理を繰り返す。   When the process is started, the object analysis unit 3a of the control unit 2 reads the function block information and creates function node information (S1). First, it is determined whether a branch instruction is included in the function range for the function node 0 (S3). If included, the branch destination node is associated with the current node (S4). Then, it is determined whether or not the end of the function range has been scanned (S5). If not scanned (S5 is NO), the process returns to step S3 and the above processing is repeated.

関数範囲に分岐命令が含まれていない場合(S3をNO)、又は関数範囲の終端まで走査したときは(S5をYES)、次の関数ノードについて、上記処理を繰り返す。そして、すべての関数ノードNについて上記処理を完了すると(S6)、分析結果表示制御部3bによりコールグラフ表示、又は関数コールマトリクス表示を表示部6に行い(S7)、こうして一連の処理を終了する。   When a branch instruction is not included in the function range (S3: NO), or when the function range has been scanned to the end (S5: YES), the above processing is repeated for the next function node. When the above processing is completed for all function nodes N (S6), the analysis result display control unit 3b performs call graph display or function call matrix display on the display unit 6 (S7), thus ending the series of processing. .

図4には、第1実施形態に係るソフトウェア分析装置による関数コールグラフ表示の一例を示し説明する。同図に示されるように、関数コールグラフ表示では、コール先が矢印で示されるので、コール先を一目で確認することが可能となる。   FIG. 4 shows and describes an example of a function call graph display by the software analysis apparatus according to the first embodiment. As shown in the figure, in the function call graph display, since the call destination is indicated by an arrow, the call destination can be confirmed at a glance.

図5には、第1実施形態に係るソフトウェア分析装置による関数コールマトリクス表示の一例を示し説明する。同図に示されるように、関数コールマトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクス表の中に「塗りつぶし」で示されるので、各関数間の対応関係を確認することが可能となる。   FIG. 5 illustrates an example of function call matrix display by the software analysis apparatus according to the first embodiment. As shown in the figure, in the function call matrix display, when there is a correspondence relationship between the calling side and the calling side, it is indicated by “filled” in the matrix table. It becomes possible to confirm.

以上説明したように、本発明の第1実施形態によれば、ソフトウェアの影響度を可視化し、設計時における変更点の妥当性確認に活用可能とすることができる。さらに、ソフトウェア構造を可視化し、構造の簡素化を支援可能とすることができる。   As described above, according to the first embodiment of the present invention, the degree of influence of software can be visualized and utilized for confirming the validity of changes at the time of design. Furthermore, the software structure can be visualized, and simplification of the structure can be supported.

<第2実施形態> Second Embodiment

本発明の第2実施形態に係るソフトウェア分析装置の機能ブロック図は先に図1に示したのと同様であるので、ここでは同一構成については同一符号を用いて説明する。   Since the functional block diagram of the software analyzing apparatus according to the second embodiment of the present invention is the same as that shown in FIG. 1, the same components will be described using the same reference numerals.

前述した第1実施形態では、関数コール関係の表示にて、構造化による可視化はできるが、派生開発時に重要である影響度の調査には利用することができなかった。そこで、第2実施形態では、影響度の調査に活用し得るように表示を工夫する。即ち、この第2実施形態では、第1実施形態の作用に加えて、着目した関数の協調表示、着目した関数にのみ影響のある関数の協調表示を行うこととする。   In the first embodiment described above, the function call relation display can be visualized by structuring, but it cannot be used to investigate the degree of influence that is important at the time of derivation development. Therefore, in the second embodiment, the display is devised so that it can be used for the investigation of the influence degree. That is, in the second embodiment, in addition to the operation of the first embodiment, the coordinated display of the focused function and the coordinated display of the function that affects only the focused function are performed.

以下、図6のフローチャートを参照して、第2実施形態に係るソフトウェア分析装置の処理手順を説明する。ステップS1乃至S7までは、図3と同様であるので、重複した説明は省略する。分析結果表示制御部3bによりコールグラフ表示、又は関数コールマトリクス表示を表示部6で行った後、更に着目した関数の協調表示、着目した関数にのみ影響のある関数の協調表示を行い(S8)、処理を終了する。   Hereinafter, a processing procedure of the software analysis apparatus according to the second embodiment will be described with reference to the flowchart of FIG. Steps S1 to S7 are the same as those in FIG. After the call graph display or the function call matrix display is performed on the display unit 6 by the analysis result display control unit 3b, the coordinated display of the focused function and the coordinated display of the function that affects only the focused function are performed (S8). The process is terminated.

図7には、本発明の第2実施形態に係るソフトウェア分析装置による関数コール影響グラフ表示の一例を示し説明する。同図に示されるように、この関数コール影響グラフ表示では、コール先が矢印で示され、更に着目した関数の協調表示もなされるので、影響度の調査に利用することが可能となる。   FIG. 7 shows an example of a function call influence graph displayed by the software analysis apparatus according to the second embodiment of the present invention. As shown in the figure, in the function call influence graph display, the call destination is indicated by an arrow, and further, the coordinated display of the function of interest is also made, so that it can be used for the investigation of the influence degree.

図8には、本発明の第2実施形態に係るソフトウェア分析装置による関数コール影響マトリクス表示の一例を示し説明する。同図に示されるように、関数コール影響マトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクス表の中に「塗りつぶし」で示され、特に着目した関数にのみ影響のある関数は協調表示されるので、影響度を意識しながら、各関数間の対応関係を確認することが可能となる。   FIG. 8 illustrates an example of function call influence matrix display by the software analysis apparatus according to the second embodiment of the present invention. As shown in the figure, in the function call influence matrix display, if there is a correspondence relationship between the calling side and the calling side, it is indicated by “filled” in the matrix table, and only affects the function of particular interest. Since a function with a symbol is displayed in a coordinated manner, it is possible to check the correspondence between each function while being aware of the degree of influence.

以上説明したように、本発明の第2実施形態によれば、着目した関数の協調表示の協調表示や、着目した関数にのみ影響のある関数の協調表示を行えるので、ソフトウェアの影響度に加えて強調箇所を可視化し、設計時における変更点の妥当性確認に活用可能とすることができる。   As described above, according to the second embodiment of the present invention, the coordinated display of the focused function and the coordinated display of the function that affects only the focused function can be performed. This makes it possible to visualize the highlighted part and use it to confirm the validity of the changes at the time of design.

<第3実施形態> <Third Embodiment>

本発明の第3実施形態に係るソフトウェア分析装置の機能ブロック図は先に図1に示したのと同様であるので、ここでは同一構成については同一符号を用いて説明する。この第3実施形態では、変数構造を可視化することが可能となる。すなわち、この第3実施形態では、変数構造マトリクス表示を実現する。   Since the functional block diagram of the software analyzing apparatus according to the third embodiment of the present invention is the same as that shown in FIG. 1, the same components will be described using the same reference numerals. In the third embodiment, it is possible to visualize the variable structure. That is, in the third embodiment, variable structure matrix display is realized.

図9には、第3実施形態に係るソフトウェア分析装置によりユーザオブジェクトを生成する過程を示し説明する。   FIG. 9 shows and describes a process of generating a user object by the software analysis apparatus according to the third embodiment.

ソースコードを、コンパイル、リンクした結果、実行プログラム、つまりユーザオブジェクトが生成される。ユーザオブジェクトには、命令コード、関数ブロック情報、参照命令、及び更新命令が含まれている。「命令コード」とは、コンパイル後、ソースコードが機械語に翻訳されたものをいう。「関数ブロック情報」とは、どの命令がソースコードのどの関数に結び付くか示されたものをいう。「参照命令」とは、特定メモリを参照する命令をいう。そして、「更新命令」とは、特定メモリを更新する命令をいう。   As a result of compiling and linking the source code, an execution program, that is, a user object is generated. The user object includes an instruction code, function block information, a reference instruction, and an update instruction. “Instruction code” means a source code translated into a machine language after compilation. “Function block information” refers to information indicating which instruction is associated with which function in the source code. A “reference instruction” refers to an instruction that refers to a specific memory. The “update instruction” is an instruction for updating a specific memory.

以下、図10のフローチャートを参照して、第3実施形態に係るソフトウェア分析装置の処理手順を説明する。   Hereinafter, with reference to the flowchart of FIG. 10, a processing procedure of the software analysis apparatus according to the third embodiment will be described.

この処理では、制御部2のオブジェクト分析部3aは、関数ブロック0に対して処理を開始し(S11)、先ずグローバル変数0を処理対象とする(S12)。   In this processing, the object analysis unit 3a of the control unit 2 starts processing for the function block 0 (S11), and first sets the global variable 0 as a processing target (S12).

そして、現在ブロックに現在グローバル変数参照命令が存在するか否かを判断し(S13)、存在する場合には(S13をYES)、現在関数ブロックと現在グローバル変数を関連付ける(参照)(S14)。一方、現在グローバル変数参照命令が存在しなければ(S13をNO)、S15に移行する。   Then, it is determined whether or not there is a current global variable reference instruction in the current block (S13). If it exists (YES in S13), the current function block and the current global variable are associated (reference) (S14). On the other hand, if there is no global variable reference instruction (NO in S13), the process proceeds to S15.

続いて、現在ブロックに現在グローバル変数更新命令が存在するか否かを判断し(S15)、存在する場合には(S15をYES)、現在関数ブロックと現在グローバル変数を関連付ける(更新)(S16)。一方、現在グローバル変数参照命令が存在しなければ(S15をNO)、S17に移行する。   Subsequently, it is determined whether or not there is a current global variable update instruction in the current block (S15). If it exists (YES in S15), the current function block and the current global variable are associated (update) (S16). . On the other hand, if there is no global variable reference instruction (NO in S15), the process proceeds to S17.

続いて、グローバル変数1について、上記同様の処理を行い、以降、関数ブロック0内の全てのグローバル変数Nについて上記処理を終えると(S17)、次の関数ブロック1について同様の処理を行い、全ての関数ブロックについて上記処理を終えると(S18)、分析結果表示制御部3bは、変数構造マトリクス表示を行い(S19)、こうして一連の処理を終了する。   Subsequently, the same processing as described above is performed for the global variable 1, and thereafter, when the above processing is completed for all the global variables N in the function block 0 (S17), the same processing is performed for the next function block 1. When the above processing is completed for the function block (S18), the analysis result display control unit 3b performs variable structure matrix display (S19), thus ending the series of processing.

図11には、第3実施形態に係るソフトウェア分析装置による変数構造マトリクス表示の一例を示し説明する。同図に示されるように、変数構造マトリクス表示では、グローバル変数と各関数との変数構造が視覚化される。   FIG. 11 illustrates an example of a variable structure matrix display by the software analysis apparatus according to the third embodiment. As shown in the figure, the variable structure matrix display visualizes the variable structure of the global variable and each function.

以上説明したように、本発明の第3実施形態によれば、ソフトウェアの影響度に加えて変数構造をマトリクス表示により可視化し、設計時における変更点の妥当性確認に活用可能とすることができる。   As described above, according to the third embodiment of the present invention, in addition to the degree of influence of software, the variable structure can be visualized by a matrix display, and can be utilized for checking the validity of the changes at the time of design. .

<第4実施形態> <Fourth embodiment>

本発明の第4実施形態に係るソフトウェア分析装置の機能ブロック図は先に図1に示したのと同様であるので、ここでは同一構成については同一符号を用いて説明する。   Since the functional block diagram of the software analyzing apparatus according to the fourth embodiment of the present invention is the same as that shown in FIG. 1, the same components will be described using the same reference numerals.

前述した第3実施形態の関するコールマトリクス表示では、構造化による可視化はできるが、派生開発時に重要である影響度の調査には利用することができなかった。このような点に鑑みて、第4実施形態では、影響度を視覚化する。具体的には、変数構造のマトリクス表示に加えて、着目した変数の協調表示、着目した変数にのみ影響のある関数の協調表示を行うこととする。   The call matrix display related to the third embodiment described above can be visualized by structuring, but cannot be used for investigating the degree of influence that is important during derivative development. In view of such a point, the influence degree is visualized in the fourth embodiment. Specifically, in addition to the matrix display of the variable structure, coordinated display of the focused variable and coordinated display of functions that affect only the focused variable are performed.

以下、図12のフローチャートを参照して、第4実施形態に係るソフトウェア分析装置の処理手順を説明する。ステップS11乃至S19までは、図10と同様であるので、重複した説明は省略する。変数構造マトリクス表示の後(S19)、分析結果表示制御部3bは、着目した変数の協調表示、着目した変数にのみ影響のある関数の協調表示を行い(S20)、処理を終了することになる。   Hereinafter, a processing procedure of the software analysis apparatus according to the fourth embodiment will be described with reference to the flowchart of FIG. Steps S11 to S19 are the same as those in FIG. After the variable structure matrix display (S19), the analysis result display control unit 3b performs coordinated display of the focused variable and coordinated display of a function that affects only the focused variable (S20), and ends the process. .

図13には、第4実施形態に係るソフトウェア分析装置による変数構造影響マトリクス表示の一例を示し説明する。同図に示されるように、変数構造影響マトリクス表示では、グローバル変数と各関数との変数構造が視覚化されると共に、着目した変数の協調表示がなされる。この例では、関数3,4とグローバル変数6,7との協調表示がなされていることから、影響度を把握することが可能となる。   FIG. 13 illustrates an example of variable structure influence matrix display by the software analysis apparatus according to the fourth embodiment. As shown in the figure, in the variable structure influence matrix display, the variable structure of the global variable and each function is visualized, and the focused variable is displayed in a coordinated manner. In this example, since the functions 3 and 4 and the global variables 6 and 7 are displayed in a coordinated manner, the degree of influence can be grasped.

以上説明したように、本発明の第4実施形態によれば、変数構造の可視化に加えて、着目した変数の協調表示、着目した変数にのみ影響のある関数の協調表示を行うことができるので、ソフトウェア構造の可視化がより精度良く行える。   As described above, according to the fourth embodiment of the present invention, in addition to the visualization of the variable structure, the coordinated display of the focused variable and the coordinated display of the function that affects only the focused variable can be performed. Visualization of software structure can be performed with higher accuracy.

<第5実施形態> <Fifth Embodiment>

図14には、本発明の第5実施形態に係るソフトウェア分析装置の機能ブロック図を示し説明する。派生流用開発では、プロダクトのベースラインの成果物に対して、順次、追加、削除、変更を繰り返し作成される。   FIG. 14 shows a functional block diagram of a software analysis apparatus according to the fifth embodiment of the present invention. In derived diversion development, addition, deletion, and change are sequentially repeated for the product's baseline deliverables.

同図に示されるように、ソフトウェア分析装置11は、CPU等の制御部12を備えており、制御部12は、差分解析表示プログラム13を実行することで、オブジェクト差分分析部13a、差分分析結果表示制御部13bとして機能する。制御部12は、第1乃至第3記憶部14乃至16、及び表示部17と接続されている。   As shown in the figure, the software analysis apparatus 11 includes a control unit 12 such as a CPU, and the control unit 12 executes the difference analysis display program 13, thereby the object difference analysis unit 13 a and the difference analysis result. It functions as the display control unit 13b. The control unit 12 is connected to the first to third storage units 14 to 16 and the display unit 17.

このような構成において、ソフトウェア影響箇所、ソフトウェア構造を差分分析し、テスト活用可能とする。即ち、オブジェクト差分分析部13aは、第1記憶部14のユーザオブジェクト(ベースライン)と第2記憶部15のユーザオブジェクト(完成後)についてオブジェクト差分分析を行い、詳細は後述するが、影響度や、構造出力ファイル等(差分)を生成する。この影響度や構造出力ファイルは、第3記憶部16に格納される。差分分析結果表示制御部13bは、この影響度、構造出力ファイルに基づいて、表示部17に所定の表示を行うように制御する。所定の表示としては、差分関数コール影響グラフ表示等がある。   In such a configuration, the software affected part and the software structure are differentially analyzed so that the test can be used. That is, the object difference analysis unit 13a performs object difference analysis on the user object (baseline) in the first storage unit 14 and the user object (after completion) in the second storage unit 15, and details will be described later. Generate structure output file etc. (difference). The influence level and the structure output file are stored in the third storage unit 16. The difference analysis result display control unit 13b controls to perform a predetermined display on the display unit 17 based on the degree of influence and the structure output file. Examples of the predetermined display include a difference function call influence graph display.

以下、図15のフローチャートを参照して、第5実施形態に係るソフトウェア分析装置の処理手順を説明する。ベースライン関数コールグラフ作成処理を行い(S31)、派生開発品関数コールグラフ作成処理を行う(S32)。これは、第1実施形態で説明した手法による。続いて、ベースライン、派生開発品の変更点抽出を行う(S33)。具体的には、オブジェクト差分分析部13aが、差分分析を行うことで変更点を抽出する。そして、差分コールグラフ表示を行う(S34)。そして、着目した関数の協調表示、及び着目した関数にのみ影響のある関数の協調表示を行い(S35)、一連の処理を終了する。   Hereinafter, a processing procedure of the software analysis apparatus according to the fifth embodiment will be described with reference to a flowchart of FIG. Baseline function call graph creation processing is performed (S31), and derivative development product function call graph creation processing is performed (S32). This is based on the method described in the first embodiment. Subsequently, the change points of the baseline and the derivative development product are extracted (S33). Specifically, the object difference analysis unit 13a extracts a change point by performing difference analysis. Then, a differential call graph is displayed (S34). Then, the coordinated display of the focused function and the coordinated display of the function that affects only the focused function are performed (S35), and the series of processing ends.

図16には、第5実施形態に係るソフトウェア分析装置による差分関数コール影響グラフ表示の一例を示し説明する。   FIG. 16 illustrates an example of a difference function call influence graph display by the software analysis apparatus according to the fifth embodiment.

ベースラインからの変更点(追加、削除、変更)の抽出、変更点に対する影響箇所を洗い出すことは、設計時における考慮漏れの確認、テスト設計時における妥当性検証において品質向上につながる重要な視点である。このような観点から、追加関数、削除関数、及び変更関数を可視化するのが、このグラフ表示である。   Extracting changes (additions, deletions, changes) from the baseline, and identifying the points affected by the changes are important viewpoints that lead to quality improvement in the confirmation of omissions during design and the validity verification during test design. is there. From this point of view, this graph display visualizes the add function, the delete function, and the change function.

以上説明したように、本発明の第5実施形態によれば、ソフトウェア影響箇所、ソフトウェア構造を差分分析し、テスト活用可能とする。   As described above, according to the fifth embodiment of the present invention, the software-affected location and the software structure are differentially analyzed to enable test utilization.

以上、本発明の一実施形態について説明したが、本発明はこれに限定されることなくその趣旨を逸脱しない範囲で種々の改良・変更が可能であることは勿論である。   Although one embodiment of the present invention has been described above, the present invention is not limited to this, and it is needless to say that various improvements and changes can be made without departing from the spirit of the present invention.

例えば、着目した関数の協調表示については、表示の色彩を変更するだけでなく、点滅表示させるなど、種々の区分表示態様を採用することができる。   For example, for the coordinated display of the function of interest, not only the display color can be changed, but also various display modes can be employed such as blinking display.

1…ソフトウェア分析装置、2…制御部、3…解析表示プログラム、3a…オブジェクト分析部、3b…分析結果表示制御部、4…第1記憶部、5…第2記憶部、6…表示部、11…ソフトウェア分析装置、12…制御部、13…差分解析表示プログラム、13a…オブジェクト差分分析部、13b…差分分析結果表示制御部、14…第1記憶部、15…第2記憶部、16…第3記憶部、17…表示部。   DESCRIPTION OF SYMBOLS 1 ... Software analyzer, 2 ... Control part, 3 ... Analysis display program, 3a ... Object analysis part, 3b ... Analysis result display control part, 4 ... 1st memory | storage part, 5 ... 2nd memory | storage part, 6 ... Display part, DESCRIPTION OF SYMBOLS 11 ... Software analyzer, 12 ... Control part, 13 ... Difference analysis display program, 13a ... Object difference analysis part, 13b ... Difference analysis result display control part, 14 ... 1st memory | storage part, 15 ... 2nd memory | storage part, 16 ... 3rd memory | storage part, 17 ... display part.

Claims (12)

表示部と、
関数ブロック情報をリードし、関数ノード情報を作成し、第1乃至第Nの関数ノードについて、関数範囲に分岐命令が含まれるかを判断し、含まれている場合には、分岐先ノードと現ノードを関連付けるオブジェクト分析部と、
前記オブジェクト分析部が、すべての関数ノードNについて関連付けを完了すると、関数コールグラフ表示、又は関数コールマトリクス表示を前記表示部に行うよう制御する分析結果表示制御部と、を備え、
前記関数コールグラフ表示では、コール先が矢印で示され、
前記関数コールマトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクスの中に塗りつぶしで示され、各関数間の対応関係を示唆する
オブジェクト分析装置。
A display unit;
The function block information is read, function node information is created, and it is determined whether or not a branch instruction is included in the function range for the first to Nth function nodes. An object analysis section that associates the nodes;
When the object analysis unit completes the association for all the function nodes N, an analysis result display control unit that controls the display unit to perform function call graph display or function call matrix display, and
In the function call graph display, the call destination is indicated by an arrow,
In the function call matrix display, when there is a correspondence relationship between the calling side and the calling side, the object analysis device is indicated by a solid color in the matrix and suggests the correspondence relationship between the functions.
前記分析結果表示制御部は、関数コール影響マトリクス表示を前記表示部に更に行うように制御し、前記関数コール影響マトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクスの中に塗りつぶしで示され、特に着目した関数にのみ影響のある関数は強調表示される
請求項1に記載のオブジェク分析装置。
The analysis result display control unit performs control so that function call influence matrix display is further performed on the display unit. In the function call influence matrix display, if there is a correspondence relationship between the calling side and the matrix, indicated by fill in, the object analyzer according to claim 1, especially functions that only affects the the focused function is highlighted.
表示部と、
第1乃至第Nの関数ブロックのそれぞれに対して第1乃至第Nのグローバル変数を処理対象とし、前記第1乃至第Nの関数ブロックのそれぞれにグローバル変数参照命令が存在するか否かを判断し、存在する場合には、前記第1乃至第Nの関数ブロックのぞれぞれと前記第1乃至第Nのグローバル変数とを関連付けるオブジェクト分析部と、
前記第1乃至第Nの関数ブロックについて、前記関連付けを終えると、前記表示部に変数構造マトリクス表示を行う分析結果表示制御部と、を備え、
前記変数構造マトリクス表示では、前記第1乃至第Nのグローバル変数と各関数との変数構造が視覚化され、
前記分析結果表示制御部は、変数構造影響マトリクス表示を前記表示部に更に行うように制御し、前記変数構造影響マトリクス表示では、グローバル変数と各関数との変数構造が視覚化されると共に、着目した変数の強調表示がなされる
ブジェクト分析装置。
A display unit;
The first to Nth global variables are processed for each of the first to Nth function blocks, and it is determined whether or not a global variable reference instruction exists in each of the first to Nth function blocks. And, if present, an object analysis unit for associating each of the first to Nth function blocks with the first to Nth global variables;
An analysis result display control unit that performs variable structure matrix display on the display unit when the association is completed for the first to Nth function blocks;
In the variable structure matrix display, the variable structure of the first to Nth global variables and each function is visualized ,
The analysis result display control unit performs control so that a variable structure influence matrix display is further performed on the display unit. In the variable structure influence matrix display, a variable structure of a global variable and each function is visualized. Highlighted variables are highlighted
Object analyzer.
差分分析を行うことで変更点を抽出するオブジェクト差分分析部を更に有し、
前記分析結果表示制御部は、前記表示部に差分コールグラフ表示を更に行う
請求項1に記載のオブジェクト分析装置。
It further has an object difference analysis unit that extracts changes by performing difference analysis,
The object analysis apparatus according to claim 1, wherein the analysis result display control unit further displays a differential call graph on the display unit.
オブジェクト分析部が、関数ブロック情報をリードし、関数ノード情報を作成し、第1乃至第Nの関数ノードについて、関数範囲に分岐命令が含まれるかを判断し、含まれている場合には、分岐先ノードと現ノードを関連付けるステップと、
分析結果表示制御部が、前記オブジェクト分析部がすべての関数ノードNについて関連付けを完了すると、関数コールグラフ表示、又は関数コールマトリクス表示を表示部に行うよう制御するステップと、を有し、
前記関数コールグラフ表示では、コール先が矢印で示され、
前記関数コールマトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクスの中に塗りつぶしで示され、各関数間の対応関係を示唆する
オブジェクト分析方法。
The object analysis unit reads the function block information, creates function node information, determines whether a branch instruction is included in the function range for the first to Nth function nodes, and if included, Associating the branch destination node with the current node;
An analysis result display control unit, when the object analysis unit completes the association for all the function nodes N, controlling to perform function call graph display or function call matrix display on the display unit,
In the function call graph display, the call destination is indicated by an arrow,
In the function call matrix display, when there is a correspondence relationship between the calling side and the calling side, the object analysis method is indicated by filling in the matrix and suggests the correspondence relationship between the functions.
前記分析結果表示制御部は、関数コール影響マトリクス表示を前記表示部に更に行うように制御し、前記関数コール影響マトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクスの中に塗りつぶしで示され、特に着目した関数にのみ影響のある関数は強調表示される
請求項に記載のオブジェク分析方法。
The analysis result display control unit performs control so that function call influence matrix display is further performed on the display unit. In the function call influence matrix display, if there is a correspondence relationship between the calling side and the matrix, indicated by fill in, the object analysis method according to claim 5 in particular function that only affects the the focused function is highlighted.
オブジェクト分析部が、第1乃至第Nの関数ブロックのそれぞれに対して第1乃至第Nのグローバル変数を処理対象とし、前記第1乃至第Nの関数ブロックのそれぞれにグローバル変数参照命令が存在するか否かを判断し、存在する場合には、前記第1乃至第Nの関数ブロックのぞれぞれと前記第1乃至第Nのグローバル変数とを関連付けるステップと、
分析結果表示制御部が、前記第1乃至第Nの関数ブロックについて、前記関連付けを終えると、表示部に変数構造マトリクス表示を行うステップと、を有し、
前記変数構造マトリクス表示では、前記第1乃至第Nのグローバル変数と各関数との変数構造が視覚化され、
前記分析結果表示制御部は、変数構造影響マトリクス表示を前記表示部に更に行うように制御し、前記変数構造影響マトリクス表示では、グローバル変数と各関数との変数構造が視覚化されると共に、着目した変数の強調表示がなされる
ブジェクト分析方法。
The object analysis unit processes the first to Nth global variables for each of the first to Nth function blocks, and a global variable reference instruction exists in each of the first to Nth function blocks. Associating each of the first to Nth function blocks with the first to Nth global variables, if any,
The analysis result display control unit has a step of displaying a variable structure matrix on the display unit when the association is finished for the first to Nth function blocks,
In the variable structure matrix display, the variable structure of the first to Nth global variables and each function is visualized ,
The analysis result display control unit performs control so that a variable structure influence matrix display is further performed on the display unit. In the variable structure influence matrix display, a variable structure of a global variable and each function is visualized. Highlighted variables are highlighted
Object analysis method.
オブジェクト差分分析部が、差分分析を行うことで変更点を抽出するステップを更に有し、前記分析結果表示制御部は、前記表示部に差分コールグラフ表示を更に行う
請求項に記載のオブジェクト分析方法。
The object analysis according to claim 5 , further comprising: a step in which an object difference analysis unit extracts a change point by performing a difference analysis, and the analysis result display control unit further displays a difference call graph on the display unit. Method.
コンピュータを、
関数ブロック情報をリードし、関数ノード情報を作成し、第1乃至第Nの関数ノードについて、関数範囲に分岐命令が含まれるかを判断し、含まれている場合には、分岐先ノードと現ノードを関連付けるオブジェクト分析部と、
前記オブジェクト分析部が、すべての関数ノードNについて関連付けを完了すると、関数コールグラフ表示、又は関数コールマトリクス表示を表示部に行うよう制御する分析結果表示制御部と、して機能させ、
前記関数コールグラフ表示では、コール先が矢印で示され、
前記関数コールマトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクスの中に塗りつぶしで示され、各関数間の対応関係を示唆する
プログラム。
Computer
The function block information is read, function node information is created, and it is determined whether or not a branch instruction is included in the function range for the first to Nth function nodes. An object analysis section that associates the nodes;
When the object analysis unit completes the association for all function nodes N, it functions as an analysis result display control unit that controls the display to perform function call graph display or function call matrix display,
In the function call graph display, the call destination is indicated by an arrow,
In the function call matrix display, when there is a correspondence relationship between the calling side and the calling side, the program is indicated by filling in the matrix and suggests the correspondence relationship between each function.
前記分析結果表示制御部は、関数コール影響マトリクス表示を前記表示部に更に行うように制御し、前記関数コール影響マトリクス表示では、コールする側とされる側の対応関係がある場合には、マトリクスの中に塗りつぶしで示され、特に着目した関数にのみ影響のある関数は強調表示される
請求項に記載のプログラム。
The analysis result display control unit performs control so that function call influence matrix display is further performed on the display unit. In the function call influence matrix display, if there is a correspondence relationship between the calling side and the matrix, The program according to claim 9 , wherein a function which is indicated by a solid color and has an influence only on a function of particular interest is highlighted.
コンピュータを、
第1乃至第Nの関数ブロックのそれぞれに対して第1乃至第Nのグローバル変数を処理対象とし、前記第1乃至第Nの関数ブロックのそれぞれにグローバル変数参照命令が存在するか否かを判断し、存在する場合には、前記第1乃至第Nの関数ブロックのぞれぞれと前記第1乃至第Nのグローバル変数とを関連付けるオブジェクト分析部と、
前記第1乃至第Nの関数ブロックについて、前記関連付けを終えると、表示部に変数構造マトリクス表示を行う分析結果表示制御部と、して機能させ、
前記変数構造マトリクス表示では、前記第1乃至第Nのグローバル変数と各関数との変数構造が視覚化され、
前記分析結果表示制御部は、変数構造影響マトリクス表示を前記表示部に更に行うように制御し、前記変数構造影響マトリクス表示では、グローバル変数と各関数との変数構造が視覚化されると共に、着目した変数の強調表示がなされる
ログラム。
Computer
The first to Nth global variables are processed for each of the first to Nth function blocks, and it is determined whether or not a global variable reference instruction exists in each of the first to Nth function blocks. And, if present, an object analysis unit for associating each of the first to Nth function blocks with the first to Nth global variables;
When the association is finished for the first to Nth function blocks, the display unit functions as an analysis result display control unit that performs variable structure matrix display.
In the variable structure matrix display, the variable structure of the first to Nth global variables and each function is visualized ,
The analysis result display control unit performs control so that a variable structure influence matrix display is further performed on the display unit. In the variable structure influence matrix display, a variable structure of a global variable and each function is visualized. Highlighted variables are highlighted
Program.
コンピュータを、
差分分析を行うことで変更点を抽出するオブジェクト差分分析部としても機能させ、
前記分析結果表示制御部は、前記表示部に差分コールグラフ表示を更に行う
請求項に記載のプログラム。
Computer
It also functions as an object difference analysis unit that extracts changes by performing difference analysis,
The program according to claim 9 , wherein the analysis result display control unit further displays a differential call graph on the display unit.
JP2016210770A 2016-10-27 2016-10-27 Object analysis apparatus, object analysis method, and program Active JP6310527B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016210770A JP6310527B1 (en) 2016-10-27 2016-10-27 Object analysis apparatus, object analysis method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016210770A JP6310527B1 (en) 2016-10-27 2016-10-27 Object analysis apparatus, object analysis method, and program

Publications (2)

Publication Number Publication Date
JP6310527B1 true JP6310527B1 (en) 2018-04-11
JP2018073054A JP2018073054A (en) 2018-05-10

Family

ID=61901909

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016210770A Active JP6310527B1 (en) 2016-10-27 2016-10-27 Object analysis apparatus, object analysis method, and program

Country Status (1)

Country Link
JP (1) JP6310527B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112585547A (en) * 2019-03-13 2021-03-30 欧姆龙株式会社 Analysis device, analysis method, and analysis program

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7013349B2 (en) * 2018-09-18 2022-01-31 株式会社日立製作所 Focus route creation device, focus route creation method, and focus route creation program
JP6742556B1 (en) 2019-10-21 2020-08-19 三菱電機株式会社 Software analysis device
US10951958B1 (en) * 2020-01-08 2021-03-16 Disney Enterprises, Inc. Authenticity assessment of modified content

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0667870A (en) * 1992-08-21 1994-03-11 Fuji Electric Co Ltd Software analyzer
JP2012103923A (en) * 2010-11-10 2012-05-31 Renesas Electronics Corp Compiler device, compiling method and compiler program
JP5658364B2 (en) * 2011-06-17 2015-01-21 株式会社日立製作所 Program visualization device
JP6300710B2 (en) * 2014-12-04 2018-03-28 三菱電機株式会社 Change impact analysis apparatus, change impact analysis method and program
JP2016122321A (en) * 2014-12-25 2016-07-07 株式会社日立製作所 Analysis device, analysis method, and analysis program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112585547A (en) * 2019-03-13 2021-03-30 欧姆龙株式会社 Analysis device, analysis method, and analysis program
CN112585547B (en) * 2019-03-13 2024-02-06 欧姆龙株式会社 Analysis device, analysis method, and recording medium

Also Published As

Publication number Publication date
JP2018073054A (en) 2018-05-10

Similar Documents

Publication Publication Date Title
JP6310527B1 (en) Object analysis apparatus, object analysis method, and program
US8935673B1 (en) System and method for debugging computer program based on execution history
NL2010546C2 (en) Method and apparatus for automatically generating a test script for a graphical user interface.
US20060101403A1 (en) Method and system to automate software testing using sniffer side and browser side recording and a toolbar interface
JP2015043198A (en) Analysis system, analysis method and analysis program
CN106776334B (en) Comment-based test case generation method and device
US20070061641A1 (en) Apparatus and method for generating test driver
CN109806592B (en) Game resource monitoring method and device
CN112597028A (en) Method and device for displaying case test result and readable storage medium
KR102013657B1 (en) Apparatus for statically analyzing assembly code including assoxiated multi files
CN113760282A (en) Configuration method, device, equipment, medium and program product of form interface
US8024158B2 (en) Management system and management method of CAD data used for a structural analysis
KR20190094779A (en) Automatically Generate Device for PLC Instruction Compiler Test-Case
CN101866373A (en) Execution monitor for electronic design automation
JP6433468B2 (en) Program creation support method
CN114297088A (en) Method, device, equipment and medium for testing front end vue frame assembly
JP6006577B2 (en) Degradation test support system, degradation test support method, and degradation test support program
JP6157166B2 (en) Parts generation system, method and program
JP6097231B2 (en) Program generating apparatus and method
CN106598839A (en) Program static analysis method oriented to object code
WO2020230241A1 (en) Testing device, testing method, and program
KR101843092B1 (en) Method for verifying multiple insurance computer system
CN110618991A (en) Method, system, equipment and storage medium for automatically inputting parameter values
CN114036876B (en) Integrated circuit EDA platform
CN113220596B (en) Application testing method, device, equipment, storage medium and program product

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180227

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180316

R150 Certificate of patent or registration of utility model

Ref document number: 6310527

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250