JP2019160108A - Software model automatic drawing system - Google Patents

Software model automatic drawing system Download PDF

Info

Publication number
JP2019160108A
JP2019160108A JP2018048771A JP2018048771A JP2019160108A JP 2019160108 A JP2019160108 A JP 2019160108A JP 2018048771 A JP2018048771 A JP 2018048771A JP 2018048771 A JP2018048771 A JP 2018048771A JP 2019160108 A JP2019160108 A JP 2019160108A
Authority
JP
Japan
Prior art keywords
block
software model
blocks
automatic operation
model automatic
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
JP2018048771A
Other languages
Japanese (ja)
Inventor
啓介 本田
Keisuke Honda
啓介 本田
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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Automotive Systems Ltd
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 Hitachi Automotive Systems Ltd filed Critical Hitachi Automotive Systems Ltd
Priority to JP2018048771A priority Critical patent/JP2019160108A/en
Publication of JP2019160108A publication Critical patent/JP2019160108A/en
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

To provide means for automatically drawing a software model reflecting the intention of drawer.SOLUTION: Editing work information of a model drawer is stored, on the basis of the stored information, the degree of association among the elements of a software model is set. Each of elements of the software model is automatically arranged by applying a dynamic model to each of the elements of the software model. At this time, forces corresponding to the relevance calculated from editing work information is set in the dynamic model, and the arrangement of each of the elements is determined according to the intention of the drawer.SELECTED DRAWING: Figure 7

Description

本発明は、ソフトウェアモデル自動作図システムに関する。   The present invention relates to a software model automatic operation diagram system.

車載制御装置に搭載されるソフトウェアの設計において、設計効率向上のために、制御ソフトウェアの構造や振る舞いをモデルとして表現したソフトウェアモデルを用いたモデルベース開発が広く用いられている。ここで、車載制御装置に求められる機能の増加/高度化により、搭載されるソフトウェアは複雑化/大規模化しており、それにあわせてソフトウェアモデルも複雑化/大規模化する傾向にある。制御ソフトウェアモデルの複雑化/大規模化により、制御ソフトウェアモデルを構成する要素を作図者の意図通りに見やすく配置するために必要な作業量は増加しており、これを自動で行うことが出来れば設計作業の効率は向上する。   In designing software installed in an in-vehicle control device, model-based development using a software model that represents the structure and behavior of control software as a model is widely used to improve design efficiency. Here, due to the increase / sophistication of functions required for in-vehicle control devices, the installed software has become complicated / large-scaled, and the software model tends to be complicated / large-scaled accordingly. Due to the complexity / large scale of the control software model, the amount of work required to arrange the elements that make up the control software model in an easy-to-read manner as intended by the author has increased, and if this can be done automatically The efficiency of design work is improved.

ところで、ソフトウェアモデルはいわゆるノードとエッジで構成されたグラフに分類されるが、このようなグラフの自動配置を行う手法としてノードとエッジに力学モデルを適用するものが一般的に知られており、本手法を応用した特許文献1が存在する。   By the way, software models are classified into graphs composed of so-called nodes and edges, and it is generally known that a dynamic model is applied to nodes and edges as a method for automatically arranging such graphs. There exists patent document 1 which applied this method.

特開平8−30799号公報JP-A-8-30799

前述の手法によってソフトウェアモデルの自動配置を行おうとすると、配置はノードとエッジの接続関係によってのみ決定される。しかしながらソフトウェアモデルを作図する際には、ノードとエッジの接続関係だけでなく作図者が各ノードの機能的意味などを考慮しながらノードの配置を決定する。例えば機能的に関連があるノードを近くに配置したりする。そこで、本発明の課題は作図者の意図を考慮できるソフトウェアモデル自動作図システムを実現することである。   If automatic placement of the software model is attempted by the above-described method, the placement is determined only by the connection relationship between the node and the edge. However, when drawing a software model, not only the connection relationship between nodes and edges but also the drawing person decides the arrangement of nodes while considering the functional meaning of each node. For example, nodes that are functionally related are arranged nearby. Therefore, an object of the present invention is to realize a software model automatic operation diagram system that can take into account the intention of the creator.

本発明では、課題を解決するため、ソフトウェアモデル作図者の作図動作を記録し、その記録をもとにソフトウェアモデルを構成するブロック同士の関連度を決定し、その関連度に応じてソフトウェアモデルのブロックの配置を決定する。   In the present invention, in order to solve the problem, the drawing operation of the software model drawing person is recorded, the degree of association between the blocks constituting the software model is determined based on the record, and the software model is determined according to the degree of association. Determine the block placement.

本発明によれば、ソフトウェアモデルの作図の際に、作図者の意図を反映したブロックの配置を自動で行うことが出来る。   According to the present invention, when a software model is drawn, blocks can be automatically arranged to reflect the intention of the drawing person.

ソフトウェアモデルの構成図Software model configuration diagram 実施例が対象とするソフトウェアモデルの構成図Configuration diagram of the software model targeted by the embodiment 編集時刻記録に関する構成図Configuration diagram for editing time recording ソフトウェアモデルの各ブロックの編集/閲覧時間を示すグラフGraph showing the editing / viewing time of each block in the software model ソフトウェアモデルを編集/閲覧した場合の編集時刻格納テーブルの構成Configuration of edit time storage table when editing / viewing software model 実施例におけるソフトウェアモデル自動作図システムの構成図Configuration diagram of the software model automatic operation diagram system in the embodiment 実施例におけるソフトウェアモデル自動作図システムの動作フローOperation flow of the software model automatic operation diagram system in the embodiment 実施例におけるブロック間の斥力の導出に用いる各寸法Each dimension used for deriving repulsive force between blocks in the embodiment ブロック間の距離とブロック間にかかる斥力の関係を示したグラフA graph showing the relationship between the distance between blocks and the repulsive force between blocks 本実施例における信号線によるブロック間にかかるバネ力の導出に用いる寸法Dimensions used for deriving the spring force applied between the blocks by the signal lines in this embodiment 図6における関連度格納テーブルの構成の例Example of configuration of relevance storage table in FIG. 実施例における関連度逆算の構成図Configuration diagram of relevance calculation in the embodiment 実施例における関連度逆算の動作フローFlow of relevance calculation in the embodiment

以下、図面を用いて、本発明の実施例を説明する。   Embodiments of the present invention will be described below with reference to the drawings.

図1はソフトウェアモデルの構成図である。ソフトウェアモデルはブロック11と信号線12で構成される。ブロック11はその側面に信号線を接続できる複数の入力ポート13と複数の出力ポート14を持つ。信号線12は入力ポート13と出力ポート14間を接続する形で配置される。ソフトウェアモデルは階層構造となり、ブロック11はその内部にブロックの詳細な処理をあらわす子階層15を持つこととができる。子階層はブロック11と信号線12で構成され上位階層と同等の構造をもつ。ここでブロックとはあるソフトウェアモデルを構成するための個々の機能を実行する処理を行うためのオブジェクトである。   FIG. 1 is a configuration diagram of a software model. The software model includes a block 11 and a signal line 12. The block 11 has a plurality of input ports 13 and a plurality of output ports 14 to which signal lines can be connected. The signal line 12 is arranged so as to connect between the input port 13 and the output port 14. The software model has a hierarchical structure, and the block 11 can have a child hierarchy 15 representing the detailed processing of the block. The child hierarchy is composed of the block 11 and the signal line 12 and has the same structure as the upper hierarchy. Here, the block is an object for performing processing for executing individual functions for constituting a certain software model.

図2は実施例において、本ソフトウェアモデル自動作図システムにより自動作図される対象となる、実施例が対象とするソフトウェアモデルの構成図である。   FIG. 2 is a configuration diagram of a software model targeted by the embodiment, which is an object to be automatically operated by the software model automatic operation diagram system in the embodiment.

図3は実施例を実現するためのソフトウェアモデル自動作図システムのうち、編集/閲覧時刻情報の取得機能に関わる箇所の編集時刻記録に関する構成図である。作図者31はモデル作図部32により、ソフトウェアモデル35を編集又は閲覧する。ソフトウェアモデル35にはブロック座標情報36と信号線の接続情報(信号線接続情報37)が含まれる。編集時刻記録部33はモデル作図部32の動作をモニタしてソフトウェアモデルの各ブロックが編集又は閲覧された時刻を取得し、編集時刻格納テーブル34に編集時刻情報を記録する。   FIG. 3 is a block diagram related to the editing time recording of the part related to the editing / browsing time information acquisition function in the software model automatic operation diagram system for realizing the embodiment. The plotter 31 edits or browses the software model 35 using the model plotting unit 32. The software model 35 includes block coordinate information 36 and signal line connection information (signal line connection information 37). The editing time recording unit 33 monitors the operation of the model drawing unit 32, acquires the time when each block of the software model is edited or viewed, and records the editing time information in the editing time storage table 34.

図4は作図者31がモデル作図部32を介してソフトウェアモデルの各ブロックの編集/閲覧時間を示すグラフである。編集時刻記録部33は、作図者がソフトウェアモデルを編集する際に任意のブロックを編集もしくは閲覧する際の開始時刻と終了時刻を取得し、開始時刻から終了時刻の期間が所定の時間ΔT(有効編集閲覧時間42)以上の場合に編集時刻格納テーブルに編集対象のブロックと編集開始時刻および編集終了時刻を格納する。 FIG. 4 is a graph showing the editing / browsing time of each block of the software model via the model drawing unit 32 by the drawing person 31. The editing time recording unit 33 obtains a start time and an end time when editing or browsing an arbitrary block when the plotter edits the software model, and the period from the start time to the end time is a predetermined time ΔT 0 ( In the case of the effective editing browsing time 42) or more, the editing target block, the editing start time, and the editing end time are stored in the editing time storage table.

図5は図4の時間でソフトウェアモデルを編集/閲覧した場合の編集時刻格納テーブル34の構成である。   FIG. 5 shows the configuration of the editing time storage table 34 when the software model is edited / viewed at the time shown in FIG.

図6は実施例におけるソフトウェアモデル自動作図システムの構成図であり、ソフトウェアモデル35のブロックの移動に関わる箇所の構成である。編集時刻格納テーブル34を元に関連度演算部61が関連度格納テーブル62にブロック間の関連度を格納する。移動量演算部64はブロック座標情報36と信号線接続情報37、関連度格納テーブル62を元に、各ブロックの移動量を演算する。座標修正部65は移動量演算部64の結果を元にブロック座標情報36を更新する。終了判定部63は収束判定し終了を判定する。   FIG. 6 is a configuration diagram of the software model automatic operation diagram system in the embodiment, and shows a configuration of a part related to movement of a block of the software model 35. Based on the editing time storage table 34, the relevance calculation unit 61 stores the relevance between blocks in the relevance storage table 62. The movement amount calculation unit 64 calculates the movement amount of each block based on the block coordinate information 36, the signal line connection information 37, and the association degree storage table 62. The coordinate correction unit 65 updates the block coordinate information 36 based on the result of the movement amount calculation unit 64. The end determination unit 63 determines convergence by determining convergence.

図7は実施例におけるソフトウェアモデル自動作図システムの動作フローである。ブロックの自動配置を行う際の処理手順である。   FIG. 7 is an operation flow of the software model automatic operation diagram system in the embodiment. It is a processing procedure when performing automatic placement of blocks.

図7のステップ1においてソフトウェアモデル35に配置されたブロックの初期状態を取得する。初期状態とは、ブロックのサイズと位置、ブロックの入出力ポートの位置、ブロックの仮想的な速度等を指す。   In step 1 of FIG. 7, the initial state of the blocks arranged in the software model 35 is acquired. The initial state refers to the size and position of the block, the position of the input / output port of the block, the virtual speed of the block, and the like.

図7のステップ2において信号線によるブロックのポート間の接続関係を取得する。取得する情報は、接続元のポートと接続先のポートである。   In step 2 of FIG. 7, the connection relation between the ports of the block by the signal line is acquired. The information to be acquired is a connection source port and a connection destination port.

図7のステップ3でブロック同士の関連度を演算する。ブロック間の関連度は図5に示す編集時刻格納テーブル34の編集/閲覧時間41から求める。編集時刻格納テーブル34の各行の編集終了時刻とその次行の編集開始時刻の差が所定の時間間隔ΔT(有効関連時間範囲43)より短い場合に、前後の行のブロック列のブロック同士に関連が有ると判定し、図11に示す関連度格納テーブル62の行と列それぞれが編集時刻格納テーブル34の任意の行のブロックと次列のブロックと一致するマスの関連度を一定値加算する。 In step 3 of FIG. 7, the degree of association between the blocks is calculated. The degree of association between blocks is obtained from the editing / viewing time 41 of the editing time storage table 34 shown in FIG. When the difference between the edit end time of each row of the edit time storage table 34 and the edit start time of the next row is shorter than a predetermined time interval ΔT R (valid related time range 43), the blocks in the block columns of the preceding and succeeding rows are connected to each other. It is determined that there is a relationship, and a fixed value is added to the degree of relevance of a cell in which each row and column in the relevance level storage table 62 shown in FIG. .

