新着情報

X-Analysisはプログラムを総合的に難易度自動判定!!さらばステップ数による難易度判定:DCR X-Analysis News<098>

2021.08.11

2021年8月11日

株式会社第一コンピュータリソース2021.8.11
≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫
X-Analysisはプログラムを総合的に難易度自動判定!!
さらばステップ数による難易度判定 ≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫≫

□■□ DCR X-Analysis News □■□

はじめに、新型コロナウィルスに罹患された皆様、感染拡大により様々な影響を受けている皆様に、心よりお見舞い申し上げます。

前号に引き続きX-Analysisで何が見える化出来るかを、機能ごとに紹介させて頂きます。

永年使用してきたシステムは、肥大化、複雑化、冗長化している場合が多く、システムの品質を高品質に保つことは容易ではありません。ブラックボックス化や属人化の課題を抱えるシステムであれば尚更です。X-Analysisのプログラム難易度判定は、最新のソースコードにより自動的に難易度を数値化し誰でも確認することができます。

■難易度測定手法の色々

1.ソフトウエアメトリクス

プログラム内の経路の数を数値化するもので、Thomas J. McCabeによって1976年に考案され「サイクロマティックコンプレクス(循環的複雑度)」と呼ばれる手法で数値化を行います。例えば、ソースコード内に条件が1つのIFxx文のような決定論理が、1つある場合、IFxx文が、真の場合と偽の場合があり、独立したパスは2つとなります。
RPG、COBOLにおいて条件判定に処理(独立したパス)に伴う命令コードが、対象となります。
…このソフトウエアメトリクスによって算出された数値は、例えばシステム再構築の際、プログラム開発工数見積の係数として、使用することにより見積精度が向上します。

2.ソフトウエアサイエンス

これは「ハルステッド」手法により、プログラムの持つ情報量と理解の難易度を定量化する理論で、プログラムを命令とオペランドの系列と捉えて数値化を行います。
…このソフトウエアサイエンスによって算出されたハルステッド値は、例えば大規模な改修において、ソースコードの「読み易さ」の係数として、使用することで見積精度が向上します。

3.サブシステムメトリクス

サブシステム間のプログラムの呼び出し数、データベースのアクセス数をリスト化し、サブシステムの独立性や結合度を測る指標とします。
…このサブシステムメトリクスによって算出された数値は、例えばシステム再構築の際、関連する業務システムの開発工数見積の係数として、使用することにより見積精度が、向上します。

4.メンテナンスインデクス

上記1.2.から求めることができる「メンテナンスのしやすさ」の指標数値です。
これは「設計情報の分析のしやすさ」や「マイグレーションのしやすさ」に読み替えることもできます。
…このメンテナンスインデクスによって算出された数値は、例えばシステム再構築の際や、日々メンテナンス作業に於ける工数見積の係数として、使用することにより見積精度が、向上します。

◆難易度測定のまとめ

現在、多くの企業で行われているソースコードステップ数、オブジェクト数などから算出する見積工数では、上述で記述した諸々の「難易度」が考慮されていない為に、作業時の工数と乖離がありました。その結果、PJ開始後に追加工数(費用)が発生したり、スケジュール遅延の原因にもなっていました。これまで「難易度」の見える化は不可能でしたが、X-Analysisを使用することで、上述で記述したような「難易度」を見える化(数値化)することによって、精度の高い見積工数を算出する事が可能となります。

■次回予告
次回(2021/8/25号)はX-Analysisの機能ごとに詳細を解説をした第六弾『X-Analysisはデバイス定義の難易度自動判定!!』-「正解!!画面の難易度判定」をお送りいたします。

≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪

日本語表記対応で、更に使いやすくなったX-Analysisを是非ご検討ください。

IBM i 専用の可視化・分析ツールX-Analysisの、詳しい情報はこちらでご覧頂けます。
https://www.dcr.co.jp/x-analysis/

メールでのお問い合わせ。
E-Mail:X-Analysis-info@dcr.co.jp

≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪≪