PAD (ソフトウェア設計)
プログラムの作成にあたっては、制御構造を表すフローチャートを作り、示された手順に基づいてコーディングしていくことが行われてきた。フローチャートは個々の処理記号(処理、判断、ループ、など)は決められているが、処理記号や接続する線の位置や方向が定められていないため、同じ手順が異なるチャートになったり、制御構造が判然としなくなるという欠点があった。
さらに、構造化プログラミング技法が浸透することによってフローチャートの欠点は顕著になった。
PADはこの欠点を解消するために開発された2次元木構造図であり、ワーニエ図(英語版)を改良したものである。
具体的には、プログラムの構造を、
連接:単純な処理の連続
選択:条件による処理の選択(分岐)
反復:条件による処理の繰り返し
という内容に細分化していき、明確化していくことを目的としている。
そのため、PADでは各処理の記号と記号の接続方法を規定しておくことで、多くの場合、プログラム構造を表すPADはフローチャートに比べて作成者によるバラツキが少なくなる。また、プログラムのソースとPADが対応しているのでコーディングを機械的に行うことが出来る。