Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5111308B2 - Model-oriented development support device, model-oriented development support method, and model-oriented development support program - Google Patents
[go: Go Back, main page]

JP5111308B2 - Model-oriented development support device, model-oriented development support method, and model-oriented development support program - Google Patents

Model-oriented development support device, model-oriented development support method, and model-oriented development support program Download PDF

Info

Publication number
JP5111308B2
JP5111308B2 JP2008228590A JP2008228590A JP5111308B2 JP 5111308 B2 JP5111308 B2 JP 5111308B2 JP 2008228590 A JP2008228590 A JP 2008228590A JP 2008228590 A JP2008228590 A JP 2008228590A JP 5111308 B2 JP5111308 B2 JP 5111308B2
Authority
JP
Japan
Prior art keywords
model
storage unit
stored
model element
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008228590A
Other languages
Japanese (ja)
Other versions
JP2010061543A (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.)
NTT Data Group Corp
Original Assignee
NTT Data 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 NTT Data Corp filed Critical NTT Data Corp
Priority to JP2008228590A priority Critical patent/JP5111308B2/en
Publication of JP2010061543A publication Critical patent/JP2010061543A/en
Application granted granted Critical
Publication of JP5111308B2 publication Critical patent/JP5111308B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、モデル指向開発による設計及び開発を支援するモデル指向開発支援装置、モデル指向開発支援方法及びモデル指向開発支援プログラムに関する。   The present invention relates to a model-oriented development support apparatus, a model-oriented development support method, and a model-oriented development support program that support design and development by model-oriented development.

近年、標準化されたモデリング手法(モデル駆動型アーキテクチャ、MDA(Model-Driven Architecture))に基づいてソフトウェアシステムを開発するモデル指向開発が行われている。このようなモデル指向開発では、開発対象のソフトウェアシステムが備えるプログラムの機能をUML(Unified Modeling Language)などに基づいてモデル化して表す。そして、要件に応じて抽象的に記述された上流工程モデルを、予め定められたモデル変換ルールに従って段階的に下流工程モデルに変換し、ソースコードを自動生成する。このようなモデル変換では、いずれかの工程のモデル要素、またはモデル変換ルールなどが変更された場合には、以下の工程の全てのモデル変換を再度行う必要があった。
そこで、特許文献1には、ジェネレータ手段が、モデル要素を所定単位毎に分割してモデル変換時にバージョンを付与しておき、再度のモデル変換の際にはバージョンの異なるモデル要素のみをモデル変換し、更新することで効率よく再モデル変換を行う技術が提案されている。
特開2006−139472号公報
In recent years, model-oriented development for developing a software system based on a standardized modeling method (Model-Driven Architecture (MDA)) has been performed. In such model-oriented development, the function of the program included in the software system to be developed is modeled based on UML (Unified Modeling Language). Then, the upstream process model described abstractly according to the requirements is converted into a downstream process model step by step according to a predetermined model conversion rule, and source code is automatically generated. In such model conversion, when the model element or model conversion rule of any process is changed, it is necessary to perform all model conversions in the following processes again.
Therefore, in Patent Document 1, the generator means divides model elements into predetermined units and assigns a version at the time of model conversion, and at the time of model conversion again, only model elements having different versions are converted. A technique for efficiently performing remodeling by updating has been proposed.
JP 2006-139472 A

しかしながら、上流工程のモデル要素に基づいてモデル変換され生成された下流工程のモデル要素は、ジェネレータ手段によりモデル変換された後に、ユーザーから入力される操作情報に応じて微調整が行われたり追加情報が付加されたりする場合がある。下流工程のモデル要素にこのような情報更新が行われた場合には、ジェネレータ手段によるバージョンが付与されない。このため、ユーザーから入力される操作情報に基づくモデル要素の変更があった後にジェネレータ手段により再度のモデル変換が行われる場合には、ユーザーから入力された操作情報に基づく変更が上書きされ失われてしまうこととなる。   However, the model element of the downstream process generated by the model conversion based on the model element of the upstream process is subjected to the model conversion by the generator means, and then finely adjusted according to the operation information input from the user or additional information May be added. When such information update is performed on the model element in the downstream process, the version by the generator means is not given. For this reason, when the model conversion is performed again by the generator means after the change of the model element based on the operation information input from the user, the change based on the operation information input from the user is overwritten and lost. Will end up.

本発明は、このような状況に鑑みてなされたもので、ユーザーからの操作情報に応じたモデル要素の変更が行われたか否かに基づいたモデル変換を行うことを可能とするモデル指向開発支援装置、モデル指向開発支援方法及びモデル指向開発支援プログラムを提供するものである。   The present invention has been made in view of such circumstances, and is model-oriented development support that enables model conversion based on whether or not a model element has been changed according to operation information from a user. An apparatus, a model-oriented development support method, and a model-oriented development support program are provided.

上述した課題を解決するために、本発明は、開発対象であるソフトウェアシステムを構成する各機能をモデル化した各モデル要素を、抽象概念により表す上流工程から、ソースコードにより表す下流工程までの複数工程に階層化して行うソフトウェアシステムの設計および開発を支援するモデル指向開発支援装置であって、複数工程のうち第1の工程に含まれる各モデル要素と、第1の工程に対応する下流工程となる第2の工程に含まれる各モデル要素と、それぞれのモデル要素毎に、モデル要素が記憶された日時を示す更新日時とが予め記憶されているモデル記憶部と、第1の工程に含まれる各モデル要素が複製されたコピーモデルが記憶されるコピーモデル記憶部と、第1の工程の各モデル要素に基づいて、第2の工程の各モデル要素を生成するモデル変換要求の入力を受付ける入力部と、入力部にモデル変換要求が入力されると、第1の工程の各モデル要素を複製してコピーモデル記憶部に記憶させるモデル複製部と、予め定められたモデル変換ルールに基づいて、コピーモデル記憶部に記憶された第1の工程の各モデル要素に応じた第2の工程の各モデル要素を生成してコピーモデル記憶部に記憶させ、かつ、第1の工程の各モデル要素を識別する上流モデル要素識別情報と、第1の工程の各モデル要素に基づいて生成した第2の工程のモデル要素を識別する下流モデル要素識別情報と、第2の工程のモデル要素を生成した日時を示す更新日時とが対応付けられたトレース要素を生成するモデル要素変換部と、モデル要素変換部が生成したトレース要素が記憶されるトレース要素記憶部と、モデル要素変換部に生成され、コピーモデル記憶部に記憶された第2の工程の各モデル要素の内容と、モデル記憶部に記憶された第2の工程の各モデル要素の内容とを比較し、内容が異なるか否かを判定するモデル内容比較部と、モデル内容比較部が、内容が異なると判定した場合、モデル記憶部に記憶された第1の工程の各モデル要素の更新日時と、第2の工程の各モデル要素の更新日時と、モデル要素に対応するトレース要素に含まれる更新日時とを比較し、更新日時が異なるか否かを判定する更新日時比較部と、更新日時比較部が、更新日時が異なると判定した場合、予め定められた手順に基づいて、コピーモデル記憶部に記憶された各モデル要素と、モデル記憶部に記憶されたモデル要素とを統合してモデル記憶部に記憶させるモデル更新部と、を備えることを特徴とする。   In order to solve the above-described problem, the present invention provides a plurality of model elements obtained by modeling each function constituting a software system to be developed from an upstream process represented by an abstract concept to a downstream process represented by a source code. A model-oriented development support apparatus that supports design and development of a software system that is performed in a hierarchy of processes, each model element included in the first process among a plurality of processes, and a downstream process corresponding to the first process, Each model element included in the second step and a model storage unit that stores an update date and time indicating the date and time when the model element is stored for each model element are included in the first step. Based on each model element in the first step based on each model element in the first step, a copy model storage unit in which a copy model in which each model element is duplicated is stored. An input unit that accepts an input of a model conversion request to be formed; a model duplication unit that duplicates each model element of the first step and stores the model element in the copy model storage unit when the model conversion request is input to the input unit; Generating each model element of the second step corresponding to each model element of the first step stored in the copy model storage unit based on the determined model conversion rule, and storing it in the copy model storage unit; and Upstream model element identification information for identifying each model element in the first step, downstream model element identification information for identifying a model element in the second step generated based on each model element in the first step, A model element conversion unit that generates a trace element that is associated with an update date and time that indicates the date and time when the model element of step 2 is generated, and a trace that stores the trace element generated by the model element conversion unit Contents of each model element of the second step generated in the element storage unit and the model element conversion unit and stored in the copy model storage unit, and contents of each model element of the second step stored in the model storage unit When the model content comparison unit and the model content comparison unit that determine whether the content is different determine that the content is different, each model element of the first process stored in the model storage unit An update date and time comparison unit that compares the update date and time, the update date and time of each model element in the second step, and the update date and time included in the trace element corresponding to the model element, and determines whether the update date and time are different; If the update date and time comparison unit determines that the update date and time are different, the model elements stored in the copy model storage unit and the model elements stored in the model storage unit are integrated based on a predetermined procedure. In the model storage And a model update unit to be stored.

また、本発明は、更新日時比較部が、更新日時が異なると判定した場合、モデル要素に記憶されたモデル要素と、コピーモデル記憶部に記憶されたモデル要素のいずれのモデル要素を優先してモデル要素を統合するかを示す統合手順が記憶される統合手順記憶部と、
モデル更新部は、統合手順記憶部に記憶されている統合手順に基づいて、コピーモデル記憶部に記憶された各モデル要素と、モデル記憶部に記憶されたモデル要素とを統合してモデル記憶部に記憶させることを特徴とする。
In the present invention, when the update date and time comparison unit determines that the update date and time are different, the model element stored in the model element and the model element stored in the copy model storage unit are given priority. An integrated procedure storage unit that stores an integration procedure indicating whether to integrate model elements;
The model update unit integrates each model element stored in the copy model storage unit and the model element stored in the model storage unit based on the integration procedure stored in the integration procedure storage unit. It is memorized in.

また、本発明は、入力部は、モデル記憶部に記憶されたモデル要素の内容を変更する変更情報の入力を受付け、入力部に入力される変更情報に応じて、モデル記憶部に記憶されたモデル要素の内容を変更し、モデル要素に対応する更新日時として変更を行った日時を対応付けてモデル記憶部に記憶させるモデル編集部と、を備えることを特徴とする。   Further, according to the present invention, the input unit accepts input of change information for changing the content of the model element stored in the model storage unit, and is stored in the model storage unit according to the change information input to the input unit. A model editing unit that changes the content of the model element and associates and stores the date and time of the change as the update date and time corresponding to the model element in the model storage unit.

また、本発明は、統合手順記憶部には、モデル記憶部に記憶された各モデル要素と、モデル要素に対応するトレース要素の存在の有無又はそれぞれの更新日時の異同に基づいて定められた条件に応じて統合手順が記憶され、モデル更新部は、各モデル要素の全てについて、モデル要素に対応するトレース要素の存在の有無又はそれぞれの更新日時の異同が条件に一致するか否かを判定し、全て一致すれば、予め定められた手順に基づいてコピーモデル記憶部に記憶された各モデル要素と、モデル記憶部に記憶されたモデル要素とを統合し、一致しないモデル要素が存在すれば、入力部に入力されるモデル要素の変更情報に応じて統合を行うことを特徴とする。   In the integrated procedure storage unit, the present invention provides a condition determined based on the presence or absence of each trace element corresponding to the model element and the update date / time of each model element stored in the model storage unit. The model update unit determines whether or not there is a trace element corresponding to the model element or whether each update date / time matches the condition for each model element. If they all match, each model element stored in the copy model storage unit based on a predetermined procedure and the model element stored in the model storage unit are integrated, and if there is a model element that does not match, The integration is performed according to the change information of the model element input to the input unit.

また、本発明は、開発対象であるソフトウェアシステムを構成する各機能をモデル化した各モデル要素を、抽象概念により表す上流工程から、ソースコードにより表す下流工程までの複数工程に階層化して行うソフトウェアシステムの設計および開発を支援し、複数工程のうち第1の工程に含まれる各モデル要素と、第1の工程に対応する下流工程となる第2の工程に含まれる各モデル要素と、それぞれのモデル要素毎に、モデル要素が記憶された日時を示す更新日時とが予め記憶されているモデル記憶部と、第1の工程に含まれる各モデル要素が複製されたコピーモデルが記憶されるコピーモデル記憶部と、第1の工程に含まれる各モデル要素に対応する第2の工程に含まれる各モデル要素との関連性を示すトレース要素が記憶されるトレース要素記憶部とを備えるモデル指向開発支援装置を用いたモデル指向開発支援方法であって、入力部が、第1の工程の各モデル要素に基づいて、第2の工程の各モデル要素を生成するモデル変換要求の入力を受付けるステップと、
モデル複製部が、入力部にモデル変換要求が入力されると、第1の工程の各モデル要素を複製してコピーモデル記憶部に記憶させるステップと、モデル要素変換部が、予め定められたモデル変換ルールに基づいて、コピーモデル記憶部に記憶された第1の工程の各モデル要素に応じた第2の工程の各モデル要素を生成してコピーモデル記憶部に記憶させ、かつ、第1の工程の各モデル要素を識別する上流モデル要素識別情報と、第1の工程の各モデル要素に基づいて生成した第2の工程のモデル要素を識別する下流モデル要素識別情報と、第2の工程のモデル要素を生成した日時を示す更新日時とが対応付けられたトレース要素を生成し、トレース要素記憶部に記憶させるステップと、モデル内容比較部が、モデル要素変換部に生成され、コピーモデル記憶部に記憶された第2の工程の各モデル要素の内容と、モデル記憶部に記憶された第2の工程の各モデル要素の内容とを比較し、内容が異なるか否かを判定するステップと、更新日時比較部が、モデル内容比較部により内容が異なると判定された場合、モデル記憶部に記憶された第1の工程の各モデル要素の更新日時と、第2の工程の各モデル要素の更新日時と、モデル要素に対応するトレース要素に含まれる更新日時とを比較し、更新日時が異なるか否かを判定するステップと、モデル更新部が、更新日時比較部により更新日時が異なると判定された場合、予め定められた手順に基づいて、コピーモデル記憶部に記憶された各モデル要素と、モデル記憶部に記憶されたモデル要素とを統合してモデル記憶部に記憶させるステップと、を備えることを特徴とする。
In addition, the present invention is a software that performs by layering each model element that models each function constituting a software system to be developed into a plurality of processes from an upstream process represented by an abstract concept to a downstream process represented by a source code. Supporting system design and development, each model element included in the first process among the plurality of processes, each model element included in the second process that is a downstream process corresponding to the first process, For each model element, a model storage unit in which an update date and time indicating the date and time when the model element is stored is stored in advance, and a copy model in which a copy model in which each model element included in the first step is duplicated is stored A trace in which a trace element indicating a relationship between the storage unit and each model element included in the second process corresponding to each model element included in the first process is stored is stored. A model-oriented development support method using a model-oriented development support device having a storage element storage unit, wherein the input unit generates each model element in the second step based on each model element in the first step Receiving a model conversion request to be input,
When a model conversion request is input to the input unit, the model replication unit replicates each model element in the first step and stores it in the copy model storage unit; and the model element conversion unit includes a predetermined model Based on the conversion rule, each model element of the second step corresponding to each model element of the first step stored in the copy model storage unit is generated and stored in the copy model storage unit, and Upstream model element identification information for identifying each model element of the process, downstream model element identification information for identifying the model element of the second process generated based on each model element of the first process, and A step of generating a trace element associated with an update date and time indicating the generation date and time of the model element and storing the trace element in the trace element storage unit, and a model content comparison unit are generated in the model element conversion unit. -The contents of each model element of the second step stored in the model storage unit and the contents of each model element of the second step stored in the model storage unit are compared to determine whether the contents are different. When the step and the update date and time comparison unit determine that the content is different by the model content comparison unit, the update date and time of each model element of the first process stored in the model storage unit and each model of the second process The step of comparing the update date / time of the element and the update date / time included in the trace element corresponding to the model element to determine whether the update date / time is different from the update date / time of the model update unit differs from the update date / time comparison unit. Is determined, the model element stored in the copy model storage unit and the model element stored in the model storage unit are integrated and stored in the model storage unit based on a predetermined procedure. Characterized in that it comprises a and.

また、本発明は、開発対象であるソフトウェアシステムを構成する各機能をモデル化した各モデル要素を、抽象概念により表す上流工程から、ソースコードにより表す下流工程までの複数工程に階層化して行うソフトウェアシステムの設計および開発を支援し、複数工程のうち第1の工程に含まれる各モデル要素と、第1の工程に対応する下流工程となる第2の工程に含まれる各モデル要素と、それぞれのモデル要素毎に、モデル要素が記憶された日時を示す更新日時とが予め記憶されているモデル記憶部と、第1の工程に含まれる各モデル要素が複製されたコピーモデルが記憶されるコピーモデル記憶部と、第1の工程に含まれる各モデル要素に対応する第2の工程に含まれる各モデル要素との関連性を示すトレース要素が記憶されるトレース要素記憶部とを備えるモデル指向開発支援装置のコンピュータに、第1の工程の各モデル要素に基づいて、第2の工程の各モデル要素を生成するモデル変換要求の入力を受付けるステップと、モデル変換要求が入力されると、第1の工程の各モデル要素を複製してコピーモデル記憶部に記憶させるステップと、予め定められたモデル変換ルールに基づいて、コピーモデル記憶部に記憶された第1の工程の各モデル要素に応じた第2の工程の各モデル要素を生成してコピーモデル記憶部に記憶させ、かつ、第1の工程の各モデル要素を識別する上流モデル要素識別情報と、第1の工程の各モデル要素に基づいて生成した第2の工程のモデル要素を識別する下流モデル要素識別情報と、第2の工程のモデル要素を生成した日時を示す更新日時とが対応付けられたトレース要素を生成し、トレース要素記憶部に記憶させるステップと、コピーモデル記憶部に記憶された第2の工程の各モデル要素の内容と、モデル記憶部に記憶された第2の工程の各モデル要素の内容とを比較し、内容が異なるか否かを判定するステップと、容が異なると判定された場合、モデル記憶部に記憶された第1の工程の各モデル要素の更新日時と、第2の工程の各モデル要素の更新日時と、モデル要素に対応するトレース要素に含まれる更新日時とを比較し、更新日時が異なるか否かを判定するステップと、新日時が異なると判定された場合、予め定められた手順に基づいて、コピーモデル記憶部に記憶された各モデル要素と、モデル記憶部に記憶されたモデル要素とを統合してモデル記憶部に記憶させるステップと、を実行させるモデル指向開発支援プログラムである。 In addition, the present invention is a software that performs by layering each model element that models each function constituting a software system to be developed into a plurality of processes from an upstream process represented by an abstract concept to a downstream process represented by a source code. Supporting system design and development, each model element included in the first process among the plurality of processes, each model element included in the second process that is a downstream process corresponding to the first process, For each model element, a model storage unit in which an update date and time indicating the date and time when the model element is stored is stored in advance, and a copy model in which a copy model in which each model element included in the first step is duplicated is stored A trace in which a trace element indicating a relationship between the storage unit and each model element included in the second process corresponding to each model element included in the first process is stored is stored. Accepting an input of a model conversion request for generating each model element of the second process based on each model element of the first process to a computer of a model-oriented development support apparatus having a storage element storage unit; When a conversion request is input, a step of copying each model element of the first step and storing it in the copy model storage unit, and a second stored in the copy model storage unit based on a predetermined model conversion rule Upstream model element identification information for generating each model element of the second process corresponding to each model element of the first process and storing it in the copy model storage unit, and identifying each model element of the first process; Downstream model element identification information for identifying the model element of the second process generated based on each model element of the first process, and update date and time indicating the date and time when the model element of the second process is generated Is generated and stored in the trace element storage unit, the contents of each model element in the second step stored in the copy model storage unit, and the second stored in the model storage unit of comparing the content of each model element step, determining whether the content is different, if the contents are determined as different, each model elements of the first step which is stored in the model storage unit and Modified, and update date and time of each model element of the second step is compared with the update date and time included in the trace elements corresponding to the model element, determining whether the update date and time are different, update When it is determined that the date and time are different, each model element stored in the copy model storage unit and the model element stored in the model storage unit are integrated and stored in the model storage unit based on a predetermined procedure. Make A model-oriented development support program that executes steps.

以上説明したように、本発明によれば、モデル指向開発における上流工程である第1の工程の各モデル要素に基づいて下流工程である第2の工程の各モデル要素を生成するモデル指向開発支援装置が、入力されるモデル変換要求に応じて第1の工程の各モデル要素を複製してコピーモデルを記憶し、予め定められたモデル変換ルールに基づいて、コピーモデルの第1の工程の各モデル要素に応じた第2の工程の各モデル要素を生成し、かつ、第1の工程の各モデル要素を識別する上流モデル要素識別情報と、第1の工程の各モデル要素に基づいて生成した第2の工程のモデル要素を識別する下流モデル要素識別情報と、第2の工程のモデル要素を生成した日時を示す更新日時とが対応付けられたトレース要素を生成し、コピーモデルに基づいて生成した第2の工程の各モデル要素の内容と、予め記憶された第2の工程の各モデル要素の内容との内容が異なり、かつ第2の工程のモデル要素の更新日時と、モデル要素に対応する前記トレース要素の更新日時とが異なる場合、予め定められた手順に基づいて、予め記憶された各モデル要素と、コピーモデルに基づいて生成したモデル要素とを統合するようにしたので、モデル要素の更新日時とトレース要素の更新日時とを比較することで、予め記憶されたモデル要素がモデル変換により生成されたものであるか否かを判定することができ、例えばユーザーから入力される操作情報などに応じて更新された変更が行われたか否かに応じてモデル変換を行うことが可能となる。   As described above, according to the present invention, model-oriented development support for generating each model element of the second process that is the downstream process based on each model element of the first process that is the upstream process in model-oriented development. The apparatus duplicates each model element of the first step in response to an input model conversion request, stores a copy model, and each of the first steps of the copy model based on a predetermined model conversion rule Each model element of the second process corresponding to the model element is generated, and generated based on upstream model element identification information for identifying each model element of the first process and each model element of the first process A trace element in which downstream model element identification information for identifying a model element of the second process and an update date and time indicating the date and time when the model element of the second process is generated is generated, and based on the copy model The content of each model element of the generated second step is different from the content of each model element of the second step stored in advance, and the update date and time of the model element of the second step and the model element When the update date and time of the corresponding trace element is different, the model elements stored based on the copy model and the model elements generated based on the copy model are integrated based on a predetermined procedure. By comparing the update date / time of the element and the update date / time of the trace element, it is possible to determine whether or not the model element stored in advance is generated by model conversion. For example, an operation input from the user It is possible to perform model conversion depending on whether or not an updated change is made according to information or the like.

以下、本発明の一実施形態について、図面を参照して説明する。
<構成>
図1は、本実施形態によるモデル指向開発支援装置100の構成を示すブロック図である。モデル指向開発支援装置100は、標準化されたモデリング手法に基づいたモデル指向開発によるソフトウェアシステムの設計および開発を支援するコンピュータ装置である。モデル指向開発支援装置100は、入力部、出力部、制御部、演算部、記憶部を備えており、いわゆるPC(パーソナルコンピュータ)やサーバ専用ハードウェア機器が適用できる。モデル指向開発支援装置100は、入力部110と、モデル編集部120と、モデル記憶部130と、制御部140と、コピーモデル記憶部150とを備えている。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
<Configuration>
FIG. 1 is a block diagram illustrating a configuration of a model-oriented development support apparatus 100 according to the present embodiment. The model-oriented development support device 100 is a computer device that supports design and development of a software system by model-oriented development based on a standardized modeling technique. The model-oriented development support apparatus 100 includes an input unit, an output unit, a control unit, a calculation unit, and a storage unit, and a so-called PC (personal computer) or server dedicated hardware device can be applied. The model-oriented development support apparatus 100 includes an input unit 110, a model editing unit 120, a model storage unit 130, a control unit 140, and a copy model storage unit 150.

モデル指向開発は、開発対象であるソフトウェアシステムが備えるプログラムを構成する各モデル要素を、抽象概念により表す上流階層から、ソースコードにより表す下流階層までの複数の階層工程に分割して行うプログラム開発手法である。モデル要素は、開発対象のソフトウェアシステムの機能を示す情報である。開発者は、まず、開発対象となるソフトウェアシステムの機能をシステム要件に基づいてUML(Unified Modeling Language)などによりモデル化する。例えば、モデル指向開発支援装置100は、UMLエディタなどの機能を備えており、開発ユーザーから入力される操作情報に応じてUML情報を生成する。モデル指向開発支援装置100は、システム要件がモデル化された上流工程モデルの各モデル要素を、QVT(Queries/Views/Transformations)などの予め定められたモデル変換ルールに基づいて下流工程モデルのモデル要素に変換する。   Model-oriented development is a program development method that divides each model element that constitutes a program included in the software system to be developed into a plurality of hierarchical processes from the upstream hierarchy represented by the abstract concept to the downstream hierarchy represented by the source code. It is. The model element is information indicating the function of the software system to be developed. First, the developer models the function of the software system to be developed by UML (Unified Modeling Language) based on the system requirements. For example, the model-oriented development support apparatus 100 has a function such as a UML editor and generates UML information according to operation information input from a development user. The model-oriented development support apparatus 100 converts each model element of the upstream process model in which the system requirements are modeled into a model element of the downstream process model based on a predetermined model conversion rule such as QVT (Queries / Views / Transformations). Convert to

ここで、上流工程のモデル要素から下流工程のモデル要素が生成される際には、その上流工程のモデル要素の識別情報と、生成された下流工程のモデル要素の識別情報と、モデル変換が行われた日時とが対応付けられた情報であるトレース要素が生成される。ここで、例えば、上流工程モデルにおけるモデル要素は、システムの動作環境やプログラム言語に依存しないモデル(プラットフォーム独立モデル(PIM(Platform Independent Model)))であり、下流工程に向かうにつれてシステムの動作環境やプログラム言語が具体化された下流工程モデル(プラットフォーム特化モデル(PSM(Platform Specific Model)))のモデル要素にモデル変換ルールに基づいて変換される。   Here, when a downstream process model element is generated from an upstream process model element, the upstream process model element identification information, the generated downstream process model element identification information, and model conversion are performed. A trace element that is information associated with the date and time of the generation is generated. Here, for example, the model element in the upstream process model is a model (platform independent model (PIM)) that does not depend on the system operating environment or the program language. Conversion into model elements of a downstream process model (platform specific model (PSM (Platform Specific Model))) in which the program language is realized is performed.

モデル指向開発における各階層工程のモデル要素は、工程毎にモデル指向開発支援装置100に記憶される。上流工程のモデル要素に基づいて下流工程のモデル要素の生成が行われモデル変換が行われた後にも、上流工程のモデル要素はモデル指向開発支援装置100に記憶されているため、モデル変換を行った後に上流工程のモデル要素の編集を行うことも可能である。このように、モデル指向開発では、開発対象のソフトウェアシステムを、例えばビジネスモデリング、要求定義、外部設計、内部設計、プログラム実装、テストなどの上流工程から下流工程までの各工程におけるモデル要素で表し、上流工程のモデル要素を、予め定められたモデル変換ルールに基づいて下流工程モデルのモデル要素に変換していくことでソフトウェアシステムの開発を行う。これによりソフトウェアシステムの開発を自動化し、開発工数を削減するとともにシステム要件と実装の乖離を防ぎ、効率良いソフトウェアシステムの開発を行うことが可能となる。   Model elements of each hierarchical process in the model-oriented development are stored in the model-oriented development support apparatus 100 for each process. Even after generation of the model element of the downstream process is performed based on the model element of the upstream process and the model conversion is performed, the model element of the upstream process is stored in the model-oriented development support apparatus 100, and thus the model conversion is performed. It is also possible to edit the model elements of the upstream process afterwards. In this way, in model-oriented development, the software system to be developed is represented by model elements in each process from the upstream process to the downstream process such as business modeling, requirement definition, external design, internal design, program implementation, and testing. The software system is developed by converting the model element of the upstream process into the model element of the downstream process model based on a predetermined model conversion rule. This makes it possible to automate software system development, reduce development man-hours, prevent system requirements from being separated from implementation, and develop an efficient software system.

入力部110は、ユーザーからの情報入力を受付ける入力デバイスであり、例えば、キーボードやマウスなどが適用できる。
モデル編集部120は、ユーザーから入力部110に入力される操作情報に応じて、モデル指向開発における各階層工程のモデル要素を編集し、モデル記憶部130に記憶させる。モデル編集部120は、モデル指向開発における工程毎に異なる編集機能を備えるようにして良い。例えば、本実施形態では、要求検討工程、詳細設計(外部設計)工程、プログラム設計(内部設計)工程の三工程に階層化したモデル指向開発を例として説明する。モデル編集部120には、例えば、要求検討工程、詳細設計(外部設計)工程においてはUMLエディタなどのモデル作成ツールが適用できる。また、プログラム設計工程、実装工程においてはプログラムエディタ、テキストエディタなどが適用できる。
The input unit 110 is an input device that accepts information input from a user, and for example, a keyboard or a mouse can be applied.
The model editing unit 120 edits model elements of each hierarchical process in model-oriented development according to operation information input from the user to the input unit 110 and stores the model elements in the model storage unit 130. The model editing unit 120 may have different editing functions for each process in model-oriented development. For example, in the present embodiment, model-oriented development hierarchized into three processes of a requirement examination process, a detailed design (external design) process, and a program design (internal design) process is described as an example. For example, a model creation tool such as a UML editor can be applied to the model editing unit 120 in the requirement study process and the detailed design (external design) process. Further, a program editor, a text editor, etc. can be applied in the program design process and the mounting process.

図2および図3は、本実施形態におけるモデル要素の設計の例を示す図である。例えば、詳細設計工程(a)のモデル要素として、「エンティティ」(a−1)、「画面構造」(a−2)、「画面遷移」(a−3)の3つのモデル要素が示される。エンティティ(a−1)は、開発対象のソフトウェアシステムで用いられるデータを示すモデル要素である。詳細設計工程のモデル要素であるエンティティ(a−1)に基づいて、予め定められたモデル変換ルール1により、下流工程であるプログラム設計工程(b)のモデル要素であるDBアクセスクラス(b−1)が生成される。ここでは、エンティティ要素1つにつきDBアクセスクラス要素が1つ生成される。エンティティの属性は、DBアクセスクラスのパラメタに変換される。   2 and 3 are diagrams showing an example of design of model elements in the present embodiment. For example, three model elements of “entity” (a-1), “screen structure” (a-2), and “screen transition” (a-3) are shown as model elements of the detailed design process (a). The entity (a-1) is a model element indicating data used in the software system to be developed. Based on the entity (a-1) which is a model element of the detailed design process, a DB access class (b-1) which is a model element of the program design process (b) which is a downstream process is determined by a predetermined model conversion rule 1. ) Is generated. Here, one DB access class element is generated for each entity element. The entity attribute is converted into a DB access class parameter.

同様に、開発対象のソフトウェアシステムの画面構造(a−2)を示す詳細設計工程のモデル要素に基づいて、予め定められたモデル変換ルール2により、下流工程であるプログラム設計工程のモデル要素であるビーンクラス(b−3)およびJSP(Java(登録商標) Server Pages)要素(b−4)が生成される。ここでは、詳細設計工程の画面構造要素1つにつき1つのJSP要素が生成される。JSPは、JAVA(登録商標)を用いたウェブサービス技術であり、JSP要素はJSPに基づくウェブサービスの機能に対応するモデル要素である。詳細設計工程の画面構造要素の属性は、JSP要素の入出力タグとして設定される。また、詳細設計工程の画面構造要素1つにつき1つのビーンクラス要素が生成される。ここで、詳細設計工程の画面構造要素の属性は、ビーンクラス要素の属性として設定される。   Similarly, it is a model element of the program design process which is a downstream process based on the model conversion rule 2 determined in advance based on the model element of the detailed design process indicating the screen structure (a-2) of the software system to be developed. A bean class (b-3) and a JSP (Java (registered trademark) Server Pages) element (b-4) are generated. Here, one JSP element is generated for each screen structure element in the detailed design process. JSP is a web service technology using JAVA (registered trademark), and a JSP element is a model element corresponding to a function of a web service based on JSP. The attribute of the screen structure element of the detailed design process is set as an input / output tag of the JSP element. One bean class element is generated for each screen structure element in the detailed design process. Here, the attribute of the screen structure element in the detailed design process is set as the attribute of the bean class element.

同様に、開発対象のソフトウェアシステムの画面遷移(a−3)を示す詳細設計工程のモデル要素に基づいて、予め定められたモデル変換ルール3により、下流工程であるプログラム設計工程のモデル要素であるコマンドクラス(b−2)が生成される。ここでは、詳細設計工程モデルに含まれる画面遷移要素1つにつきコマンドクラス要素が1つ生成される。ここで、エンティティ要素から変換された参照はコマンドクラスの属性として設定される。画面遷移要素を参照しているバウンダリ要素から生成されたビーンクラス要素は、コマンドクラス要素の入出力パラメタ属性として設定される。   Similarly, it is a model element of a program design process which is a downstream process based on a model conversion rule 3 determined in advance based on a model element of a detailed design process indicating screen transition (a-3) of the software system to be developed. A command class (b-2) is generated. Here, one command class element is generated for each screen transition element included in the detailed design process model. Here, the reference converted from the entity element is set as an attribute of the command class. The bean class element generated from the boundary element that refers to the screen transition element is set as the input / output parameter attribute of the command class element.

図1に戻り、モデル記憶部130には、モデル指向開発におけるモデルを示す情報が記憶され、モデル指向開発における各階層工程のモデル要素を示す情報が記憶されるモデル要素記憶部131と、モデル要素記憶部131に記憶される階層工程毎のモデル要素の関連性を示すトレース要素が記憶されるトレース要素記憶部132とを備えている。   Returning to FIG. 1, the model storage unit 130 stores information indicating a model in model-oriented development, and stores a model element storage unit 131 in which information indicating a model element of each hierarchical process in model-oriented development is stored. A trace element storage unit 132 in which trace elements indicating the relevance of model elements for each hierarchical process stored in the storage unit 131 are stored.

図4は、モデル要素記憶部131に記憶されるモデル要素のデータ例を示す図である。モデル要素は、「工程」と、「モデル要素名」と、「モデル要素ID」と、「親要素ID」と、「上流トレース」と、「下流トレース」と、「モデル要素種別」と、「モデル最終更新時間」とが対応付けられた情報を含んでいる。   FIG. 4 is a diagram illustrating an example of model element data stored in the model element storage unit 131. The model elements are “process”, “model element name”, “model element ID”, “parent element ID”, “upstream trace”, “downstream trace”, “model element type”, “ It includes information associated with “model last update time”.

「工程」は、モデル要素の階層工程を示す情報であり、例えば、「基本設計」、「詳細設計」、「プログラム設計」などが適用される。ここでは、工程を「全体」としたモデル要素を定義し、各階層工程のモデル要素は「全体」のモデル要素をルートとした木構造を構成する。ここで、木構造全体をプロジェクトといい、プロジェクトのルートとなるモデル要素の下位に各階層工程のルートとなるモデル要素が帰属する。それぞれの工程ルートとなる各モデル要素の下位には、その階層工程に含まれるモデル要素が帰属する。   “Process” is information indicating a hierarchical process of model elements. For example, “basic design”, “detailed design”, “program design”, and the like are applied. Here, model elements with the process as “whole” are defined, and the model elements of each hierarchical process constitute a tree structure with the “whole” model element as a root. Here, the entire tree structure is referred to as a project, and a model element that becomes the root of each hierarchical process belongs to a lower level of the model element that becomes the root of the project. The model elements included in the hierarchical process belong to the lower level of each model element serving as the process route.

「モデル要素名」は、モデル要素の内容を示す名称である。例えば、木構造のルートとなるモデル要素には「開発プロジェクト」、基本設計工程のルートとなるモデル要素には「基本設計工程」、基本設計工程における画面の見本を示すモデル要素には「画面モックアップ_A」などの名称が適用される。
「モデル要素ID」は、モデル要素の識別情報である。例えば、プロジェクトの頂点となるモデル要素には「P_PRJ_0001」、基本設計工程の頂点となるモデル要素には「A_DP_0001」、画面モックアップには「A_CSD_MDES_0001」などの識別情報が対応付けられる。
“Model element name” is a name indicating the contents of the model element. For example, the model element that is the root of the tree structure is “development project”, the model element that is the root of the basic design process is “basic design process”, and the model element that shows a screen sample in the basic design process is “screen mock A name such as “UP_A” is applied.
“Model element ID” is identification information of a model element. For example, identification information such as “P_PRJ — 0001” is associated with the model element that is the apex of the project, “A_DP — 0001” is associated with the model element that is the apex of the basic design process, and “A_CSD_MDES — 0001” is associated with the screen mockup.

「親要素ID」は各階層工程内でのモデル要素間の帰属関係を示し、モデル要素を木構造に構成する情報である。例えば、基本設計工程のモデル要素「A_CSD_MDES_0001」の「親要素ID」には基本設計工程のルートのモデル要素「A_DP_0001」が対応付けられており、画面モックアップ「A_CSD_MDES_0001」は基本設計工程に帰属するモデル要素であることが示される。   “Parent element ID” is information indicating the belonging relationship between model elements in each hierarchical process, and constituting the model elements in a tree structure. For example, the model element “A_DP_0001” of the root of the basic design process is associated with the “parent element ID” of the model element “A_CSD_MDES_0001” of the basic design process, and the screen mockup “A_CSD_MDES_0001” belongs to the basic design process. Shown to be a model element.

「上流トレース」は、そのモデル要素が上流工程のモデル要素に基づいて生成されたモデル要素である場合に、そのモデル要素の生成時に生成されたトレース要素の識別情報である。このトレース要素の識別情報は、後述するトレース要素記憶部132に記憶されたトレースIDに対応する。このように、上流工程のモデル要素に基づいて下流工程のモデル要素が生成される際には、上流工程のモデル要素と下流工程のモデル要素との関連性を示すトレース要素が生成され、トレース要素記憶部132に記憶される。例えば、詳細設計工程のモデル要素「B_SSD_SDES_0001」は、上流トレースのトレースIDとして「TR_0000」が対応付けられる。   “Upstream trace” is identification information of a trace element generated when the model element is generated when the model element is a model element generated based on a model element in an upstream process. The trace element identification information corresponds to a trace ID stored in a trace element storage unit 132 described later. Thus, when the downstream process model element is generated based on the upstream process model element, a trace element indicating the relationship between the upstream process model element and the downstream process model element is generated, and the trace element is generated. Stored in the storage unit 132. For example, the model element “B_SSD_SDES_0001” of the detailed design process is associated with “TR_0000” as the trace ID of the upstream trace.

「下流トレース」は、そのモデル要素に基づいて下流工程のモデル要素が生成された場合に、生成された下流工程のモデル要素との関連性を示すトレース要素の識別情報である。このトレース要素の識別情報は、トレース要素記憶部132に記憶されたトレースIDに対応する。例えば、基本設計工程のモデル要素「A_CSD_MDES_0001」には、下流トレースのトレースIDとして「TR_0000」が対応付けられる。   The “downstream trace” is identification information of a trace element indicating a relationship with the generated model element of the downstream process when the model element of the downstream process is generated based on the model element. The trace element identification information corresponds to the trace ID stored in the trace element storage unit 132. For example, the model element “A_CSD_MDES_0001” of the basic design process is associated with “TR_0000” as the trace ID of the downstream trace.

「モデル要素種別」は、対応するモデル要素の種別を示す情報である。例えば、プロジェクトにおけるモデル要素の木構造のルートとなるモデル要素には「プロジェクト」、画面モックアップには「モックアップ」などの情報が対応付けられる。
「モデル最終更新時間」は、対応するモデル要素が生成され、または生成された後に内容が変更されモデル要素記憶部131に記憶された更新日時を示す情報である。例えば、モデル最終更新時間は、「yyyy:mm:dd:hh:mn:ss」のフォーマットで表され、「(西暦4桁):(月2桁):(日2桁):(時2桁):(分2桁):(秒2桁)」の計14桁の数字で表される。
“Model element type” is information indicating the type of the corresponding model element. For example, information such as “project” is associated with the model element that is the root of the tree structure of the model element in the project, and information such as “mockup” is associated with the screen mockup.
The “model last update time” is information indicating the update date and time when the corresponding model element is generated or the content is changed and stored in the model element storage unit 131 after the generation. For example, the model last update time is expressed in the format of “yyyy: mm: dd: hh: mn: ss”, and “(4 digits of the year): (2 digits of the month): (2 digits of the day): (2 digits of the hour) ): (2 digits for minutes): (2 digits for seconds) ”.

図5は、トレース要素記憶部132に記憶されるトレース要素のデータ例を示す図である。トレース要素は、「トレースID」と、「上流要素」と、「下流要素」と、「トレース最終更新時間」とが対応付けられた情報を含んでいる。
「トレースID」は、トレース要素の識別情報である。「上流要素」は、トレース情報が関連付ける上流工程のモデル要素の識別情報であり、モデル要素記憶部131に記憶されるモデル要素IDに対応する。「下流要素」は、トレース情報が対応付ける下流工程のモデル要素の識別情報であり、モデル要素記憶部131に記憶されるモデル要素IDに対応する。「トレース最終更新時間」は、上流工程のモデル要素に基づいて下流工程のモデル要素が生成され、モデル変換が行われた際にトレース情報が生成された時間を示す情報である。同一の上流工程のモデル要素から同一の下流工程のモデル要素への再度のモデル変換が行われ、下流工程のモデル要素の内容が変更されてモデル要素記憶部131に記憶された場合には、トレース最終更新時間には下流工程のモデル要素の内容が更新されモデル要素記憶部131に記憶された時間を示す情報に更新され記憶される。
FIG. 5 is a diagram illustrating an example of trace element data stored in the trace element storage unit 132. The trace element includes information in which “trace ID”, “upstream element”, “downstream element”, and “trace last update time” are associated with each other.
“Trace ID” is identification information of a trace element. “Upstream element” is identification information of an upstream process model element associated with the trace information, and corresponds to the model element ID stored in the model element storage unit 131. The “downstream element” is identification information of the model element of the downstream process associated with the trace information, and corresponds to the model element ID stored in the model element storage unit 131. The “trace last update time” is information indicating the time when the trace process is generated when the model element of the downstream process is generated based on the model element of the upstream process and the model conversion is performed. If the model conversion is performed again from the model element of the same upstream process to the model element of the same downstream process, and the content of the model element of the downstream process is changed and stored in the model element storage unit 131, the trace The content of the model element in the downstream process is updated and updated to information indicating the time stored in the model element storage unit 131 at the final update time.

図6は、図4および図5に示される各モデル要素、各トレース要素の関連性を概念的に示した図である。図6に示されるように、モデル化されたソフトウェアシステムのモデル要素は、プロジェクトを示すモデル要素「P_PRJ_0001」をルートとして、基本設計工程のルートとなるモデル要素「A_DP_001」、詳細設計工程のルートとなるモデル要素「B_DP_001」、プログラム設計工程のルートとなるモデル要素「C_DP_001」が下位に帰属する。また、それぞれの階層工程のルートの下位にそれぞれのモデル要素が帰属する。ここで、本実施形態において、基本設計工程、詳細設計工程、プログラム設計工程の間の関連性を階層といい、上流、下流として表す。例えば、基本設計工程は詳細設計工程に対して上流工程の階層であり、詳細設計工程は基本設計工程に対して下流工程の階層であるという。また、本実施形態において、各階層工程のルートの下位に帰属するモデル要素間の関係を帰属といい、上位、下位として表す。例えば、基本設計工程のルートであるモデル要素「A_DP_0001」は、同じく基本設計工程のモデル要素「A_CSD_MDES_0001」に対して上位のモデル要素であり、基本設計工程のモデル要素「A_CSD_MDES_0001」は、同じく基本設計工程のルートであるモデル要素「A_DP_0001」に対して下位のモデル要素であるという。   FIG. 6 is a diagram conceptually showing the relationship between each model element and each trace element shown in FIG. 4 and FIG. As shown in FIG. 6, model elements of the modeled software system include a model element “P_PRJ — 0001” indicating a project as a root, a model element “A_DP — 001” serving as a root of a basic design process, a route of a detailed design process, and The model element “B_DP — 001” and the model element “C_DP — 001” serving as the root of the program design process belong to the lower level. In addition, each model element belongs to the lower level of the root of each hierarchical process. Here, in this embodiment, the relationship between the basic design process, the detailed design process, and the program design process is called a hierarchy, and is expressed as upstream and downstream. For example, the basic design process is a hierarchy of the upstream process with respect to the detailed design process, and the detailed design process is a hierarchy of the downstream process with respect to the basic design process. In this embodiment, the relationship between model elements belonging to the lower order of the root of each hierarchical process is referred to as belonging, and is expressed as higher order and lower order. For example, the model element “A_DP_0001” that is the root of the basic design process is a higher-order model element than the model element “A_CSD_MDES_0001” of the basic design process, and the model element “A_CSD_MDES_0001” of the basic design process is the same as the basic design process. The model element “A_DP — 0001” that is the root of the process is a lower model element.

