JP5762857B2 - ソフトウェア開発成果物間の依存関係評価装置及び評価方法 - Google Patents
ソフトウェア開発成果物間の依存関係評価装置及び評価方法 Download PDFInfo
- Publication number
- JP5762857B2 JP5762857B2 JP2011147255A JP2011147255A JP5762857B2 JP 5762857 B2 JP5762857 B2 JP 5762857B2 JP 2011147255 A JP2011147255 A JP 2011147255A JP 2011147255 A JP2011147255 A JP 2011147255A JP 5762857 B2 JP5762857 B2 JP 5762857B2
- Authority
- JP
- Japan
- Prior art keywords
- dependency
- product
- upstream
- software development
- complexity
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
以下、本発明の実施の形態を、図面を参照して説明する。
まず、本発明によるソフトウェア開発成果物の依存関係の評価方法を実施するのに適した、ソフトウェア開発成果物間の依存関係評価装置のシステム構成例を、図1A、図1Bを参照しながら説明する。
本発明のソフトウェア開発成果物間の依存関係評価装置は、ソフトウェア開発の上下流工程にかかわる複数の成果物から、キーとなる少なくとも1つの成果物を指定する手段と、前記ソフトウェア開発の上下流工程にかかわる複数の成果物間の対応づけ情報を、記憶装置に記憶された成果物対応づけ表を参照して、取得する手段と、前記指定された成果物と、前記上下流工程の他の単一あるいは複数の成果物との間の、依存関係の複雑さを評価する手段とを備えている。本発明のソフトウェア開発成果物間の依存関係評価装置は、図1Aに示すような一般的なコンピュータ上で、ソフトウェア開発の成果物の依存関係の分析をコンピュータに行わせることにより、実現される。すなわち、開発成果物の依存関係評価装置は、CPU(演算処理装置)100と主記憶部101と、HDD等の外部記憶装置102と、CD-ROMやDVD-ROM等の可搬性を有する可搬型記憶媒体103から情報を読み出す読取装置104と、ディスプレイ(表示装置)やキーボードやマウス等の入出力装置105と、通信ネットワークに接続するためのNIC(Network Interface Card)等の通信装置106と、バス107とを備えた一般的なコンピュータ上で、「ソフトウェア開発成果物間の依存関係評価」プログラムを実行することで実現される。このコンピュータプログラムは、単体のコンピュータ上で実行されるように構成しても良く、あるいは、また、サーバとこのサーバにネットワークを介して接続された少なくとも1つのコンピュータとで実行されるように構成しても良い。また、入出力装置は、ユーザインターフェース機能を有するディスプレイ(表示装置)のように、入出力機能の一部が、一体的に構成されたものであっても良く、あるいはまた、入力装置と出力装置が独立して構成されたものであっても良い。
図1Bは、本実施形態に係る依存関係の評価を行う、ソフトウェア開発成果物間の依存関係評価装置の機能ブロック図である。ソフトウェア開発成果物間の依存関係評価装置は、外部記憶装置部102と主記憶装置部101を備えている。
依存関係分析評価部8は、照合・統合部7で処理した結果をもとにユーザの目的に応じ、上流工程から下流工程にかかわる成果物間の依存関係を分析し、評価する。
評価結果表示部9は、評価部8で評価した結果を、ユーザにわかりやすく可視化し表示する。
例えば、上流工程1の顧客の要求概念が、「車の乗り心地が良い」であった場合を想定する。「車の乗り心地」を改善するためのより具体的なレベルの解決策(上流工程2)には、さまざまな観点のアプローチが考えられる。例えば、「加速性」に優れていること、「振動」が少ないこと、「騒音」が少ないこと、「空調」が快適であること、等々が挙げられる。
この成果物対応づけ表250は、ユーザが本システム構成の外部で作成した情報を入力してもよいし、公知の技術を用いてこの段階で生成してもよい。
また、仕様書項目名欄252は、章番号等の仕様書の記載箇所を示すID情報であってもよい。
まず、最初に、開発成果物分析手段では、ユーザにより選定された少なくとも2つのプログラム(ソースコードや設計文書など)を文字コード変換など前処理する(ステップ100)。そして、この結果に基づいて、成果物間対応づけ情報取得(ステップ103)と成果物内解析情報取得(ステップ104)とを実施する。双方は並列的に実施することが可能である。
関数名欄501Aは、縦列にファイルの格納先とファイル名を示したパス名等が格納されでもよい。
呼び出し関数名欄502Aは、ソースコードには、いくつもの機能を実現するために大量の関数が定義されているが、関数名欄501Aの関数と呼び出し関係を有する関数名が記述されている。
なお、図中に入力されている関数名は一例である。
図9Aは、成果物対応づけ情報の結果に成果物解析情報の結果を統合する流れ(図6のStep106)を、詳細に示したフローチャートである。
・個別のノードについて、周囲のノードとの間の影響範囲の広さや強さを示すネットワーク指標(たとえば次数や到達度、媒介度、結束度)を算出する。
・ネットワークからサブグラフ(サブグループ)を抽出する。サブグループとは、その内部で他と区別できるような形で相互に結びついた集団(ノードとリンクで構成される部分集合)
このような公知のネットワーク分析の手法を用いることで、分離容易な形態の抽出が実現できる。図11Aにおいては、連結成分をネットワーク分析によってサブグループとして抽出し、そのサブグループを分離容易な単位として出力画面に提示した様子が示されている。連結成分とは、ネットワーク内部がいくつかの部分がリンクで接続されずに分離している場合に、分離している各々の部分(サブグラフ)を意味する。
図11Aでは、内部関数との依存関係を含めた場合に、仕様S2〜S4は相互に分離が容易でなく、仕様S1だけが分離容易である様子が示されている。このように内部関数の依存関係の状態に基づくグルーピングが、適切な分担範囲の設定を可能にする効果を生じさせている。すなわち、この例では、ソフトウェアの開発において、仕様S1に関しては、その下流工程の関数グループも含めて、仕様S2〜S4とは依存関係が無く、これらから容易に分離して独立に行えることを示している。一方、仕様S2〜S4は、上下流工程の成果物間に複雑な相互の依存関係があり、分離せずにまとめて開発することを推奨する様子を示している。
関数名欄501は、縦列にファイルの格納先とファイル名を示したパス名等が格納されでもよい。
関数グループID欄502は、ソースコードの構成要素としての関数同士の依存関係の状態に基づくグループに対応づけられた識別子が格納されるものである。なお、図中に入力されている値(関数グループID)や関数名は一例である。また、関数同士の依存関係の一例として関数の呼び出し関係情報を用いることが可能であり、その場合には、図8Aの情報が利用できる。
第二の実施の形態のシステム構成は、第一の実施の形態のシステム構成と同じである。
上流工程に関しては、第一の実施の形態と同じである。下流工程は、下流工程1と下流工程2があり、下流工程1は、第一の実施の形態の下流工程と同じである。下流工程2は、さらに、試験工程、すなわちソースコードを実装してテストした結果である。下流工程2には、下流工程1に対応した複数のテスト項目がある。このテスト項目は、一般に、自然言語や数値等で表現されたものを指す。本実施例の場合、図5の成果物対応づけ表250に相当するものが、さらに試験工程のテスト項目を含むものとなる。
Claims (15)
- ソフトウェア開発の成果物の依存関係を評価するソフトウェア開発成果物間の依存関係評価装置であって、
前記ソフトウェア開発は、開発対象のシステムに対する複数の要求や機能を人が理解できる形で表現した成果物を生成する上流工程と、コンピュータを用いて前記上流工程の前記複数の要求や機能を実現するための実装を成果物として生成する下流工程とを含んでおり、
前記ソフトウェア開発の上下流工程にかかわる複数の成果物から、キーとなる少なくとも1つの成果物を指定する手段と、
記憶装置に記憶された成果物対応づけ表を参照して、前記ソフトウェア開発の上下流工程にかかわる前記複数の成果物間の対応づけ情報を取得する手段と、
前記実装の関数名をもとに、前記各成果物の依存関係を解析した情報を成果物内の解析情報として取得する手段と、
前記実装の関数名をもとに、前記成果物間の対応づけ情報と、前記成果物内の解析情報とを対応づけて成果物間依存関係統合表を生成する手段と、
前記実装の関数名をもとに、前記成果物間依存関係統合表を用いて、前記指定された成果物と、前記上下流工程の他の前記複数の成果物間の、依存関係の複雑さを評価する手段とを備えており、
前記依存関係の複雑さを評価する手段により、前記実装の関数名を利用して、前記上下流工程にかかわる前記複数の成果物の構成要素群を周囲から分離することが容易であるか否かを示す分離容易性に関わる指標で、前記依存関係の複雑さを評価する
ことを特徴とするソフトウェア開発成果物間の依存関係評価装置。 - 請求項1において、
前記上下流工程にかかわる前記複数の成果物間の依存関係の複雑さの評価は、前記機能と前記実装とを対応付けて行われる
ことを特徴とするソフトウェア開発成果物間の依存関係評価装置。 - 請求項1において、
前記上下流工程にかかわる前記複数の成果物間の依存関係の複雑さの評価は、前記実装のサブグループを抽出し、前記機能と前記実装の各サブグループを対応づけて行われる
ことを特徴とするソフトウェア開発成果物間の依存関係評価装置。 - 請求項1において、
前記指定された成果物と前記上下流工程にかかわる他の前記複数の成果物間の依存関係の複雑さは、前記複数の成果物を構成する要素である、要求仕様、機能仕様、ソースコードに記述されたモジュールのうちの、何れか複数の成果物間の依存関係の複雑さである
ことを特徴とするソフトウェア開発成果物間の依存関係評価装置。 - 請求項1において、
前記依存関係の複雑さを評価する手段が、
連結成分、クリーク、またはコミュニティのいずれかによるネットワーク分析における測定対象における構成要素間の関係構造を評価する指標により、前記依存関係の複雑さを評価する
ことを特徴とするソフトウェア開発成果物間の依存関係評価装置。 - 請求項1において、
前記依存関係の複雑さを評価する前記指標には、前記実装のモジュール化の程度や容易さを評価する指標が含まれる
ことを特徴とするソフトウェア開発成果物間の依存関係評価装置。 - 請求項1において、
前記1つの成果物を指定する入出力装置と、
前記成果物対応づけ表を参照して前記成果物間の対応づけ情報を取得するための成果物間対応づけ情報取得部と、
前記成果物対応づけ表を参照して前記成果物内の解析情報を取得する成果物解析情報取得部と、
前記成果物間の対応づけ情報と、前記成果物内の解析情報とを対応づけて前記成果物間依存関係統合表を生成する照合・統合部と、
前記成果物間依存関係統合表を基に前記複数の成果物間の、依存関係の複雑さを評価する依存関係分析評価部と、
前記依存関係の複雑さの評価の結果を表示する評価結果表示部とを備えている
ことを特徴とするソフトウェア開発成果物間の依存関係評価装置。 - ソフトウェア開発の成果物の依存関係を依存関係評価装置に行わせるソフトウェア開発成果物間の依存関係評価方法であって、
前記ソフトウェア開発は、開発対象のシステムに対する複数の要求や機能を人が理解できる形で表現した成果物を生成する上流工程と、コンピュータを用いて前記上流工程の前記複数の要求や機能を実現するための実装を成果物として生成する下流工程とを含んでおり、
前記ソフトウェア開発の上下流工程にかかわる複数の成果物から、キーとなる少なくとも1つの成果物を指定するステップと、
記憶装置に記憶された成果物対応づけ表を参照して、前記ソフトウェア開発の上下流工程にかかわる前記複数の成果物間の対応づけ情報を取得するステップと、
前記実装の関数名をもとに、前記各成果物の依存関係を解析した情報を成果物内の解析情報として取得するステップと、
前記実装の関数名をもとに、前記成果物間の対応づけ情報と、前記成果物内の解析情報とを対応づけて成果物間依存関係統合表を生成するステップと、
前記実装の関数名をもとに、前記成果物間依存関係統合表を用いて、前記指定された成果物と、前記上下流工程の他の前記複数の成果物間の、依存関係の複雑さを評価するステップとを含んでおり、
前記実装の関数名を利用して、前記上下流工程にかかわる前記複数の成果物の構成要素群を周囲から分離することが容易であるか否かを示す、分離容易性に関わる指標で前記依存関係の複雑さを評価する
ことを特徴とするソフトウェア開発成果物間の依存関係評価方法。 - 請求項8において、
前記上下流工程にかかわる前記複数の成果物間の依存関係の複雑さの評価は、前記機能と前記実装とを対応付けて行われる
ことを特徴とするソフトウェア開発成果物間の依存関係評価方法。 - 請求項8において、
前記上下流工程にかかわる前記複数の成果物間の依存関係の複雑さの評価は、前記実装のサブグループを抽出し、前記機能と前記実装の各サブグループを対応づけて行われる
ことを特徴とするソフトウェア開発成果物間の依存関係評価方法。 - 請求項8において、
前記指定された成果物と上下流工程にかかわる他の複数の成果物間の依存関係の複雑さは、前記複数の成果物を構成する要素である、要求仕様、機能仕様、ソースコードに記述されたモジュールのうちの、何れか複数の成果物間の依存関係の複雑さである
ことを特徴とするソフトウェア開発成果物間の依存関係評価方法。 - 請求項8において、
前記依存関係の複雑さを評価するステップが、
連結成分、クリーク、またはコミュニティのいずれかによるネットワーク分析における測定対象における構成要素間の関係構造を評価する指標で実行される
ことを特徴とするソフトウェア開発成果物間の依存関係評価方法。 - 請求項8において、
前記依存関係の複雑さを評価するステップにおいて、
前記指標にはモジュール化の程度や容易さを評価する指標が含まれる
ことを特徴とするソフトウェア開発成果物間の依存関係評価方法。 - 請求項8において、
前記依存関係の複雑さの評価の結果に基づき、分離容易性に関わる前記依存関係の複雑さを示す情報を表示画面に表示するステップを有する
ことを特徴とするソフトウェア開発成果物間の依存関係評価方法。 - 請求項14において、
前記依存関係の複雑さの評価の結果に基づき、前記上下流工程にかかわる複数の成果物を、分離が容易な単位で分離して前記表示画面に表示する
ことを特徴とするソフトウェア開発成果物間の依存関係評価方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011147255A JP5762857B2 (ja) | 2011-07-01 | 2011-07-01 | ソフトウェア開発成果物間の依存関係評価装置及び評価方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011147255A JP5762857B2 (ja) | 2011-07-01 | 2011-07-01 | ソフトウェア開発成果物間の依存関係評価装置及び評価方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013015958A JP2013015958A (ja) | 2013-01-24 |
JP5762857B2 true JP5762857B2 (ja) | 2015-08-12 |
Family
ID=47688605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011147255A Active JP5762857B2 (ja) | 2011-07-01 | 2011-07-01 | ソフトウェア開発成果物間の依存関係評価装置及び評価方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5762857B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6209985B2 (ja) | 2014-02-10 | 2017-10-11 | 富士通株式会社 | 製品設計支援プログラム、製品設計支援方法および製品設計支援装置 |
JP6739667B2 (ja) | 2017-11-21 | 2020-08-12 | 三菱電機株式会社 | ソースコード分割装置、ソースコード解析装置、ソースコード分割方法及びソースコード分割プログラム |
CN109063271B (zh) * | 2018-07-11 | 2022-12-20 | 山东师范大学 | 一种基于超限学习机的三维cad模型分割方法和装置 |
JP7154113B2 (ja) * | 2018-11-12 | 2022-10-17 | 株式会社日立製作所 | システム資産分析装置、及びシステム資産分析方法 |
US11755318B2 (en) * | 2019-08-28 | 2023-09-12 | Mitsubishi Electric Corporation | Proposing device and improvement proposing method |
KR102395927B1 (ko) * | 2020-09-07 | 2022-05-10 | 현대오토에버 주식회사 | 기능 사양서 생성 장치 및 방법 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0520037A (ja) * | 1991-07-09 | 1993-01-29 | Mitsubishi Electric Corp | モジユール分配方式 |
JPH09223008A (ja) * | 1996-02-16 | 1997-08-26 | Hitachi Ltd | 影響範囲抽出システム |
JP2000112611A (ja) * | 1998-10-02 | 2000-04-21 | Ricoh Co Ltd | ソフトウエア開発文書の表示方法および記憶媒体 |
JP2005100078A (ja) * | 2003-09-25 | 2005-04-14 | Hitachi Ltd | ソフトウェア資産管理システム |
JP2006126925A (ja) * | 2004-10-26 | 2006-05-18 | Sharp Corp | 試験管理装置、試験管理方法、プログラム、および、プログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP4996262B2 (ja) * | 2007-01-16 | 2012-08-08 | 株式会社日立製作所 | プログラム部品化支援装置 |
JP5168279B2 (ja) * | 2007-07-19 | 2013-03-21 | 富士通株式会社 | アプリケーション改善支援プログラム、アプリケーション改善支援方法およびアプリケーション改善支援装置 |
JP5168099B2 (ja) * | 2008-11-17 | 2013-03-21 | 富士通株式会社 | 改修作業範囲分割プログラム,改修作業範囲分割装置,及び改修作業範囲分割方法 |
JP2010204877A (ja) * | 2009-03-03 | 2010-09-16 | Hitachi Ltd | ソフトウェア開発支援装置およびソフトウェア開発支援方法 |
-
2011
- 2011-07-01 JP JP2011147255A patent/JP5762857B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013015958A (ja) | 2013-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5762857B2 (ja) | ソフトウェア開発成果物間の依存関係評価装置及び評価方法 | |
JP5331774B2 (ja) | 設備状態監視方法およびその装置並びに設備状態監視用プログラム | |
JP7353946B2 (ja) | アノテーション装置および方法 | |
EP2388702B1 (en) | Automated damage assessment, report, and disposition | |
JP5564448B2 (ja) | ソフトウェアの類似性評価方法 | |
JP5266488B2 (ja) | 知識管理装置及び知識管理装置の端末機と知識管理装置のプログラム | |
EP2660740A2 (en) | Component configuration system and methods of operating same | |
Sabri et al. | Semantic pattern-based retrieval of architectural floor plans with case-based and graph-based searching techniques and their evaluation and visualization | |
EP3267340A1 (en) | Network simulation device, network simulation method, and network simulation program | |
JP4429814B2 (ja) | 評価装置、評価方法、及びプログラム | |
US20110106577A1 (en) | Business flow analysis method and apparatus | |
JP2011248622A (ja) | 類似モデル検索システム及び作業指示再利用システム | |
CN116257663A (zh) | 面向无人地面车辆的异常检测与关联分析方法及相关设备 | |
KR20080084567A (ko) | 특허 검색 결과에 대한 신뢰도 검증방법 | |
CN107256254B (zh) | 一种行业景气指数获取方法、存储设备及终端 | |
Beier et al. | Supporting product development through cross-discipline dependency-modeling–novel approaches for traceability-usage | |
CN112631889A (zh) | 针对应用系统的画像方法、装置、设备及可读存储介质 | |
JP4973738B2 (ja) | 業務フロー処理プログラム、方法及び装置 | |
Gebraeel | Prognostics-based identification of the top-$ k $ units in a fleet | |
JP2013130965A (ja) | データ分析装置、データ分析方法及びプログラム | |
JP5515117B2 (ja) | データ処理装置 | |
CN109685453B (zh) | 智能识别工作流有效路径的方法 | |
JP6602280B2 (ja) | 計装図データ生成装置、計装図検索システム及びプログラム | |
Van der Aalst | Challenges in business process mining | |
JP6413597B2 (ja) | 分析プログラム、分析方法及び分析装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140218 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20140908 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141014 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141105 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141211 |
|
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: 20150602 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150610 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5762857 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |