JP5869465B2 - ソフトウェア複雑度測定装置及び方法並びにプログラム - Google Patents
ソフトウェア複雑度測定装置及び方法並びにプログラム Download PDFInfo
- Publication number
- JP5869465B2 JP5869465B2 JP2012266686A JP2012266686A JP5869465B2 JP 5869465 B2 JP5869465 B2 JP 5869465B2 JP 2012266686 A JP2012266686 A JP 2012266686A JP 2012266686 A JP2012266686 A JP 2012266686A JP 5869465 B2 JP5869465 B2 JP 5869465B2
- Authority
- JP
- Japan
- Prior art keywords
- complexity
- index value
- box
- dependency
- module
- 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
(分割バランス指標値)=4/π×|arctan{(箱内経路複雑度の最大値)/(箱間経路複雑度)}−π/4| (式0)
かかる分割バランス指標値の場合、値が"0"に近づくほど角度αが45度に近づくこと(即ち分割バランスが良いこと)を表し、値が"1"に近づくほど角度αが0度又は90度に近づくこと(即ち分割バランスが悪いこと)を表す。
(経路複雑度)=(経路数)−(箱数)+2×(連結成分数) 式(1)
この式(1)は、関数の基本的な指標として知られるMcCabe複雑度と同様の考え方に基づくものである。
(多対多関係強度)=(多対多経路数)/(多対多関係箱数) 式(2)
ここで、箱Aから箱Bへの依存のみが存在するとき、AとBは1対1関係にあるとし、M個の依存元からN個の依存先への経路が全て存在するとき、これをM対N関係にあるとする。M,Nが2以上であるとき、即ち複数の依存元から複数の依存先への経路が全て存在するとき、これを多対多関係にあるとする。複数の依存元から複数の依存先への経路が全て存在するとき(即ち多対多関係が存在するとき)、これらの経路を多対多経路と称する。従って、多対多経路数とは、複数の依存元から複数の依存先への経路が全て存在するとき、これらの多対多経路の数である。また、多対多関係箱とは、多対多関係を構成する箱であり、多対多関係箱数は、多対多関係箱の数である。
(逆方向経路率)=(逆方向経路数)/(順方向経路数) 式(3)
ここで、上述の如く、箱Aから箱Bへの依存が存在するとき、これを箱Aから箱Bへの依存の経路が存在する。このとき、箱Aから箱Bへの依存が何本あったとしても(例えば、箱Aに対応するモジュール内の関数が、箱Bに対応するモジュール内の関数を呼び出す関係が、複数本あったとしても)、経路数は"1"と数える。但し、箱Aから箱Bへの依存と、箱Bから箱Aへの依存は別の依存経路であると考え、双方向の依存が存在する場合、経路数は"2"と数える。逆方向とは、ある2つの箱間において、依存の本数が少ない方向に対応し、順方向は、依存の本数が多い方向に対応する。
10 処理装置
12 CPU
14 記憶部
16 表示装置
Claims (7)
- 階層構造を持つソフトウェア内の複数のコンポーネント間の依存関係の複雑度を表す第1指標値と、前記コンポーネント内の複数のモジュール間の依存関係の複雑度を表す第2指標値との第1比、前記第2指標値と、前記モジュール内の複数の関数間の依存関係の複雑度を表す第3指標値との第2比、前記第3指標値と、前記関数内における経路複雑度を表す第4指標値との第3比のうちの少なくともいずれか1つの比を算出する、ソフトウェア複雑度測定装置。
- 前記算出した比が1に近いか否かを判定する、請求項1に記載のソフトウェア複雑度測定装置。
- 前記第1比は、前記第1指標値と、前記複数のコンポーネントに係る各第2指標値のうちの最大値とに基づいて算出される、請求項1又は2に記載のソフトウェア複雑度測定装置。
- 前記第2比は、前記第2指標値と、前記複数のモジュールに係る各第3指標値のうちの最大値とに基づいて算出される、請求項1〜3のうちのいずれか1項に記載のソフトウェア複雑度測定装置。
- 前記第3比は、前記第3指標値と、前記複数の関数に係る各第4指標値のうちの最大値とに基づいて算出される、請求項1〜4のうちのいずれか1項に記載のソフトウェア複雑度測定装置。
- 階層構造を持つソフトウェア内の複数のコンポーネント間の依存関係の複雑度を表す第1指標値と、前記コンポーネント内の複数のモジュール間の依存関係の複雑度を表す第2指標値との第1比、前記第2指標値と、前記モジュール内の複数の関数間の依存関係の複雑度を表す第3指標値との第2比、前記第3指標値と、前記関数内における経路複雑度を表す第4指標値との第3比のうちの少なくともいずれか1つの比を算出する、ソフトウェア複雑度測定方法。
- 階層構造を持つソフトウェア内の複数のコンポーネント間の依存関係の複雑度を表す第1指標値と、前記コンポーネント内の複数のモジュール間の依存関係の複雑度を表す第2指標値との第1比、前記第2指標値と、前記モジュール内の複数の関数間の依存関係の複雑度を表す第3指標値との第2比、前記第3指標値と、前記関数内における経路複雑度を表す第4指標値との第3比のうちの少なくともいずれか1つの比を算出する処理をコンピューターに実行させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012266686A JP5869465B2 (ja) | 2012-12-05 | 2012-12-05 | ソフトウェア複雑度測定装置及び方法並びにプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012266686A JP5869465B2 (ja) | 2012-12-05 | 2012-12-05 | ソフトウェア複雑度測定装置及び方法並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014112325A JP2014112325A (ja) | 2014-06-19 |
JP5869465B2 true JP5869465B2 (ja) | 2016-02-24 |
Family
ID=51169418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012266686A Expired - Fee Related JP5869465B2 (ja) | 2012-12-05 | 2012-12-05 | ソフトウェア複雑度測定装置及び方法並びにプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5869465B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019102786A1 (ja) | 2017-11-21 | 2019-05-31 | 三菱電機株式会社 | ソースコード分割装置、ソースコード解析装置、ソースコード分割方法及びソースコード分割プログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006113934A (ja) * | 2004-10-18 | 2006-04-27 | Hitachi Ltd | プログラム開発支援装置、プログラム開発支援方法およびプログラム |
-
2012
- 2012-12-05 JP JP2012266686A patent/JP5869465B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2014112325A (ja) | 2014-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6804668B2 (ja) | ブロックデータ検証方法および装置 | |
US9311730B2 (en) | Aggregating graph structures | |
CN106062711B (zh) | 用于复合控件的方法、系统和计算机存储介质 | |
US10489360B2 (en) | Specifying and applying rules to data | |
CN107679985B (zh) | 风险特征筛选、描述报文生成方法、装置以及电子设备 | |
CN107111722B (zh) | 数据库安全 | |
US10169412B2 (en) | Selectivity estimation for query execution planning in a database | |
Srinivasan et al. | Multi-objective simulation-optimization model for long-term reservoir operation using piecewise linear hedging rule | |
US9904524B2 (en) | Method and device for visually implementing software code | |
CN103959243A (zh) | 扩展到用反向弧编码最小和最大约束的有向图的方法和装置 | |
US20160350449A1 (en) | Exceptional logic element management | |
US10997335B2 (en) | Exceptional logic element management | |
CN104718529B (zh) | 表示没有外部引用的引用属性注释 | |
JP5869465B2 (ja) | ソフトウェア複雑度測定装置及び方法並びにプログラム | |
US10901987B2 (en) | Dynamic automatic generation of database views | |
Zhao et al. | Liveness-enforcing supervisors synthesis for a class of generalised Petri nets based on two-stage deadlock control and mathematical programming | |
JP5981327B2 (ja) | ソフトウェア複雑度測定装置及び方法並びにプログラム | |
US10152039B2 (en) | Method and apparatus for the display of multiple errors on a human-machine interface | |
US8935664B2 (en) | Method and apparatus to determine rules implementation decision | |
WO2020230043A1 (en) | Feature vector feasibilty estimation | |
JP5869466B2 (ja) | ソフトウェア複雑度測定装置及び方法並びにプログラム | |
JP6561993B2 (ja) | データ管理システム、データ管理装置、データ管理方法、および、プログラム | |
CN110298390A (zh) | 一种风控模型的特征选择方法及装置 | |
CN109902178A (zh) | 一种多级文本分类方法及系统 | |
US8856730B2 (en) | Diagram layout patterns |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150309 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151014 |
|
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: 20151215 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160107 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5869465 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |