1:稼働中プログラム課題を明確化する

『潜在バグ探索作業工程1,2,3』の作成とは

作業の流れ 

作業は「探索作業の流れ」→「プログラム課題の特定」と、STEP1~7まで工程があります。

<探索作業の流れ STEP1~STEP4>

 探索作業の流れとは:稼働中プログラムのシナリオ関数化作業工程と同一です。

(但しSTEP3からSTEP4の作業間がシナリオ関数自動生成作業工程になります。) 

<プログラム課題の特定 STEP5~STEP7>


STEP

調和座標付与&変数抽出

■ソースコードの実行順序列作成

・モデリング化ツールで自動生成

・コンパイラー定義体ツール&

 実行順序列(モデリング化ツール)で自動生成

 

1.コンパイラー定義体ツール

2.単元文(命令文)抽出ツール(実行順序列)

(単元文:1構文1機能に分割)

 

 ・実行順序列(座標)付与ルール

 ①命令文への座標付与(TCX・TCY)

・TCX:命令文の実行_行No

・TCY:次の命令文実行_行No

 

②条件文への座標付与(TCX・TCZ1~TCZ4)

・TCX:命令文の実行_行No

・TCZ1:条件文の真の実行_行No

・TCZ2:条件文の偽の実行_行No

・TCZ3:条件文の終了行_行No

・TCZ4:終了行次の実行_行No


モデリング化作業1

*サンプルコード全体の138行から抜粋


STEP2

構文種別&ベクトル付与

■生成データ命令文識別

・プログラム文法に準拠

 

1.データ生成関与命令文

 

 ・構文種別にベクトル付与

・代入文:L4

出力文:W4

入力文:R2

・定置(定値)文:L2

・条件文:真,偽 構文作成

 

2.その他の命令文

・呼出文(特例):L4扱い

・領域文、翻訳文

・制御文(条件文のEND等も含む)


モデリング化作業2 


STEP3

主語&変数主語抽出

■シナリオ関数化データ作成

潜在バグ探索作業工程1』作成準備

 

1.データ生成関与命令文

 

 ・名称付与ルール 

・代入文:L4_変数名+座標

・出力文:W4_変数名+座標

・入力文:R2_変数名+座標

・定置(定値)文:L2_変数名+座標

・条件文:命令文(真,偽)+座標

・条件文終了:命令文+座標

・呼出文(関数):L4_呼出名+座標

・領域文:領域名+座標

・終了宣言:命令文+座標

 

2.変数を主語と変数主語に識別します。

 

 


モデリング化作業3 


STEP4

『潜在バグ探索作業工程』作成(予定調和主語系譜図)

■データ網羅性の確認

潜在バグ探索作業工程1』自動生成

 

1.『潜在バグ探索作業工程1』生成元データ準備

主語,変数主語1,変数主語2・・・・

 

・作業ポイント:項目名背景識別

 条件文:黄色

 条件文End等:肌色(シナリオ関数開発時削除)

 呼出(関数)関係:青色

 

2.『潜在バグ探索作業工程1』作成します(自動生成)

 

 



自動生成された『潜在バグ探索作業工程1』の例

<プログラム課題の特定>

 STEP5

『潜在バグ探索作業工程1』上でプログラム課題の特定

■プログラムの実行様相確認

潜在バグ探索作業工程1』で確認 ⇒潜在バグ探索作業工程1の効果へ

 

①回帰現象

・データ揺動:実行逆順?

 

②不要な領域項目

・浮島のデータ項目の存在

 

③条件文の使用方法

・TCZ1(真)の実行命令

・TCZ2(偽)の実行命令



STEP6

プログラム課題の対策

■シナリオ関数による対策検討

(プログラムトラブルの原因)

 

・『潜在バグ探索作業工程2』自動生成 潜在バグ探索作業工程2の効果へ

①L3(条件文)追加作業

②ベクトル解析で原因特定

③原因対応可能の可否判断

*シナリオ関数のみ可能

 

・『潜在バグ探索作業工程3』自動生成 潜在バグ探索作業工程3の効果へ

①制御項目の削除(同期アルゴリズムに吸収)



STEP7

シナリオ関数化

見積もり検討

■シナリオ関数化お見積もり準備

・『潜在バグ探索作業工程3』の活用

 

■シナリオ関数化見積もり提示

・プログラミング言語及びお客様仕様対応

(シナリオ関数自動生成ツール作成)



●『潜在バグ探索作業工程』とは

2:『潜在バグ探索作業工程』の活用法