JP2010165205A - Template automatic generation system, method and program for model - Google Patents

Template automatic generation system, method and program for model Download PDF

Info

Publication number
JP2010165205A
JP2010165205A JP2009007340A JP2009007340A JP2010165205A JP 2010165205 A JP2010165205 A JP 2010165205A JP 2009007340 A JP2009007340 A JP 2009007340A JP 2009007340 A JP2009007340 A JP 2009007340A JP 2010165205 A JP2010165205 A JP 2010165205A
Authority
JP
Japan
Prior art keywords
model
parameter
template
created
creating
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
JP2009007340A
Other languages
Japanese (ja)
Inventor
Kenji Kobori
賢司 小堀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2009007340A priority Critical patent/JP2010165205A/en
Publication of JP2010165205A publication Critical patent/JP2010165205A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To automatically generate a model template as a reusable model from one model by using such a characteristic that a section which becomes variable when a certain model is used as a reusable model appears as the same term as the repetition item of elements configuring the model. <P>SOLUTION: A variable section setting part 102 creates an abstract syntax tree from a created model read from a created model storage means 101, and integrates the same partial trees into one partial tree. A parameter creation means 105 creates the list of the appearance frequency of the character string of a node from an intermediate model template, and extracts the node of the character string whose appearance frequency is 2 or higher in the list of the appearance frequency, and replaces the character string of the node value of the read intermediate model template with the automatically applied parameter number. The parameter setting means 105 stores the processing result in a model template storage means 106, and stores the intermediate parameter in a parameter definition storage means 107. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明はモデルのテンプレート自動生成システム、方法及びプログラムに係り、特にモデリング言語で記述されたソフトウェアのモデルから再利用可能なモデルであるモデルテンプレートを自動生成する、モデルのテンプレート自動生成システム、方法及びプログラムに関する。   The present invention relates to a model template automatic generation system, method and program, and more particularly to a model template automatic generation system, method and program for automatically generating a model template which is a reusable model from a software model described in a modeling language. Regarding the program.

MDA(Model Driven Architecture:モデル駆動アーキテクチャ)のようなモデリング言語で記述されたソフトウェアの開発を行う開発手法において、或る問題領域で再利用できるテンプレート化したモデル(モデルテンプレート)を作るためには、或る問題領域で複数回のモデリング経験の有る開発者がモデルエディタを用いて作成している。   In order to create a template model (model template) that can be reused in a certain problem area in a development method for developing software written in a modeling language such as MDA (Model Driven Architecture) Created by a model editor using a developer who has modeled multiple times in a problem area.

このようなモデルテンプレートやプログラム部品を作成する方法が特許文献1や特許文献2に開示されている。特許文献1には、過去の業務プロセスモデリングの結果を再利用できるようにするために、業務を構成する作業内容及び作業フロー、作業で使用するデータなどを含む業務プロセスを、階層化構造を用いて表した業務プロセスモデルを記憶装置に記憶するシステムが開示されている。この特許文献1記載のシステムでは、業務プロセスモデルの検索の際に階層構造を検索キーとして使用して、より適切な業務プロセスモデルを抽出する。従って、この業務プロセスモデルはモデルテンプレートに相当する。   Patent Documents 1 and 2 disclose methods for creating such model templates and program parts. In Patent Document 1, in order to be able to reuse the results of past business process modeling, a business process including a work content and work flow constituting a business, data used in the work, and the like is used in a hierarchical structure. The system which memorize | stores the business process model expressed by this in a memory | storage device is disclosed. In the system described in Patent Document 1, a more appropriate business process model is extracted by using a hierarchical structure as a search key when searching for a business process model. Therefore, this business process model corresponds to a model template.

また、特許文献2には、ソフトウェアを部品化し、再利用するためのソフトウェア部品化方法において、プログラムとデータ名とを読み込み、読み込んだプログラムから読み込んだデータ名のデータの参照手順を抽出し、抽出した参照手順をプログラム部品として登録する方法が開示されている。   In Patent Document 2, in a software componentization method for converting software into a component and reusing it, a program and a data name are read, and a reference procedure for data of the read data name is extracted from the read program and extracted. A method for registering the reference procedure as a program part is disclosed.

しかし、モデルを用いたソフトウェア開発を行うことが多くなるにつれて、複数回のモデリング経験を持たない開発者であっても、再利用可能なモデルテンプレートを作成しモデリング作業を効率化することが求められるようになった。   However, as software development using models increases, even developers who do not have multiple modeling experiences are required to create model templates that can be reused to make modeling work more efficient. It became so.

特開2006−285313号公報JP 2006-285313 A 特開平8−137682号公報JP-A-8-137682

しかしながら、上記のモデルのテンプレート生成方法では、次のような課題がある。   However, the above model template generation method has the following problems.

第一の課題は、再利用モデルであるモデルテンプレートの作成には、開発者のスキルと時間を要し、モデルのパラメータ化の間違いや漏れを完全に防止することができないことである。   The first problem is that the creation of a model template, which is a reusable model, requires developer skills and time, and it is impossible to completely prevent mistakes and omissions in model parameterization.

その理由は、再利用モデルであるモデルテンプレートの作成は、開発者がモデルエディタを用いて再利用可能な部分を特定しパラメータ化していくという作業を手作業で行っているためである。   This is because the creation of a model template, which is a reusable model, is performed manually by the developer, using a model editor to identify and parameterize reusable parts.

第2の課題は、再利用モデルを作成するには、或る問題領域の複数のモデリング経験と共通性及び可変の部分を見付けるために或る問題領域の複数のモデルが必要であることである。   The second challenge is that creating a reuse model requires multiple models of a problem area to find multiple modeling experiences and commonality and variable parts of the problem area. .

その理由は、再利用可能なものを作り上げるには、モデリング経験のある開発者が複数のモデル間で、共通な部分と可変の部分を見極めて、或るモデルに特有の部分を可変部分としてパラメータ化したモデルを再利用モデルとしているためである。   The reason for this is that in order to create a reusable one, a developer with modeling experience will find common parts and variable parts among multiple models, and parameters unique to a model as variable parts. This is because the converted model is used as a reuse model.

本発明は以上の点に鑑みなされたもので、あるモデルを再利用モデルとしたときに可変となる部分が、モデルを構築する要素の繰り返し項目と同一の用語として現れる特性を利用して、1つのモデルから再利用モデルであるモデルテンプレートを自動生成できるモデルのテンプレート自動生成システム、方法及びプログラムを提供することを目的とする。   The present invention has been made in view of the above points, and utilizes a characteristic in which a portion that becomes variable when a certain model is used as a reusable model appears as the same term as a repeated item of an element that constructs the model. An object of the present invention is to provide a model template automatic generation system, method, and program capable of automatically generating a model template as a reuse model from two models.

上記の目的を達成するため、本発明のモデルのテンプレート自動生成システムは、入出力データを作成済みモデルとして格納する作成済みモデル格納手段と、作成済みモデルの中のモデル要素の繰り返し項目を一つに統合したものをパラメータ設定して、少なくとも中間モデルテンプレートを作成する中間モデルテンプレート作成手段と、中間モデルテンプレートを保存する第1の格納手段と、モデル格納手段から読み込んだ作成済みモデルと、第1の格納手段から読み込んだ中間モデルテンプレートとから、それらモデル内の同一用語をパラメータに置き換えて、少なくともモデルテンプレートを作成するモデルテンプレート作成手段と、モデルテンプレートを保存する第2の格納手段とを有することを特徴とする。   In order to achieve the above object, the model template automatic generation system of the present invention includes a created model storage means for storing input / output data as a created model, and one repetition item of model elements in the created model. The intermediate model template creating means for creating at least the intermediate model template, the first storing means for saving the intermediate model template, the created model read from the model storing means, the first A model template creating means for creating at least a model template by replacing the same term in the model with parameters from the intermediate model template read from the storage means, and a second storing means for storing the model template It is characterized by.

また、上記の目的を達成するため、本発明のモデルのテンプレート自動生成方法は、作成済みモデル格納部から作成済みモデルを読み込む作成済みモデル読み込みステップと、作成済みモデルの中のモデル要素の繰り返し項目を一つに統合したものをパラメータ設定して、少なくとも中間モデルテンプレートを作成する中間モデルテンプレート作成ステップと、中間モデルテンプレートを第1の格納部に保存する第1の格納ステップと、読み込んだ作成済みモデルと、第1の格納部から読み込んだ中間モデルテンプレートとから、それらモデル内の同一用語をパラメータに置き換えて、少なくともモデルテンプレートを作成するモデルテンプレート作成ステップと、モデルテンプレートを第2の格納部に保存する第2の格納ステップとを含むことを特徴とする。   In order to achieve the above object, the model template automatic generation method of the present invention includes a created model reading step for reading a created model from a created model storage unit, and a repetition item of model elements in the created model. The intermediate model template creating step for creating at least the intermediate model template by setting the parameters that are integrated into one, the first storage step for saving the intermediate model template in the first storage unit, and the read created A model template creation step for creating at least a model template by replacing the same term in the model with a parameter from the model and the intermediate model template read from the first storage unit, and the model template in the second storage unit A second storing step to save And wherein the door.

更に、上記の目的を達成するため、本発明のモデルのテンプレート自動生成プログラムは、作成済みモデル格納部から作成済みモデルを読み込む作成済みモデル読み込みステップと、作成済みモデルの中のモデル要素の繰り返し項目を一つに統合したものをパラメータ設定して、少なくとも中間モデルテンプレートを作成する中間モデルテンプレート作成ステップと、中間モデルテンプレートを第1の格納部に保存する第1の格納ステップと、読み込んだ作成済みモデルと、第1の格納部から読み込んだ中間モデルテンプレートとから、それらモデル内の同一用語をパラメータに置き換えて、少なくともモデルテンプレートを作成するモデルテンプレート作成ステップと、モデルテンプレートを第2の格納部に保存する第2の格納ステップとを、コンピュータにより実行させることを特徴とする。   Furthermore, in order to achieve the above object, the model template automatic generation program of the present invention includes a created model reading step for reading a created model from a created model storage unit, and a repetition item of model elements in the created model. The intermediate model template creating step for creating at least the intermediate model template by setting the parameters that are integrated into one, the first storage step for saving the intermediate model template in the first storage unit, and the read created A model template creation step for creating at least a model template by replacing the same term in the model with a parameter from the model and the intermediate model template read from the first storage unit, and the model template in the second storage unit A second storing step to save; , Characterized in that is executed by a computer.

本発明によれば、可変部設定手段でモデルの繰り返し構造を統合し、パラメータ作成手段で用語の持つ意味の一意性が成り立つようにパラメータ化を行う構成としているため、1つの作成済みモデルから再利用モデルであるモデルテンプレートを得ることができる。   According to the present invention, the variable part setting unit integrates the repetitive structure of the model, and the parameter generation unit performs parameterization so that the meaning of the meaning of the terms is established. A model template that is a usage model can be obtained.

本発明のモデルのテンプレート自動生成システムの一実施形態のブロック図である。It is a block diagram of one embodiment of a model template automatic generation system of the present invention. 図1の実施形態の可変部設定手段の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the variable part setting means of embodiment of FIG. 図1の実施形態のパラメータ作成手段動作を示すフローチャートである。It is a flowchart which shows the parameter preparation means operation | movement of embodiment of FIG. 抽象構文木として表現した一例の作成済みモデルである。An example of a model created as an abstract syntax tree. 図1の中間モデルテンプレート格納手段に格納される中間モデルテンプレートの一実施例を示す図である。It is a figure which shows one Example of the intermediate model template stored in the intermediate model template storage means of FIG. 図1の可変部設定手段が自動生成した中間パラメータの一実施例を示す図である。It is a figure which shows one Example of the intermediate parameter which the variable part setting means of FIG. 1 produced | generated automatically. 図1のパラメータ設定手段が自動生成したモデルテンプレートの一実施例を示す図である。It is a figure which shows one Example of the model template automatically generated by the parameter setting means of FIG. 図1のパラメータ設定手段が自動生成したパラメータ定義の一実施例を示す図である。It is a figure which shows one Example of the parameter definition automatically generated by the parameter setting means of FIG.

次に、発明を実施するための形態について図面を参照して詳細に説明する。   Next, embodiments for carrying out the invention will be described in detail with reference to the drawings.

図1は、本発明になるモデルのテンプレート自動生成システムの一実施形態のブロック図を示す。同図に示すように、本実施形態のモデルのテンプレート自動生成システム100は、作成済みモデルを記憶しておく作成済みモデル格納手段101と、作成済みモデルからモデルの再利用に可変となる部分を設定する可変部設定手段102と、可変部設定手段102で処理した結果を記憶しておく中間モデルテンプレート格納手段103及び中間パラメータ格納手段104と、作成済みモデル格納手段101からの作成済みモデルと可変部設定手段102が処理した結果を受け取って、パラメータ化処理を行うパラメータ作成手段105と、パラメータ作成手段105が処理した結果を記憶しておくモデルテンプレート格納手段106及びパラメータ定義格納手段107とを有する。   FIG. 1 shows a block diagram of an embodiment of a model template automatic generation system according to the present invention. As shown in the figure, the model template automatic generation system 100 of this embodiment includes a created model storage unit 101 for storing a created model, and a portion that can be changed from the created model to reuse of the model. The variable part setting means 102 to be set, the intermediate model template storage means 103 and the intermediate parameter storage means 104 for storing the results processed by the variable part setting means 102, and the created model and variable from the created model storage means 101 The parameter setting unit 105 that receives the result processed by the section setting unit 102 and performs parameterization processing, and the model template storage unit 106 and the parameter definition storage unit 107 that store the result processed by the parameter generation unit 105 are included. .

作成済みモデル格納手段101は、可変部設定手段102とパラメータ作成手段105が読み込んだ時に抽象構文木として変換できるものを記憶している。抽象構文木は、1つ以上のノードを木構造で表したものである。1つのノードは、ノード名称とノード値を持つか、あるいは、ノード名称とノードを持つものである。中間モデルテンプレート格納手段103は、可変部設定手段102の加工処理の結果作られた抽象構文木を記憶している。中間パラメータ格納手段104は、可変部設定手段102が自動付与したパラメータ番号と、自動付与したノード名を抽象構文木のルートからのパスを付けた文字列を中間パラメータとして複数記憶している。   The created model storage means 101 stores what can be converted as an abstract syntax tree when the variable part setting means 102 and the parameter creation means 105 read. An abstract syntax tree represents one or more nodes in a tree structure. One node has a node name and a node value, or has a node name and a node. The intermediate model template storage unit 103 stores an abstract syntax tree created as a result of the processing of the variable part setting unit 102. The intermediate parameter storage unit 104 stores a plurality of character strings with the parameter number automatically assigned by the variable part setting unit 102 and the automatically assigned node name with the path from the root of the abstract syntax tree as intermediate parameters.

モデルテンプレート格納手段106は、パラメータ作成手段105の加工処理の結果作られた抽象構文木をモデルテンプレートとして記憶している。パラメータ定義格納手段107は、パラメータ作成手段105が自動付与したパラメータ番号と、自動付与したノード名を抽象構文木のルートからのパスを付けた文字列の対をパラメータ定義として複数記憶している。   The model template storage unit 106 stores an abstract syntax tree created as a result of the processing by the parameter creation unit 105 as a model template. The parameter definition storage means 107 stores a plurality of pairs of parameter numbers automatically assigned by the parameter creation means 105 and character string with the automatically assigned node names with paths from the root of the abstract syntax tree as parameter definitions.

次に、本実施形態の概略動作について説明する。   Next, the schematic operation of this embodiment will be described.

可変部設定手段102は、作成済みモデル格納手段101から作成済みモデルを読み込み、抽象構文木を作成する。次に、可変部設定手段102は、作成した抽象構文木からノードの繰り返し項目を統合するために、部分木が同じものを検索するために部分木の比較を行い、同じものは1つの部分木に統合する。部分木の比較は、あるノードの名称とそのノードの子の部分木のノード名称が一致した場合、部分木が同じとして処理する。一致せず異なる場合は同じとして処理しない。比較結果で得られた統合対象を統合する際に、ノード値が異なるものはパラメータ番号を自動付与すると共に、繰り返し項目であることを表すフラグを立てる。   The variable part setting unit 102 reads the created model from the created model storage unit 101 and creates an abstract syntax tree. Next, the variable part setting unit 102 compares the subtrees in order to search for the same subtree in order to integrate the repeated items of the node from the created abstract syntax tree, and the same one is a single subtree. To integrate. In the comparison of subtrees, when the name of a node matches the node name of a child subtree of the node, the subtrees are processed as the same. If they do not match and are different, they are not treated as the same. When integrating the integration targets obtained from the comparison results, parameters having different node values are automatically assigned parameter numbers and a flag indicating that they are repetitive items.

可変部設定手段102は、最後に、読み込んだ作成済みモデルに対して上記の処理を行った結果を中間モデルテンプレート格納手段103に中間モデルテンプレートとして格納する。また、可変部設定手段102は、上記の処理の際に自動付与したパラメータ番号をノード名称が一意に定まるようにルートのノードから辿ったノード名称と対にして中間パラメータ格納手段104に中間パラメータとして格納する。   Finally, the variable part setting unit 102 stores the result of performing the above processing on the read created model as an intermediate model template in the intermediate model template storage unit 103. In addition, the variable part setting unit 102 sets the parameter number automatically given at the time of the above processing as an intermediate parameter in the intermediate parameter storage unit 104 in combination with the node name traced from the root node so that the node name is uniquely determined. Store.

次に、パラメータ作成手段105は、初めに作成済みモデル格納手段101から作成済みモデルを読み込み、抽象構文木を作成する。続いて、パラメータ作成手段105は、ノード値の文字列を取り出し、その文字列と出現頻度の一覧を作成する。このときノード値の部分文字列も一覧作成の対象とする。   Next, the parameter creation unit 105 first reads the created model from the created model storage unit 101 and creates an abstract syntax tree. Subsequently, the parameter creation unit 105 takes out the character string of the node value and creates a list of the character string and the appearance frequency. At this time, the partial character string of the node value is also the target of list creation.

次に、パラメータ作成手段105は、中間モデルテンプレート格納手段103から中間モデルテンプレートを読み込み、出現頻度の一覧と合わせて中間モデルテンプレートの加工処理を開始する。続いて、パラメータ作成手段105は、出現頻度の一覧の中で出現頻度が2以上のもののノードを取り出し、読み込んだ中間モデルテンプレートのノード値の文字列を、自動付与したパラメータ番号に置き換える。最後に、パラメータ設定手段105は、処理した結果をモデルテンプレート格納手段106にモデルテンプレートとして格納し、更に、処理の際に自動付与したパラメータ番号を、中間パラメータ格納手段104から読み込んだ中間パラメータとマージして、ノード名が一意に定まるようにルートノードから辿ったノード名称と対にしてパラメータ定義格納手段107にパラメータ定義として格納する。   Next, the parameter creation means 105 reads the intermediate model template from the intermediate model template storage means 103, and starts processing of the intermediate model template together with the appearance frequency list. Subsequently, the parameter creation unit 105 extracts a node having an appearance frequency of 2 or more from the appearance frequency list, and replaces the read character string of the node value of the intermediate model template with the automatically assigned parameter number. Finally, the parameter setting means 105 stores the processed result as a model template in the model template storage means 106, and further merges the parameter number automatically given at the time of processing with the intermediate parameter read from the intermediate parameter storage means 104. Then, it is stored as a parameter definition in the parameter definition storage means 107 in a pair with the node name traced from the root node so that the node name is uniquely determined.

次に、図1のブロック図と、図2及び図3のフローチャートを併せ参照して本実施形態の全体の動作について詳細に説明する。   Next, the overall operation of this embodiment will be described in detail with reference to the block diagram of FIG. 1 and the flowcharts of FIGS.

まず、可変部設定手段102の動作について、図2のフローチャートと共に説明する。可変部設定手段102は、作成済みモデル格納手段101から作成済みモデルを読み込む(図2のステップA1)。次に、可変部設定手段102は、読み込んだ作成済みモデルから抽象構文木を作成する(図2のステップA2)。続いて、抽象構文木を親ノードと子の部分木に分割可能か確認する(図2のステップA3)。分割できる場合は図2のステップA4に進み、分割できない場合は図2のステップA6に進む。   First, the operation of the variable part setting unit 102 will be described with reference to the flowchart of FIG. The variable part setting unit 102 reads the created model from the created model storage unit 101 (step A1 in FIG. 2). Next, the variable part setting means 102 creates an abstract syntax tree from the read created model (step A2 in FIG. 2). Subsequently, it is confirmed whether the abstract syntax tree can be divided into a parent node and a child subtree (step A3 in FIG. 2). If division is possible, the process proceeds to step A4 in FIG. 2, and if division is not possible, the process proceeds to step A6 in FIG.

分割できる場合は、統合可能な部分木があるか確認する(図2のステップA4)。可変部設定手段102は、統合可能な部分木が存在する場合はステップA5に進み、存在しない場合はステップA3に戻る。統合可能な部分木が存在する場合は、統合可能な複数の部分木を取り出し、属性値やノード値にパラメータ番号を自動付与し、1つの部分木を作成する(図2のステップA5)。その後、統合していない部分木を処理するため、図2のステップA3に戻る。   If it can be divided, it is checked whether there is a subtree that can be integrated (step A4 in FIG. 2). The variable part setting unit 102 proceeds to step A5 if there is a subtree that can be integrated, and returns to step A3 if it does not exist. If there are subtrees that can be integrated, a plurality of subtrees that can be integrated are extracted, and parameter numbers are automatically assigned to attribute values and node values to create one subtree (step A5 in FIG. 2). Thereafter, the process returns to step A3 in FIG.

一方、可変部設定手段102は、ステップA3で部分木に分割できないことを確認した場合は、可変部設定手段102の今までの処理結果をまとめて中間モデルテンプレートとして中間モデルテンプレート格納手段103に保存する(図2のステップA6)。次に、可変部設定手段102は、まとめた処理結果から中間パラメータを中間パラメータ格納手段104に保存する(図2のステップA7)。なお、中間モデルテンプレートと中間パラメータの2つを合わせて、本明細書では「パラメータ付き中間モデル」と呼ぶこととする。   On the other hand, when it is confirmed that the variable part setting unit 102 cannot be divided into subtrees in step A3, the processing results so far of the variable part setting unit 102 are collectively stored in the intermediate model template storage unit 103 as an intermediate model template. (Step A6 in FIG. 2). Next, the variable part setting unit 102 stores the intermediate parameters in the intermediate parameter storage unit 104 from the collected processing results (step A7 in FIG. 2). The intermediate model template and the intermediate parameters are collectively referred to as “intermediate model with parameters” in this specification.

次に、パラメータ作成手段105の動作について、図3のフローチャートと共に詳細に説明する。まず、パラメータ作成手段105は、作成済みモデル格納手段101から作成済みモデルを読み込む(図3のステップA8)。次に、パラメータ作成手段105は、読み込んだ作成済みモデルから抽象構文木を作成する(図3のステップA9)。そして、ノード値と出現頻度の一覧を作成する(図3のステップA10)。更に、作成した出現頻度の一覧から出現頻度2以上を取り出す(図3のステップA11)。   Next, the operation of the parameter creation unit 105 will be described in detail with reference to the flowchart of FIG. First, the parameter creation unit 105 reads a created model from the created model storage unit 101 (step A8 in FIG. 3). Next, the parameter creation means 105 creates an abstract syntax tree from the read created model (step A9 in FIG. 3). Then, a list of node values and appearance frequencies is created (step A10 in FIG. 3). Further, the appearance frequency 2 or more is extracted from the created appearance frequency list (step A11 in FIG. 3).

次に、パラメータ作成手段105は、中間モデルテンプレート格納手段103から中間モデルテンプレートを読み込み(図3のステップA12)、その中から出現頻度2以上のノード値を持つノードを取り出して、パラメータ番号を自動付与する(図3のステップA13)。   Next, the parameter creation unit 105 reads the intermediate model template from the intermediate model template storage unit 103 (step A12 in FIG. 3), extracts a node having a node value with an appearance frequency of 2 or more from the intermediate model template, and automatically sets the parameter number. (Step A13 in FIG. 3).

続いて、パラメータ作成手段105は、ステップA13でパラメータ番号を自動付与したノード値と同じ属性値が作成済みモデルにあるかどうか検索し、ある場合、それを取り出して中間モデルテンプレートに挿入する(図3のステップA14)。続いて、パラメータ作成手段105は、中間モデルテンプレートに対する今までの処理結果をまとめてモデルテンプレートとしてモデルテンプレート格納手段106に保存し(図3のステップA15)、中間パラメータをパラメータ定義としてパラメータ定義格納手段107に保存する(図3のステップA16)。なお、モデルテンプレートとパラメータ定義の2つを合わせて、本明細書では「パラメータ付きモデル」と呼ぶこととする。   Subsequently, the parameter creating means 105 searches whether or not the created attribute has the same attribute value as the node value to which the parameter number is automatically assigned in step A13. If there is, it is extracted and inserted into the intermediate model template (FIG. 3 step A14). Subsequently, the parameter creation unit 105 collectively stores the processing results of the intermediate model template so far in the model template storage unit 106 as a model template (step A15 in FIG. 3), and the intermediate parameter is defined as a parameter definition. 107 (step A16 in FIG. 3). Note that the model template and the parameter definition are collectively referred to as a “model with parameters” in this specification.

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

本実施形態では、可変部設定手段102でモデルの繰り返し構造を統合し、パラメータ作成手段105で用語の持つ意味の一意性が成り立つようにパラメータ化を行う構成としている。このため、本実施形態によれば、複数の作成済みモデルを用意しなくても、1つの作成済みモデルから再利用モデルであるモデルテンプレートを得ることができる。   In the present embodiment, the variable part setting unit 102 integrates the repetitive structure of the model, and the parameter creation unit 105 performs parameterization so that the meaning of the meaning of the term is established. Therefore, according to the present embodiment, a model template that is a reuse model can be obtained from one created model without preparing a plurality of created models.

また、本実施形態では、モデル要素の繰り返し項目や同一用語がモデル特有部分になるという性質を利用して、作成済みモデルから再利用モデルであるモデルテンプレートを自動生成するようにしている。このため、本実施の形態によれば、或る問題領域で複数回のモデリング経験の無いモデリング技能の低い開発者であっても、再利用モデルを自動生成できるようになることでパラメータ化作業の間違いや漏れを防止できる。   In the present embodiment, a model template, which is a reuse model, is automatically generated from a created model by utilizing the property that repeated items of model elements and the same terms become model-specific parts. For this reason, according to the present embodiment, even a developer with low modeling skills who does not have modeling experience multiple times in a certain problem area can automatically generate a reuse model. Prevent mistakes and leaks.

なお、前述した特許文献1記載の発明は業務フローの上位・下位を階層構造を用いて表したモデルをテンプレートしているが、本実施形態では、これとは異なり、モデル要素(ノード)の繰り返し構造とモデル要素の値に同一用語が出現しているかの判断により、自動的にモデル要素の統合とパラメータ定義を行ったものをテンプレートとしている。   Note that the invention described in Patent Document 1 described above uses a model in which the upper and lower parts of a business flow are represented by using a hierarchical structure as a template. However, in this embodiment, the model element (node) is repeated. A template is obtained by automatically integrating model elements and defining parameters by determining whether the same term appears in the structure and model element values.

また、前述した特許文献2記載の発明は図面上で部品化しない部分を消去するという人間を介した結果として得られるテンプレートをプログラム部品として登録している。これに対し、本実施形態では、可変部分となるパラメータがモデルテンプレートのどの位置にあるのかを示すためにルートノードから辿ったノード名称をパラメータ定義として登録するものであり、特許文献2記載の発明とは異なる。   Further, the above-described invention described in Patent Document 2 registers a template obtained as a program part as a result of human intervention to erase a part that is not made into a part on the drawing. On the other hand, in the present embodiment, the node name traced from the root node is registered as a parameter definition in order to indicate where the parameter serving as the variable part is located in the model template. Is different.

次に、具体的な実施例を用いて本発明のモデルのテンプレート自動生成システム100の動作を説明する。   Next, the operation of the model template automatic generation system 100 of the present invention will be described using a specific embodiment.

図4は、作成済みモデルを抽象構文木として表現した一例を示す。この抽象構文木は、図4に示すようにXLM(extensible markup language)のノード名称あるいはノードの属性として表される。図4において、ノードは<FunctionUnit Name=‘商品検索’>やName=‘商品検索’である。ノード名称は、FunctionUnitやNameである。ノード値は‘商品検索’である。   FIG. 4 shows an example in which the created model is expressed as an abstract syntax tree. This abstract syntax tree is represented as a node name or node attribute of XLM (extensible markup language) as shown in FIG. In FIG. 4, the nodes are <FunctionUnit Name = “product search”> and Name = “product search”. The node name is FunctionUnit or Name. The node value is 'product search'.

図1の可変部設定手段102は、作成済みモデル格納手段101から作成済みモデルを読み込む(図2のステップA1)と、図4に示すような木構造で表すことができる抽象構文木を作成する(図2のステップA2)。次に、可変部設定手段102は、親ノードと子の部分木に分割可能かを確認し(図2のステップA3)、分割可能であれば更に統合可能な部分木があるか確認し(図2のステップA4)、統合可能であれば、統合可能な複数の部分木を統合し、統合後のノード値にパラメータ番号を自動付与する(図2のステップA5)。図1の可変部設定手段102は、処理が完了すると、処理結果をまとめて、それを中間モデルテンプレートとして図1の中間モデルテンプレート格納手段103に格納し(図2のステップA6)、さらに、中間パラメータを中間パラメータ格納手段104に格納する(図2のステップA7)。   1 reads the created model from the created model storage means 101 (step A1 in FIG. 2), and creates an abstract syntax tree that can be represented by a tree structure as shown in FIG. (Step A2 in FIG. 2). Next, the variable part setting means 102 checks whether or not it can be divided into a parent node and a child subtree (step A3 in FIG. 2), and if it can be divided, checks whether there is a subtree that can be further integrated (see FIG. 2). In step A4 of 2), if integration is possible, a plurality of subtrees that can be integrated are integrated, and a parameter number is automatically assigned to the node value after integration (step A5 in FIG. 2). When the processing is completed, the variable part setting unit 102 in FIG. 1 collects the processing results and stores them as intermediate model templates in the intermediate model template storage unit 103 in FIG. 1 (step A6 in FIG. 2). The parameter is stored in the intermediate parameter storage means 104 (step A7 in FIG. 2).

