JP6427687B2 - System design apparatus and method - Google Patents

System design apparatus and method Download PDF

Info

Publication number
JP6427687B2
JP6427687B2 JP2017547331A JP2017547331A JP6427687B2 JP 6427687 B2 JP6427687 B2 JP 6427687B2 JP 2017547331 A JP2017547331 A JP 2017547331A JP 2017547331 A JP2017547331 A JP 2017547331A JP 6427687 B2 JP6427687 B2 JP 6427687B2
Authority
JP
Japan
Prior art keywords
model
class
constraint
meta
system design
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017547331A
Other languages
Japanese (ja)
Other versions
JPWO2017072969A1 (en
Inventor
蘭 王
蘭 王
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Publication of JPWO2017072969A1 publication Critical patent/JPWO2017072969A1/en
Application granted granted Critical
Publication of JP6427687B2 publication Critical patent/JP6427687B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven

Description

本発明の実施形態は、システム設計装置及び方法に関する。   Embodiments of the present invention relate to a system design apparatus and method.

近年、システムの設計のために、UML(Unified Modeling Language)やSysML(System Modeling Language)などのモデリング言語が利用されている。UMLは、汎用モデリング言語であり、ソフトウェアの設計や、ソースコードの自動生成が可能である。SysMLは、UMLを拡張したものであり、UMLに対して、機能要求を定義する要求図(Requirement diagram)や、動的モデルを定義するパラメトリック図(Parametric diagram)が追加されている。SysMLを利用することにより、動的モデル(例えば、シミュレーションや最適計算のためのモデル)を設計することができる。   In recent years, modeling languages such as Unified Modeling Language (UML) and System Modeling Language (SysML) have been used for system design. UML is a general purpose modeling language, which enables software design and automatic generation of source code. SysML is an extension of UML, and a requirement diagram (Requirement diagram) for defining functional requirements and a parametric diagram (Parametric diagram) for defining a dynamic model are added to UML. By using SysML, it is possible to design a dynamic model (for example, a model for simulation or optimal calculation).

しかしながら、UMLやSysMLのモデルを記述する文法や仕様を定義するメタモデルの現状仕様は、下記の4つのモデル記述不足点を挙げられる。その1、要求モデルとその要求を満たす(Satisfy)等のモデル要素間の関係を定義する関係クラス(Trace)には、制約条件のあり・なしを区別して定義することはできない問題がある。その2、全てのモデル要素にバージョン情報を付与できない問題がある。その3、要求定義モデル定義には、要求間の分解関係、所謂、“OR”の論理和(Disjunction)関係を定義できない問題がある。その4、前記関係クラス(Trace)には、それぞれのモデル要素と要求間の関係の重み付けをできない問題がある。なお、関係クラス(Trace)及びその1、その3、その4については非特許文献1を参照し、その2は非特許文献2を参照する。   However, the current specification of the meta model that defines the grammar and specifications that describe the UML and SysML models can be listed as the following four model description deficiencies. First, there is a problem that it is not possible to distinguish between presence / absence of a constraint condition in a relation class (Trace) which defines a relation between model elements such as (Satisfy) which satisfies the request model and the request model. The second problem is that version information can not be assigned to all model elements. In the third requirement definition model definition, there is a problem that it is not possible to define a disjunction relationship between requirements, so-called disjunction of "OR". The fourth, the relation class (Trace) has a problem that it is not possible to weight the relation between each model element and the request. Note that Non-Patent Document 1 is referred to for the relationship class (Trace) and the part 1, part 3 and part 4, and the non-patent document 2 is referred to for the part 2.

特開2010−92228号公報JP, 2010-92228, A

OMG Systems Modeling Language Version1.3OMG Systems Modeling Language Version 1.3 ISO/IEC 19505-2:UML Superstructure version2.4ISO / IEC 19505-2: UML Superstructure version 2.4

モデリング言語のメタモデルを拡張定義することにより、モデリング言語による記述能力を高めることができるシステム設計装置及び方法を提供する。   Abstract: A system design apparatus and method capable of enhancing the description ability of a modeling language by defining a modeling language metamodel in an extended manner.

一実施形態に係るシステム設計装置は、メタモデル定義部と、モデル構築部と、スクリプトファイル生成部と、を備える。メタモデル定義部は、モデリング言語により記述された第1のメタモデルに基づいて、第2のメタモデルを生成する。第2のメタモデルは、第1のメタモデルと、制約条件を記述する制約条件クラスのメタモデルと、関係クラス(Trace)に対して、制約条件の有無を区別するため、前記制約条件クラスと関係クラス間の関連(Association)を定義するメタモデルと、を含む。モデル構築部は、第2のメタモデルに従ってモデルを構築する。スクリプトファイル生成部は、モデルに対応するスクリプトファイルを生成する。   A system design apparatus according to an embodiment includes a meta model definition unit, a model construction unit, and a script file generation unit. The meta model definition unit generates a second meta model based on the first meta model described by the modeling language. The second meta model is configured to distinguish the first meta model, the meta model of the constraint class describing the constraint, and the presence or absence of the constraint with respect to the relation class (Trace). And a meta model that defines an association between association classes. The model construction unit constructs a model according to the second meta model. The script file generation unit generates a script file corresponding to the model.

メタモデル、モデル、及びデータ(インスタンス)の関係を示す図。The figure which shows the relationship of a meta model, a model, and data (instance). クラス、属性、アトリビュートの関係を示す図。Diagram showing the relationship between classes, attributes, and attributes. システム設計装置の機能構成を示す図。The figure which shows the function structure of a system design apparatus. システム設計装置を構成するコンピュータの一例を示す図。The figure which shows an example of the computer which comprises a system design apparatus. 関係クラスのメタモデルの一例を示す図。The figure which shows an example of the metamodel of relation class. 第1の拡張方法により生成された拡張メタモデルに従って構築された拡張モデルの一例を示す図。The figure which shows an example of the extended model built according to the extended meta-model produced | generated by the 1st extension method. 第2の拡張方法により生成された拡張メタモデルの一例を示す図。The figure which shows an example of the extended meta-model produced | generated by the 2nd extended method. 第2の拡張方法により生成された拡張メタモデルに従って構築された拡張モデルの一例を示す図。The figure which shows an example of the extended model built according to the extended meta-model produced | generated by the 2nd extension method. 第3の拡張方法により生成された拡張メタモデルに従って構築された拡張モデルの一例を示す図。The figure which shows an example of the extended model built according to the extended meta-model produced | generated by the 3rd extension method. 第4の拡張方法により生成された拡張メタモデルに従って構築された拡張モデルの一例を示す図。The figure which shows an example of the extended model built according to the extended meta-model produced | generated by the 4th extended method. モデル記述言語の一例を示す図。The figure which shows an example of a model description language. スクリプトファイルの一例を示す図。The figure which shows an example of a script file. ユーザがモデル記述言語を選択可能なGUIの操作画面の一例を示す図。FIG. 7 is a view showing an example of an operation screen of a GUI which allows a user to select a model description language. 変更内容の分析処理の一例を示すフローチャート。The flowchart which shows an example of the analysis process of the contents of change. ユーザが更新対象を選択可能なGUIの操作画面の一例を示す図。FIG. 6 is a view showing an example of an operation screen of a GUI which allows the user to select an update target. 変換ルールの仕様の一例を示す図。The figure which shows an example of the specification of a conversion rule. 変換ルールの仕様の一例を示す図。The figure which shows an example of the specification of a conversion rule. モデル要素に対応するテーブルの一例を示す図。The figure which shows an example of the table corresponding to a model element. ユーザがテーブルを構築可能なGUIの操作画面の一例を示す図。The figure which shows an example of the operation screen of GUI which a user can build a table.

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

システム設計装置の実施形態について、図1〜図19を参照して説明する。まず、本実施形態におけるモデルの概念について説明する。   Embodiments of a system design apparatus will be described with reference to FIGS. First, the concept of the model in the present embodiment will be described.

図1は、メタモデル、モデル、及びデータ(インスタンス)の関係を示す図である。   FIG. 1 is a diagram showing the relationship between meta models, models, and data (instances).

メタモデル201は、モデル202を記述するための文法や仕様を定める上位モデルである。メタモデル201は、モデルのモデルと称される。定義例204は、クラスのメタモデルの定義の一例である。定義例204は、クラスには、名称が必須であり、属性(Property)及び操作(Operation)が定義されることを示している。   The meta model 201 is a high-order model that defines grammars and specifications for describing the model 202. The meta model 201 is called a model of a model. The definition example 204 is an example of a class meta model definition. The definition example 204 indicates that a class is required to have a name and that a property (Property) and an operation (Operation) are defined.

モデル202は、ソフトウェアなどのシステムの設計図に相当するものであり、要求図やブロック図などの各種の図(モデル要素)により構成される。モデル202は、メタモデル201の定義に従って構築される。定義例205は、定義例204に従って定義されたクラス(モデル)の定義の一例である。定義例205は、クラスの名称が「二輪車」であり、このクラスには属性として「色」及び「最高速度」が定義され、操作として「走る距離を計算()」が定義されていることを示している。   The model 202 corresponds to a design drawing of a system such as software, and is configured by various drawings (model elements) such as a requirement drawing and a block diagram. The model 202 is constructed according to the definition of the meta model 201. The definition example 205 is an example of the definition of a class (model) defined according to the definition example 204. In the definition example 205, the class name is "two-wheeled vehicle", "color" and "maximum speed" are defined as attributes in this class, and "calculate the running distance ()" is defined as the operation. It shows.

データ203は、モデル202の定義に従って定義された実際のデータである。定義例206は、定義例205に従って定義された二輪車クラスの実際のデータの定義の一例である。定義例206は、データの名称が「花子さんの二輪車」であり、「色」が赤、「最高速度」が50km/hであることを示している。   Data 203 is actual data defined according to the definition of model 202. The definition example 206 is an example of definition of actual data of a motorcycle class defined according to the definition example 205. The definition example 206 indicates that the name of the data is “Hanako's motorcycle”, “color” is red, and “maximum speed” is 50 km / h.

図2は、クラス、属性、アトリビュートの関係を示す図である。   FIG. 2 is a diagram showing the relationship between classes, attributes, and attributes.

上述の通り、クラスには、属性が定義される。クラス及び属性は、名称やデータ型などの定義項目を有する。以下、クラス及び属性の個々の定義項目をアトリビュートと称し、アトリビュートの集合をアトリビュートセットと称する。クラス及び属性は、それぞれのアトリビュートセットを用いて定義される。   As described above, an attribute is defined in a class. Classes and attributes have definition items such as names and data types. Hereinafter, individual definition items of classes and attributes are referred to as attributes, and a set of attributes is referred to as an attribute set. Classes and attributes are defined using their respective attribute sets.

図2の例では、クラス301は、ID,Name,descriptionなどのアトリビュートを含むアトリビュートセット303を用いて定義される。具体的には、クラス301のエンティティ302は、アトリビュートセット303により定義される。   In the example of FIG. 2, the class 301 is defined using an attribute set 303 including attributes such as ID, Name, and description. Specifically, an entity 302 of class 301 is defined by attribute set 303.

また、クラス301の属性は、ID,Name,descriptionなどのアトリビュートを含むアトリビュートセット305を用いて定義される。具体的には、クラス301の属性のエンティティ304は、アトリビュートセット305により定義される。   Also, the attributes of the class 301 are defined using an attribute set 305 including attributes such as ID, Name, description and the like. Specifically, the entity 304 of the attribute of the class 301 is defined by the attribute set 305.

なお、図2のアトリビュートセット303,304に含まれるversionは、本実施形態に係るシステム設計装置により新たに定義可能となったアトリビュートである。versionについて、詳しくは後述する。   The versions included in the attribute sets 303 and 304 in FIG. 2 are attributes that can be newly defined by the system design apparatus according to the present embodiment. Details of version will be described later.

次に、本実施形態に係るシステム設計装置について、図3を参照して説明する。図3は、システム設計装置の機能構成を示す図である。図3に示すように、システム設計装置は、メタモデル定義部1と、モデル構築部2と、モデル記述言語生成部3と、スクリプトファイル生成部4と、動的モデル実行部5と、変更分析部6と、モデル更新部7と、変換ルール生成部8と、テーブル構築部9と、DB(データベース)10と、を備える。   Next, a system design apparatus according to the present embodiment will be described with reference to FIG. FIG. 3 is a diagram showing a functional configuration of the system design apparatus. As shown in FIG. 3, the system design apparatus includes a meta model definition unit 1, a model construction unit 2, a model description language generation unit 3, a script file generation unit 4, a dynamic model execution unit 5, and change analysis. A section 6, a model updating section 7, a conversion rule generating section 8, a table construction section 9, and a DB (database) 10.

メタモデル定義部1は、入力された既存メタモデル(第1のメタモデル)に基づいて、拡張メタモデル(第2のメタモデル)を生成する。既存メタモデルとは、UMLやSysMLで記述されるモデルの、記述仕様を定義する既存のメタモデルのことである。拡張メタモデルとは、既存メタモデルを拡張定義したメタモデルのことである。メタモデル定義部1は、既存メタモデルにクラスや属性を拡張定義することにより、拡張メタモデルを生成する。   The meta model definition unit 1 generates an extended meta model (second meta model) based on the input existing meta model (first meta model). The existing meta model is an existing meta model that defines a description specification of a model described in UML or SysML. The extension meta model is a meta model that is an extension definition of an existing meta model. The meta model definition unit 1 generates an extended meta model by defining classes and attributes in the existing meta model.

モデル構築部2は、メタモデル定義部1が生成した拡張メタモデルに従って、モデルを構築(定義)する。以下、モデル構築部2が構築したモデルを、拡張モデルと称する。モデル構築部2は、拡張モデルを編集することができる。   The model construction unit 2 constructs (defines) a model in accordance with the extended meta model generated by the meta model definition unit 1. Hereinafter, the model constructed by the model construction unit 2 is referred to as an extended model. The model construction unit 2 can edit the extension model.

モデル記述言語生成部3は、メタモデル定義部1が生成した拡張メタモデルに基づいて、モデル記述言語を生成する。モデル記述言語は、拡張メタモデルに従って定義された拡張モデルを、実行可能なスクリプト言語として記述するための記述様式を定義したものである。   The model description language generation unit 3 generates a model description language based on the extended meta model generated by the meta model definition unit 1. The model description language defines a description style for describing an extended model defined according to the extended meta model as an executable script language.

スクリプトファイル生成部4は、モデル構築部2が構築した拡張モデルと、モデル記述言語生成部3が生成したモデル記述言語と、に基づいて、拡張モデルに対応する、実行可能なスクリプトファイル(Script File)を生成する。   The script file generation unit 4 is an executable script file (Script File) corresponding to the expansion model based on the expansion model constructed by the model construction unit 2 and the model description language generated by the model description language generation unit 3. Generate).

動的モデル実行部5は、スクリプトファイル生成部4が生成したスクリプトファイルを実行する。スクリプトファイルの実行は、拡張モデルの実行に相当する。   The dynamic model execution unit 5 executes the script file generated by the script file generation unit 4. The execution of the script file corresponds to the execution of the extension model.

変更分析部6は、モデル構築部2により編集された拡張モデルの変更内容を分析する。   The change analysis unit 6 analyzes the change contents of the extended model edited by the model construction unit 2.

モデル更新部7は、変更分析部6による変更内容の分析結果に基づいて、拡張モデルを更新する。   The model update unit 7 updates the extended model based on the analysis result of the change content by the change analysis unit 6.

変換ルール生成部8は、モデル構築部2が構築した拡張モデルを、リレーショナルDBに格納するための変換ルールを生成する。   The conversion rule generation unit 8 generates a conversion rule for storing the extended model constructed by the model construction unit 2 in a relational DB.

テーブル構築部9は、変換ルール生成部8が生成した変換ルールに従って、拡張モデルに対応するテーブルを構築する。   The table construction unit 9 constructs a table corresponding to the extended model in accordance with the conversion rule generated by the conversion rule generation unit 8.

DB10は、テーブル構築部9が構築したテーブルを格納するリレーショナルデータベースである。   The DB 10 is a relational database that stores the table constructed by the table construction unit 9.

なお、システム設計装置の各機能構成について、詳しくは後述する。   The details of each functional configuration of the system design device will be described later.

次に、本実施形態に係るシステム設計装置のハードウェア構成について、図4を参照して説明する。本実施形態に係るシステム設計装置は、コンピュータ100により構成される。コンピュータ100には、サーバ、クライアント、マイコン、及び汎用コンピュータなどが含まれる。   Next, the hardware configuration of the system design apparatus according to the present embodiment will be described with reference to FIG. The system design apparatus according to the present embodiment is configured by a computer 100. The computer 100 includes a server, a client, a microcomputer, and a general-purpose computer.

図4は、コンピュータ100の一例を示す図である。図4のコンピュータ100は、CPU(中央演算装置)101と、入力装置102と、表示装置103と、通信装置104と、記憶装置105と、を備える。プロセッサ101、入力装置102、表示装置103、通信装置104、及び記憶装置105は、バス106により相互に接続されている。   FIG. 4 is a diagram illustrating an example of the computer 100. The computer 100 in FIG. 4 includes a CPU (central processing unit) 101, an input device 102, a display device 103, a communication device 104, and a storage device 105. The processor 101, the input device 102, the display device 103, the communication device 104, and the storage device 105 are mutually connected by a bus 106.

プロセッサ101は、コンピュータ100の制御装置及び演算装置を含む電子回路である。プロセッサ101は、バス106を介して接続された各装置(例えば、入力装置102、通信装置104、記憶装置105)から入力されたデータやプログラムに基づいて演算処理を行い、演算結果や制御信号を、バス106を介して接続された各装置(例えば、表示装置103、通信装置104、記憶装置105)に出力する。具体的には、プロセッサ101は、コンピュータ100のOS(オペレーティングシステム)や、システム設計プログラムなどを実行し、コンピュータ100を構成する各装置を制御する。   The processor 101 is an electronic circuit including a control device and a computing device of the computer 100. The processor 101 performs arithmetic processing based on data and programs input from respective devices (for example, the input device 102, the communication device 104, and the storage device 105) connected via the bus 106, and calculates arithmetic results and control signals. , And to each device connected via the bus 106 (for example, the display device 103, the communication device 104, and the storage device 105). Specifically, the processor 101 executes an OS (Operating System) of the computer 100, a system design program, and the like to control each of the devices constituting the computer 100.

システム設計プログラムとは、コンピュータ100に、システム設計装置の上述の各機能構成を実現させるプログラムである。システム設計プログラムは、一時的でない有形のコンピュータ読み取り可能な記憶媒体に記憶される。上記の記憶媒体は、例えば、光ディスク、光磁気ディスク、磁気ディスク、磁気テープ、フラッシュメモリ、半導体メモリであるが、これに限られない。プロセッサ101がシステム設計プログラムを実行することにより、コンピュータ100がシステム設計装置として機能する。   The system design program is a program that causes the computer 100 to realize the above-described functional configurations of the system design apparatus. The system design program is stored in a non-transitory tangible computer readable storage medium. The above storage medium is, for example, an optical disk, a magneto-optical disk, a magnetic disk, a magnetic tape, a flash memory, or a semiconductor memory, but is not limited thereto. The processor 101 executes a system design program, whereby the computer 100 functions as a system design device.

入力装置102は、コンピュータ100に情報を入力するための装置である。入力装置102は、例えば、キーボード、マウス、及びタッチパネルであるが、これに限られない。ユーザは、入力装置102を用いることにより、既存メタモデルなどの情報を入力することができる。   The input device 102 is a device for inputting information to the computer 100. The input device 102 is, for example, a keyboard, a mouse, and a touch panel, but is not limited thereto. The user can input information such as an existing meta model by using the input device 102.

表示装置103は、画像や映像を表示するための装置である。表示装置103は、例えば、LCD(液晶ディスプレイ)、CRT(ブラウン管)、及びPDP(プラズマディスプレイ)であるが、これに限られない。表示装置103は、システム設計装置に入力されたデータ(既存メタモデルなど)、システム設計装置により生成されたデータ(拡張メタモデル、拡張モデル、モデル記述言語、及びスクリプトファイルなど)、及びユーザがシステム設計装置を操作するためのGUI(Graphical User Interface)などを表示する。   The display device 103 is a device for displaying an image or a video. The display device 103 is, for example, an LCD (Liquid Crystal Display), a CRT (Brown Tube), and a PDP (Plasma Display), but is not limited thereto. The display device 103 includes data input to the system design device (such as an existing meta model), data generated by the system design device (such as an extended meta model, an extended model, a model description language, and a script file), and a user A graphical user interface (GUI) or the like for operating the design device is displayed.

通信装置104は、コンピュータ100が外部装置と無線又は有線で通信するための装置である。通信装置104は、例えば、モデム、ハブ、及びルータであるが、これに限られない。   The communication device 104 is a device for the computer 100 to communicate with an external device wirelessly or by wire. The communication device 104 is, for example, a modem, a hub, and a router, but is not limited thereto.

記憶装置105は、コンピュータ100のOSや、システム設計プログラム、システム設計プログラムの実行に必要なデータ、及びシステム設計プログラムの実行により生成されたデータなどを記憶する記憶媒体である。記憶装置105には、主記憶装置と外部記憶装置とが含まれる。主記憶装置は、例えば、RAM、DRAM、SRAMであるが、これに限られない。また、外部記憶装置は、例えば、ハードディスク、光ディスク、フラッシュメモリ、及び磁気テープであるが、これに限られない。DB10は、記憶装置105上に構築されてもよいし、外部のサーバ上に構築されてもよい。   The storage device 105 is a storage medium that stores an OS of the computer 100, a system design program, data necessary for executing the system design program, data generated by execution of the system design program, and the like. The storage device 105 includes a main storage device and an external storage device. The main storage device is, for example, a RAM, a DRAM, or an SRAM, but is not limited thereto. Also, the external storage device is, for example, a hard disk, an optical disk, a flash memory, and a magnetic tape, but is not limited thereto. The DB 10 may be built on the storage device 105 or may be built on an external server.

なお、コンピュータ100は、プロセッサ101、入力装置102、表示装置103、通信装置104、及び記憶装置105を、それぞれ1つ又は複数備えてもよいし、プリンタやスキャナなどの周辺機器を接続されていてもよい。   The computer 100 may include one or more of the processor 101, the input device 102, the display device 103, the communication device 104, and the storage device 105, and peripheral devices such as a printer and a scanner are connected. It is also good.

また、システム設計装置は、単一のコンピュータ100により構成されてもよいし、相互に接続された複数のコンピュータ100からなるシステムとして構成されてもよい。   The system design apparatus may be configured by a single computer 100 or may be configured as a system consisting of a plurality of computers 100 connected to one another.

さらに、システム設計プログラムは、コンピュータ100の記憶装置105に予め記憶されていてもよいし、コンピュータ100の外部の記憶媒体に記憶されていてもよいし、インターネット上にアップロードされていてもよい。いずれの場合も、システム設計プログラムをコンピュータ100にインストールして実行することにより、システム設計装置の機能が実現される。   Furthermore, the system design program may be stored in advance in the storage device 105 of the computer 100, may be stored in a storage medium external to the computer 100, or may be uploaded onto the Internet. In either case, the system design program is installed in the computer 100 and executed to implement the functions of the system design apparatus.

以下、システム設計装置の各機能構成について、図5〜図19を参照して詳細に説明する。   Hereinafter, each functional configuration of the system design device will be described in detail with reference to FIGS.

(メタモデル定義部1及びモデル構築部2)
メタモデル定義部1による既存メタモデルの拡張方法(拡張メタモデルの生成方法)について説明する。以下では、4つの拡張方法について、それぞれ説明する。
(Meta-model definition part 1 and model construction part 2)
A method of extending an existing meta model (a method of generating an extended meta model) by the meta model definition unit 1 will be described. Each of the four expansion methods will be described below.

(第1の拡張方法)
一般に、メタモデルには、要求図と、他の図(ブロック図(Block diagram)やパラメトリック図)と、の間の関係を定義する関係クラス(Trace)のメタモデルが設けられている。
(First expansion method)
In general, a meta model is provided with a meta model of a relation class (Trace) that defines a relation between a requirement diagram and another diagram (block diagram or parametric diagram).

図5は、関係クラスのメタモデルの一例を示す図である。図5の例では、既存メタモデルとして、関係クラス(Trace)401とその下位クラスとして、DerivedReqt,Copy,Verify,Satisfyが設けられている。Satisfy(以下、「満たす関係」という)は、要求と、その要求を満足させるモデル要素と、の関係を示している。   FIG. 5 is a diagram showing an example of the meta model of the relation class. In the example of FIG. 5, a relationship class (Trace) 401 and its subordinate classes, DerivedReqt, Copy, Verify, and Satisfy, are provided as the existing meta-model. Satisfy (hereinafter, referred to as “meeting relationship”) indicates the relationship between a requirement and a model element that satisfies the requirement.

従来、満たす関係では、モデル要素が満足させる要求に対して、制約条件があるか否か区別できなかった。そこで、第1の拡張方法では、メタモデル定義部1は、図5に402示すように、制約条件クラス(Condition)のメタモデルを定義(追加)し、関係クラスに対する制約条件の有無を区別するため、制約条件クラスと関係クラス間の関連のメタモデルを拡張定義する。制約条件クラス(Condition)は、要求に対する制約条件を記述するためのクラスである。   Conventionally, in the satisfying relationship, it was not possible to distinguish whether there is a constraint or not with respect to the requirements satisfied by the model element. Therefore, in the first extension method, the metamodel definition unit 1 defines (adds) the metamodel of the constraint class (Condition) as shown in FIG. 5 402, and distinguishes the presence or absence of the constraint on the relation class. In order to extend and define the relationship metamodel between the constraint class and the relationship class. The constraint condition class (Condition) is a class for describing a constraint condition for a requirement.

図5の例では、制約条件クラス402のアトリビュートセット(Condition_attribute)には、制約条件の可変性(constantCondition)と、名称(Name)と、制約条件の種類(Type)と、が含まれる。   In the example of FIG. 5, the attribute set (Condition_attribute) of the constraint class 402 includes the variability of the constraint (constant Condition), the name (Name), and the type of the constraint (Type).

制約条件の可変性は、boolean型であり、例えば、時間軸に不変な場合(すなわち、経時的に変化しない場合)にTrue、それ以外の場合にFalseと定義される。   The variability of the constraint is a boolean type, and is defined as, for example, True if it is invariant to the time axis (ie, it does not change with time), and False otherwise.

制約条件の種類は、ConditionType(選択肢型)であり、選択肢として、pre_cal_condition,pre_env_condition,trigger,post_cal_condition,post_env_condition,functional_typeを含んでいる。   The type of constraint is ConditionType (choice type), and includes pre_cal_condition, pre_env_condition, trigger, post_cal_condition, post_env_condition, functional_type as choices.

このように、メタモデル定義部1が制約条件クラスのメタモデルを拡張定義することにより、既存メタモデルと、制約条件を記述する制約条件クラスのメタモデルと、要求とその要求を満たす等のためのモデル要素間との関係を定義する関係クラス(Trace)に対して、制約条件の有無を区別するため、制約条件クラスと関係クラス間の関連(Association)を定義するメタモデルと、を含む拡張メタモデルが生成される。なお、制約条件クラスの属性及びアトリビュートは、図5の例に限られず、任意に設計可能である。   As described above, the metamodel definition unit 1 extends and defines the metamodel of the constraint class so that the existing metamodel, the metamodel of the constraint class describing the constraint, and the requirement and the requirement are satisfied. An extension that includes a constraint class and a meta model that defines an association between association classes (Trace) for defining the relationship between model elements of the class and the presence or absence of constraints. A metamodel is generated. The attributes and attributes of the constraint class are not limited to the example of FIG. 5 and can be designed arbitrarily.

図6は、第1の拡張方法により生成された拡張メタモデルに従って構築された拡張モデルの一例を示す図である。図6の例では、要求図501とブロック図503との間には、制約条件付きの満たす関係(satisfyWithCondition)502が定義されている。制約条件付きの満たす関係502は、制約条件クラス504(Condition1)を参照している。制約条件クラス504(Condition1)には、各属性の名称、属性の説明、及び制約条件が記述されている。また、制約条件クラス504は、計算を行うパラメトリック図505を参照している。   FIG. 6 is a diagram showing an example of an extension model constructed according to the extension meta model generated by the first extension method. In the example of FIG. 6, a satisfying relationship with constraints (satisfyWithCondition) 502 is defined between the requirement diagram 501 and the block diagram 503. The constrained satisfaction relationship 502 refers to the constraint class 504 (Condition 1). The constraint class 504 (Condition 1) describes the name of each attribute, the description of the attribute, and the constraint. The constraint class 504 also refers to a parametric diagram 505 that performs calculations.

パラメトリック図505は、入力(l,t,v)と、出力(a)と、計算式と、を定義している。計算式は、例えば、MathML(Mathematical Markup Language)により記述される。   The parametric diagram 505 defines an input (l, t, v), an output (a), and a formula. The calculation formula is described by, for example, MathML (Mathematical Markup Language).

このように、第1の拡張方法により生成された拡張メタモデルを用いることにより、モデル構築部2は、制約条件がない満たす関係(satisfy)と、制約条件付きの満たす関係(satisfyWithCondition)と、がそれぞれ定義された拡張モデルを構築することができる。これにより、各要求に対して、制約条件があるか否か区別したり、制約条件の内容を定義したりすることができる。   As described above, by using the extended meta model generated by the first extension method, the model construction unit 2 can satisfy the satisfying relationship (satisfy) without a constraint and the satisfying relationship (satisfyWithCondition) with a constraint. It is possible to construct an extension model defined each. In this way, for each request, it can be distinguished whether or not there is a constraint, and the content of the constraint can be defined.

(第2の拡張方法)
第2の拡張方法では、メタモデル拡張部1は、既存メタモデルの最上位クラスのメタモデルのアトリビュートに、メタモデルのバージョン情報を拡張定義(追加)する。これにより、最上位クラスのメタモデルのアトリビュートにバージョン情報が含まれた拡張メタモデルが生成される。
(Second expansion method)
In the second extension method, the metamodel extension unit 1 defines (adds) extension information of the metamodel version to the attribute of the top class metamodel of the existing metamodel. This generates an extended meta model in which the attributes of the top class meta model include version information.

図7は、第2の拡張方法により生成された拡張メタモデルの一例を示す図である。図7において、最上位クラスは、Classifierであり、その下位クラスとして、Datatype,Class,Associationなどが既存メタモデルに定義されている。第2の拡張方法によってClassifierには、アトリビュートとしてバージョン情報(version)が拡張定義されている。   FIG. 7 is a diagram showing an example of the expanded meta-model generated by the second expansion method. In FIG. 7, the top class is a Classifier, and as its lower class, Datatype, Class, Association, etc. are defined in the existing meta model. In the second extension method, version information (version) is defined as an attribute in Classifier as an attribute.

図8は、第2の拡張方法により生成された拡張メタモデルに従って構築された拡張モデルの一例を示す図である。図8に示すように、拡張モデルの各モデル要素501〜505には、いずれもバージョン情報が記載されている。これは、最上位クラスに追加定義されたバージョン情報が継承されたためである。また、501〜505に定義する各要素、例えば、504に定義する属性の“airPressure”にもバージョン情報を定義できる。記述例は、図12の行10に示す。   FIG. 8 is a diagram showing an example of an extension model constructed according to the extension meta model generated by the second extension method. As shown in FIG. 8, version information is described in each of the model elements 501 to 505 of the extended model. This is because the version information additionally defined in the top level class is inherited. Also, version information can be defined in each of the elements defined in 501 to 505, for example, the "airPressure" of the attribute defined in 504. A description example is shown in line 10 of FIG.

このように、第2の拡張方法により生成された拡張メタモデルを用いることにより、モデル構築部2は、各モデル要素がバージョン情報を有する拡張モデルを構築することができる。これにより、拡張モデルの更新や管理を効率的に行うことができる。   Thus, by using the extended meta model generated by the second extension method, the model construction unit 2 can build an extended model in which each model element has version information. This makes it possible to efficiently update and manage the extension model.

(第3の拡張方法)
第3の拡張方法では、メタモデル定義部1は、分解関係クラス(Decompose)のメタモデルを拡張定義(追加)する。分解関係クラスは、要求の分解関係(論理和)を定義するクラスであり、図5に示すように、関係クラスの下位クラスとして追加される。これにより、既存メタモデルと、分解関係クラスのメタモデルと、を含む拡張メタモデルが生成される。
(Third expansion method)
In the third extension method, the meta model definition unit 1 defines (adds) an extension meta model of the decomposition relation class (Decompose). The decomposition relation class is a class that defines the decomposition relation (logical sum) of the request, and as shown in FIG. 5, is added as a subclass of the relation class. This generates an extended meta model that includes the existing meta model and the meta model of the decomposition relationship class.

図9は、第3の拡張方法により生成された拡張メタモデルに従って構築された拡張モデルの一例を示す図である。図9の例では、要求4201(Re1)は、要求4202(Re2)と、要求4203(Re3)と、に分解されている。これは、要求4201は、要求4202又は要求4203を満足することにより、満たされることを示している。   FIG. 9 is a diagram showing an example of an extended model constructed according to the extended meta model generated by the third expansion method. In the example of FIG. 9, the request 4201 (Re1) is decomposed into the request 4202 (Re2) and the request 4203 (Re3). This indicates that the request 4201 is satisfied by satisfying the request 4202 or 4203.

このように、第3の拡張方法により生成された拡張メタモデルを用いることにより、モデル構築部2は、要求の分解関係が定義された拡張モデルを構築することができる。   As described above, by using the extended meta model generated by the third extension method, the model construction unit 2 can build the extended model in which the decomposition relation of the request is defined.

(第4の拡張方法)
第4の拡張方法では、メタモデル定義部1は、図5に示すように、貢献度クラス(Contribution)のメタモデルを拡張定義(追加)する。貢献度クラスは、DerivedReqt,Copy,Verify,Satisfy,satisfyWithCondition,Decomposeなどの各関係の貢献度を定義するクラスであり、図5に示すように、関係クラスに関連づけられる。貢献度クラスには、属性として、重み(Weight)が定義される。重みは、例えば、各関係の変更コストであるが、これに限られない。これにより、既存メタモデルと、貢献度クラスと、を含む拡張メタモデルが生成される。
(Fourth extension method)
In the fourth extension method, as shown in FIG. 5, the metamodel definition unit 1 extends (adds) the metamodel of the contribution degree class (Contribution). The contribution degree class is a class that defines the contribution degree of each relation such as DerivedReqt, Copy, Verify, Satisfy, satisfyWithCondition, Decompose, etc., and is associated with the relation class as shown in FIG. In the contribution degree class, Weight is defined as an attribute. The weight is, for example, a change cost of each relationship, but is not limited to this. This generates an extended meta model including the existing meta model and the contribution degree class.

図10は、第4の拡張方法により生成された拡張メタモデルに従って構築された拡張モデルの一例を示す図である。図10において、xは分解関係4204の重みであり、yは分解関係4205の重みである。また、mは、機能ブロック4206(Block2)と要求4203(Re3)と、の間の満たす関係4207の重みであり、nは、機能ブロック4208(Block3)と要求4203(Re3)と、の間の満たす関係4209の重みである。各重みは、任意に設定可能である。重みは、例えば、1以上10以下の整数の中から選択可能であってもよい。   FIG. 10 is a diagram showing an example of an extension model constructed according to the extension meta model generated by the fourth extension method. In FIG. 10, x is a weight of the decomposition relationship 4204 and y is a weight of the decomposition relationship 4205. Also, m is a weight of a satisfying relationship 4207 between the functional block 4206 (Block 2) and the request 4203 (Re 3), and n is a function between the functional block 4208 (Block 3) and the request 4203 (Re 3) It is a weight of the relation 4209 which is satisfied. Each weight can be set arbitrarily. The weight may be selectable, for example, from an integer of 1 or more and 10 or less.

このように、第4の拡張方法により生成された拡張メタモデルを用いることにより、モデル構築部2は、各関係の重みが定義された拡張モデルを構築することができる。重みとして、各関係の変更コストを定義すると、モデルの変更コストを容易に計算し、変更の管理効率を向上させることができる。   As described above, by using the extended meta model generated by the fourth extension method, the model construction unit 2 can build an extended model in which the weight of each relationship is defined. By defining the change cost of each relationship as a weight, it is possible to easily calculate the change cost of the model and improve the change management efficiency.

なお、メタモデル定義部1は、上述の第1の拡張方法乃至第4の拡張方法を、個々に利用してもよいし、2つ以上組み合わせて利用してもよい。   The meta model definition unit 1 may use the first to fourth expansion methods described above individually or in combination of two or more.

また、メタモデル定義部1及びモデル構築部2は、既存メタモデル、拡張メタモデル、拡張モデルなどを、表示装置103により表示させてもよい。さらに、モデル構築部2は、既存メタモデルに従ってモデルを構築し、構築したモデルを表示装置103により表示させてもよい。   In addition, the meta model definition unit 1 and the model construction unit 2 may cause the display device 103 to display the existing meta model, the extended meta model, the extended model, and the like. Furthermore, the model construction unit 2 may construct a model according to the existing meta model, and cause the display device 103 to display the constructed model.

(モデル記述言語生成部3)
モデル記述言語生成部3は、拡張メタモデルに基づいて、モデル記述言語を生成する。以下では、モデル記述言語を、MTL4Sys(Model Transformation Language for SysML)と称する。図11は、MTL4Sysの一例を示す図である。以下、図11のMTL4Sysの各行について説明する。
(Model Description Language Generator 3)
The model description language generation unit 3 generates a model description language based on the extended meta model. The model description language is hereinafter referred to as MTL4Sys (Model Transformation Language for SysML). FIG. 11 is a diagram illustrating an example of the MTL 4 Sys. Hereinafter, each line of MTL 4 Sys in FIG. 11 will be described.

第1行は、各要求図を、要求型のクラスとして記述することを定義している。   The first line defines that each request diagram is described as a request type class.

第2行は、各ブロック図を、ブロック型のクラスとして記述することを定義している。   The second line defines that each block diagram is described as a block type class.

第3行は、要求クラスと、ブロッククラスと、の間の関係を、満たす関係(satisfy)又は条件付きの満たす関係(satisfyWithConstraint)として記述することを定義している。第3行において、条件付きの満たす関係は、参照先となる制約条件クラスのID、例えばCondition1と共に定義されている。   The third line defines that the relationship between the request class and the block class is described as a satisfying relationship (satisfy) or a conditional satisfying relationship (satisfyWithConstraint). In line 3, the conditional satisfaction relationship is defined along with the ID of the constraint class to which it refers, eg Condition1.

第4行は、制約条件を、制約条件クラスとして記述することを定義している。   The fourth line defines that the constraint is described as a constraint class.

第5行は、制約条件のアトリビュート(定義項目)を、制約条件クラスの属性(property)として記述することを定義している。   The fifth line defines that the constraint attribute (definition item) is described as a constraint class attribute (property).

第6行は、制約条件のconstantTypeアトリビュートを、制約条件クラスのconstantType属性として記述することを定義している。   The sixth line defines that the constantType attribute of the constraint is described as the constantType attribute of the constraint class.

第7行は、制約条件のTypeアトリビュートを、制約条件クラスのconditionTypeのアトリビュートとして記述することを定義している。   The seventh line defines that the constraint Type attribute is described as an attribute of the constraint class conditionType.

第8行は、操作(operation)などを記述するパラメトリック図を、機能(Function)クラスとして記述することを定義している。   The eighth line defines that a parametric diagram describing an operation or the like is described as a Function class.

第9行は、操作の入力(input)を、機能クラスのパラメータとして記述することを定義している。   Line 9 defines that the operation input (input) is described as a function class parameter.

第10行は、操作の出力(output)を、機能クラスの出力(return)として記述することを定義している。   Line 10 defines that the output of the operation is described as the return of the function class.

第11行は、操作の事前計算数式(formula.preCal)を、パラメータ及び事前計算条件(pre_cal_condition)を用いる機能クラスの事前計算数式とし、事前計算結果をpre_resultとして記述することを定義している。   The eleventh line defines that the operation pre-calculation formula (formula.preCal) is a pre-calculation formula of a function class using parameters and pre-calculation conditions (pre_cal_condition), and the pre-calculation result is described as pre_result.

第12行は、操作の計算数式(formula)は、パラメート及び事前計算結果(pre_result)を用いる機能クラスの計算数式とし、計算結果をresultとして記述することを定義している。   The 12th line defines that the calculation formula (formula) of the operation is a calculation formula of the function class using the parameters and the pre-calculation result (pre_result), and the calculation result is described as the result.

第13行は、操作の事後計算数式を、パラメータ及び事前計算条件を用いる機能クラスの事後計算数式とし、事後計算結果をafter_resultとして記述することを定義している。   The thirteenth line defines that the post-calculation formula of the operation is a post-calculation formula of a function class using parameters and pre-calculation conditions, and the post-calculation result is described as after_result.

第14行は、UMLの全てのモデル要素に付与するバージョン情報(version)を、対応するモデル要素のバージョン情報として記述することを定義している。   The 14th line defines that version information (version) given to all model elements of UML is described as version information of the corresponding model element.

このように、MTL4Sysでは、スクリプト言語による拡張モデルの記述仕様が定義されている。モデル記述言語生成部3は、拡張メタモデルに基づいて、このようなMTL4Sysを自動的に生成することができる。   Thus, in MTL4Sys, a description specification of an extension model by script language is defined. The model description language generation unit 3 can automatically generate such MTL4Sys based on the extended meta model.

なお、モデル記述言語生成部3は、こうして生成したMTL4Sysを、表示装置103に表示させてもよい。   The model description language generation unit 3 may cause the display device 103 to display the MTL 4 Sys generated in this manner.

(スクリプトファイル生成部4)
図12は、スクリプトファイル生成部4により生成されたスクリプトファイルの一例を示す図である。図12のスクリプトファイルは、図6の拡張モデルに対応している。以下、図12のスクリプトファイルの各行について説明する。
(Script file generation unit 4)
FIG. 12 is a view showing an example of a script file generated by the script file generation unit 4. The script file of FIG. 12 corresponds to the extended model of FIG. Hereinafter, each line of the script file of FIG. 12 will be described.

第行1は、このスクリプトファイルの記述仕様(MTL4Sys)と、そのバージョン情報(version)と、を記述する。   The first line 1 describes the description specification (MTL4Sys) of this script file and its version information (version).

第2行〜第4行は、要求図501を記述している。   The second to fourth lines describe the request diagram 501.

第5行〜第8行は、ブロック図503を記述している。   The fifth to eighth lines describe a block diagram 503.

第9行〜第29行は、制約条件クラス504と、パラメトリック図505と、を記述している。具体的には、以下の通りである。   Lines 9 to 29 describe the constraint class 504 and the parametric diagram 505. Specifically, it is as follows.

第9行は、制約条件クラスを定義している。   Line 9 defines the constraint class.

第10行〜第14行は、制約条件クラス504のairPressure属性を定義している。より詳細には、第11行は、airPressure属性のconstantTypeの値を記述し、第12行は、conditionTypeの値を記述し、第13行は、制約値及び単位を記述している。   Lines 10 to 14 define the airPressure attribute of the constraint class 504. More specifically, the 11th line describes the value of constantType of the airPressure attribute, the 12th line describes the value of the conditionType, and the 13th line describes the constraint value and the unit.

第15行〜第20行は、制約条件クラス504の属性lを定義している。より詳細には、第15行は、属性lの名称(name)、名称言語(lang)、及びidを定義している。第16行は、属性lのアトリビュートdescriptionの値を記述している。第17行は、アトリビュートconstantTypeの値(false)を記述している。第18行は、アトリビュートconditionTypeの値(pre_cal_condition)を記述している。第19行は、制約条件(>1000)と、その単位(m)と、を記述している。   Lines 15 to 20 define an attribute l of the constraint class 504. More specifically, line 15 defines the name (name), name language (lang), and id of the attribute l. The sixteenth line describes the value of the attribute description of the attribute l. The 17th line describes the value (false) of the attribute constantType. The eighteenth line describes the value (pre_cal_condition) of the attribute conditionType. Line 19 describes the constraint (> 1000) and its unit (m).

第21行及び第22行は、それぞれ、制約条件クラス504のアトリビュートt,vを記述する概要を示す。アトリビュートt,vの記述仕様は、第15行〜第20行に示す属性lの記述仕様と同様である。   Lines 21 and 22 show an outline describing attributes t and v of the constraint class 504, respectively. The description specifications of the attributes t and v are the same as the description specifications of the attribute l shown in lines 15 to 20.

第23行〜第28行は、パラメトリック図505を記述している。より詳細には、第23行は、パラメトリック図505のクラスを定義し、第24行は、パラメトリック図505の入力パラメータを記述している。第24行では、各パラメータを定義するアトリビュートのIDが用いられている。   Lines 23 to 28 describe the parametric diagram 505. More specifically, line 23 defines the class of parametric diagram 505 and line 24 describes the input parameters of parametric diagram 505. The 24th line uses the ID of the attribute that defines each parameter.

第25行は、パラメトリック図505の出力を記述している。第26行及び第27は、数式を定義するformulaの例を記述している。第26行では、MathMLを利用して数式formula1が直接記述され、第27行では、別途定義された数式(Math1)のIDを参照している。図12の例では、参照する数式Math1は、第30行で定義されている。数式を定義するformulaは、第26行と第27行のいずれかの仕様を利用して記述する。   The 25th line describes the output of the parametric diagram 505. Lines 26 and 27 describe an example of a formula that defines a formula. The 26th line directly describes the formula formula1 using MathML, and the 27th line refers to the ID of a separately defined formula (Math1). In the example of FIG. 12, the reference equation Math1 is defined in line 30. Formulas defining formulas are described using the specifications on either line 26 or line 27.

スクリプトファイル生成部4は、MTL4Sysと、拡張モデルと、に基づいて、上記のようなスクリプトファイルを自動的に生成することができる。スクリプトファイル生成部4が生成したスクリプトファイルは、動的モデル実行部5により実行される。動的モデル実行部5は、スクリプトファイルを実行する際、スクリプトファイルの実行過程や実行結果を、表示装置103に表示させてもよい。   The script file generation unit 4 can automatically generate the script file as described above based on the MTL 4 Sys and the extension model. The script file generated by the script file generation unit 4 is executed by the dynamic model execution unit 5. When executing the script file, the dynamic model execution unit 5 may cause the display device 103 to display the execution process and the execution result of the script file.

なお、各モデル要素のバージョン情報は省略されてもよい。その際は、ディフォールトのバージョン情報として、例えば、第1行におけるMTLSysのバージョン情報を利用することが出来る。また、スクリプトファイル生成部4は、こうして生成したスクリプトファイルを、表示装置103に表示させてもよい。さらに、図12の例では、スクリプトファイルは、XML(eXtensible Markup Language)形式を利用して記述されているが、RDF(Resource Description Framework)などの、他のモデル記述言語(記述形式)を用いて記述されてもよい。   The version information of each model element may be omitted. At that time, for example, the MTLSys version information in the first line can be used as the default version information. In addition, the script file generation unit 4 may cause the display device 103 to display the script file generated in this manner. Furthermore, in the example of FIG. 12, the script file is described using the XML (eXtensible Markup Language) format, but using another model description language (description format) such as RDF (Resource Description Framework) It may be described.

図13は、ユーザがモデル記述言語を選択可能なGUIの操作画面の一例を示す図である。図13の操作画面は、表示装置103に表示される。ユーザは、入力装置102により、GUIの各種の操作を実行する。ここで、図13の操作画面を利用したスクリプトファイルの生成方法について説明する。   FIG. 13 is a diagram showing an example of an operation screen of a GUI which allows the user to select a model description language. The operation screen of FIG. 13 is displayed on the display device 103. The user uses the input device 102 to execute various operations of the GUI. Here, a method of generating a script file using the operation screen of FIG. 13 will be described.

ユーザは、参照釦1201をクリックし、選択可能な拡張モデルを表示させ、表示された拡張モデルの中からスクリプトファイルの生成対象となる拡張モデルを選択する。   The user clicks the reference button 1201 to display a selectable expansion model, and selects an expansion model for which a script file is to be generated among the displayed expansion models.

次に、ユーザは、選択可能な記述形式(モデル記述言語)の中から、使用するモデル記述言語を選択する。図13の例では、選択可能なモデル記述言語の一覧が、プルダウンリスト1202で表示されている。図13の例では、選択可能なモデル記述言語として、MTL4Sysと、SysMLを記述するXMI(XML Metadata Interchange)と、が表示されているが、上述の通り、RDFやXMLが選択可能であってもよい。   Next, the user selects a model description language to be used from selectable description forms (model description languages). In the example of FIG. 13, a list of selectable model description languages is displayed as a pull-down list 1202. In the example of FIG. 13, MTL4Sys and XMI (XML Metadata Interchange) describing SysML are displayed as selectable model description languages, but as described above, RDF and XML can be selected. Good.

そして、ユーザが実行釦1203をクリックすると、ユーザに選択されたモデル記述言語に従って、スクリプトファイル生成部4が、図12に示したようなスクリプトファイルを生成する。生成されたスクリプトファイルは、記憶装置105に保存される。なお、図13において、選択可能な拡張モデルやモデル記述言語は、ディフォールト値が設定されていてもよい。   Then, when the user clicks the execution button 1203, the script file generation unit 4 generates a script file as shown in FIG. 12 according to the model description language selected by the user. The generated script file is stored in the storage device 105. Note that, in FIG. 13, default values may be set for selectable extended models and model description languages.

(変更分析部6)
変更分析部6は、モデル構築部2が、構築済みの拡張モデルを編集すると、拡張モデルの変更内容を分析する。図14は、変更分析部6による変更内容の分析処理の一例を示すフローチャートである。
(Change analysis unit 6)
When the model construction unit 2 edits the built extension model, the change analysis unit 6 analyzes the change content of the extension model. FIG. 14 is a flowchart showing an example of analysis processing of the change content by the change analysis unit 6.

モデル構築部2が拡張モデルを編集すると、変更分析部6は、まず、変更内容集合{M}を作成する(ステップS801)。変更内容集合{M}は、変更された全内容(クラス、属性、及びクラス間の関係など)を含む集合である。   When the model construction unit 2 edits the extension model, the change analysis unit 6 first generates a change content set {M} (step S801). The modified content set {M} is a set including all modified content (classes, attributes, relationships between classes, etc.).

次に、変更分析部6は、変更内容集合{M}に、satisfyGを定義するクラス又は関係が含まれているか判定する(ステップS802)。ここでいうsatisfyGは、satisfy(満たす関係)またはsatisfyWithCondition(条件付きの満たす関係)のことである。   Next, the change analysis unit 6 determines whether the change content set {M} includes a class or a relationship that defines satisfyG (step S802). Here, satisfyG refers to satisfy (relation satisfying) or satisfyWithCondition (condition fulfilling relation).

変更内容集合{M}に、satisfyGを定義するクラス又は関係が含まれていない場合(ステップS802のno)、変更分析部6は、分析処理を終了する。一方、変更内容集合{M}に、satisfyGを定義するクラス又は関係が含まれている場合(ステップS802のyes)、分析処理は、ステップS803に進む。   If the change content set {M} does not include the class or relationship that defines the satisfy G (no in step S802), the change analysis unit 6 ends the analysis processing. On the other hand, if the change content set {M} includes a class or a relationship that defines satisfyG (yes in step S802), the analysis process proceeds to step S803.

ステップS803において、変更分析部6は、変更内容集合{M}から、satisfyGが定義されたクラスを抽出し、satisfyG集合φ={cls_1, cls_2,…,cls_n}を作成する。satisfyG集合φは、抽出されたクラスのID(cls_i)を含む集合である。   In step S803, the change analysis unit 6 extracts the class in which the satisfyG is defined from the change content set {M}, and creates a satisfyG set φ = {cls_1, cls_2,..., Cls_n}. The satisfying G set φ is a set including the extracted class ID (cls_i).

次に、変更分析部6は、satisfyG集合φから1つのクラスcls_iを選択する(ステップS804)。   Next, the change analysis unit 6 selects one class cls_i from the satisfyG set φ (step S804).

そして、変更分析部6は、選択したクラスcls_iに、クラスcls_i’があるか判定する(ステップS805)。ここでいうクラスcls_i’とは、クラスcls_iに対してsatisfyGの関係を定義されたクラスのうち、satisfyG集合φに含まれないクラスのことである。   Then, the change analysis unit 6 determines whether the selected class cls_i has the class cls_i '(step S805). The class cls_i ′ referred to here is a class not included in the satisfyG set φ among the classes in which the relation of satisfyG is defined with respect to the class cls_i.

クラスcls_i’がない場合(ステップS805のno)、分析処理はステップS807に進む。   If there is no class cls_i '(no in step S805), the analysis process proceeds to step S807.

一方、クラスcls_i’がある場合(ステップS805のyes)、変更分析部6は、クラスcls_i’を、変更候補クラス集合{cls_tbm}に追加する(ステップS806)。その後、分析処理は、ステップS807に進む。   On the other hand, when there is the class cls_i '(yes in step S805), the change analysis unit 6 adds the class cls_i' to the set of change candidate classes {cls_tbm} (step S806). Thereafter, the analysis process proceeds to step S807.

ステップS807において、変更分析部6は、satisfyG集合φに含まれる全てのクラスcls_iについて、ステップS805,S806の処理が終了したか判定する。未処理のクラスcls_iがある場合(ステップS807のno)、分析処理はステップS804に戻り、変更分析部6は、次に処理するクラスcls_iを選択する。一方、全てのクラスcls_iについて、処理が終了した場合(ステップS807のyes)、分析処理はステップS808に進む。   In step S807, the change analysis unit 6 determines whether the processes in steps S805 and S806 have ended for all the classes cls_i included in the satisfyG set φ. If there is an unprocessed class cls_i (no in step S807), the analysis processing returns to step S804, and the change analysis unit 6 selects the class cls_i to be processed next. On the other hand, if the process is completed for all the classes cls_i (yes in step S807), the analysis process proceeds to step S808.

ステップS808において、変更分析部6は、変更候補クラス集合{cls_tbm}に、satisfyWithConditionの関係が定義されたクラスがあるか判定する。satisfyWithConditionの関係が定義されたクラスが無かった場合(ステップS808のno)、変更分析部6は、分析処理を終了する。一方、satisfyWithConditionの関係が定義されたクラスがあった場合(ステップS808のyes)、分析処理はステップS809に進む。   In step S808, the change analysis unit 6 determines whether the change candidate class set {cls_tbm} includes a class in which the relationship of satisfyingWithCondition is defined. When there is no class in which the relationship of satisfiedWithCondition is defined (No in step S808), the change analysis unit 6 ends the analysis processing. On the other hand, if there is a class in which the relationship of satisfyWithCondition is defined (yes in step S808), the analysis process proceeds to step S809.

ステップS809において、変更分析部6は、変更候補クラス集合{cls_tbm}から、satisfyWithConditionの関係が定義されたクラスを抽出し、制約条件集合{Condition_cls}を作成する。制約条件集合{Condition_cls}は、抽出された各クラスのsatisfyWithConditionを定義する制約条件クラスの集合である。   In step S809, the change analysis unit 6 extracts, from the change candidate class set {cls_tbm}, a class in which the relationship of satisfyWithCondition is defined, and creates a constraint condition set {Condition_cls}. The constraint condition set {Condition_cls} is a set of constraint classes that defines the satisfiedWithCondition of each extracted class.

その後、変更分析部6は、制約条件集合{Condition_cls}に含まれ、かつ、変更内容集合{M}に含まれないクラスを抽出し、抽出したクラスを変更候補クラス集合{cls_tbm}に追加し(ステップS811)、分析処理を終了する。   After that, the change analysis unit 6 extracts the classes included in the constraint condition set {Condition_cls} and not included in the change content set {M}, and adds the extracted classes to the change candidate class set {cls_tbm} ( Step S811), end the analysis processing.

以上の分析処理により、変更分析部6は、分析結果として、変更候補クラス集合{cls_tbm}を出力する。以上の説明からわかるように、変更候補クラス集合{cls_tbm}には、拡張モデルの変更によって影響される、関係クラスなどの一般のクラスと、制約条件クラスと、が含まれる。変更分析部6は、これらのクラスを変更対象として自動的に抽出することができる。   By the above analysis process, the change analysis unit 6 outputs the change candidate class set {cls_tbm} as an analysis result. As can be understood from the above description, the change candidate class set {cls_tbm} includes general classes such as relation classes and constraint classes, which are affected by the change of the extension model. The change analysis unit 6 can automatically extract these classes as change targets.

(モデル更新部7)
モデル更新部7は、モデル構築部2により編集された拡張モデルのうち、変更分析部6により抽出された変更対象を更新(変更)する。モデル更新部7は、全ての変更対象を更新してもよいし、ユーザにより選択された変更対象のみを更新してもよい。図15は、ユーザが更新対象を選択可能なGUIの操作画面の一例を示す図である。図15の操作画面は、表示装置103に表示される。ユーザは、入力装置102により、GUIの各種の操作を実行する。ここで、図15の操作画面を利用した拡張モデルの更新方法について説明する。
(Model Updater 7)
The model update unit 7 updates (changes) the change target extracted by the change analysis unit 6 among the extended models edited by the model construction unit 2. The model updating unit 7 may update all the change targets, or may update only the change targets selected by the user. FIG. 15 is a diagram illustrating an example of an operation screen of a GUI that allows the user to select an update target. The operation screen of FIG. 15 is displayed on the display device 103. The user uses the input device 102 to execute various operations of the GUI. Here, a method of updating the extension model using the operation screen of FIG. 15 will be described.

ユーザは、まず、操作画面に表示された変更候補クラス集合{cls_tbm}の中から、更新したいクラスを選択する。図15の例では、一般のクラス候補901と、制約条件クラス候補902と、がそれぞれリストとして表示されている。クラス候補901には、例えばclass1,class3,class6が含まれている。また、制約条件クラス候補902には、例えばCondition_class1,Condition_class3,Condition_classXが含まれている。   The user first selects a class to be updated from the set of change candidate classes {cls_tbm} displayed on the operation screen. In the example of FIG. 15, general class candidates 901 and constraint class candidates 902 are displayed as a list. The class candidate 901 includes, for example, class1, class3 and class6. Further, the constraint condition class candidate 902 includes, for example, Condition_class 1, Condition_class 3, and Condition_class X.

図15の例では、class1と、class1に関連づけられたCondition_class1と、ユーザにより選択されたCondition_classXと、が選択されている。一般クラスと、制約条件クラスと、はそれぞれユーザにより選択されてもよいし、ユーザにより選択された一般クラス(又は制約条件クラス)に関連づけられた制約条件クラス(又は一般クラス)がモデル更新部7により自動的に選択されてもよい。ユーザは、選択釦903をクリックすることにより、選択内容を決定する。   In the example of FIG. 15, class 1, Condition_class 1 associated with class 1, and Condition_class X selected by the user are selected. The general class and the constraint class may be respectively selected by the user, or the constraint class (or general class) associated with the general class (or the constraint class) selected by the user is the model update unit 7 May be selected automatically. The user clicks the selection button 903 to determine the selection content.

図15の操作画面の右側には、ユーザにより選択された更新対象(class1,Condition_class1,Condition_classX)が表示されている。ユーザがこれらの更新対象を選択すると、モデル更新部7は、選択された更新対象を、拡張モデルの編集内容に応じて変更する。図15の例では、class1と、Condition_class1と、が選択され、変更されている。   On the right side of the operation screen of FIG. 15, update objects (class 1, Condition_class 1, Condition_class X) selected by the user are displayed. When the user selects these update targets, the model update unit 7 changes the selected update targets in accordance with the edited content of the extension model. In the example of FIG. 15, class1 and Condition_class1 are selected and changed.

その後、ユーザが更新釦904をクリックすると、モデル更新部7は、更新対象の変更内容を、編集された拡張モデルに追加する。これにより、拡張モデルが更新される。この際、モデル更新部7は、更新したクラスのバージョン情報を自動的に更新するのが好ましい。例えば、変更前のバージョンがNである場合、変更後のクラスのバージョンをN+1にすることが考えられる。また、モデル更新部7は、変更したクラスの下位クラスのバージョン情報を更新してもよい。例えば、変更したクラスの下位クラスのバージョンを全部プラス1にしてもよい。   Thereafter, when the user clicks the update button 904, the model update unit 7 adds the change content to be updated to the edited extended model. This updates the extension model. At this time, it is preferable that the model updating unit 7 automatically update the version information of the updated class. For example, when the version before change is N, it is conceivable to set the version of the class after change to N + 1. In addition, the model updating unit 7 may update version information of lower classes of the changed class. For example, the version of the lower class of the changed class may be all plus one.

(変換ルール生成部8)
変換ルール生成部8は、拡張メタモデルに基づいて、拡張モデルに含まれる要求図、ブロック図、制約条件クラス、及びパラメトリック図を、リレーショナルデータベースに保存するための変換ルールを生成する。図16及び図17は、変換ルール生成部8が生成した変換ルールの仕様の一例を示す図である。
(Transformation rule generation unit 8)
The conversion rule generation unit 8 generates, based on the extended meta model, a conversion rule for storing the request diagram, the block diagram, the constraint class, and the parametric diagram included in the extended model in a relational database. FIG. 16 and FIG. 17 are diagrams showing an example of the specification of the conversion rule generated by the conversion rule generation unit 8.

図16に示すように、要求テーブル(re_tbl)1001は、拡張メタモデルに従って記述される要求図(RE)を保存する。要求テーブル1001は、ID,name,description,superRequirement,versionのコラムを有する。IDのコラムには、要求図のIDが格納される。nameのコラムには、要求図の名称が格納される。descriptionのコラムには、要求図の説明が格納される。superRequirementのコラムには、要求図が継承関係を有する親要求が格納される。versionのコラムには、要求図のバージョン情報が格納される。   As shown in FIG. 16, the request table (re_tbl) 1001 stores a request chart (RE) described according to the extended meta model. The requirement table 1001 has columns of ID, name, description, super Requirement, and version. The ID column stores the ID of the request chart. The name column stores the name of the request diagram. The description column stores the description of the request diagram. The superRequirement column stores a parent requirement whose requirement diagram has an inheritance relationship. The version column stores version information of the request diagram.

パラメトリックテーブル(parametric_tbl)1002は、拡張メタモデルに従って記述されるパラメトリック図(Parametric)を保存する。パラメトリックテーブル1002は、ID (PK),name,description,Input,Output,formula, versionのコラムを有する。ID (PK)のコラムには、パラメトリック図のIDが格納される。また、IDコラムはプライムキーとして設定することができる。Nameのコラムには、パラメトリック図の名称が格納される。descriptionのコラムには、パラメトリック図の説明が格納される。Inputのコラムには、パラメトリック図の入力に関する情報が格納される。図16の例では、入力に関する情報として、変数名(val1)と、変数の型(datatype)と、単位(unit)と、が格納されている。Outputのコラムには、パラメトリック図の出力に関する情報が格納される。図16の例では、出力に関する情報として、変数名(val2)と、変数の型(datatype)と、単位(unit)と、が格納されている。formulaのコラムには、パラメトリック図の計算式が格納される。図16の例では、計算式はMathMLの形式で格納される。versionのコラムには、パラメトリック図のバージョン情報が格納される。   The parametric table (parametric_tbl) 1002 stores parametric diagrams (Parametric) described according to the extended meta model. The parametric table 1002 has columns of ID (PK), name, description, Input, Output, formula, version. The ID (PK) column stores the ID of the parametric diagram. Also, the ID column can be set as a prime key. The Name column stores the names of parametric diagrams. The description column stores the description of the parametric diagram. The Input column stores information about the input of the parametric diagram. In the example of FIG. 16, a variable name (val1), a variable type (datatype), and a unit (unit) are stored as information related to the input. The Output column stores information on the output of the parametric diagram. In the example of FIG. 16, a variable name (val2), a variable type (datatype), and a unit (unit) are stored as information on output. The formula column stores formulas for parametric diagrams. In the example of FIG. 16, the formula is stored in the form of MathML. The version column stores version information of parametric diagrams.

図17に示すように、ブロックテーブル(block_tbl)1003は、拡張メタモデルに従って記述されるブロック図(block)を保存する。ブロックテーブル1003は、ID(PK),name,Condition(id,FK),Operation(id,FK),attribute,description,super,versionのコラムを有する。IDのコラムには、ブロック図のIDが格納される。また、IDコラムはプライムキーとして設定することができる。nameのコラムには、ブロック図の名称が格納される。Conditionのコラムには、後述する制約条件テーブル1004のIDが格納される。Operationのコラムには、パラメトリックテーブル1002のIDが格納される。attributeのコラムには、後述するアトリビュートテーブル1005のIDのリストが格納される。descriptionのコラムには、ブロック図の説明が格納される。superのコラムには、ブロック図が継承関係を有する親ブロック(super)のIDが格納される。versionのコラムには、ブロック図のバージョン情報が格納される。   As shown in FIG. 17, the block table (block_tbl) 1003 stores a block diagram (block) described according to the extended meta model. The block table 1003 has columns of ID (PK), name, Condition (id, FK), Operation (id, FK), attribute, description, super, version. The ID of the block diagram is stored in the ID column. Also, the ID column can be set as a prime key. The column of name stores the name of the block diagram. In the column of Condition, an ID of a constraint condition table 1004 described later is stored. The ID of the parametric table 1002 is stored in the column of Operation. The attribute column stores a list of IDs of an attribute table 1005 described later. The description column stores the description of the block diagram. The super column stores the ID of the parent block (super) whose block diagram has an inheritance relationship. The version column stores version information of the block diagram.

制約条件テーブル(Condition_tbl)1004は、拡張メタモデルに従って記述される制約条件(Condition)を保存する。制約条件テーブル1004は、ID(PK),name,description,Attribute,Formula(id,FK),super,versionのコラムを有する。IDのコラムには、制約条件のIDが格納される。また、IDコラムはプライムキーとして設定することができる。nameのコラムには、制約条件の名称が格納される。descriptionのコラムには、制約条件の説明が格納される。Attributeのコラムには、アトリビュートテーブル1005のIDのリスト(List_of_id)が格納される。Formulaのコラムには、パラメトリックテーブル1002のIDが格納される。superのコラムには、ブロック図が継承関係を有する親ブロック(super)のIDが格納される。versionのコラムには、ブロック図のバージョン情報が格納される。   The constraint condition table (Condition_tbl) 1004 stores constraints (Condition) described according to the extended meta model. The constraint condition table 1004 has columns of ID (PK), name, description, Attribute, Formula (id, FK), super, and version. The ID of the constraint is stored in the ID column. Also, the ID column can be set as a prime key. The name column stores the name of the constraint. The description column stores descriptions of constraints. In the column of Attribute, a list of IDs of the attribute table 1005 (List_of_id) is stored. The ID of the parametric table 1002 is stored in the Formula column. The super column stores the ID of the parent block (super) whose block diagram has an inheritance relationship. The version column stores version information of the block diagram.

アトリビュートテーブル(attribute_tbl)1005は、拡張メタモデルに従って記述される制約条件及びブロック図に記述するアトリビュートを保存する。アトリビュートテーブル1005は、ID(PK),name,description,constantType,ConditionType,versionのコラムを有する。IDのコラムには、アトリビュートのIDが格納される。また、IDコラムはプライムキーとして設定することができる。nameのコラムには、アトリビュートの名称が格納される。descriptionのコラムには、アトリビュートの説明が格納される。constantTypeのコラムには、制約条件の可変性が格納される。ConditionTypeのコラムには、制約条件の種類が格納される。versionのコラムには、アトリビュートのバージョン情報が格納される。   An attribute table (attribute_tbl) 1005 stores the constraints described according to the extended meta model and the attributes described in the block diagram. The attribute table 1005 has columns of ID (PK), name, description, constantType, ConditionType, and version. The ID column stores the ID of the attribute. Also, the ID column can be set as a prime key. The name column stores the attribute name. The description column stores the attribute description. The constantType column stores the variability of constraints. The Condition Type column stores the type of constraint. The version column stores attribute version information.

(テーブル構築部9)
テーブル構築部9は、上記のような仕様を有する変換ルールに従って、拡張モデルに対応する各種のテーブルを自動的に構築し、構築したテーブルをDB10に格納する。図18は、テーブル構築部9により構築された、モデル要素に対応するテーブルの一例を示す図である。図18のテーブルは、図8の拡張モデルに対応している。
(Table construction unit 9)
The table construction unit 9 automatically constructs various tables corresponding to the extended model in accordance with the conversion rule having the above specifications, and stores the constructed table in the DB 10. FIG. 18 is a diagram showing an example of a table corresponding to a model element, which is constructed by the table construction unit 9. The table of FIG. 18 corresponds to the expanded model of FIG.

図18に示すように、ブロック503の定義は、ブロックテーブル1101の1行目に格納されている。制約条件クラス504の定義は、制約条件テーブル1102の1行目に格納されている。制約条件クラス504のアトリビュートであるairPressure,lの定義は、それぞれアトリビュートテーブル1103の1行目,2行目に格納されている。パラメトリック図505の定義は、パラメトリックテーブル1104の1行目に格納されている。   As shown in FIG. 18, the definition of block 503 is stored in the first line of the block table 1101. The definition of the constraint class 504 is stored in the first line of the constraint table 1102. The definition of airPressure, l, which is an attribute of the constraint class 504, is stored in the first and second lines of the attribute table 1103, respectively. The definition of the parametric diagram 505 is stored in the first line of the parametric table 1104.

上述の通り、制約条件テーブル1102のattributeのコラムには、アトリビュートテーブル1103のID(attr1,Attr2)が格納されている。また、制約条件テーブル1102のFormulaのコラムには、パラメトリックテーブル1104のID(Para_001)が格納されている。   As described above, the ID (attr1, Attr2) of the attribute table 1103 is stored in the attribute column of the constraint condition table 1102. In addition, in the column of Formula of the constraint condition table 1102, an ID (Para_001) of the parametric table 1104 is stored.

テーブル構築部9が構築したテーブルは、DB10に格納される。なお、DB10には、複数の拡張モデルが、テーブルとして格納されてもよい。   The table constructed by the table construction unit 9 is stored in the DB 10. A plurality of extended models may be stored as a table in the DB 10.

図19は、ユーザがテーブルを構築可能なGUIの操作画面の一例を示す図である。図19の操作画面は、表示装置103に表示される。ユーザは、入力装置102により、GUIの各種の操作を実行する。ここで、図19の操作画面を利用したテーブルの構築方法について説明する。   FIG. 19 is a diagram showing an example of an operation screen of a GUI which allows a user to construct a table. The operation screen of FIG. 19 is displayed on the display device 103. The user uses the input device 102 to execute various operations of the GUI. Here, a method of constructing a table using the operation screen of FIG. 19 will be described.

ユーザは、選択釦1301をクリックし、選択可能な拡張モデルのモデル要素(要求図、ブロック図など)を表示させ、表示されたモデル要素の中から、テーブルを構築するモデル要素を選択する。   The user clicks the select button 1301 to display model elements (request diagram, block diagram, etc.) of the selectable expansion model, and selects a model element for constructing a table from among the displayed model elements.

図19の例では、操作画面にはメタモデル表示部1302が設けられている。メタモデル表示部1302には、1301で選択されたモデル要素に対応する拡張メタモデル(例えば、ブロック図の拡張メタモデルなど)が表示される。メタモデル表示部1302に表示された拡張メタモデルは、ユーザの操作により編集可能であってもよい。   In the example of FIG. 19, a meta model display unit 1302 is provided on the operation screen. The meta model display unit 1302 displays an extended meta model (for example, an extended meta model of a block diagram) corresponding to the model element selected in 1301. The extended meta model displayed on the meta model display unit 1302 may be editable by the operation of the user.

次に、ユーザは、構築するテーブルの名称を、テーブル名入力欄1303に入力する。図19の例では、テーブルの名称はblock_tblに指定されている。   Next, the user inputs the name of the table to be constructed in the table name input field 1303. In the example of FIG. 19, the name of the table is designated as block_tbl.

続いて、1301で選択したモデル要素に対して、前述の変換ルールに従ってテーブル生成のSQL文(Structured Query Language)を自動的に生成し、変換ルール欄1304において表示と編集をする。変換ルール生成部8は、ユーザにより指定された内容に従って、変換ルールを生成する。また、ユーザにより指定された変換ルールが生成済みの場合、変換ルール欄1304に、生成済みの変換ルールが表示されてもよい。さらに、変換ルール欄1304に表示された変換ルールは、ユーザの操作により編集可能であってもよい。   Subsequently, for the model element selected in 1301, an SQL statement (Structured Query Language) of table generation is automatically generated according to the above-described conversion rule, and displayed and edited in the conversion rule column 1304. The conversion rule generation unit 8 generates a conversion rule according to the content specified by the user. Further, when the conversion rule designated by the user has been generated, the conversion rule column 1304 may display the generated conversion rule. Furthermore, the conversion rules displayed in the conversion rule column 1304 may be editable by the user's operation.

そして、ユーザが保存釦1305をクリックすると、テーブル構築部9は、変換ルール欄1304に表示された変換ルールに従って、ユーザに選択されたモデル要素に対応するテーブルを構築する。こうして構築されたテーブルは、DB10に格納される。   Then, when the user clicks the save button 1305, the table construction unit 9 constructs a table corresponding to the model element selected by the user in accordance with the conversion rule displayed in the conversion rule column 1304. The table thus constructed is stored in the DB 10.

以上説明した通り、本実施形態に係るシステム設計装置は、既存メタモデルに対して、制約条件を記述する制約条件クラスのメタモデルと、関係クラスに対して、前記制約条件の有無を区別するため、前記制約条件クラスと前記関係クラスとの間の関連(Association)を定義するメタモデルと、バージョン情報のメタモデルと、分解関係クラスのメタモデルと、貢献度クラスのメタモデルなどを、拡張定義することができる。これにより、UMLやSysMLなどのモデリング言語による記述能力を高めることができる。   As described above, the system design apparatus according to the present embodiment distinguishes, with respect to the existing metamodel, the meta model of the constraint class describing the constraint and the presence or absence of the constraint with respect to the relation class. , A meta-model defining the association (Association) between the constraint class and the relation class, a meta-model of version information, a meta-model of the decomposition relation class, a meta-model of the contribution degree class, etc. can do. This makes it possible to improve the description ability of modeling languages such as UML and SysML.

また、上記の拡張定義により、モデルの更新管理や統合設計が容易になるため、システムを効率的に開発したり、開発コストや保守コストを削減したりすることができる。   In addition, since the above-described extended definition facilitates model update management and integrated design, it is possible to efficiently develop a system and reduce development costs and maintenance costs.

なお、本発明は上記各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記各実施形態に開示されている複数の構成要素を適宜組み合わせることによって種々の発明を形成できる。また例えば、各実施形態に示される全構成要素からいくつかの構成要素を削除した構成も考えられる。さらに、異なる実施形態に記載した構成要素を適宜組み合わせてもよい。   The present invention is not limited to the above embodiments as it is, and at the implementation stage, the constituent elements can be modified and embodied without departing from the scope of the invention. In addition, various inventions can be formed by appropriately combining the plurality of components disclosed in the above-described embodiments. Further, for example, a configuration in which some components are removed from all the components shown in each embodiment is also conceivable. Furthermore, the components described in different embodiments may be combined as appropriate.

1:メタモデル定義部、2:モデル構築部、3:モデル記述言語生成部、4:スクリプトファイル生成部、5:動的モデル実行部、6:変更分析部、7:モデル更新部、8:変換ルール生成部、9:テーブル構築部、10:DB、100:コンピュータ、101:プロセッサ、102:入力装置、103:表示装置、104:通信装置、105:記憶装置 1: meta model definition unit, 2: model construction unit, 3: model description language generation unit, 4: script file generation unit, 5: dynamic model execution unit, 6: change analysis unit, 7: model update unit, 8: Conversion rule generation unit 9: table construction unit 10: DB 100: computer 101: processor 102: input device 103: display device 104: communication device 105: storage device

Claims (13)

モデリング言語により記述された第1のメタモデルに基づいて、前記第1のメタモデルと、制約条件を記述する制約条件クラスのメタモデルと、関係クラス(Trace)に対して、前記制約条件の有無を区別するため、前記制約条件クラスと前記関係クラスとの間の関連(Association)を定義するメタモデルと、
を含む第2のメタモデルを生成するメタモデル定義部と、
前記第2のメタモデルに従ってモデルを構築するモデル構築部と、
前記モデルに対応するスクリプトファイルを生成するスクリプトファイル生成部と、
を備えるシステム設計装置。
The presence or absence of the constraint with respect to the first metamodel, the metamodel of the constraint class describing the constraint, and the relation class (Trace) based on the first metamodel described by the modeling language A meta model that defines an association between the constraint class and the relation class in order to distinguish
A meta model definition unit that generates a second meta model including
A model construction unit that constructs a model according to the second meta model;
A script file generation unit that generates a script file corresponding to the model;
System design apparatus comprising:
前記第2のメタモデルは、前記制約条件クラスの属性として、前記制約条件の種類と、前記制約条件の可変性と、の少なくとも一方を含む
請求項1に記載のシステム設計装置。
The system design apparatus according to claim 1, wherein the second metamodel includes at least one of a type of the constraint and variability of the constraint as an attribute of the constraint class.
前記第2のメタモデルは、最上位クラスの属性として、バージョン情報を含む
請求項1又は請求項2に記載のシステム設計装置。
The system design apparatus according to claim 1, wherein the second meta model includes version information as an attribute of a top class.
前記第2のメタモデルは、要求の分解関係を定義する分解関係クラスのメタモデルを含む
請求項1乃至請求項3のいずれか1項に記載のシステム設計装置。
The system design apparatus according to any one of claims 1 to 3, wherein the second meta-model includes a meta-model of a decomposition relation class that defines a decomposition relation of requirements.
前記第2のメタモデルは、各関係の貢献度を定義する貢献度クラスのメタモデルを含む
請求項1乃至請求項4のいずれか1項に記載のシステム設計装置。
The system design device according to any one of claims 1 to 4, wherein the second meta-model includes a meta-model of a contribution degree class that defines the contribution degree of each relation.
前記第2のメタモデルに従って定義された前記モデルを、スクリプト言語として記述するための記述様式を定義する、モデル記述言語を生成するモデル記述言語生成部を備える
請求項1乃至請求項5のいずれか1項に記載のシステム設計装置。
The model description language generation unit for generating a model description language, which defines a description style for describing the model defined according to the second metamodel as a script language. The system design device according to item 1.
前記スクリプトファイルを実行する動的モデル実行部を備える
請求項1乃至請求項6のいずれか1項に記載のシステム設計装置。
The system design device according to any one of claims 1 to 6, further comprising a dynamic model execution unit that executes the script file.
前記モデルの変更内容を、前記関係クラスに対する前記制約条件の有無に基づいて分析する変更分析部を備える
請求項1乃至請求項7のいずれか1項に記載のシステム設計装置。
The system design apparatus according to any one of claims 1 to 7, further comprising: a change analysis unit configured to analyze the change content of the model based on the presence or absence of the constraint condition for the relation class.
前記変更分析部による分析結果に基づいて、前記モデルを更新するモデル更新部を備える
請求項8に記載のシステム設計装置。
The system design apparatus according to claim 8, further comprising: a model update unit configured to update the model based on an analysis result by the change analysis unit.
前記モデルをリレーショナルデータベースに格納するための変換ルールを生成する変換ルール生成部を備える
請求項1乃至請求項9のいずれか1項に記載のシステム設計装置。
The system design device according to any one of claims 1 to 9, further comprising: a conversion rule generation unit that generates a conversion rule for storing the model in a relational database.
前記変換ルールに従って、前記モデルに対応するリレーショナルデータベースのテーブルを構築するテーブル構築部を備える
請求項10に記載のシステム設計装置。
The system design apparatus according to claim 10, further comprising: a table construction unit configured to construct a table of a relational database corresponding to the model according to the conversion rule.
前記モデルを表示する表示装置を備える
請求項1乃至請求項11のいずれか1項に記載のシステム設計装置。
The system design device according to any one of claims 1 to 11, further comprising a display device that displays the model.
モデリング言語により記述された第1のメタモデルに基づいて、前記第1のメタモデルと、制約条件を記述する制約条件クラスのメタモデルと、関係クラス(Trace)に対して、制約条件の有無を区別するため、前記制約条件クラスと関係クラス間の関連(Association)を定義するメタモデルと、を含む第2のメタモデルを生成する工程と、
前記第2のメタモデルに従ってモデルを構築する工程と、
前記モデルに対応するスクリプトファイルを生成する工程と、
を備えるシステム設計方法。
Based on a first metamodel described by a modeling language, the presence / absence of a constraint is determined for the first metamodel, the metamodel of the constraint class describing the constraint, and the relation class (Trace). Generating a second meta-model including the constraint class and a meta-model defining an association between the relation classes to distinguish them;
Building a model according to the second meta-model;
Generating a script file corresponding to the model;
A system design method comprising:
JP2017547331A 2015-10-30 2015-10-30 System design apparatus and method Active JP6427687B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2015/080818 WO2017072969A1 (en) 2015-10-30 2015-10-30 System design device and method

Publications (2)

Publication Number Publication Date
JPWO2017072969A1 JPWO2017072969A1 (en) 2018-06-07
JP6427687B2 true JP6427687B2 (en) 2018-11-21

Family

ID=58631472

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017547331A Active JP6427687B2 (en) 2015-10-30 2015-10-30 System design apparatus and method

Country Status (4)

Country Link
US (1) US10732938B2 (en)
EP (1) EP3370147A4 (en)
JP (1) JP6427687B2 (en)
WO (1) WO2017072969A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3370147A4 (en) * 2015-10-30 2019-06-26 Kabushiki Kaisha Toshiba System design device and method
JP6847382B1 (en) * 2019-09-23 2021-03-24 株式会社デンソークリエイト Design support tool
JP6847383B1 (en) * 2019-09-23 2021-03-24 株式会社デンソークリエイト Design support tool

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6775680B2 (en) * 2000-08-08 2004-08-10 International Business Machines Corporation High level assembler metamodel
US6904598B2 (en) * 2000-08-08 2005-06-07 International Business Machines Corporation COBOL metamodel
US8104017B2 (en) 2001-10-25 2012-01-24 The Mathworks, Inc. Traceability in a modeling environment
EP1387260A1 (en) * 2002-07-25 2004-02-04 The Rationalizer Intelligent Software AG Method and system for software development
JP2004272909A (en) 2003-03-06 2004-09-30 Microsoft Corp Verification of system at designing
US8122106B2 (en) 2003-03-06 2012-02-21 Microsoft Corporation Integrating design, deployment, and management phases for systems
NZ525409A (en) * 2003-04-17 2005-04-29 Auckland Uniservices Ltd Software design system and method
US7823120B2 (en) * 2004-03-02 2010-10-26 Metaphor Vision Ltd. Device, system and method for accelerated modeling
JP4524750B2 (en) * 2004-11-11 2010-08-18 日本電気株式会社 Model-driven development device, model-driven development method, and model-driven development program
US7512942B2 (en) * 2005-08-24 2009-03-31 International Business Machines Corporation Model-driven software deployment in an application server
DE102006050112A1 (en) 2006-10-25 2008-04-30 Dspace Digital Signal Processing And Control Engineering Gmbh Requirement description e.g. test specification, creating method for embedded system i.e. motor vehicle control device, involves automatically representing modules, and assigning to classes in particular unified modeling language classes
US8112738B2 (en) * 2007-09-26 2012-02-07 Sap Ag Apparatus and method of customizable model import and export to and from XML schema formats
US20090093901A1 (en) * 2007-10-03 2009-04-09 International Business Machines Corporation Method and apparatus for using design specifications and measurements on manufactured products in conceptual design models
WO2009108943A2 (en) * 2008-02-29 2009-09-03 Doyenz Incorporated Automation for virtualized it environments
US8578324B2 (en) 2008-03-17 2013-11-05 International Business Machines Corporation Variability layer for domain-specific modeling languages
US8375370B2 (en) * 2008-07-23 2013-02-12 International Business Machines Corporation Application/service event root cause traceability causal and impact analyzer
JP5172585B2 (en) 2008-10-07 2013-03-27 インターナショナル・ビジネス・マシーンズ・コーポレーション System, method, and program for controlling access to object model
JP5457761B2 (en) * 2009-08-28 2014-04-02 株式会社富士通コンピュータテクノロジーズ Semantic model generation program and semantic model generation apparatus
US8413109B2 (en) * 2010-01-20 2013-04-02 Sap Ag Systems and methods for metamodel transformation
GB201008332D0 (en) * 2010-05-19 2010-07-07 Bae Systems Plc System validation
JP5284403B2 (en) 2011-03-28 2013-09-11 株式会社東芝 Ontology update device, method, and system
US9117028B2 (en) * 2011-12-15 2015-08-25 The Boeing Company Automated framework for dynamically creating test scripts for software testing
US9158503B2 (en) 2013-10-08 2015-10-13 King Fahd University Of Petroleum And Minerals UML model integration and refactoring method
EP3370147A4 (en) * 2015-10-30 2019-06-26 Kabushiki Kaisha Toshiba System design device and method

Also Published As

Publication number Publication date
EP3370147A4 (en) 2019-06-26
WO2017072969A1 (en) 2017-05-04
US10732938B2 (en) 2020-08-04
JPWO2017072969A1 (en) 2018-06-07
EP3370147A1 (en) 2018-09-05
US20180196646A1 (en) 2018-07-12

Similar Documents

Publication Publication Date Title
US9471213B2 (en) Chaining applications
US10114619B2 (en) Integrated development environment with multiple editors
US11128721B2 (en) Action flow fragment management
US10732938B2 (en) System design apparatus and method
US8869105B2 (en) Extensibility integrated development environment for business object extension development
US9003359B2 (en) User customizable queries to populate model diagrams
US20160292305A1 (en) System, method, and program for storing and analysing a data graph
US11010021B2 (en) Context menu fragment management
US8972927B2 (en) Method and system for providing modeled components
US9405514B1 (en) Process fragment management
US10460015B1 (en) Assimilation in multi model webpage composition
Abdelmalek et al. A Bimodal Approach for the Discovery of a View of the Implementation Platform of Legacy Object-Oriented Systems under Modernization Process.
Chared et al. Projective Template-Based Code Generation.
JP2010165205A (en) Template automatic generation system, method and program for model
Saeki et al. Model metrics and metrics of model transformations
US20220138147A1 (en) Information processing apparatus, information processing method, and non-transitory storage medium
US20240111922A1 (en) System and method for managing simulation artifacts
JP2016224623A (en) Screen UI verification device, screen UI verification method, and program
TWI753847B (en) Operation framework interface product and module code converter product
Chen et al. A scenario-based problem decomposition
Pongpanjanthra et al. Model-Based Approach to Generating Web Portals
Kong et al. A Collaborative Framework for Designers and Developers of Software-Intensive Systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180216

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180928

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181029

R151 Written notification of patent or utility model registration

Ref document number: 6427687

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151