JP2020126471A - 解析装置、解析方法、および解析プログラム - Google Patents

解析装置、解析方法、および解析プログラム Download PDF

Info

Publication number
JP2020126471A
JP2020126471A JP2019018848A JP2019018848A JP2020126471A JP 2020126471 A JP2020126471 A JP 2020126471A JP 2019018848 A JP2019018848 A JP 2019018848A JP 2019018848 A JP2019018848 A JP 2019018848A JP 2020126471 A JP2020126471 A JP 2020126471A
Authority
JP
Japan
Prior art keywords
connection
oss
analysis
compatibility
source
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.)
Granted
Application number
JP2019018848A
Other languages
English (en)
Other versions
JP7216883B2 (ja
Inventor
浩之 大柳
Hiroyuki Oyanagi
浩之 大柳
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2019018848A priority Critical patent/JP7216883B2/ja
Priority to US17/428,852 priority patent/US11853744B2/en
Priority to PCT/JP2020/002093 priority patent/WO2020162174A1/ja
Publication of JP2020126471A publication Critical patent/JP2020126471A/ja
Application granted granted Critical
Publication of JP7216883B2 publication Critical patent/JP7216883B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】OSSなどのソフトウェア間の接続相性を解析する技術を提供する。【解決手段】解析装置1であって、接続元OSSの第1ソースコードと、接続先OSSの第2ソースコードと、前記接続元OSSおよび前記接続先OSSの接続用プラグインと、を取得する取得部12と、第1ソースコードのアウトプットプラグインと、第2ソースコードのインプットプラグインとで重複するデータ形式の数に基づいて、第1相性度を算出する第1解析部131と、前記接続用プラグインに含まれる関数の数およびインスタンスの数に基づいて、第2相性度を算出する第2解析部132と、第1相性度および第2相性度を用いて、前記接続元OSSと前記接続先OSSとの接続相性度を算出する第3解析部133と、を備える。【選択図】図2

Description

本発明は、OSSなどのソフトウェアの接続相性を解析する解析装置、解析方法、および解析プログラムに関する。
OpS(Operation Support System)などのシステムの機能を部品化し、部品化した各機能をOSS(Open Source Software)により実現することで、システムの開発期間の短縮、開発費の削減、拡張性の向上などが期待されている。OpSは、通信サービスを提供している事業者(キャリア)が、サービスを構築および運営するために必要なシステムである。OSSは、ソースコードの改変や再配布が自由に認められている無償のソフトウェアである。
また、プログラムの複雑度を算出する技術が存在する(特許文献1)。
特開2014-032466号公報
複数のOSSを組み合わせてシステムを構築する際にはOSS間の接続が必須である。OSS間の接続にあたっては、OSSが高度化している他、流通データ(syslog, file, stdin/out)の可否などが接続先のOSS毎に異なり、対応状況が変化する。このため、システム開発の都度、複数のOSSの組合せの決定には手作業による調査が必要となる。
将来的には、候補となるOSSの数が膨大になることが予想され、これにより、OSSの選択肢が多くなる。そのため、最適なOSSを選択するための調査の稼働負荷が増大し、システム開発の迅速化が損なわれるという問題が発生する。
本発明は、上記事情に鑑みてなされたものであり、本発明の目的は、OSSなどのソフトウェア間の接続相性を解析する技術を提供することにある。
上記目的を達成するため、本発明の一態様は、解析装置であって、接続元OSS(Open Source Software)の第1ソースコードと、接続先OSSの第2ソースコードと、前記接続元OSSおよび前記接続先OSSの接続用プラグインと、を取得する取得部と、第1ソースコードのアウトプットプラグインと、第2ソースコードのインプットプラグインとで重複するデータ形式の数に基づいて、第1相性度を算出する第1解析部と、前記接続用プラグインに含まれる関数の数およびインスタンスの数に基づいて、第2相性度を算出する第2解析部と、第1相性度および第2相性度を用いて、前記接続元OSSと前記接続先OSSとの接続相性度を算出する第3解析部と、を備える。
本発明の一態様は、解析装置であって、接続元ソフトウェアの第1ソースコードと、接続先ソフトウェアの第2ソースコードと、前記接続元ソフトウェアおよび前記接続先ソフトウェアの接続用プラグインと、を取得する取得部と、第1ソースコードのアウトプットプラグインと、第2ソースコードのインプットプラグインとで重複するデータ形式の数に基づいて、第1相性度を算出する第1解析部と、前記接続用プラグインに含まれる関数の数およびインスタンスの数に基づいて、第2相性度を算出する第2解析部と、第1相性度および第2相性度を用いて、前記接続元ソフトウェアと前記接続先ソフトウェアとの接続相性度を算出する第3解析部と、を備える。
本発明の一態様は、コンピュータが行う解析方法であって、接続元OSS(Open Source Software)の第1ソースコードと、接続先OSSの第2ソースコードと、前記接続元OSSおよび前記接続先OSSの接続用プラグインと、を取得する取得ステップと、第1ソースコードのアウトプットプラグインと、第2ソースコードのインプットプラグインとで重複するデータ形式の数に基づいて、第1相性度を算出する第1解析ステップと、前記接続用プラグインに含まれる関数の数およびインスタンスの数に基づいて、第2相性度を算出する第2解析ステップと、第1相性度および第2相性度を用いて、前記接続元OSSと前記接続先OSSとの接続相性度を算出する第3解析ステップと、を行う。
本発明の一態様は、上記解析装置として、コンピュータを機能させることを特徴とする解析プログラムである。
本発明によれば、OSSなどのソフトウェア間の接続相性を解析する技術を提供することができる。
本発明の実施形態の概要を説明するための説明図である。 本発明の実施形態に係る解析システムの全体構成図である。 第1相性度を説明するための図である。 第2相性度を説明するための図である。 解析処理を示すフローチャートである。 解析結果を示す画像の一例である。
以下、本発明の実施の形態について、図面を参照して説明する。なお、以下の本実施形態では、OSSについて説明するが、本発明はOSSに限定されるものではなく、OSS以外のソフトウェア間の接続相性を解析してもよい。
図1は、本発明の実施形態の概要を説明するための説明図である。本実施形態では、複数のOSS(Open Source Software)を用いて、あるシステム9を構築するものとする。図示する例では、3つのOSSと、独自に開発したソフトウェアとを用いて、システムを構築することを想定している。
この場合、機能Cを提供するOSS-Cは、機能Bを提供するOSS-Bと接続するため、事前にOSS-CとOSS-Bとの間の接続相性を解析する必要がある。本実施形態では、手作業による調査、または、OSS-CおよびOSS-Bを実際にシステム9に実装することなく、OSS-CおよびOSS-Bの接続相性を解析する。ここで、OSS-Cは接続元OSSで、OSS-Bは接続先OSSである。
本実施形態では、プラグインの充実度を用いて接続相性を解析する。具体的には、OSSのプラグインには、OSS本体のソースコードに含まれるプラグイン(本体プラグイン)と、外部プラグインとしてOSSリポジトリから取得する接続用プラグインの2種類が存在する。本実施形態では、これら2つのプラグインを対象に接続相性を解析する。なお、OSS-BとOSS-Aと間の接続相性についても、本実施形態では、同様に解析することができる。
図2は、本発明の実施形態に係る解析システムの全体を示すシステム構成図である。図示する解析システムは、解析装置1と、ユーザ端末2と、OSSリポジトリ3とを備える。
OSSリポジトリ3は、複数のOSSに関する様々な情報を一元的に管理するデータベースである。
ユーザ端末2は、解析装置1に解析対象のOSSを入力するとともに、解析装置1の解析結果を表示する装置である。ユーザ端末2には、例えば、PC、タブレット、スマートフォンなどのコンピュータが用いられる。
解析装置1は、OSS間の接続の相性を解析する装置である。解析装置1には、例えば、サーバ、PCなどのコンピュータが用いられる。図示する解析装置1は、受付部11と、取得部12と、解析部13と、可視化部14と、記憶部15とを備える。
受付部11は、解析対象の2つのOSSが指定された解析要求を、ユーザ端末2から受け付ける。例えば、解析要求には、接続元OSSおよび接続先OSSの名称などの識別情報が含まれる。本実施形態では、接続元OSSおよび接続先OSSの名称が含まれるものとする。また、受付部11は、第1相性度の重みおよび第2相性度の重みの少なくとも1つを受け付けてもよい。
取得部12は、接続元OSSの第1ソースコードと、接続先OSSの第2ソースコードと、接続元OSSおよび接続先OSSの接続用プラグイン(外部プラグイン)とを、OSSリポジトリ3から取得する。
解析部13は、第1解析部131と、第2解析部132と、第3解析部133とを備える。第1解析部131は、第1ソースコードのアウトプットプラグインと、第2ソースコードのインプットプラグインとで重複するデータ形式の数に基づいて、第1相性度を解析および算出する。第2解析部132は、接続用プラグインに含まれる関数の数およびインスタンスの数に基づいて、第2相性度を解析および算出する。第3解析部133は、第1相性度および第2相性度を用いて、接続元OSSと接続先OSSとの接続相性度を算出する。また、第3解析部133は、重みを用いて接続相性度を算出してもよい。第1解析部131、第2解析部132および、第3解析部133は、それぞれの分析結果を記憶部15に記憶する。
可視化部14は、接続元OSSと接続先OSSとを結ぶ接続線を、解析部13が算出した接続相性度に応じた太さまたは種類で描画した画像(解析結果画像)を生成する。可視化部14は、生成した画像をユーザ端末2に送信し、ユーザ端末2のディスプレイ(出力装置)に表示させる。また、可視化部14は、記憶部15に接続元OSSに対応する他の接続先OSSとの接続相性度が記憶されている場合、他の接続先OSSとの接続相性度を基づいて、接続元OSSと他の接続先OSSとを結ぶ接続線を、生成する画像に描画してもよい。
次に、解析部13の処理について説明する。
図3は、第1解析部131の処理を説明するための説明図である。図示する例では、接続元OSSとして「fluentd」を、接続先OSSとして「Elasticsearch」を用いる。
第1解析部131は、取得部12がOSSリポジトリ3から取得した、接続元OSSのソースコードおよび接続先OSSのソースコードを解析する。すなわち、第1解析部131は、本体プラグインを解析する。
具体的には、第1解析部131は、接続元OSSのソースコードに含まれるアウトプットプラグインと、接続先OSSのソースコードに含まれるインプットプラグインとで重複するデータ形式の数に基づいて、接続元OSSと接続先OSSとの第1相性度を解析する。アウトプットプラグインと、インプットプラグインとでデータ形式が重複する場合、接続先OSSは接続元OSSをサポート済みであるとみなすことができる。そのため、本実施形態では、第1解析部131は、アウトプットプラグインと、インプットプラグインとで重複するデータ形式をカウントし、重複するデータ形式の数を第1相性度とする。
図示する例では、アウトプットプラグイン31のデータ形式は、「file」、「syslog」、「json」である。インプットプラグイン32のデータ形式は、「syslog」、「json」である。したがって、重複するデータ形式は、「syslog」および「json」の2つである。この場合、第1解析部131は、第1相性度を「2」と解析する。このように、第1解析部131は、流通データ(syslog、json、file、stdin/outなど)の重複を解析し、第1相性度を算出する。
図4は、第2解析部132の処理を説明するための説明図である。図示する例でも、接続元OSSとして「fluentd」を、接続先OSSとして「Elasticsearch」を用いる。
第2解析部132は、取得部12がOSSリポジトリ3から取得した接続用プラグインのソースコードを解析する。接続用プラグインは、接続元OSSと接続先OSSとを接続するための外部プラグインである。
第2解析部132は、接続用プラグインのソースコードに含まれる関数の数およびインスタンスの数に基づいて、接続元OSSと接続先OSSとの第2相性度を解析する。関数は、接続用プラグインのソースコードに記述されたメソッドを意味する。例えば、前記ソースコードのプログラミング言語がRubyの場合、第2解析部132は、前記ソースコードの中で「def xxxx」と記述された記述部分(コード)の数をカウントすることで、前記ソースコードに含まれる関数の数を解析する。
また、インスタンスは、関数で使用する変数を意味する。接続用プラグインのソースコードのプログラミング言語がRubyの場合、第2解析部132は、前記ソースコードの中で「@xxxx」と記述された記述部分の数をカウントすることで、前記ソースコードに含まれるインスタンスの数を解析する。
図示する例では、OSSリポジトリ3から取得した接続用プラグインは、第1の接続用プラグイン(fluentd-filter-Elasticsearch)41と、第2の接続用プラグイン(fluentd-output-Elasticsearch)42の2である。第1の接続用プラグインでは、関数の数は20で、インスタンスの数は10であり、関数およびインスタンスの合計は30である。第2の接続用プラグインでは、関数の数は15で、インスタンスの数は5であり、関数およびインスタンスの合計は20である。この場合、第2解析部132は、第1の接続用プラグインおよび第2接続用プラグインの関数の数およびインスタンスの数を合計した「50」を、第2相性度とする。
なお、接続用プラグインがOSSリポジトリ3に存在しない場合、すなわち、接続用プラグインがOSSリポジトリ3から取得できない場合、第2相性度は0となる。
第3解析部133は、第1相性度および第2相性度を用いて、接続元OSSと接続先OSSとの接続相性度を算出する。
例えば、第3解析部133は、第1相性度と第2相性度との合計を接続相性度としてもよい。また、第3解析部133は、第1相性度と第2相性度の少なくとも1つに、重み(重み係数)を乗算し、重みを乗算した後の第1相性度と第2相性度値とを加算して接続相性度としてもよい。重みを用いる場合、第3解析部133は、以下の式により接続相性度を算出する。
接続相性度=第1相性度×第1相性度の重み+第2相性度×第2相性度の重み
第1相性度の重み、および、第2相性度の重みは、それぞれ所定の値を用いてよく、あるいは、ユーザがユーザ端末2を用いて指定した値を用いてもよい。また、ユーザは、第1相性度の重み、および、第2相性度の重みの少なくとも1つを指定してもよい。
第1相性度を優先する場合は、第1相性度用の重みを比較的大きな値とし、第2相性度用の重みを比較的小さな値とする。この場合、図3および図4に示す相性度を用いた接続相性度の例は、以下のとおりである。
2(第1相性度)×100(第1相性度の重み)+50(第2相性度)×1(第2相性度の重み)=250
また、第2相性度を優先する場合は、第2相性度用の重みを比較的大きな値とし、第1相性度用の重みを比較的小さな値とする。この場合、図3および図4に示す相性度を用いた接続相性度の例は、以下のとおりである。
2(第1相性度)×10(第1相性度の重み)+50(第2相性度)×5(第2相性度の重み)=270
次に、本実施形態の解析装置1が行う解析処理について説明する。
図5は、本実施形態の解析処理を示すフローチャートである。
ユーザは、所望の2つのOSSの接続相性の解析要求をユーザ端末2に入力する。ユーザ端末2は、ユーザが入力した解析要求を解析装置1に送信する。これにより、解析装置1の受付部11は、2つのOSSが指定された解析要求を、ユーザ端末2から受信する(ステップS11)。
解析要求には、接続元OSSおよび接続先OSSの名称(識別情報)が含まれる。また、ユーザが、第1相性度の重みおよび第2相性度の重みの少なくとも1つを、ユーザ端末2に入力した場合、解析要求には第1相性度の重みおよび第2相性度の重みの少なくとも1つが含まれる。
取得部12は、OSSリポジトリ3にアクセスする。そして、取得部12は、解析要求に含まれる接続元OSSおよび接続先OSSをキーとして、接続元OSSのソースコード、接続先OSSのソースコードをOSSリポジトリ3から取得する。また、取得部12は、接続元OSSおよび接続先OSSをキーとして、接続用プラグインをOSSリポジトリ3から取得する(ステップS12)。
第1解析部131は、接続元OSSのソースコードのアウトプットプラグインと、接続先OSSのソースコードのインプットプラグインとを解析し、アウトプットプラグインとインプットプラグインで重複するデータ形式の数をカウントする。そして、第1解析部131は、重複するデータ形式の数に基づいて第1相性度を算出する(ステップS13)。
第2解析部132は、接続用プラグインのソースコードを解析し、ソースコードに含まれる関数の数およびインスタンスの数をカウントする。そして、第2解析部132は、関数の数およびインスタンスの数に基づいて、第2相性度を算出する(ステップS14)。複数の接続用プラグインを取得した場合、第2解析部132は、接続用プラグイン毎に関数の数およびインスタンスの数をカウントし、これらの合計に基づいて第2相性度を算出する。
第3解析部133は、第1相性度および第2相性度を用いて、接続元OSSと接続先OSSとの接続相性度を算出する(ステップS15)。また、第3解析部133は、ステップS11の解析要求に重みが含まれている場合、重みを用いて接続相性度を算出する。
可視化部14は、接続元OSSと接続先OSSとを結ぶ接続線を、第3解析部133が算出した接続相性度に応じた太さまたは種類で描画した画像を生成する。そして、可視化部14は、生成した画像をユーザ端末2に送信し、ユーザ端末2のディスプレイに表示させる(ステップ16)。
第3解析部133は、算出した接続相性度などの分析結果を記憶部15に記憶する(ステップS17)。また、第1解析部131および第2解析部132も、分析結果を記憶部に記憶する。
図6は、可視化部14が生成し、ユーザ端末2に表示される分析結果画像の一例を示す図である。図示する画像では、解析要求で指定された接続元OSS(fluentd)と、接続先OSS(Elasticsearch)との接続線61を、第3解析部133が算出した接続相性度(図示する例では35)に応じた太さで描画する。また、図示する例では、接続相性度が0以外の場合は実線で描画し、接続相性度が0の場合は点線で描画する。接続相性度が0の場合は、第1相性度および第2相性度が0の場合である。図示するように、可視化部14は、検索した接続用プラグイン64についても画像に描画してもよい。
また、図示する例では、可視化部14は、記憶部15に接続元OSSに対応する他の接続先OSS65、66との解析結果(接続相性度等)が記憶されている場合、他の接続先OSS65、66との解析結果に基づいて、接続元OSSと他の接続先OSSとを結ぶ接続線62、63を、生成する画像に描画してもよい。なお、可視化部14は、他の接続先OSS66(NewOSS)との接続相性度は0であるため、接続元OSSとの接続線63を、点線で描画する。
以上説明した本実施形態の解析装置1は、接続元OSSの第1ソースコードと、接続先OSSの第2ソースコードと、前記接続元OSSおよび前記接続先OSSの接続用プラグインと、を取得する取得部12と、第1ソースコードのアウトプットプラグインと、第2ソースコードのインプットプラグインとで重複するデータ形式の数に基づいて、第1相性度を算出する第1解析部131と、前記接続用プラグインに含まれる関数の数およびインスタンスの数に基づいて、第2相性度を算出する第2解析部132と、第1相性度および第2相性度を用いて、前記接続元OSSと前記接続先OSSとの接続相性度を算出する第3解析部133と、を備える。
これにより本実施形態では、手作業による調査やOSSの実装を行うことなく、OSS間の接続の相性(プラグインの充実度)を解析することができる。したがって、本実施形態では、大規模システムの開発において、システムを部品化し、各部品をOSSなどの既存のソフトウェアで実現する際に、適切なOSSを迅速に選定し、適用することで、システム開発の期間および開発費用を大幅に削減することができる。また、適切なOSSを選定することで、システムの拡張性を向上することができる。
また、本実施形態の解析装置1は、接続元OSSと接続先OSSとを結ぶ接続線を、接続相性度に応じた太さまたは種類で描画した画像を生成する可視化部を備える。これにより、本実施形態では、ユーザは、OSSの接続相性度を、一目で(直感的に)理解することができる。
なお、上記説明した解析装置1には、例えば、CPU(Central Processing Unit、プロセッサ)と、メモリと、ストレージ(HDD:Hard Disk Drive、SSD:Solid State Drive)と、通信装置と、入力装置と、出力装置とを備える汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPUがメモリ上にロードされた所定のプログラムを実行することにより、解析装置1の各機能が実現される。また、解析装置1用のプログラムは、HDD、SSD、USBメモリ、CD-ROM、DVD-ROM、MOなどのコンピュータ読取り可能な記録媒体に記憶することも、ネットワークを介して配信することもできる。
また、本発明は上記実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。例えば、上記実施形態では、OSS間の接続相性を解析することとしたが、本発明はOSSに限定されるものではなく、OSS以外のソフトウェア間の接続相性を解析してもよい。
1 :解析装置
11 :受付部
12 :取得部
13 :解析部
131:第1解析部
132:第2解析部
133:第3解析部
14 :可視化部
15 :記憶部
2 :ユーザ端末
3 :OSSリポジトリ

Claims (8)

  1. 解析装置であって、
    接続元OSS(Open Source Software)の第1ソースコードと、接続先OSSの第2ソースコードと、前記接続元OSSおよび前記接続先OSSの接続用プラグインと、を取得する取得部と、
    第1ソースコードのアウトプットプラグインと、第2ソースコードのインプットプラグインとで重複するデータ形式の数に基づいて、第1相性度を算出する第1解析部と、
    前記接続用プラグインに含まれる関数の数およびインスタンスの数に基づいて、第2相性度を算出する第2解析部と、
    第1相性度および第2相性度を用いて、前記接続元OSSと前記接続先OSSとの接続相性度を算出する第3解析部と、を備えること
    を特徴とする解析装置。
  2. 請求項1記載の解析装置であって、
    前記接続元OSSと前記接続先OSSとを結ぶ接続線を、前記接続相性度に応じた太さまたは種類で描画した画像を生成する可視化部を、備えること
    を特徴とする解析装置。
  3. 請求項2記載の解析装置であって、
    第3解析部は、前記接続相性度を記憶部に記憶し、
    前記可視化部は、前記記憶部に前記接続元OSSに対応する他の接続先OSSとの接続相性度が記憶されている場合、前記他の接続先OSSとの接続相性度を基づいて、前記接続元OSSと前記他の接続先OSSとを結ぶ接続線を、前記画像に描画すること
    を特徴とする解析装置。
  4. 請求項1から3のいずれか1項に記載の解析装置であって、
    第1相性度の重みおよび第2相性度の重みの少なくとも1つを受け付ける受付部を、備え、
    第3解析部は、前記重みを用いて前記接続相性度を算出すること
    を特徴とする解析装置。
  5. 解析装置であって、
    接続元ソフトウェアの第1ソースコードと、接続先ソフトウェアの第2ソースコードと、前記接続元ソフトウェアおよび前記接続先ソフトウェアの接続用プラグインと、を取得する取得部と、
    第1ソースコードのアウトプットプラグインと、第2ソースコードのインプットプラグインとで重複するデータ形式の数に基づいて、第1相性度を算出する第1解析部と、
    前記接続用プラグインに含まれる関数の数およびインスタンスの数に基づいて、第2相性度を算出する第2解析部と、
    第1相性度および第2相性度を用いて、前記接続元ソフトウェアと前記接続先ソフトウェアとの接続相性度を算出する第3解析部と、を備えること
    を特徴とする解析装置。
  6. コンピュータが行う解析方法であって、
    接続元OSS(Open Source Software)の第1ソースコードと、接続先OSSの第2ソースコードと、前記接続元OSSおよび前記接続先OSSの接続用プラグインと、を取得する取得ステップと、
    第1ソースコードのアウトプットプラグインと、第2ソースコードのインプットプラグインとで重複するデータ形式の数に基づいて、第1相性度を算出する第1解析ステップと、
    前記接続用プラグインに含まれる関数の数およびインスタンスの数に基づいて、第2相性度を算出する第2解析ステップと、
    第1相性度および第2相性度を用いて、前記接続元OSSと前記接続先OSSとの接続相性度を算出する第3解析ステップと、を行うこと
    を特徴とする解析方法。
  7. 請求項6記載の解析方法であって、
    前記接続元OSSと前記接続先OSSとを結ぶ接続線を、前記接続相性度に応じた太さまたは種類で描画した画像を生成する可視化ステップを、行うこと
    を特徴とする解析装置。
  8. 請求項1から5のいずれか1項に記載の解析装置として、コンピュータを機能させること、を特徴とする解析プログラム。
JP2019018848A 2019-02-05 2019-02-05 解析装置、解析方法、および解析プログラム Active JP7216883B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019018848A JP7216883B2 (ja) 2019-02-05 2019-02-05 解析装置、解析方法、および解析プログラム
US17/428,852 US11853744B2 (en) 2019-02-05 2020-01-22 Analysis device, analysis method, and analysis program
PCT/JP2020/002093 WO2020162174A1 (ja) 2019-02-05 2020-01-22 解析装置、解析方法、および解析プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019018848A JP7216883B2 (ja) 2019-02-05 2019-02-05 解析装置、解析方法、および解析プログラム

Publications (2)

Publication Number Publication Date
JP2020126471A true JP2020126471A (ja) 2020-08-20
JP7216883B2 JP7216883B2 (ja) 2023-02-02

Family

ID=71948115

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019018848A Active JP7216883B2 (ja) 2019-02-05 2019-02-05 解析装置、解析方法、および解析プログラム

Country Status (3)

Country Link
US (1) US11853744B2 (ja)
JP (1) JP7216883B2 (ja)
WO (1) WO2020162174A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015212911A (ja) * 2014-05-07 2015-11-26 富士通株式会社 ソフトウェア選択装置、ソフトウェア選択方法、及びソフトウェア選択プログラム
JP2018010580A (ja) * 2016-07-15 2018-01-18 株式会社日立製作所 プログラム開発環境推薦システム及びその方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8996988B2 (en) * 2009-10-19 2015-03-31 Browsera, LLC Automated application compatibility testing
EP2585911A4 (en) * 2010-06-22 2014-07-16 Hewlett Packard Development Co METHOD AND SYSTEM FOR DETERMINING APPLICATION OF APPLICATIONS
JP2014032466A (ja) 2012-08-01 2014-02-20 Ntt Comware Corp 複雑度算出装置、複雑度算出方法および複雑度算出プログラム
KR102302361B1 (ko) * 2014-12-31 2021-09-15 삼성전자 주식회사 어플리케이션과 장치 간의 피처 매칭 방법 및 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015212911A (ja) * 2014-05-07 2015-11-26 富士通株式会社 ソフトウェア選択装置、ソフトウェア選択方法、及びソフトウェア選択プログラム
JP2018010580A (ja) * 2016-07-15 2018-01-18 株式会社日立製作所 プログラム開発環境推薦システム及びその方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
大柳浩之、外4名: "OpSへの適用に向けたOSS評価法の検討", 電子情報通信学会技術研究報告, vol. 118, no. 420, JPN6020011348, 17 January 2019 (2019-01-17), JP, pages 15 - 20, ISSN: 0004817542 *

Also Published As

Publication number Publication date
US11853744B2 (en) 2023-12-26
WO2020162174A1 (ja) 2020-08-13
JP7216883B2 (ja) 2023-02-02
US20220121441A1 (en) 2022-04-21

Similar Documents

Publication Publication Date Title
US20160018962A1 (en) User-interface for developing applications that apply machine learning
KR101283019B1 (ko) SaaS 어플리케이션 생성 방법 및 이를 실행하는 어플리케이션 생성 서버
US9959607B2 (en) Automatic verification of graphic rendition of JSON data
US11055619B2 (en) Systems and methods for energy expert collaboration features
US10175954B2 (en) Method of processing big data, including arranging icons in a workflow GUI by a user, checking process availability and syntax, converting the workflow into execution code, monitoring the workflow, and displaying associated information
US11079909B2 (en) Macro building tool with an information pane and a macro building pane for compiling an ordered macro and determining data dependency
US20210304142A1 (en) End-user feedback reporting framework for collaborative software development environments
CN110659206A (zh) 基于微服务的模拟架构建立方法、装置、介质及电子设备
JP6094593B2 (ja) 情報システム構築装置、情報システム構築方法および情報システム構築プログラム
US8413109B2 (en) Systems and methods for metamodel transformation
AU2020264292A1 (en) Systems, apparatuses, and methods of processing and managing web traffic data
JPWO2014061229A1 (ja) 情報システム構築支援装置、情報システム構築支援方法および情報システム構築支援プログラム
US20150379112A1 (en) Creating an on-line job function ontology
US20170270037A1 (en) Making production data available for testing in a non-production environment
US20130339834A1 (en) Dynamic presentation of a results set by a form-based software application
JP6336919B2 (ja) ソースコードレビュー方法及びそのシステム
JP2016170765A (ja) 効率的なメール検索のためのメールサービスシステムおよび方法
US20220350652A1 (en) Service design device, service design method, and non-transitory computer-readable storage medium for storing service design program
US11714699B2 (en) In-app failure intelligent data collection and analysis
WO2020162174A1 (ja) 解析装置、解析方法、および解析プログラム
US9275358B1 (en) System, method, and computer program for automatically creating and submitting defect information associated with defects identified during a software development lifecycle to a defect tracking system
US9087127B1 (en) Method for providing an integrated video module
JP2017219900A (ja) 情報処理装置およびプログラム
CN110096392B (zh) 用于输出信息的方法和装置
KR101351079B1 (ko) 데이터베이스와 연동되는 프로그램을 제어하는 서비스 제공 방법 및 시스템

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210601

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220902

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230103

R150 Certificate of patent or registration of utility model

Ref document number: 7216883

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150