図5は、パラメータ番号を自動付与した後の図1の中間モデルテンプレート格納手段103に格納される中間モデルテンプレートの一例を示す。図5に示すように、「ノードPage」、「Reference」、「Element」、「Attribute」などが繰り返し項目として統合され、属性値は、一意に番号付けられたパラメータ番号である$1〜$8に置き換えられ、繰り返し項目を表すフラグrepeatableが付けられている。   FIG. 5 shows an example of an intermediate model template stored in the intermediate model template storage means 103 of FIG. 1 after automatically assigning parameter numbers. As shown in FIG. 5, “Node Page”, “Reference”, “Element”, “Attribute”, etc. are integrated as repeated items, and attribute values are replaced with uniquely numbered parameter numbers $ 1 to $ 8. And a flag repeatable representing a repeated item.

図6は処理の結果得られた図1の中間パラメータ格納手段104に格納される中間パラメータの一例を示す。図6に示すように、中間パラメータは、中間モデルテンプレートにおけるパラメータ番号と、それに対応したルートノードからのパス付きノード名の一覧を表している。例えば、自動付与したパラメータ番号$1はノード名称のパスとして、「FunctionUnit,Component,Page,Name」が書き込まれている。   FIG. 6 shows an example of intermediate parameters stored in the intermediate parameter storage means 104 of FIG. 1 obtained as a result of the processing. As shown in FIG. 6, the intermediate parameter represents a list of parameter numbers in the intermediate model template and node names with paths from the corresponding root nodes. For example, “FunctionUnit, Component, Page, Name” is written as the node name path in the automatically assigned parameter number $ 1.

次に、図1のパラメータ作成手段105は、作成済みモデル格納手段101から作成済みモデルを読み込む(図3のステップA8)と、図4に示すような木構造で表すことができる抽象構文木を作成する(図3のステップA9)。続いて、パラメータ作成手段105は、ノードと出現頻度の一覧を作成し(図3のステップA10)、出現頻度2以上のノードを取り出す(図3のステップA11)。   Next, when the parameter creation means 105 in FIG. 1 reads the created model from the created model storage means 101 (step A8 in FIG. 3), an abstract syntax tree that can be represented by a tree structure as shown in FIG. 4 is obtained. It is created (step A9 in FIG. 3). Subsequently, the parameter creation unit 105 creates a list of nodes and appearance frequencies (step A10 in FIG. 3), and takes out nodes having an appearance frequency of 2 or more (step A11 in FIG. 3).

次に、パラメータ作成手段105は、中間モデルテンプレート格納手段103から図5に示したような中間モデルテンプレートを読み込み(図3のステップA12)、図3のステップA11の手順で得られた出現頻度2以上のノード値を取り出して、自動付与したパラメータ番号に置き換える(図3のステップA13)。   Next, the parameter creation means 105 reads the intermediate model template as shown in FIG. 5 from the intermediate model template storage means 103 (step A12 in FIG. 3), and the appearance frequency 2 obtained by the procedure in step A11 in FIG. The above node values are extracted and replaced with automatically assigned parameter numbers (step A13 in FIG. 3).

パラメータ作成手段105は、処理が完了すると、処理結果をまとめて、図1のモデルテンプレート格納手段106に格納し(図3のステップA14)、さらに、パラメータ定義格納手段107に格納する(図3のステップA15)。   When the processing is completed, the parameter creation unit 105 collects the processing results, stores them in the model template storage unit 106 in FIG. 1 (step A14 in FIG. 3), and further stores them in the parameter definition storage unit 107 (in FIG. 3). Step A15).

図7は、図5に示したような中間モデルテンプレートを処理した結果であるモデルテンプレートを表している。図5において「商品」と「検索」という文字列は、出現頻度2以上であることから、これらの文字列は、図7に示すように、自動付与したパラメータ番号$9と$10にそれぞれ置き換えられている。   FIG. 7 shows a model template that is the result of processing the intermediate model template as shown in FIG. In FIG. 5, since the character strings “product” and “search” have an appearance frequency of 2 or more, these character strings are respectively replaced with automatically assigned parameter numbers $ 9 and $ 10 as shown in FIG. Yes.

図8は、図6の中間パラメータを処理した結果であるパラメータ定義格納手段107に格納されるパラメータ定義の一例を示す。図8に示すように、パラメータ定義は、自動付与したパラメータ番号$9と$10とノード名称のパスが、図6に示した中間パラメータに追記で書き込まれた構成である。   FIG. 8 shows an example of parameter definitions stored in the parameter definition storage means 107 as a result of processing the intermediate parameters in FIG. As shown in FIG. 8, the parameter definition has a configuration in which automatically assigned parameter numbers $ 9 and $ 10 and a node name path are additionally written in the intermediate parameter shown in FIG.

なお、「“$”から始まる文字列はパラメータ定義する」という制約を加えれば、中間パラメータ格納手段104に格納される中間パラメータは中間モデルテンプレートから作成することができるため、中間パラメータ格納手段104を不要にできる。同様に、上記の制約を加えれば、パラメータ定義格納手段107に格納されるパラメータ定義はモデルテンプレートから作成することができるため、パラメータ定義格納手段107を不要にできる。   If the constraint that “character string starting with“ $ ”is parameter defined” is added, the intermediate parameter stored in the intermediate parameter storage unit 104 can be created from the intermediate model template. Can be unnecessary. Similarly, if the above restrictions are added, the parameter definition stored in the parameter definition storage means 107 can be created from the model template, and therefore the parameter definition storage means 107 can be dispensed with.

なお、本発明は以上の実施形態及び実施例に限定されるものではなく、例えば、図2及び図3のフローチャートの各処理をコンピュータにより実行させるモデル添付レータ自動生成プログラムも本発明に包含されるものである。   The present invention is not limited to the above-described embodiments and examples. For example, a model attachment automatic generation program that causes a computer to execute the processes of the flowcharts of FIGS. 2 and 3 is also included in the present invention. Is.

本発明によれば、MDA(Model Driven Architecture:モデル駆動アーキテクチャ)のようなモデリングによるソフトウェア開発を行う開発手法において、類似の処理構造を持つ機能のモデリング作業の効率化といった用途に適用可能である。例えば、業務システムの開発では、業務データの検索処理や更新処理を行うソフトウェアのモデルは業務データの種類が異なることを除き、モデルの多くの部分が類似している。業務システム全体機能に対し、類似機能の占める割合は3割を超える場合もあり、それらの機能のモデリングを個々に行うのは効率が悪い。このような開発において、テンプレート化された再利用可能なモデルを利用することで、モデリング作業の効率化といった用途に適用できる。また、本発明で作成した再利用モデルを一つの業務システム開発だけで用いるのではなく、他の業務システム開発にも再利用することで、開発組織のモデリングの効率化を行うといった用途にも適用可能である。   According to the present invention, in a development method for developing software by modeling such as MDA (Model Driven Architecture), the present invention can be applied to uses such as improving the efficiency of modeling work of functions having similar processing structures. For example, in the development of a business system, many parts of a model of a software for performing business data search processing and update processing are similar except that the types of business data are different. The proportion of similar functions may exceed 30% of the overall business system functions, and it is inefficient to model these functions individually. In such development, by using a reusable model that has been made into a template, it can be applied to an application such as the efficiency of modeling work. In addition, the reuse model created in the present invention is not used only in the development of one business system, but can also be used for the purpose of improving the modeling efficiency of the development organization by reusing it in other business system development. Is possible.

100 モデルのテンプレート自動生成システム
101 作成済みモデル格納手段
102 可変部設定手段
103 中間モデルテンプレート
104 中間パラメータ格納手段
105 パラメータ作成手段
106 モデルテンプレート格納手段
107 パラメータ定義格納手段
DESCRIPTION OF SYMBOLS 100 Template automatic generation system 101 Created model storage means 102 Variable part setting means 103 Intermediate model template 104 Intermediate parameter storage means 105 Parameter creation means 106 Model template storage means 107 Parameter definition storage means

Claims (15)

入出力データを作成済みモデルとして格納する作成済みモデル格納手段と、
前記作成済みモデルの中のモデル要素の繰り返し項目を一つに統合したものをパラメータ設定して、少なくとも中間モデルテンプレートを作成する中間モデルテンプレート作成手段と、
前記中間モデルテンプレートを保存する第1の格納手段と、
前記モデル格納手段から読み込んだ前記作成済みモデルと、前記第1の格納手段から読み込んだ前記中間モデルテンプレートとから、それらモデル内の同一用語をパラメータに置き換えて、少なくともモデルテンプレートを作成するモデルテンプレート作成手段と、
前記モデルテンプレートを保存する第2の格納手段と
を有することを特徴とするモデルテンプレート自動生成システム。
Created model storage means for storing input / output data as a created model;
An intermediate model template creating means for creating a parameter at least by combining the repeated items of model elements in the created model and creating an intermediate model template;
First storage means for storing the intermediate model template;
Model template creation that creates at least a model template from the created model read from the model storage means and the intermediate model template read from the first storage means by replacing the same terms in the models with parameters Means,
A model template automatic generation system, comprising: a second storage unit that stores the model template.
入出力データを作成済みモデルとして格納する作成済みモデル格納手段と、
前記作成済みモデルの中のモデル要素の繰り返し項目を一つに統合したものをパラメータ設定して、パラメータ付き中間モデルを作成するパラメータ付き中間モデル作成手段と、
前記パラメータ付き中間モデルを保存する第1の格納手段と、
前記モデル格納手段から読み込んだ前記作成済みモデルと、前記第1の格納手段から読み込んだ前記パラメータ付き中間モデルとから、それらモデル内の同一用語をパラメータに置き換えて、パラメータ付きモデルを作成するパラメータ付きモデル作成手段と、
前記パラメータ付きモデルを保存する第2の格納手段と
を有することを特徴とするモデルテンプレート自動生成システム。
Created model storage means for storing input / output data as a created model;
Parameterized intermediate model creating means for creating a parameterized intermediate model by setting a parameter that integrates the repeated items of model elements in the created model into one,
First storage means for storing the parameterized intermediate model;
With parameters to create a model with parameters by replacing the created model read from the model storage means and the intermediate model with parameters read from the first storage means by replacing the same terms in the models with parameters Model creation means;
A model template automatic generation system comprising: a second storage unit that stores the parameterized model.
前記パラメータ付き中間モデル作成手段は、前記作成済みモデルの中のモデル要素の繰り返し項目を見つけて1つに統合し、それを再利用の際の可変部分としてパラメータ設定し、中間モデルテンプレートと中間パラメータとを前記パラメータ付き中間モデルとして作成する可変部設定手段であり、
前記パラメータ付きモデル作成手段は、前記作成済みモデルと前記中間モデルテンプレートと前記中間パラメータを受け取り、モデル内の同一用語をパラメータに置き換えることにより、モデルテンプレートとパラメータ定義とを前記パラメータ付きモデルとして作成するパラメータ作成手段である
ことを特徴とする請求項2記載のモデルテンプレート自動生成システム。
The parameter-added intermediate model creating means finds the repetitive items of the model elements in the created model, integrates them into one, sets the parameters as variable parts at the time of reuse, and sets the intermediate model template and intermediate parameters. And variable part setting means for creating as an intermediate model with parameters,
The parameterized model creation means receives the created model, the intermediate model template and the intermediate parameter, and creates a model template and a parameter definition as the parameterized model by replacing the same term in the model with a parameter. The model template automatic generation system according to claim 2, wherein the model template generation unit is a parameter creation unit.
前記可変部設定手段は、
前記モデル格納手段から読み込んだ前記作成済みモデルから抽象構文木を作成する抽象構文木作成手段と、
前記抽象構文木からノードの繰り返し項目を統合するために、部分木が同じものを検索して比較を行い同じ部分木を一つの部分木に統合すると共に、その統合の際にノード値が異なる部分木はパラメータ番号を自動付与する統合手段と、
前記作成済みモデルに前記統合手段で統合した前記部分木を前記中間モデルテンプレートとして作成すると共に、前記パラメータ番号をノード名称と対にして前記中間パラメータとして作成する手段と
を有することを特徴とする請求項3記載のモデルテンプレート自動生成システム。
The variable part setting means includes:
Abstract syntax tree creation means for creating an abstract syntax tree from the created model read from the model storage means;
In order to integrate repeated items of nodes from the abstract syntax tree, the same subtree is searched and compared, and the same subtree is integrated into one subtree, and the node values differ in the integration The tree is an integrated means for automatically assigning parameter numbers,
The sub-tree integrated with the created model by the integration unit is created as the intermediate model template, and the parameter number is paired with a node name and created as the intermediate parameter. Item 4. The model template automatic generation system according to Item 3.
前記パラメータ作成手段は、
前記モデル格納手段から読み込んだ前記作成済みモデルから抽象構文木を作成する抽象構文木作成手段と、
前記抽象構文木からノード値の文字列を取り出し、その文字列とその文字列の出願頻度との一覧を作成する一覧作成手段と、
前記中間モデルテンプレートを読み込み、その中間モデルテンプレートを構成する各ノードのうち、前記一覧の中で前記出現頻度が所定値以上であるノード値を持つノードを取り出してパラメータ番号を自動付与するパラメータ付与手段と、
前記作成済みモデルに前記自動付与したパラメータ番号を持つノードが存在したときには、そのノードを前記中間モデルテンプレートに挿入する挿入手段と、
前記パラメータ付与手段及び前記挿入手段の処理後の前記中間モデルテンプレートを前記モデルテンプレートとして作成すると共に、前記中間パラメータを前記パラメータ定義として作成する作成手段と
を有することを特徴とする請求項3記載のモデルテンプレート自動生成システム。
The parameter creating means includes
Abstract syntax tree creation means for creating an abstract syntax tree from the created model read from the model storage means;
A list creating means for taking out a character string of a node value from the abstract syntax tree and creating a list of the character string and the application frequency of the character string;
Parameter assigning means for reading the intermediate model template, out of the nodes constituting the intermediate model template, taking out a node having a node value whose appearance frequency is a predetermined value or more from the list and automatically assigning a parameter number When,
An insertion means for inserting the node into the intermediate model template when a node having the automatically assigned parameter number exists in the created model;
4. The method according to claim 3, further comprising: creating the intermediate model template after the processing of the parameter assigning unit and the inserting unit as the model template, and creating the intermediate parameter as the parameter definition. Model template automatic generation system.
作成済みモデル格納部から作成済みモデルを読み込む作成済みモデル読み込みステップと、
前記作成済みモデルの中のモデル要素の繰り返し項目を一つに統合したものをパラメータ設定して、少なくとも中間モデルテンプレートを作成する中間モデルテンプレート作成ステップと、
前記中間モデルテンプレートを第1の格納部に保存する第1の格納ステップと、
読み込んだ前記作成済みモデルと、前記第1の格納部から読み込んだ前記中間モデルテンプレートとから、それらモデル内の同一用語をパラメータに置き換えて、少なくともモデルテンプレートを作成するモデルテンプレート作成ステップと、
前記モデルテンプレートを第2の格納部に保存する第2の格納ステップと
を含むことを特徴とするモデルのテンプレート自動生成方法。
A created model loading step for loading a created model from the created model storage unit;
An intermediate model template creating step for creating at least an intermediate model template by setting a parameter that integrates the repeated items of model elements in the created model into one;
A first storing step of storing the intermediate model template in a first storing unit;
A model template creating step of creating at least a model template by replacing the created model read and the intermediate model template read from the first storage unit with the same terms in the model replaced with parameters;
And a second storage step of storing the model template in a second storage unit.
作成済みモデル格納部から作成済みモデルを読み込む作成済みモデル読み込みステップと、
読み込んだ前記作成済みモデルの中のモデル要素の繰り返し項目を一つに統合したものをパラメータ設定して、パラメータ付き中間モデルを作成するパラメータ付き中間モデル作成ステップと、
前記パラメータ付き中間モデルを第1の格納部に保存する第1の格納ステップと、
読み込んだ前記作成済みモデルと、前記第1の格納部から読み込んだ前記パラメータ付き中間モデルとから、それらモデル内の同一用語をパラメータに置き換えて、パラメータ付きモデルを作成するパラメータ付きモデル作成ステップと、
前記パラメータ付きモデルを第2の格納部に保存する第2の格納ステップと
を含むことを特徴とするモデルテンプレート自動生成方法。
A created model loading step for loading a created model from the created model storage unit;
An intermediate model creation step with parameters for creating a parameterized intermediate model by setting a parameter that integrates the repeated items of model elements in the read created model into one,
A first storing step of storing the intermediate model with parameters in a first storing unit;
A parameterized model creation step of creating a parameterized model by replacing the same model in the model with a parameter from the created model that has been read and the intermediate model with the parameter read from the first storage unit;
And a second storage step of storing the model with parameters in a second storage unit.
前記パラメータ付き中間モデル作成ステップは、前記作成済みモデルの中のモデル要素の繰り返し項目を見つけて1つに統合し、それを再利用の際の可変部分としてパラメータ設定し、中間モデルテンプレートと中間パラメータとを前記パラメータ付き中間モデルとして作成する可変部設定ステップであり、
前記パラメータ付きモデル作成ステップは、前記作成済みモデルと前記中間モデルテンプレートと前記中間パラメータを受け取り、モデル内の同一用語をパラメータに置き換えることにより、モデルテンプレートとパラメータ定義とを前記パラメータ付きモデルとして作成するパラメータ作成ステップである
ことを特徴とする請求項7記載のモデルテンプレート自動生成方法。
In the intermediate model creation step with parameters, the repetition items of the model elements in the created model are found and integrated into one, and the parameters are set as variable parts at the time of reuse. And a variable part setting step for creating the parameter as an intermediate model with parameters,
The parameterized model creation step receives the created model, the intermediate model template and the intermediate parameter, and creates a model template and a parameter definition as the parameterized model by replacing the same term in the model with the parameter. The model template automatic generation method according to claim 7, wherein the method is a parameter creation step.
前記可変部設定ステップは、
読み込んだ前記作成済みモデルから抽象構文木を作成する抽象構文木作成ステップと、
前記抽象構文木からノードの繰り返し項目を統合するために、部分木が同じものを検索して比較を行い同じ部分木を一つの部分木に統合すると共に、その統合の際にノード値が異なる部分木はパラメータ番号を自動付与する統合ステップと、
前記作成済みモデルに前記統合ステップで統合した前記部分木を前記中間モデルテンプレートとして作成すると共に、前記パラメータ番号をノード名称と対にして前記中間パラメータとして作成する作成ステップと
を含むことを特徴とする請求項8記載のモデルテンプレート自動生成方法。
The variable part setting step includes:
An abstract syntax tree creating step for creating an abstract syntax tree from the read created model;
In order to integrate repeated items of nodes from the abstract syntax tree, the same subtree is searched and compared, and the same subtree is integrated into one subtree, and the node values differ in the integration The tree is an integration step that automatically assigns parameter numbers;
Creating the partial tree integrated in the integration step in the integration step as the intermediate model template, and generating the partial number as a pair with the node name as the intermediate parameter. The model template automatic generation method according to claim 8.
前記パラメータ作成ステップは、
読み込んだ前記作成済みモデルから抽象構文木を作成する抽象構文木作成ステップと、
前記抽象構文木からノード値の文字列を取り出し、その文字列とその文字列の出願頻度との一覧を作成する一覧作成ステップと、
前記中間モデルテンプレートを読み込み、その中間モデルテンプレートを構成する各ノードのうち、前記一覧の中で前記出現頻度が所定値以上であるノード値を持つノードを取り出してパラメータ番号を自動付与するパラメータ付与ステップと、
前記作成済みモデルに前記自動付与したパラメータ番号を持つノードが存在したときには、そのノードを前記中間モデルテンプレートに挿入する挿入ステップと、
前記パラメータ付与ステップ及び前記挿入ステップの処理後の前記中間モデルテンプレートを前記モデルテンプレートとして作成すると共に、前記中間パラメータを前記パラメータ定義として作成する作成ステップと
を含むことを特徴とする請求項8記載のモデルテンプレート自動生成方法。
The parameter creation step includes:
An abstract syntax tree creating step for creating an abstract syntax tree from the read created model;
A list creation step of taking out a character string of a node value from the abstract syntax tree and creating a list of the character string and the application frequency of the character string;
A parameter assigning step of reading the intermediate model template, and taking out a node having a node value whose appearance frequency is equal to or higher than a predetermined value from among the nodes constituting the intermediate model template and automatically assigning a parameter number When,
An insertion step of inserting the node into the intermediate model template when a node having the automatically assigned parameter number exists in the created model;
9. The creation step of creating the intermediate model template after the processing of the parameter assigning step and the insertion step as the model template, and creating the intermediate parameter as the parameter definition. Model template automatic generation method.
作成済みモデル格納部から作成済みモデルを読み込む作成済みモデル読み込みステップと、
前記作成済みモデルの中のモデル要素の繰り返し項目を一つに統合したものをパラメータ設定して、少なくとも中間モデルテンプレートを作成する中間モデルテンプレート作成ステップと、
前記中間モデルテンプレートを第1の格納部に保存する第1の格納ステップと、
読み込んだ前記作成済みモデルと、前記第1の格納部から読み込んだ前記中間モデルテンプレートとから、それらモデル内の同一用語をパラメータに置き換えて、少なくともモデルテンプレートを作成するモデルテンプレート作成ステップと、
前記モデルテンプレートを第2の格納部に保存する第2の格納ステップと
を、コンピュータにより実行させることを特徴とするモデルのテンプレート自動生成プログラム。
A created model loading step for loading a created model from the created model storage unit;
An intermediate model template creating step for creating at least an intermediate model template by setting a parameter that integrates the repeated items of model elements in the created model into one;
A first storing step of storing the intermediate model template in a first storing unit;
A model template creating step of creating at least a model template by replacing the created model read and the intermediate model template read from the first storage unit with the same terms in the model replaced with parameters;
A model template automatic generation program that causes a computer to execute a second storage step of storing the model template in a second storage unit.
作成済みモデル格納部から作成済みモデルを読み込む作成済みモデル読み込みステップと、
読み込んだ前記作成済みモデルの中のモデル要素の繰り返し項目を一つに統合したものをパラメータ設定して、パラメータ付き中間モデルを作成するパラメータ付き中間モデル作成ステップと、
前記パラメータ付き中間モデルを第1の格納部に保存する第1の格納ステップと、
読み込んだ前記作成済みモデルと、前記第1の格納部から読み込んだ前記パラメータ付き中間モデルとから、それらモデル内の同一用語をパラメータに置き換えて、パラメータ付きモデルを作成するパラメータ付きモデル作成ステップと、
前記パラメータ付きモデルを第2の格納部に保存する第2の格納ステップと
を、コンピュータにより実行させることを特徴とするモデルテンプレート自動生成プログラム。
A created model loading step for loading a created model from the created model storage unit;
An intermediate model creation step with parameters for creating a parameterized intermediate model by setting a parameter that integrates the repeated items of model elements in the read created model into one,
A first storing step of storing the intermediate model with parameters in a first storing unit;
A parameterized model creation step of creating a parameterized model by replacing the same model in the model with a parameter from the created model that has been read and the intermediate model with the parameter read from the first storage unit;
A model template automatic generation program causing a computer to execute a second storing step of storing the parameterized model in a second storing unit.
前記パラメータ付き中間モデル作成ステップは、前記作成済みモデルの中のモデル要素の繰り返し項目を見つけて1つに統合し、それを再利用の際の可変部分としてパラメータ設定し、中間モデルテンプレートと中間パラメータとを前記パラメータ付き中間モデルとして作成する可変部設定ステップであり、
前記パラメータ付きモデル作成ステップは、前記作成済みモデルと前記中間モデルテンプレートと前記中間パラメータを受け取り、モデル内の同一用語をパラメータに置き換えることにより、モデルテンプレートとパラメータ定義とを前記パラメータ付きモデルとして作成するパラメータ作成ステップである
ことを特徴とする請求項12記載のモデルテンプレート自動生成プログラム。
In the intermediate model creation step with parameters, the repetition items of the model elements in the created model are found and integrated into one, and the parameters are set as variable parts at the time of reuse. And a variable part setting step for creating the parameter as an intermediate model with parameters,
The parameterized model creation step receives the created model, the intermediate model template and the intermediate parameter, and creates a model template and a parameter definition as the parameterized model by replacing the same term in the model with the parameter. 13. The model template automatic generation program according to claim 12, which is a parameter creation step.
前記可変部設定ステップは、
読み込んだ前記作成済みモデルから抽象構文木を作成する抽象構文木作成ステップと、
前記抽象構文木からノードの繰り返し項目を統合するために、部分木が同じものを検索して比較を行い同じ部分木を一つの部分木に統合すると共に、その統合の際にノード値が異なる部分木はパラメータ番号を自動付与する統合ステップと、
前記作成済みモデルに前記統合ステップで統合した前記部分木を前記中間モデルテンプレートとして作成すると共に、前記パラメータ番号をノード名称と対にして前記中間パラメータとして作成する作成ステップと
を含むことを特徴とする請求項13記載のモデルテンプレート自動生成プログラム。
The variable part setting step includes:
An abstract syntax tree creating step for creating an abstract syntax tree from the read created model;
In order to integrate repeated items of nodes from the abstract syntax tree, the same subtree is searched and compared, and the same subtree is integrated into one subtree, and the node values differ in the integration The tree is an integration step that automatically assigns parameter numbers;
Creating the partial tree integrated in the integration step in the integration step as the intermediate model template, and generating the partial number as a pair with the node name as the intermediate parameter. 14. A model template automatic generation program according to claim 13.
前記パラメータ作成ステップは、
読み込んだ前記作成済みモデルから抽象構文木を作成する抽象構文木作成ステップと、
前記抽象構文木からノード値の文字列を取り出し、その文字列とその文字列の出願頻度との一覧を作成する一覧作成ステップと、
前記中間モデルテンプレートを読み込み、その中間モデルテンプレートを構成する各ノードのうち、前記一覧の中で前記出現頻度が所定値以上であるノード値を持つノードを取り出してパラメータ番号を自動付与するパラメータ付与ステップと、
前記作成済みモデルに前記自動付与したパラメータ番号を持つノードが存在したときには、そのノードを前記中間モデルテンプレートに挿入する挿入ステップと、
前記パラメータ付与ステップ及び前記挿入ステップの処理後の前記中間モデルテンプレートを前記モデルテンプレートとして作成すると共に、前記中間パラメータを前記パラメータ定義として作成する作成ステップと
を含むことを特徴とする請求項13記載のモデルテンプレート自動生成プログラム。
The parameter creation step includes:
An abstract syntax tree creating step for creating an abstract syntax tree from the read created model;
A list creation step of taking out a character string of a node value from the abstract syntax tree and creating a list of the character string and the application frequency of the character string;
A parameter assigning step of reading the intermediate model template, and taking out a node having a node value whose appearance frequency is equal to or higher than a predetermined value from among the nodes constituting the intermediate model template and automatically assigning a parameter number When,
An insertion step of inserting the node into the intermediate model template when a node having the automatically assigned parameter number exists in the created model;
14. The creation step of creating the intermediate model template after the processing of the parameter assigning step and the insertion step as the model template, and creating the intermediate parameter as the parameter definition. Model template automatic generation program.
JP2009007340A 2009-01-16 2009-01-16 Template automatic generation system, method and program for model Pending JP2010165205A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009007340A JP2010165205A (en) 2009-01-16 2009-01-16 Template automatic generation system, method and program for model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009007340A JP2010165205A (en) 2009-01-16 2009-01-16 Template automatic generation system, method and program for model

Publications (1)

Publication Number Publication Date
JP2010165205A true JP2010165205A (en) 2010-07-29

Family

ID=42581303

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009007340A Pending JP2010165205A (en) 2009-01-16 2009-01-16 Template automatic generation system, method and program for model

Country Status (1)

Country Link
JP (1) JP2010165205A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011013750A (en) * 2009-06-30 2011-01-20 Internatl Business Mach Corp <Ibm> Automatic designing apparatus, automatic designing method and automatic designing program for automatically designing design architecture of system component
US9164980B2 (en) 2011-06-03 2015-10-20 Fujitsu Limited Name identification rule generating apparatus and name identification rule generating method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011013750A (en) * 2009-06-30 2011-01-20 Internatl Business Mach Corp <Ibm> Automatic designing apparatus, automatic designing method and automatic designing program for automatically designing design architecture of system component
US9164980B2 (en) 2011-06-03 2015-10-20 Fujitsu Limited Name identification rule generating apparatus and name identification rule generating method

Similar Documents

Publication Publication Date Title
Del Fabro et al. Semi-automatic model integration using matching transformations and weaving models
US9342301B2 (en) Converting and input script to a natural language description
JP5197688B2 (en) Integrated environment generator
Haber et al. Engineering delta modeling languages
JP5005510B2 (en) Software design support method, design support apparatus, and design support program
WO2004086222A2 (en) Development of software systems
US20120266131A1 (en) Automatic program generation device, method, and computer program
Ergin et al. Design pattern oriented development of model transformations
Tisi et al. Improving higher-order transformations support in ATL
JP2007122135A (en) Development support device, development support method and development support program
Savic et al. Preliminary experience using JetBrains MPS to implement a requirements specification language
US7478370B2 (en) Relationship management for data modeling in an integrated development environment
JP2006285707A (en) Business specification creation support system and method
Colombo et al. A study for neutral format to exchange and reuse engineering knowledge in KBE applications
Cuadrado et al. Model Finding in the EMF Ecosystem.
JP2008225898A (en) Conversion device, conversion program, and conversion method
Lu et al. Zen-CC: An automated and incremental conformance checking solution to support interactive product configuration
Zhang et al. Automated Extraction of Grammar Optimization Rule Configurations for Metamodel-Grammar Co-evolution
JP6427687B2 (en) System design apparatus and method
Rahman et al. A DSL for importing models in a requirements management system
Anderson et al. Supporting analysis of SQL queries in PHP AiR
JP2010165205A (en) Template automatic generation system, method and program for model
JP2008198103A (en) State transition diagram preparing device and state transition diagram preparing method
CN107577476A (en) A kind of Android system source code difference analysis method, server and medium based on Module Division
CN114296726A (en) Code generation method and device, computer equipment and storage medium