Program解析という事ですが、どのレベルのでしょうか?
例えば、バグ等でProgramの詳細解析が必要な場合と、
オブジェクト追加等で他のオブジェクトが何をしてるのか調査する場合など、
状態は色々あると思います。
あとは、Programの内容に寄っても少し違いますが。
通常は、#1の方が言っている様にPD(ProgramDesign)が存在すると思います。
PDがあれば、全体の流れ&フローチャート(or SPD?)が作成されていると思いますので、
そのProgramは理解できるでしょう。
まぁ、あまりに古いProgramだと残ってなかったりしますが(^^;
このPDが無かった場合で、基本的な話を進めます。
・全体把握から入るためオブジェクトの関連図。(Sub Module Call等の情報も載っていると尚可)
・オブジェクト単位での処理内容を簡単にまとめたもの。(I/O Parameter等、情報が載っていると尚可)
・ターゲットとなるModuleの詳細Logic。
(Step数が大きくなければLine単位で書いてしまう、大きければ内部処理単位で。)
・その他、ライブラリ・マクロ情報等。(関数レベルでI/O Parameter情報必須)
まぁ、簡単に言ったら逆PDです(^^;
これらを視覚的に捕らえやすい様に作れるとBestです。
ココはセンスに寄ってしまいますが。
こんな所ですね。