JP5323107B2 - ソフトウェア部品管理装置およびソフトウェア部品管理プログラム - Google Patents
ソフトウェア部品管理装置およびソフトウェア部品管理プログラム Download PDFInfo
- Publication number
- JP5323107B2 JP5323107B2 JP2011026770A JP2011026770A JP5323107B2 JP 5323107 B2 JP5323107 B2 JP 5323107B2 JP 2011026770 A JP2011026770 A JP 2011026770A JP 2011026770 A JP2011026770 A JP 2011026770A JP 5323107 B2 JP5323107 B2 JP 5323107B2
- Authority
- JP
- Japan
- Prior art keywords
- software component
- function name
- function
- similarity
- registered
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
以下、図1〜図24を用いて、本発明に係るソフトウェア部品管理装置の実施の形態1について説明する。
図1は、本発明に係るソフトウェア部品管理装置1の概略構成を示すブロック図である。図1に示すように、ソフトウェア部品管理装置1は、ソフトウェア部品の登録を行う登録者およびソフトウェア部品の検索を行う開発者によって使用されるパーソナルコンピュータなどの情報処理端末装置(以下、端末装置と呼称)2にLAN(Local Area Network)などのようなネットワーク3を介して接続されている。
図3は、ソフトウェア部品登録部13の概略構成を示すブロック図である。ソフトウェア部品登録部13は、登録対象のソフトウェア部品(以下、登録対象部品と呼称)21の情報を入力とし、登録対象部品21に対し、ソフトウェア部品管理装置1において一意に特定できる部品IDを与える。
図4は、機能名称解析部14の概略構成を示すブロック図である。図4に示すように、機能名称解析部14は、ソフトウェア部品類似解析部31、ソフトウェア部品−機能名称関連解析部32および機能名称ソフトウェア部品対応表更新部33を備えている。
図5は、機能名称解析部14でのソフトウェア部品の登録処理を示すフローチャートである。以下、このフローチャートを参照して、機能名称解析部14での登録処理を説明する。
次に、機能名称解析部14の各構成要素のそれぞれについて、処理内容を説明する。
図6は、ソフトウェア部品類似解析部31の構成を示すブロック図である。ソフトウェア部品類似解析部31では、登録対象部品のソースコードと、既存部品の部品IDおよびソースコードを入力として、登録対象部品との類似度の高い既存部品の部品IDと、算出した類似度の値を類似ソフトウェア部品一覧35として出力する。
次に、図7に示すフローチャートを用いて、ソフトウェア部品類似解析部31で登録対象部品に類似する既存部品を解析する解析処理について説明する。
ここで、ソースコード解析部61でのソースコードの解析処理について説明する。
図11は、類似度算出部62の概略構成を示すブロック図である。図11に示すように類似度算出部62は、関数類似度算出部81と変数類似度算出部82とを備えている。
図13は、図12に示したステップS624における、登録対象部品の公開関数と既存部品Pの公開関数の類似度を算出する処理を示すフローチャートである。
図14は、図12に示したステップS624における、登録対象部品の公開変数と既存部品Pの公開変数の類似度を算出する処理を示すフローチャートである。
図15は、図12に示したステップS624における、登録対象部品の外部関数と既存部品Pの外部関数の類似度を算出する処理を示すフローチャートである。
図16は、図12に示したステップS624における、登録対象部品の外部変数と既存部品Pの外部変数の類似度を算出する処理を示すフローチャートである。
図17は、ソフトウェア部品−機能名称関連解析部32の構成を示すブロック図である。ソフトウェア部品−機能名称関連解析部32は、ソフトウェア部品機能名称抽出部41と、機能名称判定入力部42とを備えている。
次に、図18に示すフローチャートを用いて、ソフトウェア部品−機能名称関連解析部32で登録対象部品の機能名称を解析する処理を説明する。
次に、図19および図20を用いて機能名称−ソフトウェア部品対応表更新部33の構成および更新動作について説明する。
以上説明した、ソフトウェア部品管理装置1におけるソフトウェア部品検索の手順について説明する。
実施の形態2に係るソフトウェア部品管理装置では、機能名称解析部14におけるソフトウェア部品−機能名称関連解析部32の入力となるデータの種類が増えているが、その他の構成は、実施の形態1のソフトウェア部品管理装置1と同じであるので、同一の構成については同一の符号を付し、重複する説明は省略する。
図25は、ソフトウェア部品登録部13の概略構成を示すブロック図である。ソフトウェア部品登録部13は、図3に示したソースコード格納部22の他に、ドキュメント格納部92と関連情報格納部93とを備えている。
図26は、機能名称解析部14の概略構成を示すブロック図である。図26に示すように、ソフトウェア部品−機能名称関連解析部32には、登録対象部品の部品ID34と、成果物データベース16のドキュメントデータベース25からの出力、関連情報データベース17の部品IDドキュメント対応表26、ドキュメントID関連ドキュメントID対応表27およびドキュメントID機能名称ID対応表28の出力が与えられる構成となっている点で、図4に示した機能名称解析部14とは異なっている。
図27は、ソフトウェア部品−機能名称関連解析部32の構成を示すブロック図である。ソフトウェア部品−機能名称関連解析部32は、関連ドキュメント抽出部51、ドキュメント機能名称抽出部52および機能名称判定入力部53を備えている。
次に、図28に示すフローチャートを用いて、ソフトウェア部品−機能名称関連解析部32での登録対象部品の機能名称の解析処理について説明する。
Claims (8)
- ソフトウェア部品を登録するとともに、登録済みのソフトウェア部品から所望のソフトウェア部品を検索可能なソフトウェア部品管理装置であって、
前記ソフトウェア部品の登録の際に、前記登録済みのソフトウェア部品および登録対象のソフトウェア部品を解析し、前記登録対象のソフトウェア部品について、類似する前記登録済みのソフトウェア部品の機能名称を外部から選択可能に提示し、当該外部から選択された機能名称と前記登録対象のソフトウェア部品とを対応させた機能名称とソフトウェア部品との対応関係情報としてデータベースに保存する機能名称解析部と、
前記所望のソフトウェア部品を検索する際に、前記データベースに保存された前記機能名称とソフトウェア部品との対応関係情報から、前記所望のソフトウェア部品に関連したソフトウェア部品を抽出して出力するソフトウェア部品検索部と、を備える、ソフトウェア部品管理装置。 - 前記機能名称を外部から選択可能に提示する手段として、
前記外部に対して前記機能名称をリストアップした機能名称候補一覧を提示する出力部と、
前記機能名称候補一覧から、所望の機能名称を選択して入力する入力部と、を備える、請求項1記載のソフトウェア部品管理装置。 - 前記機能名称解析部は、
前記登録対象のソフトウェア部品のソースコードと、前記登録済みのソフトウェア部品のソースコードとに基づいて、前記登録対象のソフトウェア部品ついての前記登録済みのソフトウェア部品との類似度を算出して、前記登録対象のソフトウェア部品に類似する類似ソフトウェア部品について類似ソフトウェア部品情報として出力するソフトウェア部品類似解析部と、
前記類似ソフトウェア部品情報と、前記機能名称とソフトウェア部品との対応関係情報とに基づいて、前記類似ソフトウェア部品に関連付けられる機能名称を抽出して前記外部に選択可能に提示し、前記外部から選択された機能名称を機能名称情報として出力するソフトウェア部品-機能名称関連解析部と、を備える、請求項1記載のソフトウェア部品管理装置。 - 入力されたドキュメント、関連ドキュメント、機能名称群および前記登録対象のソフトウェア部品のそれぞれに対して識別番号を付与して、ソフトウェア部品とドキュメントの対応情報、ドキュメントと関連ドキュメントの対応情報、ドキュメントと機能名称の対応情報として保存し、
前記機能名称解析部は、
前記登録対象のソフトウェア部品のソースコードと、前記登録済みのソフトウェア部品のソースコードとに基づいて、前記登録対象のソフトウェア部品ついての前記登録済みのソフトウェア部品との類似度を算出して、前記登録対象のソフトウェア部品に類似する類似ソフトウェア部品について類似ソフトウェア部品情報として出力するソフトウェア部品類似解析部と、
前記類似ソフトウェア部品情報、前記ソフトウェア部品とドキュメントの対応情報、前記ドキュメントと関連ドキュメントの対応情報および前記ドキュメントと機能名称の対応情報に基づいて、前記類似ソフトウェア部品に関連付けられるドキュメント群に対応する機能名称を抽出して前記外部に選択可能に提示し、前記外部から選択された機能名称を機能名称情報として出力するソフトウェア部品-機能名称関連解析部と、を備える、請求項1記載のソフトウェア部品管理装置。 - 前記ソフトウェア部品類似解析部は、
前記登録対象のソフトウェア部品のソースコードおよび前記登録済みのソフトウェア部品のソースコードから、前記登録対象のソフトウェア部品および前記登録済みのソフトウェア部品が公開する関数および変数と、使用する外部関数および外部変数を解析し、そのそれぞれについて類似度を算出し、算出した類似度の加算値により、前記登録対象のソフトウェア部品ついての前記登録済みのソフトウェア部品との類似度を算出する類似度算出部を有する、請求項3または請求項4記載のソフトウェア部品管理装置。 - 前記類似度算出部は、
引数の型および戻り値の型が一致するか否かと、引数の名前および関数の名前の類似度から2つの関数の間の類似度を算出する関数類似度算出部、および
型が一致する否かと、変数名の類似度から2つの変数の間の類似度を算出する変数類似度算出部の少なくとも一方を有する、請求項5記載のソフトウェア部品管理装置。 - 前記類似度算出部は、
引数の型および戻り値の型が互換性を有するか否かと、引数の名前および関数の名前の類似度から2つの関数の間の類似度を算出する関数類似度算出部、
型が互換性を有するか否かと、変数名の類似度から2つの変数の間の類似度を算出する変数類似度算出部の少なくとも一方を有する、請求項5記載のソフトウェア部品管理装置。 - コンピュータにインストールされて、前記コンピュータにソフトウェア部品を登録するとともに、登録済みのソフトウェア部品から所望のソフトウェア部品を検索する処理を行わせることが可能なソフトウェア部品管理プログラムであって、
前記ソフトウェア部品の登録の際には、
前記登録済みのソフトウェア部品および登録対象のソフトウェア部品を解析し、前記登録対象のソフトウェア部品について、類似する前記登録済みのソフトウェア部品の機能名称を外部から選択可能に提示し、当該外部から選択された機能名称と前記登録対象のソフトウェア部品とを対応させた機能名称とソフトウェア部品との対応関係情報として取得し、
前記所望のソフトウェア部品を検索する際には、
前記機能名称とソフトウェア部品との対応関係情報から、前記所望のソフトウェア部品に関連したソフトウェア部品を抽出する、機能を前記コンピュータに実行させる、ソフトウェア部品管理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011026770A JP5323107B2 (ja) | 2011-02-10 | 2011-02-10 | ソフトウェア部品管理装置およびソフトウェア部品管理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011026770A JP5323107B2 (ja) | 2011-02-10 | 2011-02-10 | ソフトウェア部品管理装置およびソフトウェア部品管理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012168598A JP2012168598A (ja) | 2012-09-06 |
JP5323107B2 true JP5323107B2 (ja) | 2013-10-23 |
Family
ID=46972729
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011026770A Expired - Fee Related JP5323107B2 (ja) | 2011-02-10 | 2011-02-10 | ソフトウェア部品管理装置およびソフトウェア部品管理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5323107B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142914A (zh) * | 2013-05-10 | 2014-11-12 | 富士通株式会社 | 带反馈的功能模块组合方法和装置、数据处理方法和设备 |
JP7139576B2 (ja) * | 2017-06-09 | 2022-09-21 | 横河電機株式会社 | フィールド機器、設定装置、および設定プログラム |
US11763035B2 (en) * | 2018-11-01 | 2023-09-19 | Hitachi Astemo, Ltd. | Software management device |
JP7456887B2 (ja) | 2020-08-17 | 2024-03-27 | シチズン時計株式会社 | プログラム管理システム、管理プログラム、外部機器、及び、端末機器 |
JP7519927B2 (ja) | 2021-01-25 | 2024-07-22 | 三菱電機株式会社 | Dx実現用共通基盤システム |
JP2022139088A (ja) * | 2021-03-11 | 2022-09-26 | オムロン株式会社 | 開発支援装置、開発支援方法、及び、開発支援プログラム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01286020A (ja) * | 1988-05-13 | 1989-11-17 | Hitachi Ltd | プログラム検索方式 |
JP2007025798A (ja) * | 2005-07-12 | 2007-02-01 | Hitachi Ltd | 言語知識構築支援プログラム及び方法 |
WO2009069474A1 (ja) * | 2007-11-26 | 2009-06-04 | Nec Corporation | 類似サービス検索システム、方法、及び、プログラム |
-
2011
- 2011-02-10 JP JP2011026770A patent/JP5323107B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012168598A (ja) | 2012-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5323107B2 (ja) | ソフトウェア部品管理装置およびソフトウェア部品管理プログラム | |
CA2786445C (en) | Matching metadata sources using rules for characterizing matches | |
Gomez-Jauregui et al. | Information management and improvement of citation indices | |
Alrubaye et al. | On the use of information retrieval to automate the detection of third-party java library migration at the method level | |
US20160041951A1 (en) | Corpus generation device, corpus generation method and corpus generation program | |
JPH06309362A (ja) | 情報検索方法 | |
Li et al. | Incremental clone detection and elimination for erlang programs | |
Rupp et al. | Dealing with heterogeneous big data when geoparsing historical corpora | |
JP2007011604A (ja) | 不具合診断システム及びプログラム | |
Leonandya et al. | A semi-supervised algorithm for Indonesian named entity recognition | |
EP3553696A1 (en) | Generating a structured document based on a machine readable document and artificial intelligence-generated annotations | |
Eisenberg et al. | Using association metrics to help users navigate API documentation | |
Hu et al. | The methods of big data fusion and semantic collision detection in Internet of Thing | |
JP2008015774A (ja) | 模倣文書検出システム及びプログラム | |
JP2011060062A (ja) | システム仕様変更の支援システム、支援方法及び支援プログラム | |
Li et al. | A Deep Learning Based Approach to Detect Code Clones | |
JP2008210229A (ja) | 知的財産情報検索装置、知的財産情報検索方法及び知的財産情報検索プログラム | |
Tukaram | Design and development of software tool for code clone search, detection, and analysis | |
JP2007025798A (ja) | 言語知識構築支援プログラム及び方法 | |
US20090249197A1 (en) | Document proofreading support method and document proofreading support apparatus | |
CN113836378A (zh) | 一种数据处理方法及装置 | |
JP5949034B2 (ja) | 入力支援プログラム、入力支援装置、及び入力支援方法 | |
JP2011070541A (ja) | ネットマーケティング支援方法及びネットマーケティング支援装置 | |
JP2021114120A (ja) | 曖昧箇所訂正支援装置及び方法 | |
KR20140016784A (ko) | 패스웨이 확장을 위한 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20121003 |
|
TRDD | Decision of grant or rejection written | ||
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130612 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130618 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130716 |
|
R150 | Certificate of patent or registration of utility model |
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 |
|
LAPS | Cancellation because of no payment of annual fees |