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
JP6989014B2 - システム構成導出装置、方法およびプログラム - Google Patents
[go: Go Back, main page]

JP6989014B2 - システム構成導出装置、方法およびプログラム - Google Patents

システム構成導出装置、方法およびプログラム Download PDF

Info

Publication number
JP6989014B2
JP6989014B2 JP2020525290A JP2020525290A JP6989014B2 JP 6989014 B2 JP6989014 B2 JP 6989014B2 JP 2020525290 A JP2020525290 A JP 2020525290A JP 2020525290 A JP2020525290 A JP 2020525290A JP 6989014 B2 JP6989014 B2 JP 6989014B2
Authority
JP
Japan
Prior art keywords
requirement
information
constituent
configuration
component
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020525290A
Other languages
English (en)
Other versions
JPWO2019244446A1 (ja
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2019244446A1 publication Critical patent/JPWO2019244446A1/ja
Application granted granted Critical
Publication of JP6989014B2 publication Critical patent/JP6989014B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24573Query processing with adaptation to user needs using data annotations, e.g. user-defined metadata
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2474Sequence data queries, e.g. querying versioned data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Fuzzy Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Description

本発明は、システム構成導出装置、システム構成導出方法およびシステム構成導出プログラムに関する。
非特許文献1には、構成部品のテンプレートを開発資産として用いて、構成部品の組み合わせ方を変更したり構成部品ごとに定義されたパラメタの値を変更したりすることによって、構築目的のシステムに応じた設計を行う技術が記載されている。
非特許文献2には、通信ネットワークのトポロジ情報と通信要件に関する情報を基に、トポロジにおいて通信要件を満たすために求められる各ネットワーク機器の経路情報等の設定を自動で設計する技術が記載されている。
非特許文献3には、グラフとして表現されたベースの構成に対して実行可能な変更をグラフ書き換え規則として定義し、選択された規則に従ってベースの構成を書き換えることによって、構築目的のシステムに応じた設計を行う技術が記載されている。
特許文献1には、階層構造で表現されるシステムの設計アーキテクチャのグラフの可変ノードを書き換える書き換え規則の集合を格納する規則格納部を備える設計データ自動生成装置が記載されている。
特許文献2には、エキスパートシステムを構築するための構築方式が記載されている。
特許文献3には、コンポネントの組合せ毎にその組み合わせに応じた設定を追加しなくてもよい等の利点を有するシステム構築支援システムが記載されている。
また、非特許文献4には、グラフに関する機械学習の技術が記載されている。
特開2011−13750号公報 特開平2−58131号公報 国際公開第2017/033441号
T. Binz, G. Breiter, F. Leyman, and T. Spatzier, "Portable cloud servicesusing tosca", Internet Computing, IEEE, vol. 16, no. 3, pp. 80-85, 2012. Beckett, Ryan and Mahajan, Ratul and Millstein, Todd and Padhye, Jitendra and Walker, David, "Don't Mind the Gap: Bridging Network-wide Objectives and Device-level Configurations", Proceedings of the 2016 ACM SIGCOMM Conference, pp. 328-341, 2016. P. Jayaraman, J. Whittle, A. Elkhodary, and H. Gomaa, "ModelComposition in Product Lines and Feature Interaction Detection Using Critical Pair Analysis", Model Driven Engineering Languages and Systems, pp. 151-165, 2007. Mathias Niepert, Mohamed Ahmed, Konstantin Kutzkov, "Learning Convolutional Neural Networks for Graphs", [2018年6月14日検索]、インターネット<URL: http://proceedings.mlr.press/v48/niepert16.pdf>
システムを構築する際、システムの構成を効率的に導出できることが好ましい。
そこで、本発明は、システムを構築する際、システムの構成を効率的に導出することができるシステム構成導出装置、システム構成導出方法およびシステム構成導出プログラムを提供することを目的とする。
本発明によるシステム構成導出装置は、構築対象システムの構成要件の更新を繰り返すことによって、構築対象システムの構成要件を具体化するシステム構成導出装置であって、過去において適切と判定された構成要件の探索履歴を記憶する探索履歴記憶手段と、探索履歴から、一の構成要件から次の構成要件への遷移毎に、一の構成要件に適用された、構成要件の一部をより詳細に記述するように書き換える規則である具体化規則を含む所定の情報から成る組を抽出する情報抽出手段と、情報抽出手段によって抽出された所定の情報から成る組の集合を学習データとして、所定の情報から成る組に含まれる具体化規則の適切さの度合いを示すスコアの演算方法を学習する学習手段と、複数の具体化規則を記憶する具体化規則記憶手段と、新規の構成要件が入力される入力手段と、着目している構成要件に適用可能な具体化規則を、具体化規則記憶手段から読み込み、読み込んだ具体化規則と着目している構成要件内におけるその具体化規則の適用箇所とのペア毎に、所定の情報から成る組を抽出し、当該所定の情報から成る組を演算方法に適用することによってスコアを算出し、ペア毎に抽出した所定の情報から成る組、および、以前にスコアが算出されていて未だ選択されていない所定の情報から成る組の中で、最もスコアが高い所定の情報から成る組を選択し、当該所定の情報から成る組に対応するペアの適用対象となる構成要件に、そのペアを適用することによって得られる構成要件を、新たに、着目している構成要件として選択することを繰り返す探索手段とを備え、探索手段が、入力手段に新規の構成要件が入力されたときに、当該新規の構成要件を着目している構成要件として選択し、探索手段が、以前にスコアが算出されていて未だ選択されていない所定の情報から成る組が存在しない場合には、ペア毎に抽出した所定の情報から成る組の中で、最もスコアが高い所定の情報から成る組を選択することを特徴とする。
また、本発明によるシステム構成導出方法は、構築対象システムの構成要件の更新を繰り返すことによって、構築対象システムの構成要件を具体化するシステム構成導出方法であって、過去において適切と判定された構成要件の探索履歴から、一の構成要件から次の構成要件への遷移毎に、一の構成要件に適用された、構成要件の一部をより詳細に記述するように書き換える規則である具体化規則を含む所定の情報から成る組を抽出し、抽出した所定の情報から成る組の集合を学習データとして、所定の情報から成る組に含まれる具体化規則の適切さの度合いを示すスコアの演算方法を学習し、複数の具体化規則を記憶する具体化規則記憶手段から、着目している構成要件に適用可能な具体化規則を読み込み、読み込んだ具体化規則と着目している構成要件内におけるその具体化規則の適用箇所とのペア毎に、所定の情報から成る組を抽出し、当該所定の情報から成る組を演算方法に適用することによってスコアを算出し、ペア毎に抽出した所定の情報から成る組、および、以前にスコアが算出されていて未だ選択されていない所定の情報から成る組の中で、最もスコアが高い所定の情報から成る組を選択し、当該所定の情報から成る組に対応するペアの適用対象となる構成要件に、そのペアを適用することによって得られる構成要件を、新たに、着目している構成要件として選択することを繰り返し、新規の構成要件が入力されたときに、当該新規の構成要件を着目している構成要件として選択し、以前にスコアが算出されていて未だ選択されていない所定の情報から成る組が存在しない場合には、ペア毎に抽出した所定の情報から成る組の中で、最もスコアが高い所定の情報から成る組を選択することを特徴とする。
また、本発明によるシステム構成導出プログラムは、コンピュータに、構築対象システムの構成要件の更新を繰り返すことによって、構築対象システムの構成要件を具体化させるためのシステム構成導出プログラムであって、コンピュータに、過去において適切と判定された構成要件の探索履歴から、一の構成要件から次の構成要件への遷移毎に、一の構成要件に適用された、構成要件の一部をより詳細に記述するように書き換える規則である具体化規則を含む所定の情報から成る組を抽出する情報抽出処理、情報抽出処理で抽出された所定の情報から成る組の集合を学習データとして、所定の情報から成る組に含まれる具体化規則の適切さの度合いを示すスコアの演算方法を学習する学習処理、および、複数の具体化規則を記憶する具体化規則記憶手段から、着目している構成要件に適用可能な具体化規則を読み込み、読み込んだ具体化規則と着目している構成要件内におけるその具体化規則の適用箇所とのペア毎に、所定の情報から成る組を抽出し、当該所定の情報から成る組を演算方法に適用することによってスコアを算出し、ペア毎に抽出した所定の情報から成る組、および、以前にスコアが算出されていて未だ選択されていない所定の情報から成る組の中で、最もスコアが高い所定の情報から成る組を選択し、当該所定の情報から成る組に対応するペアの適用対象となる構成要件に、そのペアを適用することによって得られる構成要件を、新たに、着目している構成要件として選択することを繰り返す探索処理を実行させ、新規の構成要件が入力されたときに、当該新規の構成要件を着目している構成要件として選択させ、探索処理で、以前にスコアが算出されていて未だ選択されていない所定の情報から成る組が存在しない場合には、ペア毎に抽出した所定の情報から成る組の中で、最もスコアが高い所定の情報から成る組を選択させることを特徴とする。また、本発明は、上記のシステム構成導出プログラムを記録したコンピュータ読み取り可能な記録媒体であってもよい。
本発明によれば、システムを構築する際、システムの構成を効率的に導出することができる。
構成要件の一例を示す模式図である。 具体化規則の例を示す模式図である。 具体化規則の例を示す模式図である。 発明者想定技術において、「良い具体化」の基準として選択される構成要素の例を示す模式図である。 構成要件同士の類似度の特定の困難性の例を示す模式図である。 構成要件同士の類似度の特定の困難性の例を示す模式図である。 本発明の発明者が考えた、本発明に関連する技術の第2の課題の例を示す模式図である。 本発明の第1の実施形態に係るシステム構成導出装置の例を示すブロック図である。 構成要件の探索履歴の一例を示す模式図である。 図9における具体化規則Aおよび具体化規則Bを示す模式図である。 単位構成要件の近傍情報の例を示す模式図である。 4つ組の例を示す模式図である。 種々の4つ組に含まれる3つ組を、具体化規則に応じて、具体化規則に対応するグループに分類し、分類された3つ組に対して定めたスコアの例を示す模式図である。 具体化規則の違いや、構成要件内の具体化規則の適用箇所の違いによって、異なる構成要件が得られることを示す模式図である。 具体化規則の例を示す模式図である。 算出されたスコアの例を示す模式図である。 スコアの演算方法を学習する際の処理経過の例を示すフローチャートである。 入力された構成要件を起点として、構成要件をより具体化するように構成要件を探索していく処理の処理経過の例を示すフローチャートである。 入力された構成要件を起点として、構成要件をより具体化するように構成要件を探索していく処理の処理経過の例を示すフローチャートである。 本発明の実施形態に係るコンピュータの構成例を示す概略ブロック図である。 本発明の第2の実施形態に係るシステム構成導出装置の例を示すブロック図である。
本発明の実施形態について説明する前に、本発明の発明者が考えた、本発明に関連する技術について説明する。以下、この関連技術について述べる。
具体的なICT(Information and Communication Technology)システム構成を導出する技術として、本発明の発明者は、以下に示す技術を考えた。以下に説明する、発明者が考えた技術を、発明者想定技術と記す。
以下の説明において、「構成要件」とは、構築対象のICTシステムにおける、構成要素を示す情報、または、構成要素間の関係を示す情報である。構成要件が、構成要素を示す情報と、構成要素間の関係を示す情報の両方を含んでいてもよい。構成要素や、構成要素間の関係は、ICTシステムに関する要件を表わしている。構成要件に含まれる構成要素は、ソフトウェアであっても、ハードウェアであってもよい。
また、構成要件は、抽象的な(換言すれば、具体的でない)構成要素を示す情報や、構成要素間の抽象的な(具体的でない)関係を示す情報を含んでいてもよい。「構成要素が具体的でない」とは、構成要素の名称が具体化されていないことや、構成要素の名称が具体化されていたとしても、その構成要素が必要とする他の構成要素との間の関係が具体化されていないことである。また、構成要素間の関係が具体的であるか否かは、その関係の種類に応じて予め定められる。例えば、「HostedOn」という関係は具体的な関係として予め定められていて、「ConnectedTo 」という関係は具体的な関係ではないとして予め定められているものとする。
構成要件は、構成要素をノードで表し、構成要素間の関係をエッジで表したグラフで表現することができる。構成要素を表わすノードには、構成要素の「型」の名称が記述され、構成要素間の関係を表わすエッジには、その関係の「型」の名称が記述される。個々の「型」の名称には、その名称を有する構成要素の機能や、その名称を有する関係の特徴等が予め定められている。構成要素を表わすノードには、「型」の名称の他に、属性値(例えば、バージョン情報等)が記述されていてもよい。
また、構成要件の一部をより詳細に記述するように書き換える規則を「具体化規則」と記す。
図1は、構成要件の一例を示す模式図である。図1に示す例において、構成要素101に記述された型「MyApp」は、具体的なアプリケーションソフトウェアの名称であるものとする。また、構成要素102には、型として「MySQL」が記述され、「MySQL」のバージョンを示す[7~]が属性値として記述されている。構成要素103には、型「APS」が記述されている。「APS」は、Application Serverを意味するものとする。また、図1に示す例では、構成要素間の関係を示すエッジの型として「HostedOn」および「ConnectedTo 」を例示している。「HostedOn」は、矢印で表されたエッジのアローヘッドとは反対側の構成要素が、アローヘッド側の構成要素にホストされている(換言すれば、アローヘッドとは反対側の構成要素が、アローヘッド側の構成要素上で稼働する)ことを意味している。「connectedTo」は、ネットワークによって通信可能に接続されていることを意味している。「connectedTo」が記述され、矢印で表されたエッジでは、アローヘッドとは反対側の構成要素が、アローヘッド側の構成要素に通信を仕掛けることを表わしている。
図2は、具体化規則の例を示す模式図である。図2では、2つの具体化規則201,202を示している。具体化規則は、構成要件の中に、具体化規則の上段に適合する箇所が存在しているならば、その箇所を、具体化規則の下段に示すようにより詳細に書き換えることを表わしている。図2(a)に示す具体化規則201と、図2(b)に示す具体化規則202とでは、上段の内容が共通である。図2に示すように、上段の内容が共通である具体化規則が複数存在してもよい。
なお、図2に示すマーク203は、そのマーク203が付加されている構成要素が他の構成要素を必要としていることを意味している。そして、必要とされる構成要素が、マーク203の近傍に記述されてもよい。例えば、図2(a),(b)それぞれの上段に示す例では、構成要素「MW(Middle Ware )」が他の構成要素「VM(Virtual Machine )」を必要としていることを意味する。必要とされる構成要素が、マーク203の近傍に記述に記述されていなくてもよい。
また、「VMM」は、ハイパーバイザーを意味する。
発明者想定技術では、例えば、コンピュータに、複数種類の具体化規則を予め記憶させておく。また、そのコンピュータには、構成要件が入力される。コンピュータは、入力された構成要件に適用可能な具体化規則を全て選択する。すなわち、コンピュータは、上段の部分が構成要件の一部に該当している具体化規則を全て選択する。そして、コンピュータは、選択した具体化規則毎に、構成要件の一部をより詳細に記述した構成要件を導出する。コンピュータは、新たに得られた各構成要件の中から、「良い具体化」の基準を満たす構成要件を1つ選択し、その構成要件に関しても、適用可能な具体化規則を全て選択する。さらに、コンピュータは、選択した具体化規則毎に、構成要件の一部をより詳細に記述した構成要件を導出する。コンピュータは、新たに導出した各構成要件、および、これまでに導出済みの構成要件であって未だ選択されていない構成要件のうち、「良い具体化」の基準を満たす構成要件を1つ選択する。コンピュータは、同様の処理を繰り返し、「良い具体化」の基準を満たす構成要件として選択された構成要件をそれ以上具体化できなくなったならば、処理を終了する。
以下、コンピュータが順次、選択していく構成要件を、具体例を用いて説明する。以下に示す例では、最初に、図1に示す構成要件がコンピュータに入力される場合を例にして説明する。また、コンピュータは、図2(a),(b)に示す具体化規則201,202の他に、図3(a),(b)に示す具体化規則204,205や、その他の具体化規則を記憶しているものとする。なお、図3(a)に示す「Esxi(Elastic Sky Xi)」は、仮想化基盤を意味する。図3(b)に示す「NW」は、Network を意味する。また、以下に示す具体例では、「良い具体化」の基準として、「構成要件に含まれる構成要素の数が最も少ない」という基準を用いる場合を例にして説明する。ただし、「良い具体化」の基準の基準は、この例に限定されない。図4は、「良い具体化」の基準として選択される構成要素の例を示す模式図である。入力された構成要件を符号“301”で表す。
コンピュータは、入力された構成要件301に適用可能な具体化規則として、具体化規則201,202(図2参照)を選択する。そして、コンピュータは、構成要件301に具体化規則202(図2(b)参照)を適用することによって構成要件302を導出し、構成要件301に具体化規則201(図2(a)参照)を適用することによって構成要件303を導出する。コンピュータは、構成要件302,303のうち、「構成要件に含まれる構成要素の数が最も少ない」という基準に基づき、構成要件302を選択する。さらに、コンピュータは、構成要件302に適用可能な具体化規則として、具体化規則204,205(図3参照)を選択する。そして、コンピュータは、構成要件302に具体化規則205(図3(b)参照)を適用することによって構成要件304を導出し、構成要件302に具体化規則204(図3(a)参照)を適用することによって構成要件305を導出する。コンピュータは、新たに導出した構成要件304,305、および、これまでに導出済みの構成要件であって未だ選択されていない構成要件303のうち、上記の基準に基づいて、構成要件303を選択したとする。さらに、コンピュータは、構成要件303に適用可能な具体化規則を選択し、その具体化規則を用いて、構成要件303から新たな構成要件(図4において図示略)を導出する。コンピュータは、新たに導出した構成要件、および、これまでに導出済みの構成要件であって未だ選択されていない構成要件304,305のうち、上記の基準に基づいて、構成要件304を選択したとする。図4では、上記の具体例の説明で選択された構成要件を、太線で示している。上記の具体例の説明では、「構成要件301」、「構成要件302」、「構成要件303」、「構成要件304」の順に選択されている。コンピュータは、構成要件304を選択した後も同様の処理を繰り返し、基準を満たす構成要件として選択された構成要件をそれ以上具体化できなくなったならば、処理を終了する。
なお、発明者は、基準を満たす構成要件に対する制約条件を設けてもよいと考えた。例えば、『特定の構成要素と他の構成要素との関係が「connectedTo 」となることはない。』等の制約条件を設けてもよいと考えた。この場合、基準を満たす構成要件であっても、このような制約条件を満たしていなければ、選択されないことになる。
上述の発明者想定技術は、木探索問題の一種として捉えることができる。そして、基準を満たす構成要件として選択された構成要件であって、それ以上具体化できない構成要件は、葉ノードに該当し、起点となる構成要件301(図4参照)は、ルートノードに該当する。ルートノードから葉ノードまで辿ることができ、ルートノードから葉ノードまでのパス上の構成要件は、全て、基準を満たす構成要件として選択済みの構成要件である。例えば、構成要件304の下位の構成要件が葉ノードに該当したとすると、ルートノードから葉ノードまでのパスは、「構成要件301→構成要件302→構成要件304→・・・・」となる。このパスに含まれる構成要件は、いずれも、基準を満たす構成要件として選択済みの構成要件である。
発明者は、過去に、ICTシステムを構築するために、入力した構成要件に基づいて具体化された構成要件を導出したときにおける、基準を満たす構成要件の探索の履歴を、過去に構築したICTシステム毎に、記録しておくことを考えた。
なお、発明者は、上記の発明者想定技術の他に、以下に示す技術も考えた。コンピュータは、上記の発明者想定技術と同様に、複数種類の具体化規則を予め記憶している。そして、コンピュータは、入力された構成要件を木構造のルートノードとして、制約条件を満たしている限り、具体化規則によって得られる各構成要件を全て選択していくことを繰り返し、選択された構成要件をそれ以上具体化できなくなったならば、その構成要件から新たな構成要件を導出しない。この技術を、全探索技術と記す。全探索技術では、葉ノードが複数存在する木構造が得られる。従って、全探索技術では、葉ノードに該当する構成要件が複数得られる。設計者は、その複数の構成要件から、最も好ましい構成要件を判断する。この場合にも、ルートノード(入力された構成要件)から、最も好ましいと判断された構成要件まで辿ることができる。発明者は、過去にICTシステムを構築したときにおけるルートノードから最も好ましいと判断された構成要件までのパスを、好ましい探索履歴として、過去に構築したICTシステム毎に、記録しておくことを考えた。
そして、発明者は、新たなICTシステムを構築するときに、新たな構成要件に基づいて好ましい構成要件を効率的に探索するために、記録しておいた過去における構成要件の探索の履歴を利用することができないかを検討した。発明者は、過去における探索の履歴は、発明者想定技術に基づいて得られたものであっても、全探索技術によって得られたものであっても、あるいは、他の技術によって得られたものであってもよいと考えた。
しかし、発明者は、新たな構成要件に基づいて好ましい構成要件を効率的に探索するために、過去における構成要件の探索の履歴を利用する場合に、課題が生じると考えた。
発明者が考えた第1の課題は、新たに構成要件を探索する際に、新たな構成要件と、過去の探索の履歴に含まれる構成要件とを比較して、構成要件同士の類似度を求めなければならないが、その類似度を特定することが難しいという課題である。構成要件同士の類似度が特定できなければ、新たに構成要件を探索する際に、過去における探索の履歴を利用することが困難になってしまう。図5および図6は、構成要件同士の類似度の特定の困難性の例を示す模式図である。図5では、過去の構成要件と、新たに得られた構成要件とを示している。この2つの構成要件では、構成要素111(MySQL[7~])と構成要素112(VM)とが「hostedOn」という関係で繋がれている点は共通である。しかし、その他の構成要素は、共通ではないため、過去の構成要件と、新たに得られた構成要件との類似度を定めることができない。同様に、図6でも、過去の構成要件と、新たに得られた構成要件とを示している。この2つの構成要件では、構成要素113(NW)と構成要素114(ルータ)とが「connectedTo 」という関係で繋がれている点は共通である。しかし、その他の構成要素に着目すると、VMの数が異なっていたり、構成要素113以外のNWの有無の違いがあったりして、そのような相違を定量化することが困難であり、2つの構成要件の類似度を定めることができない。このように、類似度を定めることが困難であるため、新たに構成要件を探索する際に、過去における探索の履歴を利用することが困難になってしまう。
発明者が考えた第2の課題は、過去の構成要件と、新たに得られた構成要件とが全く同じであっても、その2つの構成要件における設計の意図が異なっている場合があり、そのような場合には、新たに構成要件を探索する際に、過去における探索の履歴を利用することが困難であるという点である。全く同じ2つ構成要件において、その構成要件における設計の意図が異なる場合というのは、その2つの構成要件の出所が異なる場合である。図7は、第2の課題の例を示す模式図である。図7に示す構成要件400,401は、過去の構成要件であり、構成要件411は、新たに得られた構成要件である。構成要件401と構成要件411は、同一である。しかし、構成要件401は、構成要件400に所定の具体化規則を適用して得られた構成要件である。従って、構成要件401には、「AP(Application)を繋ぎたい。」という目的によって得られたものである。一方、構成要件411は、起点となる構成要件として与えられた構成要件であり、出所となる構成要件は存在しない。従って、構成要件411は、「AP(Application)を繋ぎたい。」という目的によって得られたものではない。このように、構成要件401と構成要件411は同一の構成要件であるが、出所が異なるため、設計の意図が異なっている。そのため、構成要件411からの探索を効率的に行うために、構成要件401以降の探索履歴をそのまま利用したとしても、適切な探索にはならない。
以上が、本発明の発明者が考えた、本発明に関連する技術である。以下に説明する本発明によれば、上記の第1の課題や、第2の課題は、解決される。
以下、図面を参照して本発明の実施形態を説明する。
実施形態1.
本発明においても、「構成要件」や「具体化規則」を用いるので、本発明における「構成要件」や「具体化規則」は、前述の発明者想定技術における「構成要件」や「具体化規則」と同様であるが、実施形態においても、「構成要件」や「具体化規則」について説明する。
「構成要件」とは、構築対象のICTシステムにおける、構成要素を示す情報、または、構成要素間の関係を示す情報である。構成要件が、構成要素を示す情報と、構成要素間の関係を示す情報の両方を含んでいてもよい。構成要素や、構成要素間の関係は、ICTシステムに関する要件を表わしている。構成要件に含まれる構成要素は、ソフトウェアであっても、ハードウェアであってもよい。
また、構成要件は、抽象的な(換言すれば、具体的でない)構成要素を示す情報や、構成要素間の抽象的な(具体的でない)関係を示す情報を含んでいてもよい。「構成要素が具体的でない」とは、構成要素の名称が具体化されていないことや、構成要素の名称が具体化されていたとしても、その構成要素が必要とする他の構成要素との間の関係が具体化されていないことである。また、構成要素間の関係が具体的であるか否かは、その関係の種類に応じて予め定められる。例えば、「HostedOn」という関係は具体的な関係として予め定められていて、「ConnectedTo 」という関係は具体的な関係ではないとして予め定められているものとする。
構成要件は、構成要素をノードで表し、構成要素間の関係をエッジで表したグラフで表現することができる。構成要素を表わすノードには、構成要素の「型」の名称が記述され、構成要素間の関係を表わすエッジには、その関係の「型」の名称が記述される。個々の「型」の名称には、その名称を有する構成要素の機能や、その名称を有する関係の特徴等が予め定められている。構成要素を表わすノードには、「型」の名称の他に、属性値(例えば、バージョン情報等)が記述されていてもよい。
構成要件の例は、例えば、図1に示すように表すことができる。図1については、既に説明しているので、ここでは、説明を省略する。
「具体化規則」は、構成要件の一部をより詳細に記述するように書き換える規則である。具体化規則の例として、例えば、図2に示す具体化規則201,202が挙げられる。具体化規則は、構成要件の中に、具体化規則の上段に適合する箇所が存在しているならば、その箇所を、具体化規則の下段に示すようにより詳細に書き換えることを表わしている。図2に示すように、上段の内容が共通である具体化規則が複数存在してもよい。図2に示すマーク203については、既に説明しているので、ここでは、説明を省略する。
図8は、本発明の第1の実施形態に係るシステム構成導出装置の例を示すブロック図である。本実施形態のシステム構成導出装置10は、探索履歴記憶部11と、情報抽出部12と、学習データ記憶部13と、学習部14と、学習結果記憶部15と、具体化規則記憶部16と、入力部17と、探索部18と、探索経過記憶部19とを備える。
探索履歴記憶部11は、過去において適切と判定された構成要件の探索履歴を記憶する記憶装置である。探索履歴記憶部11に記憶される構成要件の探索履歴は、過去に、ICTシステムを構築するために、与えられた構成要件に基づいて具体化された構成要件を導出したときにおける探索履歴であり、適切と判定された構成要件の探索履歴である。
例えば、前述の発明者想定技術が適用されたコンピュータが、入力された構成要件を起点として、「良い具体化」の基準を満たす構成要件を探索し、「良い具体化」の基準を満たす構成要件であってそれ以上具体化できない構成要件まで探索したとする。この構成要件は、木構造における葉ノードに該当し、起点として構成要件はルートノードに該当する。既に説明したように、ルートノードから葉ノードまでのパス上の構成要件は、全て、基準を満たす構成要件として選択済みの構成要件である。システム構成導出装置10の管理者は、ルートノード側から葉ノード側に順序付けたパス上の各構成要件と、パス上の個々の構成要件から次の構成要件を導出する際に用いた個々の具体化規則とを、過去において適切と判定された構成要件の探索履歴として、予め探索履歴記憶部11に記憶させておく。
探索履歴記憶部11に記憶される探索履歴は、前述の発明者想定技術に基づいて得られた探索履歴に限定されない。例えば、前述の全探索技術が適用されたコンピュータが、入力された構成要件を起点として、制約条件を満たしている限り、具体化規則によって得られる各構成要件を全て選択していくことを繰り返し、葉ノードに該当する構成要件が複数存在する木構造を生成したとする。そして、設計者が、葉ノードに該当する複数の構成要件から、最も好ましい構成要件を判断したとする。すると、ルートノード(入力された構成要件)から、最も好ましいと判断された構成要件までのパスが特定できる。システム構成導出装置10の管理者は、ルートノード側から葉ノード側に順序付けたパス上の各構成要件と、パス上の個々の構成要件から次の構成要件を導出する際に用いた個々の具体化規則とを、過去において適切と判定された構成要件の探索履歴として、予め探索履歴記憶部11に記憶させてもよい。
探索履歴記憶部11が記憶する構成要件の探索履歴の数は1つとは限らない。システム構成導出装置10の管理者は、過去にICTシステムを構築する際に、例えば、上述のように発明者想定技術や全探索技術に基づいて得られた探索履歴を収集し、その探索履歴を探索履歴記憶部11に記憶させる。なお、探索履歴記憶部11が記憶する探索履歴は、発明者想定技術や全探索技術以外の技術に基づいて得られた探索履歴であってもよい。
図9は、探索履歴記憶部11が記憶する構成要件の探索履歴の一例を示す模式図である。図9に示す例では、構成要件21が、最初に与えられた構成要件であり、起点となる。図9に示す例では、構成要件21には、構成要素31〜34が含まれ、構成要素31(AP)と構成要素32(AP)とが「connectedTo 」という関係で繋がれ、同様に、構成要素33(AP)と構成要素34(AP)とが「connectedTo 」という関係で繋がれている。
そして、図9に例示する探索履歴では、構成要件21に具体化規則Aを適用することによって、構成要件21が構成要件22に遷移し、構成要件22に具体化規則Aを適用することによって構成要件22が構成要件23に遷移し、構成要件23に具体化規則Bを適用することによって構成要件23が構成要件24に遷移したことを表わしている。なお、構成要件24より後の構成要件の遷移も、探索履歴に含まれているが、図9では図示を省略している。図9から分かるように、探索履歴では、1つの構成要件から次の構成要件への遷移毎に、具体化規則が割り付けられている。例えば、構成要件21から構成要件22への遷移51には、「具体化規則A」が割り付けられている。他の遷移52,53等にもそれぞれ、具体化規則が割り付けられている。
図10は、図9における具体化規則Aおよび具体化規則Bを示す模式図である。
情報抽出部12は、探索履歴記憶部11に記憶されている探索履歴(例えば、図9を参照)から、1つの構成要件から次の構成要件への遷移毎に、具体化規則を含む所定の情報から成る組を抽出する。情報抽出部12が遷移毎に抽出する所定の情報から成る組について、より詳細に説明する。
情報抽出部12は、上記の所定の情報から成る組として、4種類の情報から成る組合せ(以下、4つ組と記す。)を抽出する。4つ組に含まれる4種類の情報は、以下に示す情報である。
(1)具体化規則
(2)単位構成要件
(3)単位構成要件の近傍情報
(4)単位構成要件履歴情報
なお、この4つ組は、上記の所定の情報から成る組の例であり、上記の所定の情報から成る組は、この4つ組以外であってもよい。以下、上記の所定の情報から成る組が、この4つ組である場合を例にして説明する。
上記(1)〜(4)の4種類の情報について説明する。
情報抽出部12は、探索履歴から、1つの構成要件から次の構成要件への遷移毎に、4つ組を抽出する。そして、前述のように、1つの構成要件から次の構成要件への遷移毎に、具体化規則が割り付けられている。情報抽出部12は、4つ組の抽出対象の遷移に割り付けられている具体化規則を、4つ組をなす情報の1つとして抽出する。すなわち、4つ組に含まれている具体化規則は、構成要素の遷移に割り付けられている具体化規則である。
「単位構成要件」とは、具体化規則が適用される構成要件内でその具体化規則によって書き換えられる部分である。また、この構成要件は、遷移前の構成要件である。情報抽出部12は、4つ組の抽出対象の遷移前後の構成要件と、その遷移に割り付けられている具体化規則とに基づいて、遷移前の構成要件から単位構成要件を抽出する。
「単位構成要件の近傍情報」とは、単位構成要件の近傍に関する情報である。以下、単位構成要件の近傍情報を、単に、近傍情報と記す場合がある。近傍情報は、例えば、単位構成要件と、その単位構成要件からNホップ以内の構成要素および構成要素間の関係とを示す情報である。近傍情報に含まれる構成要素および構成要素間の関係には、いずれも「型」の名称が記述される。また、近傍情報に含まれる構成要素や、構成要素間の関係には、「型」の名称の他に、属性値(例えば、バージョン情報等)が記述されていてもよい。この例では、近傍情報の中に、単位構成要件も包含される。ただし、近傍情報は、上記の例に限定されない。近傍情報の他の例については後述する。また、NホップにおけるNの値は、例えば、N=1であるが、N=1に限定されず、N=2、N=3等であってもよい。以下の説明では、N=1である場合を例にする。すなわち、以下の説明では、単位構成要件と、その単位構成要件から1ホップ以内の構成要素および構成要素間の関係とを示す情報を近傍情報とする場合を例にして説明する。図11は、近傍情報の例を示す模式図である。
図11(a)は、構成要件を示す。この構成要件に含まれる単位構成要件が、構成要素103(APS)であるとする。図11において、単位構成要件を破線で囲んで図示する。この場合、近傍情報は、構成要素103(単位構成要件)と、構成要素103から1ホップ以内の構成要素および構成要素間の関係とを示す情報である。図11(b)は、この近傍情報を示している。図11(b)において、構成要素101および構成要素102は、構成要素103(単位構成要件)から1ホップ以内の構成要件である。また、構成要素103,101間の関係(hostedOn)は、構成要素103から1ホップ以内の構成要素間の関係に該当する。同様に、構成要素103,102間の関係(connectedTo )は、構成要素103から1ホップ以内の構成要素間の関係に該当する。一方、構成要素101,102間の関係(hostedOn、図11(a)参照)は、構成要素103から1ホップ以内の構成要素間の関係に該当せず、近傍情報に含まれない。
また、近傍情報に対する1つまたは複数の制約条件が予め指定されていてもよい。例えば、制約条件として、特定の構成要素の型が指定されているとする。その場合、情報抽出部12は、単位構成要件から1ホップ以内の構成要素のうち、指定された型に該当する構成要素、および、単位構成要件内の構成要素と指定された型に該当する構成要素との関係を近傍情報に含める。一方、情報抽出部12は、単位構成要件から1ホップ以内の構成要素のうち、指定された型に該当しない構成要素、および、単位構成要件内の構成要素と指定された型に該当しない構成要素との関係に関しては、近傍情報に含めない。N=1以外の場合であっても同様である。
単位構成要件履歴情報は、単位構成要件の生成に関連して用いられた具体化規則と、その具体化規則がどの構成要件のどの箇所に適用されたかを示す情報とを含む情報である。「単位構成要件の生成に関連して用いられた具体化規則」とは、換言すれば、「単位構成要件に含まれる構成要素や構成要素間の関係、および、構成要件に含まれる構成要素や関係を生成する元となった構成要素や関係」の生成に寄与した具体化規則である。ここで、「構成要件に含まれる構成要素や関係を生成する元となった構成要素や関係」とは、起点となる構成要件から、4つ組の抽出対象の遷移前の構成要件までの各構成要件の中で、構成要件に含まれる構成要素や関係を生成するために必要であった構成要素や関係を意味する。例えば、起点となる構成要件に含まれる構成要素「AP」に基づいて、構成要素「VM」が生成され、さらに、その構成要素「VM」に基づいて、構成要素「NW」が生成されたとする。そして、その構成要素「NW」が単位構成要件に含まれているとする。この場合、「AP」および「VM」がいずれも、構成要素「NW」を生成する元になった構成要素に該当する。単位構成要件履歴情報の具体例については後述する。
情報抽出部12が抽出する4つ組をなす情報のうち、単位構成要件履歴情報は、「なし」という情報であってもよい。
図9に示す構成要件23から次の構成要件24への遷移53を対象として情報抽出部12が抽出する4つ組を説明する。図12は、遷移53を対象とした場合に抽出される4つ組を示す模式図である。
探索履歴において、遷移53に割り付けられている具体化規則は、具体化規則B(図10(b)参照)である。従って、情報抽出部12は、具体化規則Bを探索履歴から抽出する。
また、情報抽出部12は、構成要件23,24と具体化規則Bとに基づいて、遷移前の構成要件23における単位構成要件が、構成要素35,36、および、構成要素35,36間の「connectedTo 」という関係であると判定し、その単位構成要件を構成要件23から抽出する。抽出された単位構成要件を図12に示している。
次に、情報抽出部12は、上記の単位構成要件の近傍情報を、構成要件23から抽出する。抽出された単位構成要件の近傍情報を図12に示している。
次に、情報抽出部12は、上記の単位構成要件の生成に関連して用いられた具体化規則と、その具体化規則がどの構成要件のどの箇所に適用されたかを示す情報とを含む単位構成要件履歴情報を抽出する。図9に示す遷移51で単位構成要件が生成されている。従って、情報抽出部12は、遷移51に割り付けられている具体化規則A(図10(a)参照)と、その具体化規則Aが適用された構成要件21、および、構成要件21内で具体化規則Aが適用された箇所を抽出する。
単位構成要件の生成に関連して用いられた具体化規則が他にも1つ以上あれば、情報抽出部12は、具体化規則毎に、その具体化規則と、その具体化規則がどの構成要件のどの箇所に適用されたかを示す情報を抽出する。
本例では、遷移52に割り付けられている具体化規則Aは、図12(2)に示されている単位構成要件に含まれない構成要素37,38および構成要素37,38間の関係の生成に寄与するものであり、図12(2)に示されている単位構成要件の生成には寄与していない。従って、遷移52に割り付けられている具体化規則Aや、構成要件22においてその具体化規則Aが適用された箇所等は、単位構成要件履歴情報に含まれない。
本例において抽出された単位構成要件履歴情報を図12に示している。
情報抽出部12は、遷移毎に、4つ組を抽出する。図9に示す遷移51を対象とした場合には、情報抽出部12は、以下の4つ組を抽出する。
(1)具体化規則
情報抽出部12は、「具体化規則A」を抽出する。
(2)単位構成要件
情報抽出部12は、構成要件21に含まれる構成要素31,32、および、構成要素31,32間の関係を抽出する。
(3)単位構成要件の近傍情報
単位構成要件に含まれる構成要素31,32に接続される他の構成要素は存在しないので、本例では、単位構成要件の近傍情報は、単位構成要件と同一になる。
(4)単位構成要件履歴情報
本例では、単位構成要件は、与えられた構成要件21に含まれている。そのため、単位構成要件の生成に関連して用いられた具体化規則は、ない。よって、情報抽出部12は、単位構成要件履歴情報として、「なし」という情報を得る。
また、図9に示す遷移52を対象とした場合、情報抽出部12は、以下の4つ組を抽出する。
(1)具体化規則
情報抽出部12は、「具体化規則A」を抽出する。
(2)単位構成要件
情報抽出部12は、構成要件22に含まれる構成要素33,34、および、構成要素33,34間の関係を抽出する。
(3)単位構成要件の近傍情報
単位構成要件に含まれる構成要素33,34に接続される他の構成要素は存在しないので、本例では、単位構成要件の近傍情報は、単位構成要件と同一になる。
(4)単位構成要件履歴情報
本例では、単位構成要件は、与えられた構成要件21に含まれている。そのため、単位構成要件の生成に関連して用いられた具体化規則は、ない。よって、情報抽出部12は、単位構成要件履歴情報として、「なし」という情報を得る。
以上、図9に示す遷移53,51,52から得られる4つ組をそれぞれ説明した。情報抽出部12は、探索履歴記憶部11に記憶された各探索履歴における構成要件の遷移毎に、4つ組を抽出する。
また、情報抽出部12は、抽出した各4つ組を、学習データ記憶部13に記憶させる。学習データ記憶部13は、4つ組の集合を記憶する記憶装置である。
学習部14は、学習データ記憶部13に記憶された4つ組の集合を学習データとして、与えられた4つ組に含まれる具体化規則の適切さの度合いを示すスコアの演算方法を、機械学習によって学習する。学習部14は、4つ組に対応するスコアの演算方法の機械学習において、非特許文献4に記載された技術を用いてもよい。
ここで、与えられた4つ組に対するスコアを算出する方式を、モデルと称する。モデルは、予め定められている。本実施形態では、4つ組が与えられた場合、4つ組に含まれている具体化規則に応じて、4つ組における具体化規則以外の3種類の情報(以下、3つ組と記す。)を、具体化規則に対応するグループに分類し、そのグループにおけるその3つ組のスコアを定めるという方式が、モデルとして予め定められている場合を例にして説明する。ただし、モデルとして、他のモデル(方式)が定められていてもよい。
図13は、種々の4つ組に含まれる3つ組を、具体化規則に応じて、具体化規則に対応するグループに分類し、分類された3つ組に対して定めたスコアの例を示す模式図である。図13では、具体化規則に対応するグループを2つ図示している。また、図13に示す各矩形は、3つ組を模式的に表わしている。そして、その矩形の近傍に示した値は、グループに分類された3つ組のスコアを示している。なお、図13に示す具体化規則において“FW”は、ファイアウォールを意味し、“R”は、ルータを意味する。
学習部14は、4つ組の集合を学習データとして、上記のモデルに基づいたスコアの演算方法を、機械学習によって学習する。例えば、学習部14は、具体化規則に対応するグループ毎に、3つ組のスコアを算出する演算方法(例えば、演算式)を学習する。
上記のモデルにおいて、スコアは、3つ組が示す状況において、3つ組が分類されているグループに対応する具体化規則を用いた場合の、遷移後の構成要件の適切さの度合いを表しているということができる。
学習部14は、学習結果(4つ組が与えられた場合にその4つ組に含まれる具体化規則の適切さの度合いを示すスコアの演算方法)を、学習結果記憶部15に記憶させる。学習結果記憶部15は、学習部14による学習結果(スコアの演算方法)を記憶する記憶装置である。
具体化規則記憶部16は、複数種類の具体化規則を記憶する記憶装置である。
入力部17は、新規の構成要件が入力される入力デバイスである。
探索部18は、着目している構成要件に適用可能な具体化規則を、具体化規則記憶部16から読み込む。着目している構成要件に適用可能な具体化規則は、1つとは限らず、2つ以上存在していてもよい。
入力部17に新規の構成要件が入力された場合、探索部18は、その新規の構成要件を、着目している構成要件として選択する。また、後述するように、探索部18は、着目している構成要件を、順次、選択していく。
探索部18は、具体化規則記憶部16から読み込んだ具体化規則と、着目している構成要件内におけるその具体化規則の適用箇所とのペアを定める。構成要件に適用される具体化規則が共通であっても、構成要件内における具体化規則の適用箇所が異なれば、得られる構成要件も異なる。そして、具体化規則の適用箇所に応じて、得られるスコアも異なる。そのため、探索部18は、上記のように、具体化規則と、着目している構成要件内におけるその具体化規則の適用箇所とのペアをそれぞれ定める。
図14は、具体化規則の違いや、構成要件内の具体化規則の適用箇所の違いによって、異なる構成要件が得られることを示す模式図である。ここで、図14に示す構成要件61は、入力部17に入力された構成要件であり、探索部18は、構成要件61を、着目している構成要件として選択しているものとする。また、探索部18は、構成要件61に適用可能な具体化規則として、図15に示す2つの具体化規則211,212を具体化規則記憶部16から読み込んだとする。
具体化規則211(図15(a)参照)は、構成要件61内の構成要素121,122にそれぞれ適用可能であり、具体化規則211を、構成要素121,122のどちらに適用するかによって、得られる構成要件が変わる。また、具体化規則212(図15(b)参照)は、構成要件61内の構成要素121,122およびその両者を繋ぐ関係に該当する箇所に適用可能である。
具体化規則211を構成要素121に適用した場合、構成要件62(図14参照)が得られる。
具体化規則211を構成要素122に適用した場合、構成要件63(図14参照)が得られる。
具体化規則212を、構成要素121,122およびその両者を繋ぐ関係に該当する箇所に適用に適用すると、構成要件64(図14参照)が得られる。
本例では、探索部18は、具体化規則とその適用箇所とのペアとして、以下の3つのペアを定める。
(ペア1) 具体化規則211と、構成要素121とのペア
(ペア2) 具体化規則211と、構成要素122とのペア
(ペア3) 具体化規則212と、「構成要素121,122およびその両者を繋ぐ関係に該当する箇所」とのペア
探索部18は、定めたペア毎に、前述の4つ組を抽出する。探索部18は、4つ組における具体化規則として、ペアに含まれる具体化規則を抽出すればよい。また、探索部18は、4つ組における単位構成要件として、ペアに含まれる適用箇所(具体化規則の適用箇所)を抽出すればよい。そして、探索部18は、単位構成要件に応じて、単位構成要件の近傍情報および単位構成要件履歴情報を定めればよい。探索部18が単位構成要件の近傍情報および単位構成要件履歴情報を定める方法は、情報抽出部12が単位構成要件の近傍情報および単位構成要件履歴情報を定める方法と同様である。
なお、情報抽出部12が4つ組を抽出する場合と同様に、近傍情報に対する1つまたは複数の制約条件が予め指定されていてもよい。この場合、探索部18は、その制約条件を満足する近傍情報を含む4つ組を抽出する。
上記の「ペア1」に応じて抽出される4つ組は、構成要件61から構成要件62への遷移71に割り付けられる。上記の「ペア2」に応じて抽出される4つ組は、構成要件61から構成要件63への遷移72に割り付けられる。上記の「ペア3」に応じて抽出される4つ組は、構成要件61から構成要件64への遷移73に割り付けられる。
さらに、探索部18は、定めたペア毎に、4つ組をスコアの演算方法に適用することによって、4つ組のスコアを算出する。スコアの演算方法は、前述のように学習部14によって学習され、学習結果記憶部15に記憶されている。
探索部18は、ペア毎に抽出した4つ組、および、以前に(換言すれば、今回のスコア算出よりも前に)探索部18によってスコアが算出されていて未だ選択されていない4つ組の中で、最もスコアが高い4つ組を選択する。
ただし、以前に探索部18によってスコアが算出されていて未だ選択されていない4つ組が存在しない場合には、探索部18は、ペア毎に抽出した4つ組の中で、最もスコアが高い4つ組を選択すればよい。図14に示す例では、構成要件61は新規に入力された構成要件である。従って、図14に示す例では、以前に探索部18によってスコアが算出されていて未だ選択されていない4つ組は、存在しない。よって、探索部18は、3つの4つ組の中で、最もスコアが高い4つ組を選択すればよい。
探索部18は、選択した4つ組に対応するペアの適用対象となる構成要件に、そのペアを適用することによって得られる構成要件を、新たに、着目している構成要件として選択する。
例えば、上記の「ペア1」に対応する4つ組のスコアが“0.9”であり、上記の「ペア2」に対応する4つ組のスコアが“0.8”であり、「ペア3」に対応する4つ組のスコアが“0.6”であるとする(図16参照)。この場合、「ペア1」に対応する4つ組のスコアが最も高い。スコアが最も高い4つ組に対応する「ペア1」の適用対象となる構成要件は、構成要件61である。従って、探索部18は、構成要件61に「ペア1」を適用することによって得られる構成要件62を、着目している構成要件として新たに選択する。
本例では、構成要件61は、新規の構成要件であり、上記の「ペア1」、「ペア2」、「ペア3」それぞれの適用対象は、全て構成要件61となる。従って、最もスコアが高い4つ組に対応するペア(ペア1)の適用対象となる構成要件は、着目している構成要件に該当する。しかし、探索が進んだ場合、最もスコアが高い4つ組に対応するペアの適用対象となる構成要件は、着目している構成要件に該当しない場合もあり得る。
探索部18は、着目している構成要件として新たに選択すると、同様の動作を繰り返す。従って、探索部18は、着目している構成要件を、順次、選択していく。
また、探索部18は、上記の動作において、着目している構成要件、着目している構成要件に対して定めた各ペア、ペア毎に抽出した4つ組、ペア毎に算出したスコア(4つ組のスコア)、および、着目している構成要件として新たに選択した構成要件を、探索経過記憶部19に記憶させる。探索経過記憶部19は、これらの情報を記憶する記憶装置である。上記の各種情報を探索経過記憶部19に記憶させることで、構成要件の探索が進んだとしても、探索部18は、4つ組に含まれる単位構成要件履歴情報を抽出することができる。
探索部18は、構成要件62を、着目している構成要件として新たに選択した場合、構成要件62に適用可能な具体化規則を、具体化規則記憶部16から読み込む。そして、探索部18は、読み込んだ具体化規則と、構成要件62内におけるその具体化規則の適用箇所とのペアを定める。
そして、探索部18は、定めたペア毎に、前述の4つ組を抽出する。さらに、探索部18は、定めたペア毎に、4つ組のスコアを算出する。
探索部18は、ペア毎に抽出した4つ組、および、以前に探索部18によってスコアが算出されていて未だ選択されていない4つ組の中で、最もスコアが高い4つ組を選択する。ここでは、以前に探索部18によってスコアが算出されていて未だ選択されていない4つ組として、スコア“0.8”(図16参照)が算出されている4つ組、および、スコア“0.6”(図16参照)が算出されている4つ組が存在する。従って、探索部18は、今回算出した各スコア、および、以前に算出したスコア“0.8”,“0.6”の中で、最高のスコアを選択し、最もスコアが高い4つ組を選択する。本例では、着目している構成要件に基づいて、2つの4つ組が得られ、その2つの4つ組のスコアが“0.5”,“0.4”であったとする。この場合、最も高いスコアは、以前に算出されたスコア“0.8”(図16参照)である。すると、スコアが最も高い4つ組に対応するペアは、前述の「ペア2」になる。「ペア2」の適用対象となる構成要件は、構成要件61である。従って、探索部18は、構成要件61に「ペア2」を適用することによって得られる構成要件63を、着目している構成要件として新たに選択する。本例では、最もスコアが高い4つ組に対応するペアの適用対象となる構成要件は、着目している構成要件(構成要件62)に該当していない。
探索部18は、着目している構成要件として新たに選択すると、同様の動作を繰り返す。
上記の例では、着目している構成要件として、「構成要件61」、「構成要件62」、「構成要件63」が順に選択される場合を示した。得られるスコアの値によっては、例えば、構成要件62の次に、構成要件62の下位の構成要件が、着目している構成要件として選択され得る。
なお、着目している構成要件として新たに選択した構成要件を、より詳細に具体化できない場合には、探索部18は、探索を終了し、その構成要件を、木構造における葉ノードに該当する構成要件として決定する。
情報抽出部12、学習部14および探索部18は、例えば、システム構成導出プログラムに従って動作するコンピュータのCPU(Central Processing Unit )によって実現される。この場合、CPUは、コンピュータのプログラム記憶装置等のプログラム記録媒体からシステム構成導出プログラムを読み込み、そのシステム構成導出プログラムに従って、情報抽出部12、学習部14および探索部18として動作すればよい。
また、システム構成導出装置10は、2つ以上の物理的に分離した装置が、有線または無線で接続されている構成であってもよい。
次に、本発明の処理経過について説明する。なお、以下の説明では、既に説明した事項については、適宜、説明を省略する。
図17は、スコアの演算方法を学習する際の処理経過の例を示すフローチャートである。まず、情報抽出部12が、探索履歴記憶部11に記憶されている各探索履歴から、構成要件の遷移毎に4つ組を抽出し、抽出した4つ組の集合を学習データ記憶部13に記憶させる(ステップS1)。
次に、学習部14が、学習データ記憶部13から4つ組の集合を読み込む。学習部14は、その4つ組の集合を学習データとして、4つ組のスコアを算出する演算方法(例えば、演算式)を、機械学習によって学習する(ステップS2)。
学習部14は、ステップS2で学習したスコアの演算方法を、学習結果記憶部15に記憶させる(ステップS3)。
図18および図19は、入力された構成要件を起点として、構成要件をより具体化するように構成要件を探索していく処理の処理経過の例を示すフローチャートである。
まず、入力部17を介して、新規の構成要件が入力される(ステップS11)。
探索部18は、ステップS11で入力された新規の構成要件を、着目している構成要件として選択する(ステップS12)。
なお、探索部18は、この構成要件を、着目している構成要件として、探索経過記憶部19に記憶させる。探索経過記憶部19に記憶される情報は、4つ組に含まれる単位構成要件履歴情報を抽出する際に利用される。
次に、探索部18は、着目している構成要件に適用可能な具体化規則を、具体化規則記憶部16から読み込む(ステップS13)。
次に、探索部18は、ステップS13で読み込んだ具体化規則と、着目している構成要件内におけるその具体規則の適用箇所とのペアを定める(ステップS14)。ステップS14で、複数のペアが得られてもよい。
探索部18は、各ペアを、着目している構成要件に関連付けて、探索経過記憶部19に記憶させる。
次に、探索部18は、ステップS14で定めたペア毎に4つ組を抽出する(ステップS15)。
さらに、探索部18は、ステップS14で定めたペア毎に、4つ組をスコアの演算方法に適用することによって、4つ組のスコアを算出する(ステップS16)。
探索部18は、4つ組およびそのスコアをペアに関連付けて、探索経過記憶部19に記憶させる。
次に、探索部18は、直近のステップS15でペア毎に抽出した4つ組、および、以前に探索部18によってスコアが算出されていて未だ選択されていない4つ組の中で、最もスコアが高い4つ組を選択する(ステップS17)。ただし、以前に探索部18によってスコアが算出されていて未だ選択されていない4つ組が存在しない場合、探索部18は、直近のステップS15でペア毎に抽出した4つ組の中で、最もスコアが高い4つ組を選択すればよい。
次に、探索部18は、ステップS17で選択した4つ組に対応するペアの適用対象となる構成要件に、そのペアを適用することによって得られる構成要件を、新たに、着目している構成要件として選択する(ステップS18)。探索部18は、その構成要件を、次に選択された「着目している構成要件」として、探索経過記憶部19に記憶させる。
次に、探索部18は、ステップS18で選択した構成要件を、より詳細に具体化することができるか否かを判定する(ステップS19)、例えば、探索部18は、ステップS18で選択した構成要件に適用可能な具体化規則が具体化規則記憶部16に記憶されていれば、構成要件をより具体化することができると判定し、構成要件に適用可能な具体化規則が具体化規則記憶部16に記憶されていなければ、構成要件をより具体化することができないと判定してもよい。ただし、この判定方法は例であり、ステップS19における判定方法は、特に限定されない。
ステップS18で選択した構成要件をより具体化できると判定した場合(ステップS19のYes)、探索部18は、ステップS13以降の動作を繰り返す。
ステップS18で選択した構成要件をより具体化することはできないと判定した場合(ステップS19のNo)、探索部18は、ステップS18で選択した構成要件を、木構造における葉ノードに該当する構成要件として決定する(ステップS20)。なお、探索部18は、その構成要件を、最終的に得られた構成要件として、探索経過記憶部19に記憶させる。探索部18は、ステップS20で処理を終了する。
以上の処理経過において、システム構成導出装置10は、構成要件の更新を繰り返すことで、構築対象システムの構成要件を具体化していると言うことができる。
ICTシステムの設計者は、この葉ノードに該当する構成要件を、ICTシステムの構築に利用することができる。
本実施形態によれば、学習部14が、過去における構成要件の探索履歴から得られた4つ組の集合を学習データとして、与えられた4つ組に対するスコアの演算方法(例えば、演算式)を学習する。そして、4つ組に含まれている「単位構成要件」の粒度は、「構成要件」の粒度よりも細かい。従って、スコア演算方法を学習する際、「単位構成要件」の類似度は求めやすく、精度の高いスコア演算方法を学習することができる。
また、4つ組には、単位構成要件の近傍情報が含まれている。近傍情報同士が類似しているか否かは、例えば、一方の近傍情報が他方の近傍情報に対してグラフ埋め込み可能か否かによって判定することができる。近傍情報同士が類似しているか否かも判定することができ、精度の高いスコア演算方法を学習することができる。
また、4つ組には、単位構成要件履歴情報も含まれている。従って、設計の意図を考慮した値としてスコアが得られるスコア演算方法を学習することができる。
そして、探索部18は、そのようなスコア演算方法を4つ組に適用して、4つ組のスコアを算出し、そのスコアに基づいて、構成要件の探索を進める。従って、本実施形態によれば、過去における構成要件の探索履歴を利用して、好ましい構成要件を効率的に探索することができる。
従って、本実施形態によれば、システムを構築する際、システムの構成を効率的に導出することができる。
次に、上記の実施形態の変形例について説明する。上記の実施形態では、単位構成要件と、その単位構成要件からNホップ以内の構成要素および構成要素間の関係とを示す情報を、「単位構成要件の近傍情報」とした。
単位構成要件の近傍情報は、上記の例に限定されない。例えば、単位構成要件の近傍情報は、その単位構成要件からNホップ以内の構成要素の数を示す情報であってもよい。
NホップにおけるNの値は、例えば、N=1であるが、N=1に限定されず、N=2、N=3等であってもよい。この点は、上記の実施形態と同様である。
また、近傍情報に対する1つまたは複数の制約条件が予め指定されていてもよい。この場合、情報抽出部12は、単位構成要件からNホップ(例えば、1ホップ)以内の構成要素のうち、制約条件を満足する構成要素の数を近傍情報とすればよい。例えば、制約条件として、特定の構成要素の型が指定されているとする。その場合、情報抽出部12は、単位構成要件からNホップ(例えば、1ホップ)以内の構成要素のうち、その型に合致する構成要素の数を近傍情報とすればよい。
図20は、本発明の実施形態に係るコンピュータの構成例を示す概略ブロック図である。なお、以下の説明は、後述の第2の実施形態にも当てはまる。コンピュータ1000は、CPU1001と、主記憶装置1002と、補助記憶装置1003と、インタフェース1004と、入力デバイス1005とを備える。
本発明の実施形態のシステム構成導出装置10は、コンピュータ1000に実装される。システム構成導出装置10の動作は、システム構成導出プログラムの形式で補助記憶装置1003に記憶されている。CPU1001は、そのシステム構成導出プログラムを補助記憶装置1003から読み出して主記憶装置1002に展開し、そのシステム構成導出プログラムに従って、上記の実施形態で説明した処理を実行する。
補助記憶装置1003は、一時的でない有形の媒体の例である。一時的でない有形の媒体の他の例として、インタフェース1004を介して接続される磁気ディスク、光磁気ディスク、CD−ROM(Compact Disk Read Only Memory )、DVD−ROM(Digital Versatile Disk Read Only Memory )、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ1000に配信される場合、配信を受けたコンピュータ1000がそのプログラムを主記憶装置1002に展開し、上記の処理を実行してもよい。
また、各構成要素の一部または全部は、汎用または専用の回路(circuitry )、プロセッサやこれらの組み合わせによって実現されてもよい。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各構成要素の一部または全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。
各構成要素の一部または全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
実施形態2.
図21は、本発明の第2の実施形態に係るシステム構成導出装置の例を示すブロック図である。本実施形態のシステム構成導出装置は、構築対象システムの構成要件として具体的な構成要件を導出することができる。より具体的には、係るシステム構成導出装置は、構築対象システムの構成要件の更新を繰り返すことによって、その構築対象システムの構成要件を具体化する。本発明のシステム構成導出装置は、探索履歴記憶部81と、情報抽出部82と、学習部83と、具体化規則記憶部84と、入力部85と、探索部86とを備える。
探索履歴記憶部81(例えば、上述した第1の実施形態における探索履歴記憶部11に対応する。)は、過去において適切と判定された構成要件の探索履歴を記憶する。
情報抽出部82(例えば、上述した第1の実施形態における情報抽出部12に対応する。)は、探索履歴から、一の構成要件から次の構成要件への遷移毎に、その一の構成要件に適用された具体化規則を含む所定の情報から成る組(例えば、上述した第1の実施形態における4つ組に対応する。)を抽出する。具体化規則は、構成要件の一部をより詳細に記述するように書き換える規則である。
学習部83(例えば、上述した第1の実施形態における学習部14に対応する。)は、情報抽出部82によって抽出された所定の情報から成る組の集合を学習データとして、所定の情報から成る組に含まれる具体化規則の適切さの度合いを示すスコアの演算方法を学習する。
具体化規則記憶部84(例えば、上述した第1の実施形態における具体化規則記憶部16に対応する。)は、複数の具体化規則を記憶する。
入力部85(例えば、上述した第1の実施形態における入力部17に対応する。)には、新規の構成要件が入力される。
探索部86(例えば、上述した第1の実施形態における探索部18に対応する。)は、着目している構成要件に適用可能な具体化規則を、具体化規則記憶部84から読み込み、読み込んだ具体化規則と着目している構成要件内における具体化規則の適用箇所とのペア毎に、所定の情報から成る組を抽出し、当該所定の情報から成る組を演算方法に適用することによってスコアを算出し、ペア毎に抽出した所定の情報から成る組、および、以前にスコアが算出されていて未だ選択されていない所定の情報から成る組の中で、最もスコアが高い所定の情報から成る組を選択し、当該所定の情報から成る組に対応するペアの適用対象となる構成要件に、そのペアを適用することによって得られる構成要件を、新たに、着目している構成要件として選択することを繰り返す。
探索部86は、入力部85に新規の構成要件が入力されたときに、当該新規の構成要件を着目している構成要件として選択する。
また、探索部86は、以前にスコアが算出されていて未だ選択されていない所定の情報から成る組が存在しない場合には、ペア毎に抽出した所定の情報から成る組の中で、最もスコアが高い所定の情報から成る組を選択する。
本発明により、システムを構築する際、システムの構成を効率的に導出することができる。
また、情報抽出部82が、
一の構成要件から次の構成要件への遷移毎に、
具体化規則と、
その具体化規則が適用される構成要件内でその具体化規則によって書き換えられる部分である単位構成要件と、
単位構成要件の近傍に関する情報である近傍情報と、
単位構成要件の生成に関連して用いられた具体化規則と、当該具体化規則がどの構成要件のどの箇所に適用されたかを示す情報とを含む単位構成要件履歴情報とを
含む4つ組を抽出し、
学習部83が、
4つ組の集合を学習データとして、演算方法を学習し、
探索部86が、
着目している構成要件に適用可能な具体化規則を、具体化規則記憶部84から読み込み、ペア毎に、4つ組を抽出する
構成であってもよい。
また、近傍情報は、単位構成要件と、当該単位構成要件からNホップ以内の構成要素および構成要素間の関係とを示す情報であってもよい。
また、近傍情報は、単位構成要件と、当該単位構成要件からNホップ以内の構成要素および構成要素間の関係であって指定された条件を満たす構成要素および構成要素間の関係とを示す情報であってもよい。
また、近傍情報に含まれる構成要素および構成要素間の関係には型の名称が記述されてもよい。
また、近傍情報は、単位構成要件からNホップ以内の構成要素の数を示す情報であってもよい。
また、近傍情報は、単位構成要件からNホップ以内の構成要素であって指定された条件を満たす構成要素の数を示す情報であってもよい。
また、N=1であってもよい。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記の実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2018年6月22日に出願された日本特許出願2018−118930を基礎とする優先権を主張し、その開示の全てをここに取り込む。
10 システム構成導出装置
11 探索履歴記憶部
12 情報抽出部
13 学習データ記憶部
14 学習部
15 学習結果記憶部
16 具体化規則記憶部
17 入力部
18 探索部
19 探索経過記憶部

Claims (10)

  1. 構築対象システムの構成要件の更新を繰り返すことによって、前記構築対象システムの構成要件を具体化するシステム構成導出装置であって、
    過去において適切と判定された構成要件の探索履歴を記憶する探索履歴記憶手段と、
    前記探索履歴から、一の構成要件から次の構成要件への遷移毎に、前記一の構成要件に適用された、構成要件の一部をより詳細に記述するように書き換える規則である具体化規則を含む所定の情報から成る組を抽出する情報抽出手段と、
    前記情報抽出手段によって抽出された前記所定の情報から成る組の集合を学習データとして、前記所定の情報から成る組に含まれる具体化規則の適切さの度合いを示すスコアの演算方法を学習する学習手段と、
    複数の具体化規則を記憶する具体化規則記憶手段と、
    新規の構成要件が入力される入力手段と、
    着目している構成要件に適用可能な具体化規則を、前記具体化規則記憶手段から読み込み、読み込んだ具体化規則と前記着目している構成要件内における前記具体化規則の適用箇所とのペア毎に、前記所定の情報から成る組を抽出し、当該所定の情報から成る組を前記演算方法に適用することによってスコアを算出し、前記ペア毎に抽出した前記所定の情報から成る組、および、以前にスコアが算出されていて未だ選択されていない前記所定の情報から成る組の中で、最もスコアが高い前記所定の情報から成る組を選択し、当該所定の情報から成る組に対応するペアの適用対象となる構成要件に、前記ペアを適用することによって得られる構成要件を、新たに、着目している構成要件として選択することを繰り返す探索手段とを備え、
    前記探索手段は、
    前記入力手段に前記新規の構成要件が入力されたときに、当該新規の構成要件を着目している構成要件として選択し、
    前記探索手段は、
    以前にスコアが算出されていて未だ選択されていない前記所定の情報から成る組が存在しない場合には、前記ペア毎に抽出した前記所定の情報から成る組の中で、最もスコアが高い前記所定の情報から成る組を選択する
    ことを特徴とするシステム構成導出装置。
  2. 前記情報抽出手段は、
    一の構成要件から次の構成要件への遷移毎に、
    具体化規則と、
    前記具体化規則が適用される構成要件内で前記具体化規則によって書き換えられる部分である単位構成要件と、
    前記単位構成要件の近傍に関する情報である近傍情報と、
    前記単位構成要件の生成に関連して用いられた具体化規則と、当該具体化規則がどの構成要件のどの箇所に適用されたかを示す情報とを含む単位構成要件履歴情報とを
    含む4つ組を抽出し、
    前記学習手段は、
    前記4つ組の集合を学習データとして、前記演算方法を学習し、
    前記探索手段は、
    着目している構成要件に適用可能な具体化規則を、前記具体化規則記憶手段から読み込み、前記ペア毎に、前記4つ組を抽出する
    請求項1に記載のシステム構成導出装置。
  3. 近傍情報は、単位構成要件と、当該単位構成要件からNホップ以内の構成要素および構成要素間の関係とを示す情報である
    請求項2に記載のシステム構成導出装置。
  4. 近傍情報は、単位構成要件と、当該単位構成要件からNホップ以内の構成要素および構成要素間の関係であって指定された条件を満たす構成要素および構成要素間の関係とを示す情報である
    請求項2または請求項3に記載のシステム構成導出装置。
  5. 近傍情報に含まれる構成要素および構成要素間の関係には型の名称が記述される
    請求項3または請求項4に記載のシステム構成導出装置。
  6. 近傍情報は、単位構成要件からNホップ以内の構成要素の数を示す情報である
    請求項2に記載のシステム構成導出装置。
  7. 近傍情報は、単位構成要件からNホップ以内の構成要素であって指定された条件を満たす構成要素の数を示す情報である
    請求項2または請求項6に記載のシステム構成導出装置。
  8. N=1である
    請求項3から請求項7のうちのいずれか1項に記載のシステム構成導出装置。
  9. 構築対象システムの構成要件の更新を繰り返すことによって、前記構築対象システムの構成要件を具体化するシステム構成導出方法であって、
    過去において適切と判定された構成要件の探索履歴から、一の構成要件から次の構成要件への遷移毎に、前記一の構成要件に適用された、構成要件の一部をより詳細に記述するように書き換える規則である具体化規則を含む所定の情報から成る組を抽出し、
    抽出した前記所定の情報から成る組の集合を学習データとして、前記所定の情報から成る組に含まれる具体化規則の適切さの度合いを示すスコアの演算方法を学習し、
    複数の具体化規則を記憶する具体化規則記憶手段から、着目している構成要件に適用可能な具体化規則を読み込み、読み込んだ具体化規則と前記着目している構成要件内における前記具体化規則の適用箇所とのペア毎に、前記所定の情報から成る組を抽出し、当該所定の情報から成る組を前記演算方法に適用することによってスコアを算出し、前記ペア毎に抽出した前記所定の情報から成る組、および、以前にスコアが算出されていて未だ選択されていない前記所定の情報から成る組の中で、最もスコアが高い前記所定の情報から成る組を選択し、当該所定の情報から成る組に対応するペアの適用対象となる構成要件に、前記ペアを適用することによって得られる構成要件を、新たに、着目している構成要件として選択することを繰り返し、
    新規の構成要件が入力されたときに、当該新規の構成要件を着目している構成要件として選択し、
    以前にスコアが算出されていて未だ選択されていない前記所定の情報から成る組が存在しない場合には、前記ペア毎に抽出した前記所定の情報から成る組の中で、最もスコアが高い前記所定の情報から成る組を選択する
    ことを特徴とするシステム構成導出方法。
  10. コンピュータに、構築対象システムの構成要件の更新を繰り返すことによって、前記構築対象システムの構成要件を具体化させるためのシステム構成導出プログラムであって
    前記コンピュータに、
    過去において適切と判定された構成要件の探索履歴から、一の構成要件から次の構成要件への遷移毎に、前記一の構成要件に適用された、構成要件の一部をより詳細に記述するように書き換える規則である具体化規則を含む所定の情報から成る組を抽出する情報抽出処理、
    前記情報抽出処理で抽出された前記所定の情報から成る組の集合を学習データとして、前記所定の情報から成る組に含まれる具体化規則の適切さの度合いを示すスコアの演算方法を学習する学習処理、および、
    複数の具体化規則を記憶する具体化規則記憶手段から、着目している構成要件に適用可能な具体化規則を読み込み、読み込んだ具体化規則と前記着目している構成要件内における前記具体化規則の適用箇所とのペア毎に、前記所定の情報から成る組を抽出し、当該所定の情報から成る組を前記演算方法に適用することによってスコアを算出し、前記ペア毎に抽出した前記所定の情報から成る組、および、以前にスコアが算出されていて未だ選択されていない前記所定の情報から成る組の中で、最もスコアが高い前記所定の情報から成る組を選択し、当該所定の情報から成る組に対応するペアの適用対象となる構成要件に、前記ペアを適用することによって得られる構成要件を、新たに、着目している構成要件として選択することを繰り返す探索処理を実行させ、
    新規の構成要件が入力されたときに、当該新規の構成要件を着目している構成要件として選択させ、
    前記探索処理で、
    以前にスコアが算出されていて未だ選択されていない前記所定の情報から成る組が存在しない場合には、前記ペア毎に抽出した前記所定の情報から成る組の中で、最もスコアが高い前記所定の情報から成る組を選択させる
    ためのシステム構成導出プログラム。
JP2020525290A 2018-06-22 2019-04-08 システム構成導出装置、方法およびプログラム Active JP6989014B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2018118930 2018-06-22
JP2018118930 2018-06-22
PCT/JP2019/015312 WO2019244446A1 (ja) 2018-06-22 2019-04-08 システム構成導出装置、方法およびプログラム

Publications (2)

Publication Number Publication Date
JPWO2019244446A1 JPWO2019244446A1 (ja) 2021-05-20
JP6989014B2 true JP6989014B2 (ja) 2022-01-05

Family

ID=68983942

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020525290A Active JP6989014B2 (ja) 2018-06-22 2019-04-08 システム構成導出装置、方法およびプログラム

Country Status (3)

Country Link
US (1) US11403270B2 (ja)
JP (1) JP6989014B2 (ja)
WO (1) WO2019244446A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12530202B2 (en) 2023-03-07 2026-01-20 Nec Corporation System configuration derivation device, system configuration derivation method, and program

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7508838B2 (ja) * 2020-03-31 2024-07-02 日本電気株式会社 部分抽出装置、部分抽出方法およびプログラム
US20240394425A1 (en) * 2021-11-12 2024-11-28 Nec Corporation Design system, information processing device, storage medium, output device, and method
WO2023181121A1 (ja) * 2022-03-22 2023-09-28 日本電気株式会社 システム構成導出装置、システム構成導出方法および記録媒体

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0258131A (ja) 1988-08-24 1990-02-27 Nec Corp 設計エキスパートシステム構築方式
US9530110B2 (en) * 2006-05-03 2016-12-27 Ca, Inc. Autonomic management of autonomous management systems
JP5159713B2 (ja) * 2009-06-30 2013-03-13 インターナショナル・ビジネス・マシーンズ・コーポレーション システムの構成要素の設計アーキテクチャを自動設計する自動設計装置、自動設計方法及び自動設計プログラム
US10063445B1 (en) * 2014-06-20 2018-08-28 Amazon Technologies, Inc. Detecting misconfiguration during software deployment
JP6673359B2 (ja) 2015-08-27 2020-03-25 日本電気株式会社 システム構築支援システム、方法およびプログラム
JP6535607B2 (ja) * 2016-01-19 2019-06-26 日本電信電話株式会社 前処理モデル学習装置、方法、及びプログラム
US10360047B2 (en) * 2017-06-01 2019-07-23 Airwatch Llc Remote wireless network configuration using dynamically generated configuration profiles

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12530202B2 (en) 2023-03-07 2026-01-20 Nec Corporation System configuration derivation device, system configuration derivation method, and program

Also Published As

Publication number Publication date
US11403270B2 (en) 2022-08-02
JPWO2019244446A1 (ja) 2021-05-20
WO2019244446A1 (ja) 2019-12-26
US20210256004A1 (en) 2021-08-19

Similar Documents

Publication Publication Date Title
JP6989014B2 (ja) システム構成導出装置、方法およびプログラム
US10127512B2 (en) Association-based product design
US20210012239A1 (en) Automated generation of machine learning models for network evaluation
US9858544B2 (en) Expert exchange during UML design updates
US10613857B2 (en) Automatic machine-learning high value generator
US20180152506A1 (en) Automated collaboration workflow generation in thing-sourcing environments
JP2018516401A (ja) アクションベースのアプリ推奨エンジン
US20110292834A1 (en) Maintaining Time Series Models for Information Technology System Parameters
JP5971338B2 (ja) テンプレート生成プログラム、テンプレート生成方法およびテンプレート生成装置
KR20230166289A (ko) 어플리케이션의 테스트 시나리오를 생성하는 방법, 컴퓨터 장치, 및 컴퓨터 프로그램
KR102457153B1 (ko) 프로그램에 대한 중간 표현을 관리하는 방법 및 시스템
KR101860995B1 (ko) 사물 기능과 클라우드 서비스를 활용한 자율 서비스 구성 방법
KR20170062106A (ko) 워크플로우 조합 시스템 및 그 방법
JPWO2011016281A1 (ja) ベイジアンネットワーク構造学習のための情報処理装置及びプログラム
US8762898B1 (en) Double patterning aware routing without stitching
CN103207858A (zh) 用于推荐Web服务组合的装置和方法
CN117579472A (zh) 网络资产测绘中资产连接关系配置处理方法及装置
JP5462713B2 (ja) Webページ収集装置、方法及びプログラム
JP7508841B2 (ja) システム検証プログラム生成装置、システム検証プログラム生成方法およびシステム検証プログラム生成プログラム
US11977869B2 (en) Two-phase application development device
JP6766962B2 (ja) 変更手順生成装置、変更手順生成方法および変更手順生成プログラム
US11403072B1 (en) Mobile application development device
JP6212470B2 (ja) 行動ネットワーク情報抽出装置、行動ネットワーク情報抽出方法及び行動ネットワーク情報抽出プログラム
JP7782729B2 (ja) 情報処理装置、方法およびプログラム
WO2022239235A1 (ja) 特徴量算出装置、特徴量算出方法および特徴量算出プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201110

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201110

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211115

R150 Certificate of patent or registration of utility model

Ref document number: 6989014

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150