図7のステップ4でブロックの座標から、ブロック間にかかる力を導出する。ブロック間にかかる力は斥力として、ブロック間の距離に応じてブロック同士が反発する方向に力を与える。ここで、ソフトウェアモデルを構成するブロックは点ではなく主に長方形として表現される。ブロックが重なることはソフトウェアモデルの可読性を低下させるため、ブロック間の斥力はブロックが接触し重なり合う場合に増大させる。ブロック間の距離を導出するに用いるブロックの境界線にはブロック外形の長方形ではなくブロック外形に外接する楕円を用いる、これは長方形とした場合ブロックがブロックに引っかかってしまい望ましい配置に収束しづらくなるためである。   In step 4 of FIG. 7, the force applied between the blocks is derived from the coordinates of the blocks. The force applied between the blocks is given as a repulsive force in the direction in which the blocks repel according to the distance between the blocks. Here, the blocks constituting the software model are mainly expressed as rectangles rather than points. Since block overlap reduces the readability of the software model, the repulsion between blocks increases when the blocks touch and overlap. Use an ellipse circumscribing the block outline instead of the block outline rectangle as the block boundary used to derive the distance between the blocks. If this is a rectangle, the block will be caught by the block, making it difficult to converge to the desired layout. Because.

図8はブロック間の斥力の導出に用いる各寸法を示したものである。夫々のブロックの中心O、O間のx軸方向距離をdx、y軸方向距離をdy、Oを原点とするx軸とO、Oを通る線分がなす角をθとして、ブロック間の距離Dは以下の式にて導出する。 FIG. 8 shows the dimensions used to derive the repulsive force between the blocks. The x-axis direction distance between the centers O 1 and O 2 of each block is dx, the y-axis direction distance is dy, and the angle between the x-axis having O 1 as the origin and the line segment passing through O 1 and O 2 is θ. The distance D between the blocks is derived from the following equation.

Figure 2019160108
Figure 2019160108

Figure 2019160108
Figure 2019160108

Figure 2019160108
Figure 2019160108

Figure 2019160108
Figure 2019160108

図9はブロック間の距離とブロック間にかかる斥力の関係を示したグラフである。ブロック間にかかる斥力は、力の作用する距離をDとして、ブロック同士がDより近づいた場合に力が作用するように、以下式のように定義する。ここで、Kをブロック間の斥力係数とする。 FIG. 9 is a graph showing the relationship between the distance between blocks and the repulsive force applied between the blocks. Repulsive force applied between the blocks, the distance to the action of the force as D 0, such that a force is exerted when the block each other closer than D 0, defined as follows equation. Here, K 1 is a repulsive coefficient between blocks.

Figure 2019160108
Figure 2019160108

ブロックiとブロックj間に作用する斥力のx軸方向成分、y軸方向成分は以下となる。 The x-axis direction component and the y-axis direction component of the repulsive force acting between the block i and the block j are as follows.

Figure 2019160108
Figure 2019160108

ブロックiにかかるブロック間力のx軸方向成分、y軸方向成分は以下となる。 The x-axis direction component and the y-axis direction component of the inter-block force applied to the block i are as follows.

Figure 2019160108
Figure 2019160108

図7のステップ5でブロック間を接続する信号線を仮想的なバネとみなし、ブロックにかかる信号線によるバネ力演算を行う。図10のように信号線nにより他のブロックと接続されているブロックiにかかるばね力は以下の式による。ここで、Kcxをx方向のバネ係数、Kcyをy方向のばね係数、dxをブロック間のx方向基準距離とする。 In step 5 of FIG. 7, the signal lines connecting the blocks are regarded as virtual springs, and the spring force is calculated using the signal lines applied to the blocks. The spring force applied to the block i connected to the other block by the signal line n as shown in FIG. Here, K cx is a spring coefficient in the x direction, K cy is a spring coefficient in the y direction, and dx 0 is a reference distance in the x direction between the blocks.

Figure 2019160108
Figure 2019160108

信号線nにおいてブロックiが接続元の場合 When block i is the connection source for signal line n

Figure 2019160108
Figure 2019160108

信号線nにおいてブロックiが接続先の場合 When block i is connected to signal line n

Figure 2019160108
Figure 2019160108

ブロックiに接続された信号線の総数がNのときブロックiにかかるバネ力の和は以下の式による。   When the total number of signal lines connected to the block i is N, the sum of the spring forces applied to the block i is according to the following equation.

Figure 2019160108
Figure 2019160108

図7のステップ6で関連度による力の演算を行う。図7のステップ3で演算した関連度格納テーブル62に格納された関連度から各ブロック間に作用する引力ないしは斥力を導出する。ブロックiとブロックjの関連度をR(i、j)とするとブロックiとブロックjに作用する力は以下式による。ここで、Kを関連度係数、dx(i、j)をブロックの中心間のx方向距離、dy(i、j)をブロックの中心間のy方向距離とする。 In step 6 of FIG. 7, the force based on the relevance is calculated. The attractive force or repulsive force acting between the blocks is derived from the relevance stored in the relevance storage table 62 calculated in step 3 of FIG. If the degree of association between block i and block j is R (i, j), the force acting on block i and block j is given by the following equation. Here, relevance coefficient K R, and dx (i, j) x-direction distance between the centers of the blocks, dy (i, j) and y-direction distance between the centers of the blocks.

Figure 2019160108
Figure 2019160108

ブロックiが関わる接続の総数がNとすると、ブロックiにかかる関連度による力は以下の式による。   Assuming that the total number of connections involving block i is N, the force due to the degree of relevance for block i is given by the following equation.

Figure 2019160108
Figure 2019160108

図7のステップ7で各ブロックにかかる合力を求める。ブロックにかかる合力は以下式による。   In step 7 in FIG. 7, the resultant force applied to each block is obtained. The resultant force on the block is according to the following formula.

Figure 2019160108
Figure 2019160108

図7のステップ8でブロックの移動を終了するか否かの判定を行う。全てのブロックで、ブロックにかかる合力の絶対値が閾値F以下の場合、ブロックの移動が収束したと判断し処理を終了する。 In step 8 of FIG. 7, it is determined whether or not to end the movement of the block. In all the blocks, if the absolute value of the resultant force applied to the block is equal to or less than the threshold value F 0 , it is determined that the block movement has converged, and the process is terminated.

Figure 2019160108
Figure 2019160108

図7のステップ9でブロックにかかる力を元にブロックの移動量を求める。ブロックの仮想の重さをM、仮想の時間刻みをdtとして、以下式により、ブロックの速度と位置を求める。   In step 9 of FIG. 7, the amount of movement of the block is obtained based on the force applied to the block. Assuming that the virtual weight of the block is M and the virtual time increment is dt, the speed and position of the block are obtained by the following equations.

Figure 2019160108
Figure 2019160108

図7のステップ10で前述のブロック位置をもとに、図6におけるブロック座標情報36を更新し、図7のステップ4から以降の処理を実施する。   In step 10 of FIG. 7, the block coordinate information 36 in FIG. 6 is updated based on the block position described above, and the subsequent processing from step 4 in FIG. 7 is performed.

上記のようなソフトウェアモデル自動作図装置の構成とすることにより、作図者の意図を反映したソフトウェアモデルを自動で作図することが出来る。   By adopting the configuration of the software model automatic operation drawing apparatus as described above, it is possible to automatically draw a software model reflecting the intention of the creator.

図12は自動作図された自動作図済ソフトウェアモデル121を作図者31が修正した際などにソフトウェアモデルから関連度を逆算する、実施例における関連度逆算の構成図である。作図者31はソフトウェアモデル自動作図システムにより自動作図された自動作図済ソフトウェアモデル121が作図者の設計の意図通りであるかを確認する。自動作図済ソフトウェアモデル121が作図者の意図通りとなっていない場合、作図者は、モデル作図部32にてソフトウェアモデルの配置を修正する。関連度逆算部123は配置修正された修正ソフトウェアモデル122から、関連度を解析して、関連度格納テーブル62に関連度を格納する。これにより、作業ログから取得した関連度に対して、より作図者の意図を反映した関連度を得ることが出来る。この修正された関連度格納テーブル62を用いることで、以降のソフトウェアモデルを変更する場合において、自動作図システムによるソフトウェアモデルの自動作図がより作図者の意図を反映したものとなる。   FIG. 12 is a configuration diagram of relevance calculation in the embodiment in which the relevance is calculated back from the software model when the drafter 31 corrects the self-executed software model 121 that has been automatically operated. The plotter 31 confirms whether the self-drawn software model 121 that has been self-plotted by the software model self-plotting system is as designed by the plotter. If the automatically drawn software model 121 is not as intended by the drawing person, the drawing person corrects the arrangement of the software model in the model drawing unit 32. The degree-of-relevance calculation unit 123 analyzes the degree of association from the modified software model 122 whose layout has been corrected, and stores the degree of association in the degree-of-association storage table 62. Thereby, it is possible to obtain a degree of relevance more reflecting the intention of the plotter with respect to the degree of relevance acquired from the work log. By using this modified relevance level storage table 62, when the subsequent software model is changed, the self-operation diagram of the software model by the automatic operation diagram system reflects the intention of the creator.

図13は図12の実施例における関連度逆算の動作フローである。   FIG. 13 is an operational flow of relevance calculation in the embodiment of FIG.

図13のステップ1で図12の作図者31がモデル作図部32によりソフトウェアモデルのブロックの位置を変更する。   In step 1 of FIG. 13, the plotter 31 of FIG. 12 changes the position of the block of the software model by the model drawing unit 32.

図13のステップ2で関連度逆算部123はソフトウェアモデルのブロック間にかかる力を図7のステップ4と同様の方法で求める。   In step 2 of FIG. 13, the relevance calculation unit 123 obtains the force applied between the blocks of the software model by the same method as in step 4 of FIG. 7.

図13のステップ3で関連度逆算部123はソフトウェアモデルの接続による力を図7のステップ5と同様の方法で求める。   In step 3 of FIG. 13, the relevance inverse calculation unit 123 obtains the force due to the connection of the software model by the same method as in step 5 of FIG. 7.

図13のステップ4で関連度逆算部123はソフトウェアモデルのブロックにかかる力を図13のステップ2、ステップ3で求めた力の合力として求める。   In step 4 of FIG. 13, the relevance calculation unit 123 obtains the force applied to the software model block as the resultant force obtained in steps 2 and 3 of FIG. 13.

図13のステップ5で関連度逆算部123はソフトウェアモデルのブロックの配置と図13のステップ4で求めた合力を元にブロック間の関連度を求め、関連度格納テーブル62に関連度を格納する。   In step 5 in FIG. 13, the degree-of-association inverse calculation unit 123 obtains the degree of association between the blocks based on the arrangement of the software model blocks and the resultant force obtained in step 4 in FIG. 13, and stores the degree of association in the degree-of-association storage table 62. .

関連度の演算は、図13のステップ2、ステップ3で求めた力の合力のx方向成分をFPx(i)、y方向成分をFPy(i)、各ブロックにかかる関連度による力のx方向成分をFRx(i)、y方向成分をFRy(i)、とすると、ブロックにかかる力のx成分F(i)、y成分F(i)は以下式となる。 Relevance calculation, Step 2 of FIG. 13, the x-direction component of the resultant force of the force calculated in step 3 F Px (i), the y-direction component F Py (i), of the force by relevance according to each block If the x-direction component is F Rx (i) and the y-direction component is F Ry (i), the x component F x (i) and y component F y (i) of the force applied to the block are expressed by the following equations.

Figure 2019160108
Figure 2019160108

自動配置されたソフトウェアモデルのブロック配置は、力学モデルによる力と、作業ログによる関連度による力の釣り合いが取れている状態となるため、ブロックにかかる力はゼロとなり、FPx(i)、FPy(i)とFRx(i)、FRy(i)は以下の関係となる。 The block arrangement of the automatically arranged software model is in a state where the force by the dynamic model and the force by the relevance degree by the work log are balanced, so that the force applied to the block becomes zero and F Px (i), F Py (i), F Rx (i), and F Ry (i) have the following relationship.

Figure 2019160108
Figure 2019160108

以上を踏まえて、ブロックN個からなるソフトウェアモデルの場合、関連度は以下の式を満たすものとなる。 Based on the above, in the case of a software model composed of N blocks, the degree of association satisfies the following expression.

Figure 2019160108
Figure 2019160108

上記の式を満たす関連度Rを反復法などを用いて求める。 The degree of relevance R that satisfies the above equation is obtained using an iterative method or the like.

上記のような関連度逆算部の構成とすることにより、作業ログのみから算出した関連度に対し、より作図者の意図が反映された関連度を取得することができる。この関連度を用いることで、再びソフトウェアモデルが作図者により変更された場合も、より作図者の意図を反映した自動作図を行うことができる。   With the configuration of the relevance degree reverse calculation unit as described above, it is possible to acquire a relevance degree that more reflects the intention of the plotter with respect to the relevance degree calculated only from the work log. By using this degree of association, even when the software model is changed again by the plotter, it is possible to perform an automatic operation diagram more reflecting the intention of the plotter.

なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。複数のパソコンを用いてシステムを構成しても良いし、単一のパソコンで実現しても良い。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。   In addition, this invention is not limited to an above-described Example, Various modifications are included. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Further, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. Further, it is possible to add, delete, and replace other configurations for a part of the configuration of each embodiment. Each of the above-described configurations, functions, processing units, processing means, and the like may be realized by hardware by designing a part or all of them with, for example, an integrated circuit. The system may be configured using a plurality of personal computers, or may be realized by a single personal computer. Each of the above-described configurations, functions, and the like may be realized by software by interpreting and executing a program that realizes each function by the processor. Information such as programs, tables, and files for realizing each function can be stored in a recording device such as a memory, a hard disk, or an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.

11:ブロック
12:信号線
13:入力ポート
14:出力ポート
15:子階層
31:作図者
32:モデル作図部
33:編集時刻記録部
34:編集時刻格納テーブル
35:ソフトウェアモデル
36:ブロック座標情報
37:信号線接続情報
41:編集/閲覧時間
42:有効編集閲覧時間
43:有効関連時間範囲
61:関連度演算部
62:関連度格納テーブル
63:終了判定部
64:移動量演算部
65:座標修正部
121:自動作図済ソフトウェアモデル
122:修正ソフトウェアモデル
123:関連度逆算部
11: Block 12: Signal line 13: Input port 14: Output port 15: Child hierarchy 31: Plotter 32: Model drawing unit 33: Editing time recording unit 34: Editing time storage table 35: Software model 36: Block coordinate information 37 : Signal line connection information 41: Editing / browsing time 42: Effective editing browsing time 43: Effective related time range 61: Relevance calculation unit 62: Relevance degree storage table 63: End determination unit 64: Movement amount calculation unit 65: Coordinate correction Unit 121: Self-drawn software model 122: Modified software model 123: Relevance degree inverse calculation unit

Claims (6)

複数のブロック間に力学モデルを適用して各ブロック間の関連付を行う第1関連付処理部と、
前記各ブロックの作業ログ情報から前記各ブロック間の関連性を求めて、前記ブロック間の関連付を行う第2関連付処理部と、
前記第1関連付処理部と前記第2関連付処理部によって関連付された情報に応じて前記各ブロックの配置を求める移動量演算部と、
前記移動量演算部による移動量に基づいて前記各ブロックの配置を修正する座標修正部と、
前記座標修正部の情報に応じて各ブロックを表示する表示部と、
を備えたソフトウェアモデル自動作図システム。
A first association processing unit that applies a dynamic model between a plurality of blocks to associate each block;
A second association processing unit for associating the blocks by obtaining the association between the blocks from the work log information of the blocks;
A movement amount calculation unit for obtaining an arrangement of each block according to information associated by the first association processing unit and the second association processing unit;
A coordinate correction unit for correcting the arrangement of each block based on the movement amount by the movement amount calculation unit;
A display unit for displaying each block according to the information of the coordinate correction unit;
Software model automatic operation diagram system equipped with.
請求項1におけるソフトウェアモデル自動作図システムにおいて、
前記作業ログ情報は各ブロックの閲覧又は編集の少なくとも一つに要する時間であることを特徴とするソフトウェアモデル自動作図システム。
In the software model automatic operation diagram system according to claim 1,
2. The software model automatic operation diagram system according to claim 1, wherein the work log information is a time required for at least one of browsing or editing of each block.
請求項2におけるソフトウェアモデル自動作図システムにおいて、
前記第2関連付処理部は各ブロックの閲覧又は編集終了時刻と次の閲覧又は編集開始時刻の差が所定の時間間隔より短い場合に、各ブロック同士に関連が有ると判定することを特徴とするソフトウェアモデル自動作図システム。
In the software model automatic operation diagram system according to claim 2,
The second association processing unit determines that each block is related when the difference between the browsing or editing end time of each block and the next browsing or editing start time is shorter than a predetermined time interval. Software model automatic operation system.
請求項1から3のいずれか1項に記載のソフトウェアモデル自動作図システムにおいて、
前記第1関連付処理部は、ブロック間の距離を導出する際に用いるブロックの境界線にはブロック外形に外接する楕円を用いて関連性を求めることを特徴とするソフトウェアモデル自動作図システム。
In the software model automatic operation diagram system according to any one of claims 1 to 3,
The first association processing unit determines an association using an ellipse circumscribing the outer shape of a block as a boundary line of a block used when deriving a distance between blocks.
請求項1から4のいずれか1項に記載のソフトウェアモデル自動作図システムにおいて、
前記力学モデルは、ブロック間距離に応じた斥力とバネ力であることを特徴とするソフトウェアモデル自動作図システム。
In the software model automatic operation diagram system according to any one of claims 1 to 4,
The dynamic model is a software model automatic operation diagram system characterized in that a repulsive force and a spring force according to a distance between blocks are provided.
請求項1から5のいずれか1項に記載のソフトウェアモデル自動作図システムにおいて、
前記各ブロックの座標から前記ブロック間の関連性を求める関連度逆算部を備えることを特徴とするソフトウェアモデル自動作図システム。
In the software model automatic operation diagram system according to any one of claims 1 to 5,
A software model automatic operation diagram system comprising a relevance degree inverse calculation unit for obtaining a relevance between the blocks from the coordinates of each block.
JP2018048771A 2018-03-16 2018-03-16 Software model automatic drawing system Pending JP2019160108A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018048771A JP2019160108A (en) 2018-03-16 2018-03-16 Software model automatic drawing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018048771A JP2019160108A (en) 2018-03-16 2018-03-16 Software model automatic drawing system

Publications (1)

Publication Number Publication Date
JP2019160108A true JP2019160108A (en) 2019-09-19

Family

ID=67994832

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018048771A Pending JP2019160108A (en) 2018-03-16 2018-03-16 Software model automatic drawing system

Country Status (1)

Country Link
JP (1) JP2019160108A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434117A (en) * 2021-06-22 2021-09-24 华腾软件产业有限公司 Automatic software development system, automatic software generation method and equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434117A (en) * 2021-06-22 2021-09-24 华腾软件产业有限公司 Automatic software development system, automatic software generation method and equipment
CN113434117B (en) * 2021-06-22 2022-04-15 华腾软件产业有限公司 Automatic software development system, automatic software generation method and equipment

Similar Documents

Publication Publication Date Title
US9852251B2 (en) Manipulating parameterized cell devices in a custom layout design
US20160098513A1 (en) Conflict detection for self-aligned multiple patterning compliance
KR101143191B1 (en) Aligned behavior in templated lists
KR100799637B1 (en) Recording medium for recording computer support design program and computer support design apparatus
CN114004939B (en) Three-dimensional model optimization method and system based on modeling software script
JP2010511228A (en) Interact with 2D content on 3D surface
US9129075B2 (en) Mesh generation system
CN111258575A (en) Page layout processing method and device
CN103677416B (en) A kind of sliding process prevents the method and apparatus that interface is shaken
JP2019160108A (en) Software model automatic drawing system
KR102574449B1 (en) Metohd and apparatus for processing data
US20110167047A1 (en) Editing apparatus, method, and storage medium
US10108769B1 (en) Delay modeling for high fan-out nets within circuit designs
US20070225953A1 (en) Management system and management method of CAD data
JP2002298153A (en) Generation of partial derivative for perspective correction texture coordinate in four-pixel texture pipeline
JPH10256386A (en) Generation of mask pattern data
US10331837B1 (en) Device graphics rendering for electronic designs
JP4516385B2 (en) Assembly configuration design apparatus, assembly configuration design method, assembly configuration design program, and recording medium recording assembly configuration design program
CN115640103B (en) Operation response method and device, electronic equipment and storage medium
US20110313733A1 (en) Contact defining device, contact defining method, and non-transitory computer readable storage medium
CN106796446B (en) Workspace metadata management
TWI749594B (en) Component detecting method
CN112868045B (en) Frame handling for ML-based magnification
JP2012128609A (en) Drawing creation support method and apparatus
JP7289636B2 (en) Information processing device, information processing method, and program

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180319