JP2020194338A - Software development assisting device and software development assisting program - Google Patents
Software development assisting device and software development assisting program Download PDFInfo
- Publication number
- JP2020194338A JP2020194338A JP2019099432A JP2019099432A JP2020194338A JP 2020194338 A JP2020194338 A JP 2020194338A JP 2019099432 A JP2019099432 A JP 2019099432A JP 2019099432 A JP2019099432 A JP 2019099432A JP 2020194338 A JP2020194338 A JP 2020194338A
- Authority
- JP
- Japan
- Prior art keywords
- architecture
- product
- architecture information
- information
- new
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、プロダクトライン型のソフトウェア開発を支援するソフトウェア開発支援装置及びソフトウェア開発支援プログラムに関するものである。 The present invention relates to a software development support device and a software development support program that support product line type software development.
近年、ソフトウェア開発の効率を向上して開発者の負担を軽減するために、保有しているドメイン知識やソフトウェア資産を再利用可能なドメインとして構築するドメインエンジニアリングと、構築されたドメインを使用して製品用のソフトウェアを開発するアプリケーションエンジニアリングとを含む、プロダクトライン型のソフトウェア開発が行われており、それに関連する技術も発案されている。例えば、特許文献1には、ドメインエンジニアリングで作成したプロダクトライン用アーキテクチャ情報と、アプリケーションエンジニアリングで作成した製品用アーキテクチャ情報とを参照し、製品用アーキテクチャを自動生成する技術が開示されている。 In recent years, in order to improve the efficiency of software development and reduce the burden on developers, domain engineering that builds the domain knowledge and software assets that it possesses as a reusable domain, and using the built domain Product line-type software development is being carried out, including application engineering that develops software for products, and related technologies have also been proposed. For example, Patent Document 1 discloses a technique for automatically generating a product architecture by referring to product line architecture information created by domain engineering and product architecture information created by application engineering.
ここで、特許文献1に開示された発明は、プロダクトライン用アーキテクチャ情報から、製品用アーキテクチャ情報に含まれていないアーキテクチャ情報を削除することで、製品用アーキテクチャを生成している。すなわち、ドメインエンジニアリングで作成するプロダクトライン用アーキテクチャ情報に、製品用アーキテクチャ情報に含まれる全てのアーキテクチャ情報が存在する必要があるため、プロダクトライン用アーキテクチャ情報に含まれていない新たなアーキテクチャ情報を使用して、製品用アーキテクチャを作成することに対応していなかった。或いは、ドメインエンジニアリングの段階で、既存のプロダクトライン用アーキテクチャ情報に含まれていないアーキテクチャ情報を追加することが考えられるが、この場合は、十分な検証が行われていない新たなアーキテクチャ情報を、プロダクトライン用アーキテクチャ情報に登録しなければならない問題があった。 Here, the invention disclosed in Patent Document 1 generates a product architecture by deleting the architecture information not included in the product architecture information from the product line architecture information. That is, since it is necessary that all the architecture information included in the product architecture information exists in the product line architecture information created by domain engineering, new architecture information not included in the product line architecture information is used. It did not correspond to creating the product architecture. Alternatively, at the domain engineering stage, it is conceivable to add architecture information that is not included in the existing product line architecture information, but in this case, new architecture information that has not been sufficiently verified is added to the product. There was a problem that had to be registered in the line architecture information.
本発明は上記課題に鑑みてなされたものであり、その目的とするところは、新たなアーキテクチャ情報を含む製品用アーキテクチャを効率的に生成することにある。 The present invention has been made in view of the above problems, and an object of the present invention is to efficiently generate a product architecture including new architecture information.
上記課題を解決するための手段として、本発明は、再利用可能なソフトウェアの部品であるドメインの開発に用いられ、該ドメインに基づいてプロダクトライン用アーキテクチャ情報を生成するドメインエンジニアリング部と、前記プロダクトライン用アーキテクチャ情報を用いて製品用アーキテクチャを生成する製品用アーキテクチャ生成部を具備し、製品用のソフトウェアの開発に用いられるアプリケーションエンジニアリング部とを有する、プロダクトライン型のソフトウェア開発を支援するソフトウェア開発支援装置であって、前記製品用アーキテクチャ生成部は、製品の仕様から要求分析が行われて作成された製品用アーキテクチャ情報と前記プロダクトライン用アーキテクチャ情報とを比較し、前記製品用アーキテクチャ情報に含まれ且つ前記プロダクトライン用アーキテクチャ情報に含まれない新規アーキテクチャ情報と、前記製品用アーキテクチャ情報に含まれず且つ前記プロダクトライン用アーキテクチャ情報に含まれる不要アーキテクチャ情報とを抽出する差分抽出部と、該差分抽出部により抽出された前記新規アーキテクチャ情報と前記プロダクトライン用アーキテクチャ情報とが接続できるかを確認する新規アーキテクチャ接続確認部と、を具備したことを特徴とするものである。 As a means for solving the above problems, the present invention is used in the development of a domain which is a component of reusable software, and a domain engineering department which generates architecture information for a product line based on the domain and the product. Software development support that supports product line type software development, including a product architecture generation department that generates product architecture using line architecture information, and an application engineering department used for product software development. In the device, the product architecture generator compares the product architecture information created by performing requirements analysis from the product specifications with the product line architecture information, and is included in the product architecture information. A difference extraction unit that extracts new architecture information that is not included in the product line architecture information and unnecessary architecture information that is not included in the product architecture information and is included in the product line architecture information, and the difference extraction unit. It is characterized in that it is provided with a new architecture connection confirmation unit for confirming whether or not the new architecture information extracted by the above and the architecture information for the product line can be connected.
本発明はこのように構成したので、プロダクトライン用アーキテクチャと新規アーキテクチャとが接続可能かを確認することで、新たなアーキテクチャ情報を含む製品用アーキテクチャを効率的に生成することが可能となる。 Since the present invention is configured in this way, it is possible to efficiently generate a product architecture including new architecture information by confirming whether the product line architecture and the new architecture can be connected.
以下、本発明の実施の形態を図面に基づき説明する。なお、全ての図面にわたって、共通する部分については同一の符号を付している。又、以下の説明で記載されている各「アーキテクチャ」は、UML(Unified Modeling Language)モデル図を含むアーキテクチャ図で表現されるものとし、UMLモデル図に関係する全ての情報を含んでいるものとする。
図1に示すように、本発明の第1の実施の形態に係るソフトウェア開発支援装置10は、ドメインエンジニアリング部12と、製品用アーキテクチャ生成部22を具備するアプリケーションエンジニアリング部20とを含んでいる。ドメインエンジニアリング部12は、再利用可能なソフトウェアの部品であるドメインの開発に用いられ、このドメインに基づいてプロダクトライン用アーキテクチャ情報50を生成するものである。すなわち、ドメインエンジニアリング部12に格納されているプロダクトライン用アーキテクチャ情報50は、今までの製品開発で培われてきたアーキテクチャ情報を資産として作成されたものであり、正常に動作することが確認されたアーキテクチャ情報である。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. In addition, the same reference numerals are given to common parts throughout all the drawings. In addition, each "architecture" described in the following description shall be represented by an architecture diagram including a UML (Unified Modeling Language) model diagram, and shall include all information related to the UML model diagram. To do.
As shown in FIG. 1, the software
アプリケーションエンジニアリング部20は、ドメインエンジニアリング部12に格納されているドメイン(プロダクトライン用アーキテクチャ情報50)を用いて、製品用のソフトウェアを開発するためのものである。製品用アーキテクチャ生成部22は、プロダクトライン用アーキテクチャ情報50と製品用アーキテクチャ情報52とを利用して、ソースコードまでを作成するものであり、差分抽出部24、新規アーキテクチャ接続確認部26、及びソースコード作成部28を含んでいる。ここで、製品用アーキテクチャ情報52とは、今回開発する製品の仕様から要求分析が行われ、この要求分析の結果が反映されて作成されたアーキテクチャ情報であり、外部から製品用アーキテクチャ生成部22へ入力される。
The
差分抽出部24は、プロダクトライン用アーキテクチャ情報50と製品用アーキテクチャ情報52とを比較し、それらの間の差分として新規アーキテクチャ情報54及び不要アーキテクチャ情報56(図2参照)を抽出するものである。新規アーキテクチャ接続確認部26は、新規アーキテクチャ情報54とプロダクトライン用アーキテクチャ情報50との接続を確認するものであり、ソースコード作成部28は、新規アーキテクチャ接続確認部26で確認されたアーキテクチャ情報を参照してソースコードを生成するものである。一方、ソフトウェア開発支援装置10の外部にある検証部40は、ソースコード作成部28で作成されたソースコードを利用して動作検証を行うためのものである。
The
次に、本発明の第1の実施の形態に係るソフトウェア開発支援装置10の動作フローについて説明する。まず、アプリケーションエンジニアリング部20の製品用アーキテクチャ生成部22に対し、ドメインエンジニアリング部12に格納されているプロダクトライン用アーキテクチャ情報50と、外部から製品用アーキテクチャ情報52とを入力する。そして、製品用アーキテクチャ生成部22において、差分抽出部24により、プロダクトライン用アーキテクチャ情報50の中から製品用アーキテクチャ情報52には存在しない不要アーキテクチャ情報56と、製品用アーキテクチャ情報52の中からプロダクトライン用アーキテクチャ情報50には存在しない新規アーキテクチャ情報54との、2種類のアーキテクチャ情報を抽出する(差分抽出ステップ)。すなわち、今までの製品開発で培った資産の中で今回の製品開発に不要なアーキテクチャと、今回の製品開発で初めて搭載するフィーチャーに関するアーキテクチャとを抽出する。
Next, the operation flow of the software
このうち、不要アーキテクチャ情報56の抽出は、今までの製品開発で培った資産の中で今回の製品開発に不要なアーキテクチャの情報と、その周囲のアーキテクチャ情報について相互の必要性の観点で製品用アーキテクチャ情報52とを確認して行うが、公知の技術であるため詳しい説明を省略する。一方、今回の製品開発で初めて搭載するフィーチャーに関するアーキテクチャの情報を、プロダクトライン用アーキテクチャ情報50と組み合わせるために、新規アーキテクチャ接続確認部26により、製品用アーキテクチャ情報52を用いて、新規アーキテクチャ情報54とその周囲のアーキテクチャ情報との間に、相互の必要性の観点から接続等に不具合が無いことを確認する(新規アーキテクチャ接続確認ステップ)。なお、差分抽出部24と新規アーキテクチャ接続確認部26との動作については、後程より詳しく説明する。
Of these, the extraction of
新規アーキテクチャ接続確認部26によって不具合が無いことを確認したら、ソースコード作成部28により、新規アーキテクチャ情報54と、不要アーキテクチャ情報56を削除したプロダクトライン用アーキテクチャ情報50とを利用して、ソースコードを作成する(ソースコード作成ステップ)。そして、作成されたソースコードを用いて、検証部40により、シミュレータ等の検証ツールを利用して動作の検証を行い、検証の結果から修正の必要があると判明した場合には、製品用アーキテクチャ情報52を修正し、再び製品用アーキテクチャ生成部22に対して入力する。すなわち、検証部40によって修正の必要が無いと判定されるまで、製品用アーキテクチャ生成部22による各処理動作と検証部40による検証とを、繰り返し実行するものである。
After confirming that there is no problem by the new architecture
なお、製品用アーキテクチャ情報52に新規アーキテクチャ情報54が含まれていない場合であっても、ソースコード作成部28によって作成されたソースコードを用いて、検証部40により動作検証を行い、修正の必要がある場合には製品用アーキテクチャ情報52を修正するルートを取り得ることは、理解されるであろう。又、図1に示す差分抽出部24と新規アーキテクチャ接続確認部26とソースコード作成部28とには、各情報のイメージを柄分けして示している。具体的に、プロダクトライン用フィーチャー図のアーキテクチャ情報と製品用フィーチャー情報との差分を格子柄で示し、プロダクトライン用フィーチャー図のアーキテクチャ情報に追加する機能を縦縞で示し、プロダクトライン用フィーチャー図のアーキテクチャ情報から削除する機能を斜めハッチングで示し、プロダクトライン用フィーチャー図のアーキテクチャ情報に存在する機能を無地で示している。
Even if the
続いて、図2を参照しながら、差分抽出部24及び新規アーキテクチャ接続確認部26の動作について、より詳しく説明する。図2に示す実施形態において、プロダクトライン用アーキテクチャ情報50は、アーキテクチャ名がarchitecture_1〜architecture_7の7つのアーキテクチャを有し、製品用アーキテクチャ情報52は、アーキテクチャ名がarchitecture_1〜architecture_3及びarchitecture_5〜architecture_9の8つのアーキテクチャを有している。それらのうち、architecture_1〜architecture_3及びarchitecture_5〜architecture_7の6つのアーキテクチャは、プロダクトライン用アーキテクチャ情報50と製品用アーキテクチャ情報52との双方に存在している。
Subsequently, the operations of the
まず、差分抽出部24は、プロダクトライン用アーキテクチャ情報50と製品用アーキテクチャ情報52との間の差分を抽出する。本実施形態での差分の抽出方法は、共通するアーキテクチャ以外は差分とする方法を採用するが、最終的に差分が抽出できれば他の抽出方法を採用してもよい。次に、以下のようにして差分情報を分類する。すなわち、抽出した差分とプロダクトライン用アーキテクチャ情報50との双方に存在するアーキテクチャ情報を、今までの製品開発で培ってきた資産の中で今回の製品開発に不要な不要アーキテクチャ情報56と分類する。又、抽出した差分と製品用アーキテクチャ情報52との双方に存在するアーキテクチャ情報を、今回の製品開発で初めて搭載するフィーチャーに関する新規アーキテクチャ情報54と分類する。このような分類の結果、図2の実施形態では、不要アーキテクチャ情報56にarchitecture_4が含まれ、新規アーキテクチャ情報54にarchitecture_8及びarchitecture_9が含まれている。
First, the
上記の結果を受けて、新規アーキテクチャ接続確認部26は、新規アーキテクチャ情報54と、それと関係性のあるアーキテクチャ情報において相互の必要性の観点から、製品用アーキテクチャ情報52とを確認する。例えば、接続部分のインプット及びアウトプットの数や、それらの各々におけるデータ幅が同一であるか、新規アーキテクチャ情報54に接続先が無いアーキテクチャ情報が残っていないか等を確認する。なお、図2の実施形態では、新規アーキテクチャ情報54に含まれるarchitecture_8が、プロダクトライン用アーキテクチャ情報50と製品用アーキテクチャ情報52との双方に含まれるarchitecture_1と、親子関係にある。
Upon receiving the above result, the new architecture
以上説明したように、本発明の第1の実施の形態に係るソフトウェア開発支援装置10は、図1に示すように、再利用可能なドメインに基づいてプロダクトライン用アーキテクチャ情報50を生成するドメインエンジニアリング部12と、プロダクトライン用アーキテクチャ情報50を用いて製品用アーキテクチャを生成する製品用アーキテクチャ生成部22を具備するアプリケーションエンジニアリング部20と、を含むものである。更に、アプリケーションエンジニアリング部20の製品用アーキテクチャ生成部22は、差分抽出部24、新規アーキテクチャ接続確認部26、及びソースコード作成部28を含んでいる。
As described above, the software
差分抽出部24は、開発する製品の仕様から要求分析が行われ、この要求を満たすように別途作成されて入力される製品用アーキテクチャ情報52と、ドメインエンジニアリング部12において生成されたプロダクトライン用アーキテクチャ情報50とを比較して、それらの間の差分を抽出するものである。すなわち、差分抽出部24は、製品用アーキテクチャ情報52に含まれているが、プロダクトライン用アーキテクチャ情報50には含まれていないアーキテクチャ情報を、新規アーキテクチャ情報54(図2参照)として抽出する。更に、差分抽出部24は、製品用アーキテクチャ情報52に含まれていないが、プロダクトライン用アーキテクチャ情報50には含まれているアーキテクチャ情報を、不要アーキテクチャ情報56(図2参照)として抽出する。
The
新規アーキテクチャ接続確認部26は、差分抽出部24によって上記のように抽出された新規アーキテクチャ情報54と、プロダクトライン用アーキテクチャ情報50との接続を確認するものであり、新規アーキテクチャ情報54が、プロダクトライン用アーキテクチャ情報50に含まれる少なくとも一部のアーキテクチャ情報と関連して、プロダクトライン用アーキテクチャ情報50と問題なく結合できることを確認する。ソースコード作成部28は、新規アーキテクチャ接続確認部26により確認された接続確認済みのアーキテクチャ情報を参照し、プロダクトライン用アーキテクチャ情報50から不要アーキテクチャ情報56が削除されたアーキテクチャ情報と、新規アーキテクチャ情報54とを利用したソースコードを生成する。
The new architecture
上記のような構成により、本発明の第1の実施の形態に係るソフトウェア開発支援装置10は、製品の仕様から作成された製品用アーキテクチャ情報52に、既存のプロダクトライン用アーキテクチャ情報50に存在しない新規アーキテクチャ情報54が含まれていても、新規アーキテクチャ接続確認部26により新規アーキテクチャ情報54の接続を確認した上で、ソースコード作成部28により新規アーキテクチャ情報54を反映したソースコードを生成することができる。このため、プロダクトライン用アーキテクチャ情報50に検証が不十分なアーキテクチャ情報を追加して作成し直す必要なく、製品用アーキテクチャを問題なく効率的に生成することが可能となる。更に、生成したソースコードを用いて、例えば検証部40により動作の検証を行い、検証の結果から修正の必要があると判明した場合に、製品用アーキテクチャ生成部22へ入力される製品用アーキテクチャ情報52に修正を反映する構成とすれば、より信頼性のある製品用アーキテクチャを生成することができる。
With the above configuration, the software
続いて、図3を参照して、本発明の第2の実施の形態に係るソフトウェア開発支援装置10´について説明する。なお、本発明の第1の実施の形態に係るソフトウェア開発支援装置10と同様の部分の構成や作用効果については、説明を省略する。
図3に示すように、本発明の第2の実施の形態に係るソフトウェア開発支援装置10´は、ドメインエンジニアリング部12に登録部14が追加され、アプリケーションエンジニアリング部20にアーキテクチャ追加部30が追加された点が、図1に示したソフトウェア開発支援装置10と異なっている。更に、検証部40にも、新たな機能が追加されている。
Subsequently, the software
As shown in FIG. 3, in the software
アプリケーションエンジニアリング部20に追加されたアーキテクチャ追加部30は、ドメインエンジニアリング部12から入力されたプロダクトライン用アーキテクチャ情報50に対し、新規アーキテクチャ情報54(図2参照)を追加するものであり、この際、検証部40から追加許可の指令を受けて、追加作業を行う。ドメインエンジニアリング部12に追加された登録部14は、アーキテクチャ追加部30から出力されたプロダクトライン用アーキテクチャ情報50を、次回開発用のプロダクトライン用アーキテクチャ情報50として登録、格納するものである。登録部14は、例えば、書き込み/読み出し可能な記録装置と、そのドライバ部とから構成される。
The
次に、本発明の第2の実施の形態に係るソフトウェア開発支援装置10´の動作フローについて説明する。アーキテクチャ追加部30には、新規アーキテクチャ接続確認部26による接続確認が完了した製品用アーキテクチャ情報52と、ドメインエンジニアリング部12から取得する既存のプロダクトライン用アーキテクチャ情報50とを入力する。更に、検証部40による動作検証が完了し、製品用アーキテクチャ情報52に修正の必要が無いと判定された後に、検証部40から出力される追加許可の指令を、アーキテクチャ追加部30に入力する。そして、追加許可の指令が入力されたことをトリガとして、アーキテクチャ追加部30により、既存のプロダクトライン用アーキテクチャ情報50に対し、製品用アーキテクチャ情報52に含まれる新規アーキテクチャ情報54を追加する作業を開始する(アーキテクチャ追加ステップ)。
Next, the operation flow of the software development support device 10'according to the second embodiment of the present invention will be described. In the
具体的には、まず、新規アーキテクチャ情報54と接続するアーキテクチャを製品用アーキテクチャ情報52から抽出し、既存のプロダクトライン用アーキテクチャ情報50に含まれている、上記の抽出したアーキテクチャと同様で且つ新規アーキテクチャ情報54との接続手段を持たないアーキテクチャを、抽出したアーキテクチャと交換する。例えば、図2の構成を用いて説明すると、新規アーキテクチャ情報54に含まれるarchitecture_8と接続するarchitecture_1を、製品用アーキテクチャ情報52から抽出する。ここで、プロダクトライン用アーキテクチャ情報50に含まれているarchitecture_1は、プロダクトライン用アーキテクチャ情報50に含まれないarchitecture_8との接続手段を有していない。このため、プロダクトライン用アーキテクチャ情報50に含まれているarchitecture_1を、製品用アーキテクチャ情報52から抽出したarchitecture_1と交換する。
Specifically, first, the architecture connected to the
次に、既存のプロダクトライン用アーキテクチャ情報50に対して、新規アーキテクチャ情報54を接続する。この際の接続は、製品用アーキテクチャ情報52について、新規アーキテクチャ接続確認部26や検証部40により、既に検証されている接続を行う。そして、新規アーキテクチャ情報54を接続したプロダクトライン用アーキテクチャ情報50を、アーキテクチャ追加部30からドメインエンジニアリング部12の登録部14へ出力し、登録部14により、次回開発用の新たなプロダクトライン用アーキテクチャ情報50として登録する(登録ステップ)。登録部14は、アーキテクチャ追加部30からプロダクトライン用アーキテクチャ情報50が入力される度に、新たなプロダクトライン用アーキテクチャ情報50として記録する。その後、次回の開発が開始されたときに、登録部14は、最後に記録したプロダクトライン用アーキテクチャ情報50を、アプリケーションエンジニアリング部20へと出力する。
Next, the
以上説明したように、本発明の第2の実施の形態に係るソフトウェア開発支援装置10´は、本発明の第1の実施の形態に係るソフトウェア開発支援装置10と比較して、アプリケーションエンジニアリング部20にアーキテクチャ追加部30が追加されると共に、ドメインエンジニアリング部12に登録部14が追加された構成になっている。アーキテクチャ追加部30は、ソフトウェア開発支援装置10´の外部にある検証部40からの、検証が終了したことを出力トリガとする指令に従い、既存のプロダクトライン用アーキテクチャ情報50に対して、新規アーキテクチャ接続確認部26によりプロダクトライン用アーキテクチャ情報50との接続が確認された、新規アーキテクチャ情報54を追加するものである。
As described above, the software
又、登録部14は、アーキテクチャ追加部30によって新規アーキテクチャ情報54が追加されたプロダクトライン用アーキテクチャ情報50を、新たなプロダクトライン用アーキテクチャ情報50として登録するものである。これにより、検証部40によって十分な検証を行った後に、製品用アーキテクチャ情報52に含まれる新規アーキテクチャ情報54を、プロダクトライン用アーキテクチャ情報50に追加することができる。このため、信頼性を損なうことなく、プロダクトライン用アーキテクチャ情報50の内容を拡充することが可能となり、それを新たなプロダクトライン用アーキテクチャ情報50として利用することができる。
Further, the
ここで、本発明の実施の形態に係るソフトウェア開発支援装置10、10´は、図1や図3に示すような構成や動作フローに限定されることなく、図1や図3に示された構成要素の一部が削除、変更されたものであってもよく、新たな構成要素が追加されてもよい。加えて、各構成要素には、各々の構成要素に求められる機能を実行可能な、任意のハードウェア、ソフトウェア、及びそれらの組み合わせを用いることができる。又、図2に示したアーキテクチャの構造も一例であって、本発明の実施の形態に係るソフトウェア開発支援装置10、10´で用いるアーキテクチャの構造を限定するものではない。
Here, the software
一方、本発明の第3の実施の形態に係るソフトウェア開発支援プログラムは、上述したような本発明の第1の実施の形態に係るソフトウェア開発支援装置10の製品用アーキテクチャ生成部22において、製品の仕様から要求分析が行われて作成された製品用アーキテクチャ情報52とプロダクトライン用アーキテクチャ情報50とを比較し、製品用アーキテクチャ情報52に含まれ且つプロダクトライン用アーキテクチャ情報50に含まれない新規アーキテクチャ情報54と、製品用アーキテクチャ情報52に含まれず且つプロダクトライン用アーキテクチャ情報50に含まれる不要アーキテクチャ情報56とを抽出する差分抽出ステップと、差分抽出ステップにおいて抽出した新規アーキテクチャ情報54とプロダクトライン用アーキテクチャ情報50との接続を確認する新規アーキテクチャ接続確認ステップと、新規アーキテクチャ接続確認ステップにおいて確認した接続確認済みのアーキテクチャ情報を参照してソースコードを生成するソースコード作成ステップと、を実行させるように使用されるものである。これにより、本発明の第1の実施の形態に係るソフトウェア開発支援装置10と同等の作用効果を奏することができる。
On the other hand, the software development support program according to the third embodiment of the present invention is the product in the product
他方、本発明の第4の実施の形態に係るソフトウェア開発支援プログラムは、上述したような本発明の第2の実施の形態に係るソフトウェア開発支援装置10´において使用され、アプリケーションエンジニアリング部20に、外部からの指令に従い、プロダクトライン用アーキテクチャ情報50に対して、新規アーキテクチャ接続確認ステップで接続が確認された新規アーキテクチャ情報54を追加するアーキテクチャ追加ステップを実行させ、ドメインエンジニアリング部12に、アーキテクチャ追加ステップで新規アーキテクチャ情報54が追加されたプロダクトライン用アーキテクチャ情報50を、新たなプロダクトライン用アーキテクチャ情報50として登録する登録ステップを実行させるものである。これにより、本発明の第2の実施の形態に係るソフトウェア開発支援装置10´と同等の作用効果を奏することができる。
On the other hand, the software development support program according to the fourth embodiment of the present invention is used in the software development support device 10'related to the second embodiment of the present invention as described above, and is used by the
なお、本発明の実施の形態に係るソフトウェア開発支援装置10、10´やソフトウェア開発支援プログラムにおいて、ソースコードの生成は、上述したソースコード作成部28やソースコード作成ステップで必ずしも行う必要はなく、別の開発支援装置や別の開発支援プログラムで実行してもよい。
In the software
10、10´:ソフトウェア開発支援装置、12:ドメインエンジニアリング部、14:登録部、20:アプリケーションエンジニアリング部、22:製品用アーキテクチャ生成部、24:差分抽出部、26:新規アーキテクチャ接続確認部、28:ソースコード作成部、30:アーキテクチャ追加部、50:プロダクトライン用アーキテクチャ情報、52:製品用アーキテクチャ情報、54:新規アーキテクチャ情報、56:不要アーキテクチャ情報 10, 10': Software development support device, 12: Domain engineering department, 14: Registration department, 20: Application engineering department, 22: Product architecture generation department, 24: Difference extraction department, 26: New architecture connection confirmation department, 28 : Source code creation department, 30: Architecture addition department, 50: Product line architecture information, 52: Product architecture information, 54: New architecture information, 56: Unnecessary architecture information
Claims (6)
前記製品用アーキテクチャ生成部は、
製品の仕様から要求分析が行われて作成された製品用アーキテクチャ情報と前記プロダクトライン用アーキテクチャ情報とを比較し、前記製品用アーキテクチャ情報に含まれ且つ前記プロダクトライン用アーキテクチャ情報に含まれない新規アーキテクチャ情報と、前記製品用アーキテクチャ情報に含まれず且つ前記プロダクトライン用アーキテクチャ情報に含まれる不要アーキテクチャ情報とを抽出する差分抽出部と、
該差分抽出部により抽出された前記新規アーキテクチャ情報と前記プロダクトライン用アーキテクチャ情報とが接続できるかを確認する新規アーキテクチャ接続確認部と、を具備したことを特徴とするソフトウェア開発支援装置。 A domain engineering department that is used to develop domains that are reusable software components and generates product line architecture information based on the domain, and products that generate product architecture using the product line architecture information. It is a software development support device that supports product line type software development, including an architecture generation unit for products and an application engineering department used for developing software for products.
The product architecture generator
The product architecture information created by performing requirements analysis from the product specifications is compared with the product line architecture information, and a new architecture included in the product architecture information and not included in the product line architecture information. A difference extraction unit that extracts information and unnecessary architecture information that is not included in the product architecture information and is included in the product line architecture information.
A software development support device including a new architecture connection confirmation unit that confirms whether the new architecture information extracted by the difference extraction unit and the product line architecture information can be connected.
前記ドメインエンジニアリング部は、前記アーキテクチャ追加部により前記新規アーキテクチャ情報が追加された前記プロダクトライン用アーキテクチャ情報を、新たな前記プロダクトライン用アーキテクチャ情報として登録する登録部を具備したことを特徴とする請求項1又は2記載のソフトウェア開発支援装置。 The application engineering unit includes an architecture addition unit that adds the new architecture information whose connection has been confirmed by the new architecture connection confirmation unit to the product line architecture information in accordance with an external command.
The claim is characterized in that the domain engineering unit includes a registration unit for registering the product line architecture information to which the new architecture information has been added by the architecture addition unit as new product line architecture information. The software development support device according to 1 or 2.
前記製品用アーキテクチャ生成部に、
製品の仕様から要求分析が行われて作成された製品用アーキテクチャ情報と前記プロダクトライン用アーキテクチャ情報とを比較し、前記製品用アーキテクチャ情報に含まれ且つ前記プロダクトライン用アーキテクチャ情報に含まれない新規アーキテクチャ情報と、前記製品用アーキテクチャ情報に含まれず且つ前記プロダクトライン用アーキテクチャ情報に含まれる不要アーキテクチャ情報とを抽出する差分抽出ステップと、
該差分抽出ステップにおいて抽出した前記新規アーキテクチャ情報と前記プロダクトライン用アーキテクチャ情報とが接続できるかを確認する新規アーキテクチャ接続確認ステップと、を実行させることを特徴とするソフトウェア開発支援プログラム。 A domain engineering department that is used to develop domains that are reusable software components and generates product line architecture information based on the domain, and products that generate product architecture using the product line architecture information. It is a program used for software development support equipment that supports product line type software development, which has an architecture generation unit for software and an application engineering department used for software development for products.
In the product architecture generator
The product architecture information created by performing requirements analysis from the product specifications is compared with the product line architecture information, and a new architecture included in the product architecture information and not included in the product line architecture information. A difference extraction step for extracting information and unnecessary architecture information that is not included in the product architecture information and is included in the product line architecture information.
A software development support program characterized by executing a new architecture connection confirmation step for confirming whether the new architecture information extracted in the difference extraction step and the product line architecture information can be connected.
前記ドメインエンジニアリング部に、前記アーキテクチャ追加ステップで前記新規アーキテクチャ情報が追加された前記プロダクトライン用アーキテクチャ情報を、新たな前記プロダクトライン用アーキテクチャ情報として登録する登録ステップを実行させることを特徴とする請求項4又は5記載のソフトウェア開発支援プログラム。
The application engineering department is made to execute an architecture addition step of adding the new architecture information whose connection is confirmed in the new architecture connection confirmation step to the product line architecture information in accordance with an external command.
The claim is characterized in that the domain engineering department is made to execute a registration step of registering the product line architecture information to which the new architecture information is added in the architecture addition step as new product line architecture information. The software development support program described in 4 or 5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019099432A JP2020194338A (en) | 2019-05-28 | 2019-05-28 | Software development assisting device and software development assisting program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019099432A JP2020194338A (en) | 2019-05-28 | 2019-05-28 | Software development assisting device and software development assisting program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020194338A true JP2020194338A (en) | 2020-12-03 |
Family
ID=73545975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019099432A Pending JP2020194338A (en) | 2019-05-28 | 2019-05-28 | Software development assisting device and software development assisting program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2020194338A (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005250946A (en) * | 2004-03-05 | 2005-09-15 | Mitsubishi Electric Corp | Software development support apparatus |
JP2006285313A (en) * | 2005-03-31 | 2006-10-19 | Fujitsu Ltd | Business process model creation support system and program, and business model creation processing method |
-
2019
- 2019-05-28 JP JP2019099432A patent/JP2020194338A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005250946A (en) * | 2004-03-05 | 2005-09-15 | Mitsubishi Electric Corp | Software development support apparatus |
JP2006285313A (en) * | 2005-03-31 | 2006-10-19 | Fujitsu Ltd | Business process model creation support system and program, and business model creation processing method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Araújo et al. | Modeling and composing scenario-based requirements with aspects | |
WO2021035553A1 (en) | Application program development and deployment method and apparatus, and computer readable medium | |
KR100744886B1 (en) | Asadal : system for providing feature-oriented software product line engineering environment | |
JP5350428B2 (en) | Automatic program generation apparatus, method and computer program | |
KR100871563B1 (en) | Apparatus and method for developing software based on component | |
JP6268029B2 (en) | Test case generation apparatus and test case generation method | |
Bramberger et al. | Co-engineering of safety and security life cycles for engineering of automotive systems | |
JP4140917B2 (en) | Verification work support system and method | |
CN112199757B (en) | Structural floor generation method, device, nonvolatile storage medium and processor | |
JP2020194338A (en) | Software development assisting device and software development assisting program | |
JP4888790B2 (en) | Contract definition function verification apparatus, method and program thereof | |
JP7156543B2 (en) | Pattern extraction and rule generation device, method and program | |
Conmy et al. | Assuring safety for component based software engineering | |
Murzek et al. | Business process model transformation issues | |
JP2008305079A (en) | Requirement specification automatic verification method | |
Matragkas et al. | A Traceability-Driven Approach to Model Transformation Testing. | |
WO2018083977A1 (en) | System construction assisting apparatus, method, and program | |
KR20070049126A (en) | Asadal : system for providing feature-oriented software product line engineering environment | |
JP2010176594A (en) | Source code version management program and source code version managing method | |
US20100293018A1 (en) | Test Model Abstraction For Testability in Product Line Engineering | |
Ellul et al. | Towards a unified programming model for blockchain smart contract DAPP systems | |
Bocciarelli et al. | A Methodological Template for Model Driven Systems Engineering. | |
Ajila et al. | Using Model Transformation Semantics for Aspect Composition | |
Dyck et al. | Towards the Automatic Verification of Behavior Preservation at the Transformation Level for Operational Model Transformations. | |
Hossain et al. | A Graph Transformation Approach to Introducing Aspects into Software Architectures. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211110 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220826 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220831 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20230301 |