10.16.2 実行順序表示機能とは
ソースコードの処理を理解するには,通常,ソースファイル(ソースプログラム)のソースコードを読んで行います。このソースコードの読解方法をソースコードリーディングといいます。ソースコードリーディングには,次のメリットがあります。
-
プログラム,節,段落に付けられたコメントで処理全体を把握できる
-
処理コメントが処理を理解する手助けになる
-
過去に読み書きした処理コードパターンの記憶が処理を理解する手助けになる
-
処理コードパターンを記憶することでソースコードの読解力を身に着けることができる
しかし,実行パスを頭の中で記憶しながら目視でトレースするので,条件文や分岐が複雑に絡み合い実行パスが多数になると,頭の中でのトレースが困難になります。
実行順序表示機能は,ソースコードリーディングのこの欠点部分を支援するための機能です。この機能では,制御フロー解析の制御フロー情報を使って,制御ブロック(節/段落/文/条件指定)のソースコードを実行順にツリー形式で表示します。このツリーのことを実行順序ツリーといいます。
この図では,ソースプログラムのソースコードは「PERFORM PARA2」で段落PARA2に制御が移行しています。実行順序ツリーでは,ソースコードの実行順に従って,「PERFORM PARA2」のあとに呼出先(制御の移行先)の段落PARA2を表示しています。
実行順序ツリーを使うと,次のようなメリットがあり,効率良くかつ効果的にトレースできます。
-
ソースコードリーディングのように分岐や手続き呼び出しのたびに分岐先や呼出先を探す手間で目視トレースが中断されることはない
-
実行順序ツリーはすべての実行経路を表示するため,頭の中に実行経路をスタック(記憶)する必要がなく,記憶の混乱で発生する実行経路のトレース漏れを防止できる
この実行順序ツリーは,次に示すCOBOLソース解析の生成ドキュメントに表示または出力されます。
-
[実行順序表示]画面
画面の左ペインのしおり(目次)に実行順序ツリー,右ペインにソースプログラムを表示します。
-
実行順序リスト
実行順序ツリーをプログラムごとにCSVファイルに出力します。