ジャクソンの構造化プログラミング
連接(concatenation)複合文(ブロック文)
選択(selection)条件文(if文)、場合分け文(case文)
繰り返し(repetition)繰り返し文(while文、for文)
一方で、ジャクソンは、プログラムを作り上げるにあたってはコーディングの前に必ず設計を行うべきであるが、流れ図はその名が示すように制御の流れを記述するものであり、問題の構造について考える設計段階でプログラムの実行とその進行について考えさせてしまうことから、流れ図を書くことは設計ではないと主張した。
ダイクストラがまずアルゴリズムを決めそこからデータ構造を導く手法(データ抽象化)を用いたのに対し、逆にジャクソンは、設計技法としてはまずデータ構造を分析してからアルゴリズムなどのプログラム構造を決めるべきとし、ホーアが主張した制御構造とデータ構造の対応関係を踏まえてか、上記の流れ図の分解に代わり、データ構造の分析手段として提案したのが以下のジャクソン構造図(Jackson structure diagram)である。