富士通研、プログラムに記述した業務ロジックの複雑度を可視化する技術を開発
業務ロジックの識別技術では、業務システムが担当者の入力する業務データから実行する、業務に関係する判断や計算である業務ロジックをプログラムの記述から自動的に識別する。チェック処理などは条件判断では無いため、業務ロジックから除くとのこと。
複雑度の定量化技術では、業務ロジックにおいて条件の組み合わせと結果の対応を表形式で表した決定表(ディシジョン・テーブル)の大きさと、業務ロジックの複雑度が対応することに着目し、決定表の大きさを決める「条件に関係した項目数」「場合分けの数」「計算式に関係した項目数」の3つの指標を定義したという。
決定表の作成には詳細な分析が必要なため、これらの指標に相当する特徴量を、決定表を作成しなくてもプログラムの変数や条件分岐の数から近似的に計算する手法を開発し、大規模資産を対象とした分析を可能にしたとのこと。
プログラムを分析した結果、業務ロジックの複雑度が大きい物は、業務に関係する判断や計算処理が多くあることがわかったという。COBOLで記述した業務アプリケーションの約1,200本のプログラムを対象に業務ロジックの複雑度を上位・中位・下位のグループに分ける社内実験では、業務的な計算を行っているプログラムが上位に含まれ、形式的チェックしか行っていないプログラムは下位に含まれることが確認できたとしている。