例えば、図6の例では、基本設計工程のモデル要素「A_CSD_MDES_0001」に基づいて下流工程となる詳細設計工程のモデル要素「B_SSD_SDES_0001」が生成されており、その関連性がトレース要素「TR_0000」によって示されている。また、例えば、この詳細設計工程のモデル要素「B_SSD_SDES_0001」に基づいてプログラム設計工程のモデル要素「C_DCD_JSP_0001」とモデル要素「C_DEC_BEAN_0001」との2つのモデル要素が生成されており、その関連性がトレース要素「TR_0001」またはトレース要素「TR_0004」によって示されている。また、例えば、基本設計工程のルートであるモデル要素「A_DP_0001」には、モデル要素「A_CSD_MDES_0001」が下位に帰属している。また、プログラム設計工程のモデル要素「C_DCD_BPRO_0003」は、対応するトレース要素が存在しないため、モデル要素変換部143によるモデル変換によらず、例えばモデル編集部120などによって生成されたモデル要素である。   For example, in the example of FIG. 6, the model element “B_SSD_SDES_0001” of the detailed design process that is the downstream process is generated based on the model element “A_CSD_MDES_0001” of the basic design process, and the relationship is indicated by the trace element “TR_0000”. Has been. Further, for example, two model elements of a model element “C_DCD_JSP_0001” and a model element “C_DEC_BEAN_0001” of the program design process are generated based on the model element “B_SSD_SDES_0001” of the detailed design process, and the relationship is a trace element. It is indicated by “TR — 0001” or trace element “TR — 0004”. Further, for example, the model element “A_CSD_MDES_0001” belongs to the lower order in the model element “A_DP_0001” that is the route of the basic design process. Further, the model element “C_DCD_BPRO_0003” of the program design process is a model element generated by the model editing unit 120 or the like, for example, without the model conversion by the model element conversion unit 143 because there is no corresponding trace element.

図7は、モデル記憶部130に記憶される詳細設計工程のモデル要素およびトレース要素の詳細なデータ例を示す図である。このように、モデル要素記憶部131に記憶されたモデル要素は、図4のデータ例に示した情報の他に、開発対象のソフトウェアシステムの機能に対応する階層工程毎に、モデル要素種別に応じた各種設計情報等が含まれる。図7では、モデル要素種別に応じた設計情報に下線を付している。例えば、(a)は、詳細設計工程の画面構造「B_SSD_SDES_0001」のモデル要素のデータ例を示している。モデル要素「B_SSD_SDES_0001」は、ソフトウェアシステムにおいてディスプレイに表示させる一画面に対応するモデル要素であり、図4で示した共通情報の他に、本画面に含まれる1または複数の画面項目を示す「画面項目リスト」、本画面に遷移してくる遷移元の画面を示す「画面遷移リスト(イン)」、本画面から遷移する遷移先の画面を示す「画面遷移リスト(アウト)」との情報が含まれる。   FIG. 7 is a diagram illustrating detailed data examples of model elements and trace elements in the detailed design process stored in the model storage unit 130. As described above, the model elements stored in the model element storage unit 131 correspond to the model element type for each hierarchical process corresponding to the function of the software system to be developed in addition to the information shown in the data example of FIG. Various design information etc. are included. In FIG. 7, the design information corresponding to the model element type is underlined. For example, (a) shows a data example of a model element of the screen structure “B_SSD_SDES_0001” of the detailed design process. The model element “B_SSD_SDES_0001” is a model element corresponding to one screen to be displayed on the display in the software system. In addition to the common information shown in FIG. 4, a “screen” indicating one or a plurality of screen items included in this screen is displayed. Information of “Item list”, “Screen transition list (in)” indicating the transition source screen that transitions to this screen, and “Screen transition list (out)” indicating the transition destination screen that transitions from this screen are included It is.

図7の(b)は、詳細設計工程の画面項目「B_SSD_SPRO_0001」のモデル要素のデータ例を示している。モデル要素「B_SSD_SPRO_0001」は、画面構造「B_SSD_SDES_0001」が示す画面に含まれる画面項目の内容を示しており、図4で示した共通情報の他に、画面項目の物理データ型と表示データ型がともに文字列であり、文字列のデータ長が16(文字)であり、表示ラベルとして文字列「ユーザー名」を表示させることが示されている。   FIG. 7B illustrates a data example of the model element of the screen item “B_SSD_SPRO_0001” of the detailed design process. The model element “B_SSD_SPRO_0001” indicates the contents of the screen item included in the screen indicated by the screen structure “B_SSD_SDES_0001”. In addition to the common information shown in FIG. 4, both the physical data type and the display data type of the screen item are included. It is a character string, the data length of the character string is 16 (characters), and the character string “user name” is displayed as a display label.

図8は、モデル記憶部130に記憶されるプログラム設計工程のモデル要素の情報の詳細なデータ例を示す図である。例えば、(a)は、詳細設計工程のプログラムであるJSP要素「C_DCD_JSP_0001」のモデル要素のデータ例を示している。モデル要素「C_DCD_JSP_0001」は、詳細設計工程の画面構造「B_SSD_SDES_0001」に基づいて生成されたモデル要素であり、JSPに基づいた画面構造を表す情報である。モデル要素「C_DCD_JSP_0001」は、図4で示した共通情報の他に、モデル要素の「物理名」、JSPに含まれる属性としてのモデル要素を示す「属性リスト」、本画面に遷移してくる遷移元のソフトウェアコンポーネントを示す「ビーンクラス(イン)」、本画面から遷移する遷移先のソフトウェアコンポーネントを示す「ビーンクラス(アウト)」との情報が含まれる。   FIG. 8 is a diagram illustrating a detailed data example of model element information of the program design process stored in the model storage unit 130. For example, (a) shows a data example of a model element of a JSP element “C_DCD_JSP_0001” which is a program of a detailed design process. The model element “C_DCD_JSP_0001” is a model element generated based on the screen structure “B_SSD_SDES_0001” of the detailed design process, and is information representing the screen structure based on JSP. In addition to the common information shown in FIG. 4, the model element “C_DCD_JSP_0001” includes the “physical name” of the model element, the “attribute list” indicating the model element as an attribute included in the JSP, and the transition to this screen Information of “bean class (in)” indicating the original software component and “bean class (out)” indicating the software component of the transition destination from this screen is included.

図8の(b)は、プログラム設計工程の入力属性項目「C_DCD_JSPAT_0001」のモデル要素のデータ例を示している。モデル要素「C_DCD_JSP_0001」は、詳細設計工程の画面構造「B_SSD_SPRO_0001」に基づいて生成されたモデル要素であり、画面における入力項目を表す情報である。モデル要素「C_DCD_JSPAT_0001」は、図4で示した共通情報の他に、プログラムにおける物理名が「ATTRIBUTE_1」であり、物理データ型が「String」(文字列)であり、表示データ型が文字列であり、表示ラベルが「ユーザー名」であることなどが示されている。   FIG. 8B shows a data example of the model element of the input attribute item “C_DCD_JSPAT_0001” in the program design process. The model element “C_DCD_JSP_0001” is a model element generated based on the screen structure “B_SSD_SPRO_0001” of the detailed design process, and is information representing an input item on the screen. In addition to the common information shown in FIG. 4, the model element “C_DCD_JSPAT_0001” has a physical name “ATTRIBUTE_1” in the program, a physical data type “String” (character string), and a display data type is a character string. Yes, and the display label is “user name”.

図1に戻り、制御部140は、モデル記憶部130に記憶された上流工程のモデル要素に基づいて下流工程のモデル要素を生成し、モデル変換を行う。制御部140は、モデル取得部141と、モデル複製部142と、モデル要素変換部143と、モデル内容比較部144と、更新日時比較部146と、モデル更新部146と、マージ方法判定部147とを備えている。
モデル取得部141は、入力部110にモデル変換の実行命令が入力されると、モデル記憶部130に記憶されたモデル要素を読み出す。
Returning to FIG. 1, the control unit 140 generates a model element for the downstream process based on the model element for the upstream process stored in the model storage unit 130 and performs model conversion. The control unit 140 includes a model acquisition unit 141, a model replication unit 142, a model element conversion unit 143, a model content comparison unit 144, an update date / time comparison unit 146, a model update unit 146, and a merge method determination unit 147. It has.
When the model conversion execution instruction is input to the input unit 110, the model acquisition unit 141 reads the model elements stored in the model storage unit 130.

モデル複製部142は、モデル取得部141がモデル記憶部130から読み出したモデル要素を複製し、コピーモデルとしてコピーモデル記憶部150に記憶させる。図9は、制御部140によるモデル変換処理の概念を示す図である。ここで、図9の(a)の列に示すように、モデル複製部142は、モデル記憶部130に記憶された各モデル要素(以下、実モデルという)から、プロジェクトルート(「P_PRJ_0001」)と、最上流工程のモデル要素(「A_DP_0001」および「A_CSD_MDES_0001」)と、各階層工程のルートのモデル要素(「B_DP_0001」)のみを、コピーモデルとしてコピーモデル記憶部150に記憶させる。   The model duplication unit 142 duplicates the model element read from the model storage unit 130 by the model acquisition unit 141 and stores the model element in the copy model storage unit 150 as a copy model. FIG. 9 is a diagram illustrating a concept of model conversion processing by the control unit 140. Here, as shown in the column (a) of FIG. 9, the model duplicating unit 142 calculates the project root (“P_PRJ_0001”) from each model element (hereinafter referred to as a real model) stored in the model storage unit 130. Only the model element (“A_DP_0001” and “A_CSD_MDES_0001”) of the most upstream process and the model element (“B_DP_0001”) of the root of each hierarchical process are stored in the copy model storage unit 150 as a copy model.

図1に戻り、モデル要素変換部143は、モデル複製部142により複製されてコピーモデル記憶部150に記憶されたコピーモデルの各モデル要素の変換処理を行う。モデル要素変換部143は、モデル複製部142によってコピーモデル記憶部150に記憶されたコピーモデルの上流工程の各モデル要素から、自身の記憶領域に予め記憶されたモデル変換ルールに基づいて下流工程のモデル要素を生成し、コピーモデル記憶部150に記憶させ、モデル変換を行う。モデル変換ルールは、例えばOMG(Object Management Group)により定められたモデル変換の標準であるQVT(Queries/Views/Transformations)などが適用できる。例えば、図9の(b)に示すように、モデル要素変換部143は、コピーモデルにおける上流工程のモデル要素「A_CSD_MDES_0001」に基づいて、下流工程のモデル要素「B_SSD_SDES_0001」を生成する。   Returning to FIG. 1, the model element conversion unit 143 performs conversion processing of each model element of the copy model copied by the model copy unit 142 and stored in the copy model storage unit 150. The model element conversion unit 143 uses a model conversion rule stored in advance in its own storage area from each model element in the upstream process of the copy model stored in the copy model storage unit 150 by the model duplication unit 142 to perform the downstream process. A model element is generated, stored in the copy model storage unit 150, and model conversion is performed. As the model transformation rule, for example, QVT (Queries / Views / Transformations) which is a standard of model transformation defined by OMG (Object Management Group) can be applied. For example, as illustrated in FIG. 9B, the model element conversion unit 143 generates a model element “B_SSD_SDES_0001” for the downstream process based on the model element “A_CSD_MDES_0001” for the upstream process in the copy model.

図1に戻り、モデル内容比較部144は、モデル記憶部130に記憶された下流工程の各モデル要素と、コピーモデル記憶部150に記憶された対応する下流工程のモデル要素との内容を比較し、情報の内容が異なるモデル要素が存在するか否かを判定する。
更新日時比較部146は、モデル内容比較部144により、実モデルとコピーモデルとのモデル要素に情報の内容が異なるモデル要素が存在すると判定され、差分がある場合には、差分があった実モデルのモデル要素の最終更新日時と、そのモデル要素を下流トレースとするトレース要素の最終更新日時またはそのモデル要素に対応する上流工程のモデル要素の最終更新日時とを読み出し、更新日時が異なるか否かを判定する。図9の(c)に示すように、実モデルとコピーモデルとが比較される。
Returning to FIG. 1, the model content comparison unit 144 compares the content of each model element of the downstream process stored in the model storage unit 130 with the model element of the corresponding downstream process stored in the copy model storage unit 150. Then, it is determined whether there are model elements having different information contents.
The update date and time comparison unit 146 determines that the model content comparison unit 144 determines that there are model elements having different information contents in the model elements of the actual model and the copy model. Read the last update date / time of the model element and the last update date / time of the trace element whose downstream trace is the model element or the last update date / time of the model element of the upstream process corresponding to the model element, and whether the update date / time is different Determine. As shown in FIG. 9C, the actual model and the copy model are compared.

図1に戻り、マージ方法判定部147は、モデル内容比較部144による比較結果と、更新日時比較部146による比較結果と、マージ方法記憶部160に記憶されているモデル要素の統合手順を示すマージ方法とに基づいて、実モデルとコピーモデルとのマージ方法の判定を行う。マージ方法記憶部160には、実モデルとコピーモデルとの差分の条件に応じたマージ方法が予め記憶されている。マージ方法は、上流工程と下流工程のモデル要素が異なる場合に、例えば、「上流の追加を反映」、「上流の変更を反映」、「上流の削除を反映」、「下流の追加を維持」、「下流の変更を維持」、「下流の削除を維持」などにより表される。マージ方法判定部147により判定されるマージ方法のうち、マージ方法記憶部160に記憶されているマージ方法により行うマージを自動マージといい、逆にどのようなマージを行うかをユーザーに提示し、マージ方法を利用者に選択させることにより行うマージを手動マージという。   Returning to FIG. 1, the merging method determination unit 147 performs a merging process for integrating the comparison result of the model content comparison unit 144, the comparison result of the update date / time comparison unit 146, and the model elements stored in the merging method storage unit 160. Based on the method, the merge method between the actual model and the copy model is determined. The merging method storage unit 160 stores in advance a merging method corresponding to a difference condition between the actual model and the copy model. For example, when the model elements of the upstream process and the downstream process are different, for example, “Upstream addition is reflected”, “Upstream change is reflected”, “Upstream deletion is reflected”, and “Downstream addition is maintained”. , “Keep downstream changes”, “Keep downstream deletions”, etc. Among the merge methods determined by the merge method determination unit 147, the merge performed by the merge method stored in the merge method storage unit 160 is referred to as automatic merge, and on the contrary, the merge method is presented to the user, Merging performed by letting the user select a merging method is called manual merging.

「上流の追加を反映」は、モデル変換後に上流工程にモデル要素が追加されている場合、追加された上流工程のモデル要素に対応する下流工程のモデル要素を生成し、実モデルに反映させる自動マージを行うことを示す。
「上流の変更を反映」は、モデル変換後に上流工程のモデル要素の内容に変更が加えられている場合、変更された上流工程のモデル要素に基づいて下流工程のモデル要素を生成し、実モデルに反映させる自動マージを行うことを示す。
「上流の削除を反映」は、モデル変換後に上流工程のモデル要素が削除されている場合、削除された上流工程のモデル要素に対応する実モデルの下流工程のモデル要素を削除する自動マージを行うことを示す。
"Upstream addition reflected" is an automatic function that generates model elements for downstream processes corresponding to the model elements of the added upstream processes and reflects them in the actual model when model elements are added to the upstream processes after model conversion. Indicates to perform a merge.
“Upstream changes reflected” means that if changes are made to the model element contents of the upstream process after model conversion, the model elements of the downstream process are generated based on the changed model elements of the upstream process, and the actual model Indicates that automatic merging will be performed.
"Upstream deletion reflected" performs automatic merging to delete the model element of the downstream process of the actual model corresponding to the deleted model element of the upstream process when the model element of the upstream process has been deleted after model conversion It shows that.

「下流の追加を維持」は、モデル変換後に下流工程にモデル要素が追加されている場合、実モデルにおける下流工程に追加されたモデル要素を削除せず、追加されたモデル要素の記憶を維持する自動マージを行うことを示す。
「下流の変更を維持」は、モデル変換後に下流工程のモデル要素が変更されている場合、対応する上流工程のモデル要素に基づいて生成されたモデル要素に関わらず、実モデルにおける下流工程のモデル要素の変更を維持する自動マージを行うことを示す。
「下流の削除を維持」は、モデル変換後に下流工程のモデル要素が削除されている場合、対応する上流工程のモデル要素に基づいて生成されたモデル要素に関わらず、実モデルにおける下流工程のモデル要素の削除を維持する自動マージを行うことを示す。
“Keep downstream addition” does not delete the model element added to the downstream process in the actual model and keeps the memory of the added model element when the model element is added to the downstream process after model conversion Indicates that automatic merging is performed.
“Keep downstream changes” means that if the model element of the downstream process has been changed after model conversion, the model of the downstream process in the actual model is used regardless of the model element generated based on the model element of the corresponding upstream process. Indicates that automatic merging is performed to preserve element changes.
“Keep downstream deletion” means that if the model element of the downstream process has been deleted after model conversion, the model of the downstream process in the actual model is used regardless of the model element generated based on the model element of the corresponding upstream process. Indicates that automatic merging is performed to maintain element deletion.

マージ方法記憶部160には、このようなマージ方法のそれぞれを有効(ON)とするか無効(OFF)とするかを示す情報が対応付けられて記憶されている。マージ方法判定部147は、マージ方法記憶部160に記憶されたこのようなマージ方法に基づいて、実モデルとコピーモデルとのマージ処理を行う。また、マージ方法判定部147は、実モデルとコピーモデルとのモデル要素の内容に差分がある場合で、マージ方法記憶部160に記憶されたマージ方法の条件に該当しないモデル要素が存在する場合には、入力部110から入力される操作情報に基づいて、実モデルとコピーモデルとのマージを行う。
モデル更新部145は、マージ方法判定部147によるマージ方法の判定結果に基づいて、モデル記憶部130に記憶された実モデルと、コピーモデル記憶部150に記憶されたコピーモデルとのマージ処理を行う。また、図9に示すように、モデル更新部145は、マージ処理が完了すると、コピーモデル記憶部150に記憶されたコピーモデルを削除する。
The merge method storage unit 160 stores information indicating whether each of these merge methods is valid (ON) or invalid (OFF) in association with each other. The merge method determination unit 147 performs a merge process between the actual model and the copy model based on such a merge method stored in the merge method storage unit 160. Further, the merge method determination unit 147 is in the case where there is a difference in the model element contents between the actual model and the copy model, and there is a model element that does not satisfy the merge method condition stored in the merge method storage unit 160. Performs the merging of the actual model and the copy model based on the operation information input from the input unit 110.
The model update unit 145 performs merge processing between the actual model stored in the model storage unit 130 and the copy model stored in the copy model storage unit 150 based on the determination result of the merge method by the merge method determination unit 147. . Also, as illustrated in FIG. 9, the model update unit 145 deletes the copy model stored in the copy model storage unit 150 when the merge process is completed.

<動作例>
次に、図10を参照して、まず、本発明によるモデル指向開発支援装置100が行うモデル変換処理の動作例の概要を説明する。入力部110にモデル変換処理の実行命令が入力されると、モデル取得部141が、モデル記憶部130に記憶されたモデル要素を読み出す。モデル複製部142は、モデル取得部141が読み出したモデル要素を複製し、コピーモデルとしてコピーモデル記憶部150に記憶させる(ステップS1)。
<Operation example>
Next, with reference to FIG. 10, first, an outline of an operation example of model conversion processing performed by the model-oriented development support apparatus 100 according to the present invention will be described. When an execution instruction for model conversion processing is input to the input unit 110, the model acquisition unit 141 reads the model elements stored in the model storage unit 130. The model duplication unit 142 duplicates the model element read by the model acquisition unit 141 and stores it in the copy model storage unit 150 as a copy model (step S1).

モデル要素変換部143が、コピーモデル記憶部150に記憶された上流工程のモデル要素に基づいて、下流工程のモデル要素を生成する(ステップS2)。モデル内容比較部144が、コピーモデル記憶部150に記憶されたコピーモデルの下流工程のモデル要素と、モデル要素記憶部131に記憶された実モデルの下流工程のモデル要素とを比較し、差分があるか否かを判定する(ステップS3)。ステップS3で、モデル内容比較部144が、コピーモデル記憶部150に記憶されたコピーモデルの下流工程のモデル要素と、モデル要素記憶部131に記憶された実モデルの下流工程のモデル要素とに差分がないと判定すれば(ステップS3:いいえ)、モデル更新部145は、モデル記憶部130に記憶された実モデルの更新を行わずに処理を終了する(ステップS4)。   The model element conversion unit 143 generates a model element for the downstream process based on the model element for the upstream process stored in the copy model storage unit 150 (step S2). The model content comparison unit 144 compares the model element of the downstream process of the copy model stored in the copy model storage unit 150 with the model element of the downstream process of the actual model stored in the model element storage unit 131, and the difference is It is determined whether or not there is (step S3). In step S <b> 3, the model content comparison unit 144 makes a difference between the model element of the downstream process of the copy model stored in the copy model storage unit 150 and the model element of the downstream process of the actual model stored in the model element storage unit 131. If it is determined that there is no data (step S3: No), the model update unit 145 ends the process without updating the actual model stored in the model storage unit 130 (step S4).

一方、ステップS3で、モデル内容比較部144が、コピーモデル記憶部150に記憶されたコピーモデルの下流工程のモデル要素と、モデル要素記憶部131に記憶された実モデルの下流工程のモデル要素とに差分があると判定すれば(ステップS3:はい)、マージ方法判定部147が、各モデル要素の比較結果に基づいて、自動マージを行うか手動マージを行うかのマージ方法の判定処理を行う(ステップS5)。   On the other hand, in step S <b> 3, the model content comparison unit 144 includes the model element of the downstream process of the copy model stored in the copy model storage unit 150, and the model element of the downstream process of the actual model stored in the model element storage unit 131. If it is determined that there is a difference between them (step S3: Yes), the merge method determination unit 147 performs a merge method determination process of whether to perform automatic merging or manual merging based on the comparison result of each model element. (Step S5).

マージ方法判定部147は、全てのモデル要素の比較結果について、マージ方法記憶部160に記憶されたマージ方法の条件に一致するか否かを判定し、ステップS5で抽出された差分の全てについて自動マージを行うことが可能でないと判定すれば(ステップS6:いいえ)、実行可能な自動マージを実行した後に、モデル更新部145は、モデル編集部120による差分のあるモデル要素の編集を受付け、手動によるモデル要素のマージ処理を行う(ステップS7)。一方、マージ方法判定部147が、ステップS5で抽出された差分の全てについて自動マージを行うことが可能であると判定すれば(ステップS6:はい)、モデル更新部145は、コピーモデル記憶部150に記憶されたマージ方法に基づいてモデル変換により生成されたモデル要素のマージ処理を行う(ステップS8)。   The merge method determination unit 147 determines whether or not the comparison results of all model elements match the merge method conditions stored in the merge method storage unit 160, and automatically calculates all the differences extracted in step S5. If it is determined that the merging is not possible (step S6: No), after executing the executable automatic merging, the model updating unit 145 accepts the editing of the model element having a difference by the model editing unit 120, and manually The model element merging process is performed (step S7). On the other hand, if the merge method determination unit 147 determines that it is possible to perform automatic merging for all the differences extracted in step S5 (step S6: Yes), the model update unit 145 determines that the copy model storage unit 150 The model element generated by the model conversion is merged based on the merging method stored in (Step S8).

次に、図11、図12、図13を参照して、上述のステップS5でモデル指向開発支援装置100が行うマージ方法の判定処理について詳細に説明する。
モデル内容比較部144が、上述のステップS3でコピーモデル記憶部150に記憶されたコピーモデルの下流工程のモデル要素と、モデル要素記憶部131に記憶された実モデルの下流工程のモデル要素とに差分があると判定した場合、マージ方法判定部147には、その差分の状態を示す情報が入力される(ステップS10)。
Next, with reference to FIGS. 11, 12, and 13, the merge method determination process performed by the model-oriented development support apparatus 100 in step S <b> 5 described above will be described in detail.
The model content comparison unit 144 converts the copy model downstream process model element stored in the copy model storage unit 150 in step S3 and the actual model downstream process model element stored in the model element storage unit 131. When it is determined that there is a difference, information indicating the state of the difference is input to the merge method determination unit 147 (step S10).

マージ方法判定部147が、実モデルとコピーモデルとの差分の状態が、いずれかのモデルにモデル要素が存在しない差異であると判定した場合(ステップS11:はい)、その存在しないモデルが実モデルであるかコピーモデルであるかを判定する(ステップS12)。マージ方法判定部147は、差異のあるモデル要素が、実モデルに存在せずコピーモデルに存在すると判定した場合は(ステップS13:いいえ)、そのモデル要素を下流要素とするトレース要素が、トレース要素記憶部132に記憶されているか否かを判定する(ステップS14)。   When the merge method determination unit 147 determines that the difference between the actual model and the copy model is a difference in which no model element exists in any model (step S11: Yes), the model that does not exist is the actual model. Or a copy model is determined (step S12). When the merge method determination unit 147 determines that a model element having a difference does not exist in the actual model but exists in the copy model (step S13: No), the trace element having the model element as a downstream element is the trace element. It is determined whether it is stored in the storage unit 132 (step S14).

マージ方法判定部147が、差異のあるモデル要素を下流要素とするトレース要素がトレース要素記憶部132に記憶されていないと判定した場合(ステップS15:いいえ)、実モデルに存在せずコピーモデルのみに存在するそのモデル要素は、モデル要素変換部143によるモデル変換処理で初めて生成されたモデル要素である(ステップS16)。そこで、マージ方法判定部147は、マージ方法記憶部160に記憶されたマージ方法を読み出し、「上流の追加を反映」がONであれば(ステップS17:はい)、自動マージを行うと判定する。「上流の追加を反映」がOFFであれば(ステップS17:いいえ)、手動マージを行うと判定する。   When the merge method determination unit 147 determines that a trace element having a different model element as a downstream element is not stored in the trace element storage unit 132 (step S15: No), only the copy model does not exist in the actual model. The model element existing in the model element is a model element generated for the first time in the model conversion process by the model element conversion unit 143 (step S16). Therefore, the merge method determination unit 147 reads the merge method stored in the merge method storage unit 160, and determines that automatic merging is performed if "reflect upstream addition" is ON (step S17: Yes). If “Upstream addition is reflected” is OFF (step S17: No), it is determined that manual merging is performed.

一方、ステップS15で、マージ方法判定部147が、差異のあるモデル要素を下流要素とするトレース要素がトレース要素記憶部132に記憶されていると判定した場合(ステップS15:はい)、上流工程のモデル要素に基づいて下流工程のモデル要素が生成されたモデル変換の後、下流工程のモデル要素が削除されたものである。そこで、更新日時比較部146が、上流工程のモデル要素の最終更新日時と、対応するトレース要素の最終更新日時とを読み出す。マージ方法判定部147は、上流工程のモデル要素の最終更新日時と、対応するトレース要素の最終更新日時とを比較し、いずれの最終更新日時が新しいかを判定する(ステップS18)。   On the other hand, when the merge method determination unit 147 determines in step S15 that a trace element having a different model element as a downstream element is stored in the trace element storage unit 132 (step S15: Yes), The model element of the downstream process is deleted after the model conversion in which the model element of the downstream process is generated based on the model element. Therefore, the update date / time comparison unit 146 reads the last update date / time of the model element in the upstream process and the last update date / time of the corresponding trace element. The merge method determination unit 147 compares the last update date / time of the model element in the upstream process with the last update date / time of the corresponding trace element, and determines which last update date / time is newer (step S18).

マージ方法判定部147が、上流工程のモデル要素の最終更新日時は対応するトレース要素の最終更新日時よりも新しいと判定した場合(ステップS19:はい)、モデル変換の後に上流工程のモデル要素が変更されたものである(ステップS20)。マージ方法判定部147は、マージ方法記憶部160に記憶されたマージ方法を読み出し、「下流の削除を維持」がONであれば(ステップS21:はい)、自動マージを行うと判定する。「下流の削除を維持」がOFFであれば(ステップS21:いいえ)、手動マージを行うと判定する。   When the merge method determination unit 147 determines that the last update date and time of the model element in the upstream process is newer than the last update date and time of the corresponding trace element (step S19: Yes), the model element in the upstream process is changed after the model conversion. (Step S20). The merge method determination unit 147 reads the merge method stored in the merge method storage unit 160, and determines that automatic merging is performed if “maintain downstream deletion” is ON (step S21: Yes). If “maintain downstream deletion” is OFF (step S21: No), it is determined that manual merging is performed.

一方、ステップS19で、マージ方法判定部147が、上流工程のモデル要素の最終更新日時は対応するトレース要素の最終更新日時より新しくないと判定した場合(ステップS19:いいえ)、モデル変換後に上流工程のモデル要素に変更は加えられてない(ステップS22)。マージ方法判定部147は、マージ方法記憶部160に記憶されたマージ方法を読み出し、「下流の削除を維持」がONであれば(ステップS23:はい)、自動マージを行うと判定する。「下流の削除を維持」がOFFであれば(ステップS23:いいえ)、手動マージを行うと判定する。   On the other hand, when the merge method determination unit 147 determines in step S19 that the last update date and time of the model element in the upstream process is not newer than the last update date and time of the corresponding trace element (step S19: No), the upstream process after the model conversion. No change has been made to the model element (step S22). The merge method determination unit 147 reads the merge method stored in the merge method storage unit 160, and determines that automatic merging is performed if “maintain downstream deletion” is ON (step S23: Yes). If “maintain downstream deletion” is OFF (step S23: No), it is determined that manual merging is performed.

ステップS11で、マージ方法判定部147が、実モデルとコピーモデルとの差異が、いずれかのモデルにモデル要素が存在しない差異でないと判定した場合(ステップS11:いいえ)、図11のステップS30に進む。この場合、実モデルとコピーモデルとのいずれにも対応する下流工程のモデル要素が存在する。更新日時比較部146が、下流工程のモデル要素の最終更新日時と、対応するトレース要素の最終更新日時とをモデル記憶部130から読み出すと、マージ方法判定部147は、いずれの最終更新日時が新しいかを判定する(ステップS30)。   If the merge method determination unit 147 determines in step S11 that the difference between the actual model and the copy model is not a difference in which no model element exists in any model (step S11: No), the process proceeds to step S30 in FIG. move on. In this case, there is a model element of the downstream process corresponding to both the actual model and the copy model. When the update date and time comparison unit 146 reads the last update date and time of the model element in the downstream process and the last update date and time of the corresponding trace element from the model storage unit 130, the merge method determination unit 147 Is determined (step S30).

マージ方法判定部147が、下流工程のモデル要素の最終更新日時は対応するトレース要素の最終更新日時より新しくないと判定した場合(ステップS31:いいえ)、モデル変換の後、上流工程のモデル要素のみが変更されている。そこで、マージ方法判定部147は、マージ方法記憶部160に記憶されたマージ方法を読み出し、「上流の変更を反映」がONであれば(ステップS32:はい)、自動マージを行うと判定する。一方、「上流の変更を反映」がOFFであれば(ステップS33:いいえ)、手動マージを行うと判定する。   When the merge method determination unit 147 determines that the last update date and time of the model element in the downstream process is not newer than the last update date and time of the corresponding trace element (step S31: No), after the model conversion, only the model element in the upstream process Has been changed. Therefore, the merge method determination unit 147 reads the merge method stored in the merge method storage unit 160, and determines that automatic merging is performed if "reflect upstream changes" is ON (step S32: Yes). On the other hand, if “reflect upstream changes” is OFF (step S33: No), it is determined that manual merging is performed.

一方、ステップS31で、マージ方法判定部147が、下流工程のモデル要素の最終更新日時の方が対応するトレース要素の最終更新日時よりも新しいと判定した場合(ステップS31:はい)、モデル変換後に下流工程のモデル要素が変更されている。マージ方法判定部147は、上流工程のモデル要素の最終更新日時と、トレース要素の最終更新日時とのいずれが新しいかを判定する(ステップS34)。   On the other hand, when the merge method determination unit 147 determines in step S31 that the last update date and time of the model element in the downstream process is newer than the last update date and time of the corresponding trace element (step S31: Yes), after model conversion Downstream process model elements have changed. The merge method determination unit 147 determines which of the latest update date / time of the model element in the upstream process and the latest update date / time of the trace element is new (step S34).

マージ方法判定部147が、上流工程のモデル要素の最終更新日時はトレース要素の最終更新日時よりも新しいと判定した場合(ステップS35:はい)、モデル変換の後に、上流工程のモデル要素と下流工程のモデル要素との双方が変更されている。この場合、マージ方法の設定に基づいた自動マージを行うことはできないため、マージ方法判定部147は、手動マージを行うと判定する(ステップS36)。   When the merge method determination unit 147 determines that the last update date and time of the model element in the upstream process is newer than the last update date and time of the trace element (step S35: Yes), after the model conversion, the model element and the downstream process in the upstream process Both model elements have been changed. In this case, since automatic merging based on the setting of the merging method cannot be performed, the merging method determination unit 147 determines that manual merging is performed (step S36).

一方、ステップS35で、マージ方法判定部147が、上流工程のモデル要素の最終更新日時は対応するトレース要素の最終更新日時よりも新しくないと判定した場合(ステップS35:いいえ)、モデル変化の後に下流工程のモデル要素のみが変更されている。この場合、マージ方法判定部147は、マージ方法記憶部160に記憶されたマージ方法を読み出し、「下流の変更を維持」がONであれば(ステップS38:はい)、自動マージを行うと判定する。一方、「下流の変更を維持」がOFFであれば(ステップS38:いいえ)、手動マージを行うと判定する。   On the other hand, if the merge method determination unit 147 determines in step S35 that the last update date / time of the model element in the upstream process is not newer than the last update date / time of the corresponding trace element (step S35: No), after the model change Only the model elements of the downstream process are changed. In this case, the merge method determination unit 147 reads the merge method stored in the merge method storage unit 160, and determines that automatic merging is performed if “maintain downstream changes” is ON (step S38: Yes). . On the other hand, if “maintain downstream changes” is OFF (step S38: No), it is determined that manual merging is performed.

ステップS13で、マージ方法判定部147が、差異のあるモデル要素は実モデルに存在し、コピーモデルに存在しないと判定した場合は(ステップS13:はい)、図13のステップS40に進む。マージ方法判定部147は、下流工程のモデル要素に対応するトレース要素がトレース要素記憶部132に記憶されているか否かを判定する(ステップS40)。マージ方法判定部147が、下流工程のモデル要素に対応するトレース要素がトレース要素記憶部132に記憶されていないと判定した場合(ステップS41:いいえ)、そのモデル要素はモデル要素変換部143によるモデル変換でなく、例えばモデル編集部120に入力される操作情報に応じて生成されたモデル要素である。マージ方法判定部147は、マージ方法記憶部160に記憶されたマージ方法を読み出し(ステップS42)、「下流の追加を維持」がONであれば(ステップS43:はい)、自動マージを行うと判定する。一方、「下流の追加を維持」がOFFであれば(ステップS43:いいえ)、手動マージを行うと判定する。   If the merge method determination unit 147 determines in step S13 that the model element having the difference exists in the actual model and does not exist in the copy model (step S13: Yes), the process proceeds to step S40 in FIG. The merge method determination unit 147 determines whether or not the trace element corresponding to the model element in the downstream process is stored in the trace element storage unit 132 (step S40). When the merge method determination unit 147 determines that the trace element corresponding to the model element in the downstream process is not stored in the trace element storage unit 132 (step S41: No), the model element is a model by the model element conversion unit 143. For example, model elements generated according to operation information input to the model editing unit 120 instead of conversion. The merge method determination unit 147 reads the merge method stored in the merge method storage unit 160 (step S42), and determines that automatic merging is performed if “maintain downstream addition” is ON (step S43: Yes). To do. On the other hand, if “maintain downstream addition” is OFF (step S43: No), it is determined that manual merging is performed.

一方、マージ方法判定部147が、下流工程のモデル要素に対応するトレース要素がトレース要素記憶部132に記憶されていると判定した場合(ステップS41:はい)、モデル変換の後に上流工程のモデル要素が削除されている。この場合、下流工程のモデル要素の最終更新日時と、対応するトレース要素の最終更新日時とのいずれの最終更新日時が新しいかを判定する(ステップS44)。マージ方法判定部147が、下流工程のモデル要素の最終更新日時は対応するトレース要素の最終更新日時よりも新しくないと判定した場合(ステップS45:いいえ)、モデル変換の後に下流工程のモデル要素は変更されていない。マージ方法判定部147は、マージ方法記憶部160に記憶されたマージ方法を読み出し(ステップS48)、「上流の削除を反映」がONであれば(ステップS49:はい)、自動マージを行うと判定する。一方、「上流の削除を反映」がOFFであれば(ステップS49:いいえ)、手動マージを行うと判定する。   On the other hand, when the merge method determination unit 147 determines that the trace element corresponding to the model element in the downstream process is stored in the trace element storage unit 132 (step S41: Yes), the model element in the upstream process after the model conversion. Has been deleted. In this case, it is determined which of the latest update date / time of the model element in the downstream process and the last update date / time of the corresponding trace element is newer (step S44). When the merge method determination unit 147 determines that the last update date and time of the model element in the downstream process is not newer than the last update date and time of the corresponding trace element (step S45: No), the model element in the downstream process is converted after the model conversion. It has not changed. The merge method determination unit 147 reads the merge method stored in the merge method storage unit 160 (step S48), and determines that automatic merging is to be performed if “reflect upstream deletion” is ON (step S49: Yes). To do. On the other hand, if “reflect upstream deletion” is OFF (step S49: No), it is determined that manual merging is performed.

一方、ステップS45で、マージ方法判定部147が、下流工程のモデル要素の最終更新日時は対応するトレース要素の最終更新日時よりも新しいと判定した場合(ステップS45:はい)、下流工程のモデル要素は、モデル変換の後に変更されている。マージ方法判定部147は、マージ方法記憶部160に記憶されたマージ方法を読み出し(ステップS46)、「下流の変更を維持」がONであれば(ステップS47:はい)、自動マージを行うと判定する。一方、「下流の変更を維持」がOFFであれば(ステップS47:いいえ)、手動マージを行うと判定する。   On the other hand, when the merge method determination unit 147 determines in step S45 that the last update date and time of the model element in the downstream process is newer than the last update date and time of the corresponding trace element (step S45: Yes), the model element in the downstream process Has been changed after model conversion. The merge method determination unit 147 reads the merge method stored in the merge method storage unit 160 (step S46), and determines that automatic merging is performed if “maintain downstream changes” is ON (step S47: Yes). To do. On the other hand, if “maintain downstream changes” is OFF (step S47: No), it is determined that manual merging is performed.

次に、図14から図18を参照して、モデル変換のマージ処理の類型を例示して説明する。図14は、(a)と(b)と(c)との順に動作過程が遷移していることを示す。(a)の列に示すように、初期状態ではモデル要素「A」(0)が存在する実モデルが示される。ここで、「A」はモデル要素IDであり、(0)は最終更新日時を示す。ここでは、最終更新日時は、便宜的に、日時の前後に応じて1ずつ増加する整数によって示す。例えば、(0)は(1)よりも最終更新日時が古いことを表し、(1)は(2)よりも最終更新日時が古いことを表し、(1)と(1)は最終更新日時が同時であることを示す。(b)の列には、実モデルからコピーモデルが生成され、コピーモデルの上流工程のモデル要素「A」から下流工程のモデル要素「A´」が生成されており、トレース要素が生成されている。また、実モデルとコピーモデルとが比較される。(c)の列には、自動マージが行われた後の実モデルの状態が示される。このように、四角形で表される(ア)のモデル要素を上流工程のモデル要素とし、円計で表される(イ)をトレース要素とし、八角形で表される(ウ)のモデル要素を下流工程のモデル要素とする。   Next, with reference to FIG. 14 to FIG. 18, an example of a model conversion merge process will be described. FIG. 14 shows that the operation process transitions in the order of (a), (b), and (c). As shown in the column (a), the actual model in which the model element “A” (0) exists is shown in the initial state. Here, “A” is the model element ID, and (0) indicates the last update date and time. Here, for the sake of convenience, the last update date and time is indicated by an integer that increases by one according to before and after the date and time. For example, (0) indicates that the last update date is older than (1), (1) indicates that the last update date is older than (2), and (1) and (1) indicate that the last update date is Indicates simultaneous. In the column (b), the copy model is generated from the actual model, the model element “A ′” of the downstream process is generated from the model element “A” of the upstream process of the copy model, and the trace element is generated. Yes. Also, the actual model and the copy model are compared. In the column (c), the state of the real model after the automatic merging is performed is shown. Thus, the model element (a) represented by a rectangle is the model element of the upstream process, the model element (a) represented by a circle is the trace element, and the model element (c) represented by an octagon is It is a model element for downstream processes.

図14では、(a)の状態で入力部110にモデル変換の実行命令が入力されると、(b)に示すようにモデル取得部141によってモデル記憶部130に記憶されたモデル要素が読み出されてコピーモデル記憶部150にコピーされ、コピーモデルのモデル要素「A」(0)に基づいて下流工程のモデル要素「A´」(1)とトレース要素(0)が自動生成される。そして、モデル更新部136によって実モデルとコピーモデルとが比較されて、マージが行われて(c)に示すように上流工程のモデル要素「A」(0)と下流工程のモデル要素「A´」(1)とが、実モデルとしてモデル記憶部130に記憶される。このケースは、上述の処理例ではステップS16を経由するケースであり、下流工程のモデル要素が初めて生成された場合である。この後に、上流工程のモデル要素「A」(0)または下流工程のモデル要素「A´」(1)のいずれかが削除されるような編集が行われる場合がある。   In FIG. 14, when a model conversion execution instruction is input to the input unit 110 in the state of (a), the model elements stored in the model storage unit 130 are read by the model acquisition unit 141 as illustrated in (b). Then, it is copied to the copy model storage unit 150, and the model element “A ′” (1) and the trace element (0) of the downstream process are automatically generated based on the model element “A” (0) of the copy model. Then, the model update unit 136 compares the actual model with the copy model, and merges them. As shown in (c), the model element “A” (0) in the upstream process and the model element “A ′” in the downstream process are displayed. "(1)" is stored in the model storage unit 130 as an actual model. This case is a case through step S16 in the above-described processing example, and is a case where a model element for the downstream process is generated for the first time. Thereafter, editing may be performed so that either the model element “A” (0) in the upstream process or the model element “A ′” (1) in the downstream process is deleted.

図15では、(a)に示すように上流工程のモデル要素「A」(0)と、上流工程のモデル要素「A」(0)に基づいて生成された下流工程のモデル要素「A´」(1)と、下流工程のモデル要素「A´」が生成された際に同時に生成されたトレース要素(1)とが存在する。入力部110にモデル変換の実行命令が入力されると、(b)に示すようにモデル取得部141によってモデル記憶部130に記憶されたモデル要素が読み出されてコピーモデル記憶部150にコピーされ、コピーモデルのモデル要素「A」(0)に基づいて下流工程のモデル要素「A´」(2)が再度自動生成される。そして、モデル更新部136によって実モデルとコピーモデルとが比較される。ここでは、(c)に示されるように、比較の結果、モデル要素の内容に差分が無く、モデル記憶部130に記憶される実モデルには更新を行わずにモデル変換処理が終了した例が示される。   In FIG. 15, as shown in FIG. 15A, the model element “A” (0) of the upstream process and the model element “A ′” of the downstream process generated based on the model element “A” (0) of the upstream process. (1) and the trace element (1) generated simultaneously when the model element “A ′” of the downstream process is generated. When an execution instruction for model conversion is input to the input unit 110, the model elements stored in the model storage unit 130 are read by the model acquisition unit 141 and copied to the copy model storage unit 150, as shown in FIG. The model element “A ′” (2) in the downstream process is automatically generated again based on the model element “A” (0) in the copy model. Then, the model update unit 136 compares the actual model with the copy model. Here, as shown in (c), as a result of the comparison, there is no difference in the contents of model elements, and the model conversion process is completed without updating the actual model stored in the model storage unit 130. Indicated.

図16では、(a)に示すように上流工程のモデル要素「A」(0)と、上流工程のモデル要素「A」(0)に基づいて生成された下流工程のモデル要素「A´」(1)と、下流工程のモデル要素「A´」が生成された際に同時に生成されたトレース要素(1)とが存在する。そして、(b)に示されるように、モデル編集部120に入力される操作情報に応じて、下流工程のモデル要素「A´」(1)が変更されてモデル要素「A´」(2)としてモデル記憶部130に記憶されている。ここでは、(c)に示されるように、自動マージによるマージ方法に条件が一致せず、(d)に示されるように手動によりマージが行われ、下流工程のモデル要素が更新されている。なお、ここでは、自動マージによるマージ方法に条件が一致すれば、自動によりマージが行われ、下流工程のモデル要素が更新されない。   In FIG. 16, as shown in FIG. 16A, the model element “A” (0) of the upstream process and the model element “A ′” of the downstream process generated based on the model element “A” (0) of the upstream process. (1) and the trace element (1) generated simultaneously when the model element “A ′” of the downstream process is generated. Then, as shown in (b), the model element “A ′” (1) of the downstream process is changed in accordance with the operation information input to the model editing unit 120, and the model element “A ′” (2) is changed. Is stored in the model storage unit 130. Here, as shown in (c), the conditions do not match the merge method by automatic merging, and as shown in (d), the merge is performed manually, and the model elements in the downstream process are updated. Here, if the condition matches the merge method by automatic merging, merging is automatically performed, and the model element of the downstream process is not updated.

図17では、(a)に示すように上流工程のモデル要素「A」(0)と、上流工程のモデル要素「A」(0)に基づいて生成された下流工程のモデル要素「A´」(1)と、下流工程のモデル要素「A´」が生成された際に同時に生成されたトレース要素(1)とが存在する。そして、(b)に示すように下流工程のモデル要素「A´」(1)が削除されている。ここでは、(c)に示すようにモデル要素変換部143により上流工程のモデル要素「A」(0)に基づいてコピーモデルのモデル要素「A´」(2)が生成され、比較の結果、(d)に示されるように、手動により新たに生成された下流工程のモデル要素の追加が反映されている。   In FIG. 17, as shown in FIG. 17A, the model element “A” (0) of the upstream process and the model element “A ′” of the downstream process generated based on the model element “A” (0) of the upstream process. (1) and the trace element (1) generated simultaneously when the model element “A ′” of the downstream process is generated. Then, as shown in (b), the model element “A ′” (1) in the downstream process is deleted. Here, as shown in (c), the model element conversion unit 143 generates the model element “A ′” (2) of the copy model based on the model element “A” (0) of the upstream process. As shown in (d), the addition of the model element of the downstream process newly generated manually is reflected.

図18では、(a)に示すように上流工程のモデル要素「A」(0)と、上流工程のモデル要素「A」(0)に基づいて生成された下流工程のモデル要素「A´」(1)と、下流工程のモデル要素「A´」(1)が生成された際に同時に生成されたトレース要素(1)とが存在する。そして、(b)に示されるように、上流工程のモデル要素「A」が削除されている。ここで、(c)に示すようにモデル変換処理が行われると、実モデルの上流工程のモデル要素は削除されているため、コピーモデルにはモデル要素が生成されない。ここで、マージ方法が「上流の削除を反映」がONであれば、(d)に示すように上流工程のモデル要素と下流工程のモデル要素が、ともに削除された状態でモデル記憶部130に記憶される。また、この場合でも、必要であれば(e)のように手動により下流工程のモデル「A´´」(2)を生成することができる。   In FIG. 18, as shown in FIG. 18A, the model element “A” (0) of the upstream process and the model element “A ′” of the downstream process generated based on the model element “A” (0) of the upstream process. (1) and a trace element (1) generated simultaneously when the model element “A ′” (1) of the downstream process is generated. As shown in (b), the model element “A” of the upstream process is deleted. Here, when the model conversion process is performed as shown in (c), the model element is not generated in the copy model because the model element in the upstream process of the actual model is deleted. Here, if the merge method “reflect upstream deletion” is ON, as shown in (d), the model element in the upstream process and the model element in the downstream process are both deleted in the model storage unit 130. Remembered. Also in this case, if necessary, the downstream process model “A ″” (2) can be manually generated as shown in (e).

以上説明したように、本実施形態によれば、モデル指向開発支援装置100による自動のモデル変換が行われモデル要素が生成された後に、生成されたモデル要素に対してユーザーからの操作情報に応じた手動の変更があった場合にも、その変更に応じてモデル変換を行うことが可能となる。例えば、上流工程のモデル要素に変更を加えた場合、下流工程のモデル要素に変更を加えた場合、上流工程と下流工程のモデル要素に変更を加えた場合などを、モデル要素自体の最終更新日時とトレース要素の最終更新日時とから判定することが可能となる。また、上流工程と下流工程のモデル要素に変更を加えた場合などには、自動ではマージを行えないような何らかの意図がある場合があるので、ユーザーによる手動のマージを行うことが可能となる。   As described above, according to the present embodiment, after automatic model conversion by the model-oriented development support apparatus 100 is performed and a model element is generated, the generated model element is subjected to operation information from the user. Even if there is a manual change, model conversion can be performed according to the change. For example, when the model element of the upstream process is changed, when the model element of the downstream process is changed, when the model element of the upstream process and the downstream process is changed, etc. And the last update date / time of the trace element. In addition, when there is a change in the model elements of the upstream process and the downstream process, there is a case where there is an intention that the merging cannot be performed automatically, so that manual merging by the user can be performed.

また、本実施形態によれば、(1)ユーザーにより修正されたモデル要素は、モデル変換処理によって上書きされることなく保持される、(2)ユーザーが意図的に削除したモデル要素が、モデル変換処理によって再生成されることがない、(3)ユーザーが意図的に追加したモデルが、モデル変換処理によって削除されることがない、(4)ユーザーが修正していないモデルは要素は、モデル変換処理によって上書きされ上流工程の変更に追従する、(5)上記(1)〜(3)に該当する条件をリストアップし、ユーザーによる編集に委ねて矛盾が発生していないかをユーザーに確認させることができる、(6)上記(1)〜(3)に関わらず、強制的にモデル変換処理を行ってモデル要素を上書きする、などのモデル変換処理が可能となる。   Further, according to the present embodiment, (1) the model element modified by the user is retained without being overwritten by the model conversion process, and (2) the model element intentionally deleted by the user is converted into the model (3) The model added intentionally by the user is not deleted by the model conversion process. (4) The model is not modified by the user. (5) List the conditions corresponding to (1) to (3) above, overwritten by processing, and let the user confirm whether there is a contradiction by leaving it to editing by the user (6) Regardless of (1) to (3) above, it is possible to perform model conversion processing such as forcibly performing model conversion processing and overwriting model elements. .

なお、本発明における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりモデル変換処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。   Note that a program for realizing the function of the processing unit in the present invention is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed to perform model conversion processing. You may go. Here, the “computer system” includes an OS and hardware such as peripheral devices. The “computer system” includes a WWW system having a homepage providing environment (or display environment). The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Further, the “computer-readable recording medium” refers to a volatile memory (RAM) in a computer system that becomes a server or a client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. In addition, those holding programs for a certain period of time are also included.

また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。   The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.

本発明の一実施形態によるモデル指向開発支援装置の構成を示す図である。It is a figure which shows the structure of the model orientation development assistance apparatus by one Embodiment of this invention. 本発明の一実施形態によるモデル指向開発の概念データ例を示す図である。It is a figure which shows the example of conceptual data of the model-oriented development by one Embodiment of this invention. 本発明の一実施形態によるモデル指向開発の変換ルール例を示す図である。It is a figure which shows the example of a conversion rule of model-oriented development by one Embodiment of this invention. 本発明の一実施形態によるモデル要素記憶部に記憶されるデータ例を示す図である。It is a figure which shows the example of data memorize | stored in the model element memory | storage part by one Embodiment of this invention. 本発明の一実施形態によるトレース要素記憶部に記憶されるデータ例を示す図である。It is a figure which shows the example of data memorize | stored in the trace element memory | storage part by one Embodiment of this invention. 本発明の一実施形態によるモデル要素の木構造の概念を示す図である。It is a figure which shows the concept of the tree structure of the model element by one Embodiment of this invention. 本発明の一実施形態による詳細設計工程のモデル要素のデータ例を示す図である。It is a figure which shows the example of data of the model element of the detailed design process by one Embodiment of this invention. 本発明の一実施形態によるプログラム設計工程のモデル要素のデータ例を示す図である。It is a figure which shows the example of data of the model element of the program design process by one Embodiment of this invention. 本発明の一実施形態によるモデル変換処理の概念を示す図である。It is a figure which shows the concept of the model conversion process by one Embodiment of this invention. 本発明の一実施形態によるモデル指向開発支援装置の動作例概要を示すフローチャートである。It is a flowchart which shows the operation example outline | summary of the model orientation development assistance apparatus by one Embodiment of this invention. 本発明の一実施形態によるモデル指向開発支援装置の動作例を示すフローチャートである。It is a flowchart which shows the operation example of the model orientation development assistance apparatus by one Embodiment of this invention. 本発明の一実施形態によるモデル指向開発支援装置の動作例を示すフローチャートである。It is a flowchart which shows the operation example of the model orientation development assistance apparatus by one Embodiment of this invention. 本発明の一実施形態によるモデル指向開発支援装置の動作例を示すフローチャートである。It is a flowchart which shows the operation example of the model orientation development assistance apparatus by one Embodiment of this invention. 本発明の一実施形態によるマージ処理の一類型を示す図である。It is a figure which shows one type of merge processing by one Embodiment of this invention. 本発明の一実施形態によるマージ処理の一類型を示す図である。It is a figure which shows one type of merge processing by one Embodiment of this invention. 本発明の一実施形態によるマージ処理の一類型を示す図である。It is a figure which shows one type of merge processing by one Embodiment of this invention. 本発明の一実施形態によるマージ処理の一類型を示す図である。It is a figure which shows one type of merge processing by one Embodiment of this invention. 本発明の一実施形態によるマージ処理の一類型を示す図である。It is a figure which shows one type of merge processing by one Embodiment of this invention.

符号の説明Explanation of symbols

100 モデル指向開発支援装置
110 入力部
120 モデル編集部
130 モデル記憶部
131 モデル要素記憶部
132 トレース要素記憶部
140 制御部
141 モデル取得部
142 モデル複製部
143 モデル要素変換部
144 モデル内容比較部
146 更新日時比較部
145 モデル更新部
147 マージ方法判定部
150 コピーモデル記憶部
160 マージ方法記憶部
DESCRIPTION OF SYMBOLS 100 Model oriented development support apparatus 110 Input part 120 Model edit part 130 Model memory | storage part 131 Model element memory | storage part 132 Trace element memory | storage part 140 Control part 141 Model acquisition part 142 Model duplication part 143 Model element conversion part 144 Model content comparison part 146 Update Date and time comparison unit 145 Model update unit 147 Merge method determination unit 150 Copy model storage unit 160 Merge method storage unit

Claims (6)

開発対象であるソフトウェアシステムを構成する各機能をモデル化した各モデル要素を、抽象概念により表す上流工程から、ソースコードにより表す下流工程までの複数工程に階層化して行う前記ソフトウェアシステムの設計および開発を支援するモデル指向開発支援装置であって、
前記複数工程のうち第1の工程に含まれる前記各モデル要素と、前記第1の工程に対応する下流工程となる第2の工程に含まれる前記各モデル要素と、前記それぞれのモデル要素毎に、当該モデル要素が記憶された日時を示す更新日時とが予め記憶されているモデル記憶部と、
前記第1の工程に含まれる前記各モデル要素が複製されたコピーモデルが記憶されるコピーモデル記憶部と、
前記第1の工程の各モデル要素に基づいて、前記第2の工程の各モデル要素を生成するモデル変換要求の入力を受付ける入力部と、
前記入力部に前記モデル変換要求が入力されると、前記第1の工程の各モデル要素を複製して前記コピーモデル記憶部に記憶させるモデル複製部と、
予め定められたモデル変換ルールに基づいて、前記コピーモデル記憶部に記憶された前記第1の工程の各モデル要素に応じた前記第2の工程の各モデル要素を生成して前記コピーモデル記憶部に記憶させ、かつ、前記第1の工程の各モデル要素を識別する上流モデル要素識別情報と、当該第1の工程の各モデル要素に基づいて生成した前記第2の工程のモデル要素を識別する下流モデル要素識別情報と、前記第2の工程のモデル要素を生成した日時を示す更新日時とが対応付けられたトレース要素を生成するモデル要素変換部と、
前記モデル要素変換部が生成した前記トレース要素が記憶されるトレース要素記憶部と、
前記モデル要素変換部に生成され、前記コピーモデル記憶部に記憶された前記第2の工程の各モデル要素の内容と、前記モデル記憶部に記憶された前記第2の工程の各モデル要素の内容とを比較し、前記内容が異なるか否かを判定するモデル内容比較部と、
前記モデル内容比較部が、前記内容が異なると判定した場合、前記モデル記憶部に記憶された前記第1の工程の各モデル要素の前記更新日時と、前記第2の工程の各モデル要素の前記更新日時と、当該モデル要素に対応する前記トレース要素に含まれる前記更新日時とを比較し、更新日時が異なるか否かを判定する更新日時比較部と、
前記更新日時比較部が、前記更新日時が異なると判定した場合、予め定められた手順に基づいて、前記コピーモデル記憶部に記憶された前記各モデル要素と、前記モデル記憶部に記憶された前記モデル要素とを統合して前記モデル記憶部に記憶させるモデル更新部と、
を備えることを特徴とするモデル指向開発支援装置。
Design and development of the software system in which each model element that models each function constituting the software system to be developed is hierarchized into a plurality of processes from an upstream process represented by an abstract concept to a downstream process represented by a source code A model-oriented development support device that supports
For each model element included in the second process, which is a downstream process corresponding to the first process, and each model element included in the first process among the plurality of processes. A model storage unit in which an update date and time indicating the date and time when the model element is stored is stored in advance;
A copy model storage unit for storing a copy model in which each model element included in the first step is copied;
An input unit that receives an input of a model conversion request for generating each model element of the second step based on each model element of the first step;
When the model conversion request is input to the input unit, a model duplication unit that duplicates each model element of the first step and stores it in the copy model storage unit;
Based on a predetermined model conversion rule, the copy model storage unit generates each model element of the second step according to each model element of the first step stored in the copy model storage unit And identifying the model element of the second step generated based on the upstream model element identification information for identifying each model element of the first step and each model element of the first step A model element conversion unit that generates a trace element in which downstream model element identification information is associated with an update date and time indicating a date and time when the model element of the second step is generated;
A trace element storage unit that stores the trace elements generated by the model element conversion unit;
Contents of each model element of the second step generated in the model element conversion unit and stored in the copy model storage unit, and contents of each model element of the second step stored in the model storage unit And a model content comparison unit that determines whether or not the content is different,
When the model content comparison unit determines that the content is different, the update date and time of each model element of the first step stored in the model storage unit and the model element of the second step An update date and time comparison unit that compares the update date and time and the update date and time included in the trace element corresponding to the model element and determines whether or not the update date and time are different;
When the update date and time comparison unit determines that the update date and time are different, based on a predetermined procedure, the model elements stored in the copy model storage unit and the model storage unit stored in the model storage unit A model update unit that integrates model elements and stores them in the model storage unit;
A model-oriented development support apparatus characterized by comprising:
前記更新日時比較部が、前記更新日時が異なると判定した場合、前記モデル要素に記憶された前記モデル要素と、前記コピーモデル記憶部に記憶された前記モデル要素のいずれの前記モデル要素を優先して前記モデル要素を統合するかを示す統合手順が記憶される統合手順記憶部と、
前記モデル更新部は、前記統合手順記憶部に記憶されている前記統合手順に基づいて、前記コピーモデル記憶部に記憶された前記各モデル要素と、前記モデル記憶部に記憶された前記モデル要素とを統合して前記モデル記憶部に記憶させる
ことを特徴とする請求項1に記載のモデル指向開発支援装置。
When the update date and time comparison unit determines that the update date and time are different, the model element stored in the model element and the model element stored in the copy model storage unit are given priority. An integrated procedure storage unit in which an integration procedure indicating whether to integrate the model elements is stored;
The model update unit includes the model elements stored in the copy model storage unit and the model elements stored in the model storage unit based on the integration procedure stored in the integration procedure storage unit. The model-oriented development support apparatus according to claim 1, wherein the model storage unit is integrated and stored in the model storage unit.
前記入力部は、前記モデル記憶部に記憶された前記モデル要素の内容を変更する変更情報の入力を受付け、
前記入力部に入力される前記変更情報に応じて、前記モデル記憶部に記憶された前記モデル要素の内容を変更し、当該モデル要素に対応する前記更新日時として当該変更を行った日時を対応付けて前記モデル記憶部に記憶させるモデル編集部と、
を備えることを特徴とする請求項1または請求項2に記載のモデル指向開発支援装置。
The input unit receives an input of change information for changing a content of the model element stored in the model storage unit;
The content of the model element stored in the model storage unit is changed in accordance with the change information input to the input unit, and the date and time of the change is associated as the update date and time corresponding to the model element A model editing unit to be stored in the model storage unit,
The model-oriented development support apparatus according to claim 1, further comprising:
前記統合手順記憶部には、前記モデル記憶部に記憶された前記各モデル要素と、当該モデル要素に対応する前記トレース要素の存在の有無又はそれぞれの前記更新日時の異同に基づいて定められた条件に応じて前記統合手順が記憶され、
前記モデル更新部は、前記各モデル要素の全てについて、当該モデル要素に対応する前記トレース要素の存在の有無又はそれぞれの前記更新日時の異同が前記条件に一致するか否かを判定し、全て一致すれば、前記予め定められた手順に基づいて前記コピーモデル記憶部に記憶された前記各モデル要素と、前記モデル記憶部に記憶された前記モデル要素とを統合し、一致しないモデル要素が存在すれば、前記入力部に入力される前記モデル要素の前記変更情報に応じて前記統合を行う
ことを特徴とする請求項3に記載されたモデル指向開発支援装置。
In the integrated procedure storage unit, each of the model elements stored in the model storage unit, the presence / absence of the trace element corresponding to the model element, or a condition determined based on the difference in the update date / time And the integration procedure is stored according to
The model update unit determines, for all of the model elements, whether or not the trace element corresponding to the model element exists or whether each of the update dates / times matches the condition, and all match Then, the model elements stored in the copy model storage unit based on the predetermined procedure are integrated with the model elements stored in the model storage unit, and there is a model element that does not match. The model-oriented development support apparatus according to claim 3, wherein the integration is performed according to the change information of the model element input to the input unit.
開発対象であるソフトウェアシステムを構成する各機能をモデル化した各モデル要素を、抽象概念により表す上流工程から、ソースコードにより表す下流工程までの複数工程に階層化して行う前記ソフトウェアシステムの設計および開発を支援し、前記複数工程のうち第1の工程に含まれる前記各モデル要素と、前記第1の工程に対応する下流工程となる第2の工程に含まれる前記各モデル要素と、前記それぞれのモデル要素毎に、当該モデル要素が記憶された日時を示す更新日時とが予め記憶されているモデル記憶部と、前記第1の工程に含まれる前記各モデル要素が複製されたコピーモデルが記憶されるコピーモデル記憶部と、前記第1の工程に含まれる前記各モデル要素に対応する前記第2の工程に含まれる前記各モデル要素との関連性を示すトレース要素が記憶されるトレース要素記憶部とを備えるモデル指向開発支援装置を用いたモデル指向開発支援方法であって、
入力部が、前記第1の工程の各モデル要素に基づいて、前記第2の工程の各モデル要素を生成するモデル変換要求の入力を受付けるステップと、
モデル複製部が、前記入力部に前記モデル変換要求が入力されると、前記第1の工程の各モデル要素を複製して前記コピーモデル記憶部に記憶させるステップと、
モデル要素変換部が、予め定められたモデル変換ルールに基づいて、前記コピーモデル記憶部に記憶された前記第1の工程の各モデル要素に応じた前記第2の工程の各モデル要素を生成して前記コピーモデル記憶部に記憶させ、かつ、前記第1の工程の各モデル要素を識別する上流モデル要素識別情報と、当該第1の工程の各モデル要素に基づいて生成した前記第2の工程のモデル要素を識別する下流モデル要素識別情報と、前記第2の工程のモデル要素を生成した日時を示す更新日時とが対応付けられたトレース要素を生成し、前記トレース要素記憶部に記憶させるステップと、
モデル内容比較部が、前記モデル要素変換部に生成され、前記コピーモデル記憶部に記憶された前記第2の工程の各モデル要素の内容と、前記モデル記憶部に記憶された前記第2の工程の各モデル要素の内容とを比較し、前記内容が異なるか否かを判定するステップと、
更新日時比較部が、前記モデル内容比較部により前記内容が異なると判定された場合、前記モデル記憶部に記憶された前記第1の工程の各モデル要素の前記更新日時と、前記第2の工程の各モデル要素の前記更新日時と、当該モデル要素に対応する前記トレース要素に含まれる前記更新日時とを比較し、更新日時が異なるか否かを判定するステップと、
モデル更新部が、前記更新日時比較部により前記更新日時が異なると判定された場合、予め定められた手順に基づいて、前記コピーモデル記憶部に記憶された前記各モデル要素と、前記モデル記憶部に記憶された前記モデル要素とを統合して前記モデル記憶部に記憶させるステップと、
を備えることを特徴とするモデル指向開発支援方法。
Design and development of the software system in which each model element that models each function constituting the software system to be developed is hierarchized into a plurality of processes from an upstream process represented by an abstract concept to a downstream process represented by a source code The model elements included in the first process among the plurality of processes, the model elements included in the second process which is a downstream process corresponding to the first process, and the respective processes. For each model element, a model storage unit in which an update date and time indicating the date and time when the model element is stored is stored in advance, and a copy model in which each model element included in the first step is duplicated is stored. Between the copy model storage unit and the model elements included in the second step corresponding to the model elements included in the first step The A model-oriented development support method using a model-oriented development tool and a tracing element storage unit which trace elements are stored indicating,
An input unit receiving an input of a model conversion request for generating each model element of the second process based on each model element of the first process;
When the model duplication unit inputs the model conversion request to the input unit, the model duplication unit duplicates each model element of the first step and stores it in the copy model storage unit;
The model element conversion unit generates each model element of the second step according to each model element of the first step stored in the copy model storage unit based on a predetermined model conversion rule. The second model generated based on the upstream model element identification information that is stored in the copy model storage unit and identifies each model element of the first process, and each model element of the first process A step of generating a trace element in which downstream model element identification information for identifying the model element is associated with an update date and time indicating a date and time when the model element of the second step is generated and stored in the trace element storage unit When,
A model content comparison unit is generated in the model element conversion unit and stored in the copy model storage unit. The content of each model element in the second step and the second step stored in the model storage unit Comparing the content of each model element to determine whether the content is different;
When the update date and time comparison unit determines that the content is different by the model content comparison unit, the update date and time of each model element of the first step stored in the model storage unit and the second step Comparing the update date and time of each model element with the update date and time included in the trace element corresponding to the model element, and determining whether or not the update date and time are different;
When the model update unit determines that the update date / time is different by the update date / time comparison unit, based on a predetermined procedure, each model element stored in the copy model storage unit, and the model storage unit Integrating and storing the model elements stored in the model storage unit;
A model-oriented development support method characterized by comprising:
開発対象であるソフトウェアシステムを構成する各機能をモデル化した各モデル要素を、抽象概念により表す上流工程から、ソースコードにより表す下流工程までの複数工程に階層化して行う前記ソフトウェアシステムの設計および開発を支援し、前記複数工程のうち第1の工程に含まれる前記各モデル要素と、前記第1の工程に対応する下流工程となる第2の工程に含まれる前記各モデル要素と、前記それぞれのモデル要素毎に、当該モデル要素が記憶された日時を示す更新日時とが予め記憶されているモデル記憶部と、前記第1の工程に含まれる前記各モデル要素が複製されたコピーモデルが記憶されるコピーモデル記憶部と、前記第1の工程に含まれる前記各モデル要素に対応する前記第2の工程に含まれる前記各モデル要素との関連性を示すトレース要素が記憶されるトレース要素記憶部とを備えるモデル指向開発支援装置のコンピュータに、
前記第1の工程の各モデル要素に基づいて、前記第2の工程の各モデル要素を生成するモデル変換要求の入力を受付けるステップと、
記モデル変換要求が入力されると、前記第1の工程の各モデル要素を複製して前記コピーモデル記憶部に記憶させるステップと、
予め定められたモデル変換ルールに基づいて、前記コピーモデル記憶部に記憶された前記第1の工程の各モデル要素に応じた前記第2の工程の各モデル要素を生成して前記コピーモデル記憶部に記憶させ、かつ、前記第1の工程の各モデル要素を識別する上流モデル要素識別情報と、当該第1の工程の各モデル要素に基づいて生成した前記第2の工程のモデル要素を識別する下流モデル要素識別情報と、前記第2の工程のモデル要素を生成した日時を示す更新日時とが対応付けられたトレース要素を生成し、前記トレース要素記憶部に記憶させるステップと、
記コピーモデル記憶部に記憶された前記第2の工程の各モデル要素の内容と、前記モデル記憶部に記憶された前記第2の工程の各モデル要素の内容とを比較し、前記内容が異なるか否かを判定するステップと、
容が異なると判定された場合、前記モデル記憶部に記憶された前記第1の工程の各モデル要素の前記更新日時と、前記第2の工程の各モデル要素の前記更新日時と、当該モデル要素に対応する前記トレース要素に含まれる前記更新日時とを比較し、更新日時が異なるか否かを判定するステップと、
新日時が異なると判定された場合、予め定められた手順に基づいて、前記コピーモデル記憶部に記憶された前記各モデル要素と、前記モデル記憶部に記憶された前記モデル要素とを統合して前記モデル記憶部に記憶させるステップと、
を実行させるモデル指向開発支援プログラム。
Design and development of the software system in which each model element that models each function constituting the software system to be developed is hierarchized into a plurality of processes from an upstream process represented by an abstract concept to a downstream process represented by a source code The model elements included in the first process among the plurality of processes, the model elements included in the second process which is a downstream process corresponding to the first process, and the respective processes. For each model element, a model storage unit in which an update date and time indicating the date and time when the model element is stored is stored in advance, and a copy model in which each model element included in the first step is duplicated is stored. Between the copy model storage unit and the model elements included in the second step corresponding to the model elements included in the first step The computer model-oriented development tool and a tracing element storage unit which trace elements are stored indicating a
Receiving an input of a model conversion request for generating each model element of the second process based on each model element of the first process;
When the front SL model transformation request is input, the steps of replicating each model element of the first step is stored in the copy model storage unit,
Based on a predetermined model conversion rule, the copy model storage unit generates each model element of the second step according to each model element of the first step stored in the copy model storage unit And identifying the model element of the second step generated based on the upstream model element identification information for identifying each model element of the first step and each model element of the first step Generating a trace element in which downstream model element identification information is associated with an update date and time indicating a date and time when the model element of the second step is generated, and storing the trace element in the trace element storage unit;
Comparing the content of each model element before Symbol copy model storage unit on the stored second step, the content of each model element of the model stored the second memory in the unit step, said content Determining whether they are different, and
If the contents is determined that different, said the update date and time of each model element of the model storage said first stored in the unit step, and the update date and time of each model element of the second step, the model Comparing the update date and time included in the trace element corresponding to an element to determine whether the update date and time are different;
If update date is determined to differ, based on a predetermined procedure, and integrated with said copy model memory each model element stored in the unit, and the model elements stored in the model storage unit Storing in the model storage unit;
A model-oriented development support program that runs
JP2008228590A 2008-09-05 2008-09-05 Model-oriented development support device, model-oriented development support method, and model-oriented development support program Expired - Fee Related JP5111308B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008228590A JP5111308B2 (en) 2008-09-05 2008-09-05 Model-oriented development support device, model-oriented development support method, and model-oriented development support program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008228590A JP5111308B2 (en) 2008-09-05 2008-09-05 Model-oriented development support device, model-oriented development support method, and model-oriented development support program

Publications (2)

Publication Number Publication Date
JP2010061543A JP2010061543A (en) 2010-03-18
JP5111308B2 true JP5111308B2 (en) 2013-01-09

Family

ID=42188246

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008228590A Expired - Fee Related JP5111308B2 (en) 2008-09-05 2008-09-05 Model-oriented development support device, model-oriented development support method, and model-oriented development support program

Country Status (1)

Country Link
JP (1) JP5111308B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6618556B2 (en) * 2018-01-27 2019-12-11 有限会社シェアリングシード Source code management / generation program

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3847932B2 (en) * 1997-12-26 2006-11-22 富士通株式会社 Program creation support apparatus and program storage medium thereof
JP2007047971A (en) * 2005-08-09 2007-02-22 Fujitsu Ten Ltd Individual program generation apparatus and method
JP2007122587A (en) * 2005-10-31 2007-05-17 Hitachi Ltd Information system design and development method, terminal device, and program
JP4412674B2 (en) * 2007-04-18 2010-02-10 インターナショナル・ビジネス・マシーンズ・コーポレーション Apparatus and method for supporting model-driven development

Also Published As

Publication number Publication date
JP2010061543A (en) 2010-03-18

Similar Documents

Publication Publication Date Title
CN108762743B (en) Data table operation code generation method and device
US7735062B2 (en) Software development system and method
Potvin et al. Why Google stores billions of lines of code in a single repository
KR100661393B1 (en) Website Management System and Method Applying Web Programming Environment
JP3946057B2 (en) Consistency inspection support method and consistency inspection support system
JP4907610B2 (en) Software configuration management method and system
US8826224B2 (en) Apparatus and method for supporting model-driven development
US20060168577A1 (en) Software development system and method
CN105144088A (en) Association of metadata with source code and applications and services based on it
US20160170719A1 (en) Software database system and process of building and operating the same
US20040216084A1 (en) System and method of managing web content
US20090083268A1 (en) Managing variants of artifacts in a software process
JP4613214B2 (en) Software automatic configuration device
US7886284B2 (en) Using a backend simulator to test and develop xforms templates before linking the xforms templates to backend data processing systems
US8527254B2 (en) Simulator engine development system and simulator engine development method
CN117950652A (en) Component ecological application development method based on low-code platform
JPH10254689A (en) Application configuration design support method for client / server system
WO2002046909A1 (en) Automatically deploy and upgrade an application based on markup language application definition
JP4360942B2 (en) Software development support device
Derks et al. A benchmark generator framework for evolving variant-rich software
JP5111308B2 (en) Model-oriented development support device, model-oriented development support method, and model-oriented development support program
Eyl et al. Traceability in a fine grained software configuration management system
US20030220939A1 (en) Information processing system, information processing method, and information processing program
US11977473B2 (en) Providing a pseudo language for manipulating complex variables of an orchestration flow
EP1684170A2 (en) Software development system and method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120823

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: 20120911

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121009

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151019

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5111308

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees