1969年の論文「構造化プログラミング」とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 1969年の論文「構造化プログラミング」の意味・解説 

1969年の論文「構造化プログラミング」

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/04/25 06:17 UTC 版)

構造化プログラミング」の記事における「1969年の論文「構造化プログラミング」」の解説

1969年NATOソフトウェア工学会議寄稿されたこの「Structured Programming」は、プログラム正当性効率的な検証技術重点を置き、当時問題視されていたコードサイズの際限なき肥大化によるソフトウェア危機解決策として従来ボトムアップ設計からトップダウン設計への移行推奨していた。 論文前半では、プログラムサイズの肥大化に伴い各プログラム部品およびそれらを組み合わせた際のプログラム正当性program correctness)の立証demonstration)に必要な労力指数的に増加して完遂不可能になるというソフトウェア危機問題について述べている。ダイクストラプログラム正しさに対して証明与え従来研究分析して証明の手続き考えず書かれプログラム証明必要な労力プログラムサイズに対して爆発するとし、「与えられプログラムに対してどうやって証明をするか」ではなく証明しやすいプログラム構造とは何か」についてフォーカスするとした。 後半ではそのための方法について説明している。まず推論しやすい構造として、ステートメントが順に並んだだけのものを挙げている。また、if文1つだけ推論しやすいとしている。しかし、if文がN個並んだ場合そのままでは2のN乗ステップ推論が必要であるとしている。そこでif文抽象ステートメント1つずつ置き換える段階的抽象化step-wise abstraction)により、Nに比例する推論正しさ示せるとした。また、そのためには制御ジャンプ制限し制御構造順次の他に、選択反復、および手続き呼び出しに限るべきとしている(なお、順次選択反復いわゆる制御構造control structures)に触れているのはこの文節だけである)。この例のように詳細なプログラム抽象化abstraction)していくのではなく逆に抽象的なプログラムか始めて詳細化refinement)していくというやり方示している。 詳細化の際には共同詳細化(joint-refinement)という考え方示されている。これは抽象データ構造詳細化と共にそれを扱う抽象ステートメント同時に詳細化し、それを1つのプログラムテキストのユニット分離するというものである。このユニットダイクストラ真珠(pearl)と呼んだまた、抽象的な真珠が1段階具体的な真珠依存し、その真珠がさらに具体的な真珠依存していったものをネックレス例えた。そしてネックレスの上部は下部関わらず正しさ証明することができ、また下部を取り替えることでプログラムバリエーション労力をかけずに作れるとした。

※この「1969年の論文「構造化プログラミング」」の解説は、「構造化プログラミング」の解説の一部です。
「1969年の論文「構造化プログラミング」」を含む「構造化プログラミング」の記事については、「構造化プログラミング」の概要を参照ください。

ウィキペディア小見出し辞書の「1969年の論文「構造化プログラミング」」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「1969年の論文「構造化プログラミング」」の関連用語

1969年の論文「構造化プログラミング」のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



1969年の論文「構造化プログラミング」のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの構造化プログラミング (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS