JP5128440B2 - ソフトウェア分析装置 - Google Patents
ソフトウェア分析装置 Download PDFInfo
- Publication number
- JP5128440B2 JP5128440B2 JP2008284137A JP2008284137A JP5128440B2 JP 5128440 B2 JP5128440 B2 JP 5128440B2 JP 2008284137 A JP2008284137 A JP 2008284137A JP 2008284137 A JP2008284137 A JP 2008284137A JP 5128440 B2 JP5128440 B2 JP 5128440B2
- Authority
- JP
- Japan
- Prior art keywords
- software
- product
- software component
- component
- distance
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Description
特許文献2参照)。
また、ソフト部品の組み合わせ数を削減することができる。
本発明の実施形態に係るソフトウェア分析装置の概略構成を図1に示す。本実施の形態によるソフトウェア分析装置は、ソフトウェア分析部1、表示装置4、および入力装置5を備える。このうち、ソフトウェア分析部1は、ソフト部品分析手段2、および再利用支援手段3を備える。また、ソフト部品分析手段2は、製品履歴格納部21、ソフト部品格納部22、ソフト部品関連度分析手段23、そして部品クラスタ格納部24を備える。再利用支援手段3は、ソフト部品選択手段31、利用ソフト部品格納部32、ソフト部品検索手段33、および推薦ソフト部品格納部34を備える。
ソフト部品分析手段2は、既存ソフト部品間の関連性を分析する。再利用支援手段3は、ユーザ7に対して同時に再利用および同時に変更する蓋然性が高いソフト部品を推薦する。
本発明のソフトウェア分析部1の構成要素である、ソフト部品分析手段2について説明する。
本ソフト部品分析手段が必要となる背景については、既存製品であるソフトウェアを再利用する際に、その構成ソフト部品相互間には依存関係を有することがあり、必ずしも個々独立して利用されるとは限らないという経験則があることに基づく。そのような依存関係について、図2を用いて説明する。
本発明の実施形態に係るソフト部品分析手段2の詳細な構成を図5に示す。
ソフト部品分析手段2は製品系列格納部21、ソフト部品格納部22、ソフト部品関連度分析手段23、および部品クラスタ格納部24を備える。
上述したソフト部品分析手段2を構成する要素のうち、製品系列分析手段231が行う処理について説明する。本発明の実施形態に係る製品系列分析手段231が行う製品系列分析処理を示すフローチャートを図6に示す。ここでは、上記製品履歴格納部21に格納された既存製品構成情報と、ソフト部品格納部22に格納された既存製品のソフト部品に関する情報に基づき、既存製品を構成するソフト部品の“利用の有無”および“変更の有無”について、既存製品構成情報に含まれるデータの数値化を行い、製品系列構成情報を作成する。ここで作成された製品系列構成情報は、次処理となる数値計算による関連性分析を行う際に用いられる。
次に、上述したソフト部品分析手段2を構成する要素のうち、部品間距離分析手段233が行う処理について説明する。本発明の実施形態に係る部品間距離分析手段233の処理を示すフローチャートを図11に示す。ここでは、上記製品系列格納部232に格納された製品系列構成情報に基づき、既存製品を構成するソフト部品相互間の部品間距離を演算する。ここで作成された部品間距離は、次処理となるソフト部品のグループ化を行う際に用いられる。
次に、上述したソフト部品分析手段2を構成する要素のうち、部品クラスタ分析手段235が行う処理について説明する。本発明の実施形態に係る部品クラスタ分析手段235の処理を図15に示す。ここでは、上記部品間距離格納部234へ格納されたソフト部品間距離2341に基づき、ソフト部品グループ241を決定する。こうして決定されたソフト部品グループ241は、部品クラスタ格納部24へ格納される。ここで作成されたソフト部品グループ241は、次処理としてソフト部品を再利用する際の支援のため、ユーザへ提示される。
本発明のソフトウェア分析部1の構成要素である、再利用支援手段3について説明する。
(ソフト部品選択手段)
まず、上記再利用支援手段3を構成する要素のうち、ソフト部品選択手段31が行う処理について説明する。本発明の実施形態に係るソフト部品選択手段31の処理を図17に示す。ソフト部品選択手段31は、ソフト部品格納部22から既存ソフト部品とそのバージョン情報を取得し、表示装置4に、ソフト部品選択手段31の操作画面となるソフト部品選択画面311を表示する。ユーザ7は、新規製品開発時において、表示されたソフト部品選択画面311から新規製品で利用するソフト部品とそのバージョンを選択する。図17の例では、ユーザ7は、ソフト部品a、bはバージョン3.0を選択し、ソフト部品cは選択せず、ソフト部品d、e、fはバージョン1.0を選択している。ユーザにより選択された利用ソフト部品321は、利用ソフト部品格納部32に格納される。
次に、上述した再利用支援手段3を構成する要素のうち、ソフト部品検索手段33が行う処理について説明する。本発明の実施形態に係るソフト部品検索手段33の処理を図18に示す。ソフト部品検索手段33は、利用ソフト部品格納部32に格納された利用ソフト部品321に登録された利用ソフト部品について、部品クラスタ格納部24に格納された「各既存製品の同時利用状況を反映したソフト部品のグループ241」を分析し、部品間距離が所定の値以下のものを抽出する。本実施形態では、部品間距離0を閾値とする。利用ソフト部品321ではソフト部品aが登録され、ソフト部品グループ241ではソフト部品aとソフト部品cとが距離0のグループとして登録されているため、ソフト部品cが同時利用ソフト部品候補341として抽出される。
本発明は、複数のソフトウェア部品で構成されたソフトウェア製品に適用することができる。本発明をソフトウェア製品に適用することで、既存製品の構成情報に基づいたソフト部品の同時利用関係および同時変更関係が分析され、複数のソフト部品間の関連性が定量的に評価される。加えて、派生製品開発時に同時に利用または変更される可能性が高いソフト部品が自動でグループ化されることで、過去のソフトウェア製品の開発実績および変更実績に基づいて派生製品開発時に同時に再利用または変更すべきソフト部品を、ユーザが効率的に選択することが出来る。
Claims (9)
- ソフトウェア既存製品に含まれる複数のソフト部品および前記複数のソフト部品間の関連性を分析するソフトウェア分析装置であって、
前記ソフトウェア既存製品ごとに前記複数のソフト部品に関する情報および前記複数のソフト部品間に関する情報を有する既存製品構成情報から前記ソフトウェア既存製品に含まれる複数のソフト部品の組み合わせを数値的に表す製品系列構成情報を作成する製品系列分析手段と、
前記製品系列構成情報に基づいてソフト部品間の関連性を数値的に定量化したソフト部品間距離を演算する部品間距離分析手段と、
前記ソフト部品間距離に基づいて前記ソフト部品をグループ化する部品クラスタ分析手段と、
前記製品系列分析手段と前記部品間距離分析手段と部品クラスタ分析手段による結果を出力する出力部と、
を備えたことを特徴とするソフトウェア分析装置。 - 前記既存製品構成情報は、前記複数のソフト部品のうち前記ソフトウェア既存製品が利用するものを抽出したソフト部品利用情報、該ソフト部品利用情報に含まれるソフト部品のバージョン情報、前記ソフトウェア既存製品の開発ベースとなった原製品情報および該原製品情報に含まれるソフト部品情報、のうち少なくともいずれか1つを有することを特徴とする請求項1に記載のソフトウェア分析装置。
- 前記製品系列分析手段は、前記既存製品構成情報に基づき、前記ソフト部品利用情報を数値化することで前記製品系列構成情報を作成し、該製品系列構成情報を製品系列格納部へ出力することを特徴とする請求項2に記載のソフトウェア分析装置。
- 前記製品系列分析手段は、前記既存製品構成情報に基づき、前記原製品情報および該原製品情報に含まれるソフト部品情報から変更されたソフト部品情報を数値化することで前記製品系列構成情報を作成し、該製品系列構成情報を製品系列格納部に出力することを特徴とする請求項2に記載のソフトウェア分析装置。
- 前記部品間距離分析手段は、前記製品系列構成情報に基づき、ユークリッド距離、マンハッタン距離、角度、のうち少なくともいずれか1つを求めることで前記ソフト部品間距離を作成し、該ソフト部品間距離を部品間距離格納部に出力することを特徴とする請求項1に記載のソフトウェア分析装置。
- 前記部品クラスタ分析手段は、前記ソフト部品間距離に基づき、該ソフト部品間距離が所定の値以下のソフト部品同士を前記ソフト部品グループとして作成し、部品クラスタ格納部に出力することを特徴とする請求項1に記載のソフトウェア分析装置。
- 前記部品クラスタ分析手段は、前記ソフト部品間距離を樹形図へと変換し、
前記出力部は、前記樹形図を表示することを特徴とする請求項1に記載のソフトウェア分析装置。 - さらに、
前記複数のソフト部品から該ソフト部品に関する情報および前記ソフト部品のバージョン情報を取得してソフト部品候補とするソフト部品選択手段と、
前記出力部によって表示される前記ソフト部品候補のうちユーザが選択したソフト部品を格納する利用ソフト部品格納部と、
前記ソフト部品間距離に基づき、前記ユーザが選択した前記ソフト部品に付随して利用される蓋然性が高いソフト部品を推薦ソフト部品として検索するソフト部品検索手段と、
前記推薦ソフト部品を格納する推薦ソフト部品格納部と、
を有し、
前記出力部はさらに前記ソフト部品選択手段と前記利用ソフト部品格納部と前記推薦ソフト部品格納部の結果を出力することを特徴とする請求項1に記載のソフトウェア分析装置。 - コンピュータを請求項1に記載のソフトウェア分析装置として機能させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008284137A JP5128440B2 (ja) | 2008-11-05 | 2008-11-05 | ソフトウェア分析装置 |
US12/612,371 US8495569B2 (en) | 2008-11-05 | 2009-11-04 | Software analyzing apparatus for analyzing software components and correlations between software components |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008284137A JP5128440B2 (ja) | 2008-11-05 | 2008-11-05 | ソフトウェア分析装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010113449A JP2010113449A (ja) | 2010-05-20 |
JP5128440B2 true JP5128440B2 (ja) | 2013-01-23 |
Family
ID=42133043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008284137A Expired - Fee Related JP5128440B2 (ja) | 2008-11-05 | 2008-11-05 | ソフトウェア分析装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8495569B2 (ja) |
JP (1) | JP5128440B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8479159B2 (en) * | 2006-10-20 | 2013-07-02 | International Business Machines Corporation | System and method for automatically determining relationships between software artifacts using multiple evidence sources |
JP5236564B2 (ja) * | 2009-04-20 | 2013-07-17 | 株式会社日立製作所 | ソフトウェア再利用支援方法及び装置 |
WO2012055072A1 (en) * | 2010-10-29 | 2012-05-03 | Hewlett - Packard Development Company, L.P. | Software application recognition |
JP2013003664A (ja) * | 2011-06-13 | 2013-01-07 | Sony Corp | 情報処理装置および方法 |
EP2608024A1 (en) * | 2011-12-22 | 2013-06-26 | Tata Consultancy Services Limited | Computing reusability index of software assets |
JP6007920B2 (ja) * | 2012-01-23 | 2016-10-19 | 日本電気株式会社 | 検証装置、検証方法、及び、コンピュータプログラム |
JP6199160B2 (ja) * | 2013-11-06 | 2017-09-20 | 株式会社日立製作所 | ソフトウェア開発管理装置およびその方法 |
WO2016122481A1 (en) * | 2015-01-28 | 2016-08-04 | Hewlett Packard Enterprise Development Lp | Product portfolio rationalization |
WO2016151865A1 (ja) * | 2015-03-26 | 2016-09-29 | 株式会社日立製作所 | ソフトウェア選択システム及びその方法 |
US9875095B2 (en) | 2015-09-30 | 2018-01-23 | International Business Machines Corporation | Software bundle detection |
US10949470B2 (en) * | 2019-02-13 | 2021-03-16 | International Business Machines Corporation | Topic clustering to generate formulations |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4864569A (en) * | 1987-11-25 | 1989-09-05 | Westinghouse Electric Corp. | Software verification and validation configuration management system |
US5361355A (en) * | 1991-02-08 | 1994-11-01 | Fujitsu Limited | Software asset systemizer |
JP3625084B2 (ja) | 1995-04-14 | 2005-03-02 | 株式会社山武 | ソフトウエア部品の再利用システム |
JPH09134282A (ja) | 1995-11-08 | 1997-05-20 | Hitachi Ltd | プログラム作成方法 |
JPH09292986A (ja) * | 1996-04-26 | 1997-11-11 | Hitachi Ltd | 部品抽出方法 |
US20030089753A1 (en) * | 2001-09-10 | 2003-05-15 | Joseph Hang | Glass edging method and tool therefor |
JP2003216425A (ja) * | 2002-01-24 | 2003-07-31 | Japan Science & Technology Corp | 類似度計測システム |
CA2476585A1 (en) * | 2002-02-18 | 2003-08-21 | Japan Science And Technology Agency | Software component importance evaluation system |
JP2009086791A (ja) | 2007-09-28 | 2009-04-23 | Hitachi Ltd | ソフトウェア製品系列分析装置 |
-
2008
- 2008-11-05 JP JP2008284137A patent/JP5128440B2/ja not_active Expired - Fee Related
-
2009
- 2009-11-04 US US12/612,371 patent/US8495569B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8495569B2 (en) | 2013-07-23 |
JP2010113449A (ja) | 2010-05-20 |
US20100115492A1 (en) | 2010-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5128440B2 (ja) | ソフトウェア分析装置 | |
US8826224B2 (en) | Apparatus and method for supporting model-driven development | |
CN109408528B (zh) | 一种数据库脚本生成方法、装置、计算装置和存储介质 | |
CN1619546A (zh) | 文本的标号系统-翻译和在运行时间的多语言支持以及设计 | |
EP2008232A1 (en) | System and method for knowledge extraction and abstraction | |
US20090307654A1 (en) | System, method and computer program for generating sequence diagram | |
US8898649B2 (en) | Application program analysis method, analysis system and recording medium for identifying a contributing factor for an invalid operation of an application program | |
JP2009169828A (ja) | テストケース生成装置及びテストケース生成プログラム | |
JP2000242672A (ja) | 形式的論理検証装置および形式的論理検証方法 | |
US9182960B2 (en) | Loop distribution detection program and loop distribution detection method | |
JP2010061403A (ja) | 文字列認識装置及び方法、並びにプログラム | |
JP6579095B2 (ja) | プログラム書き込み方法、装置の制御方法、プログラム書き込みのためのプログラム、および装置の制御プログラム | |
JP6372350B2 (ja) | 定義ファイル生成プログラム、定義ファイル生成方法、および情報処理装置 | |
JP2018173699A (ja) | テンプレート生成装置、テンプレート生成方法およびプログラム | |
JP4311327B2 (ja) | ソースコード自動生成装置、ソースコード自動生成方法、プログラムおよび記録媒体 | |
JP2000305933A (ja) | 情報検索装置、情報検索方法、及び記憶媒体 | |
CN113031952A (zh) | 深度学习模型的执行代码的确定方法、装置及存储介质 | |
JP7110385B2 (ja) | モデル比較装置 | |
JP2007018313A (ja) | 回路設計プログラム、回路設計装置、回路設計方法 | |
JP2013080386A (ja) | 情報処理装置、アドレス管理方法 | |
JP4061931B2 (ja) | 実行履歴記録装置、ブレーク命令設定装置、及びプログラム | |
JP4494892B2 (ja) | データ処理装置及びプログラム | |
JP2006127397A (ja) | アーキテクチャ構築と連動した要求仕様抽出方式 | |
CN114296792A (zh) | 一种代码注释生成方法及装置 | |
CN111273956A (zh) | 一种程序模块加载方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101208 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120704 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120710 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120910 |
|
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: 20121002 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121031 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5128440 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151109 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |