形式手法とは? わかりやすく解説

形式手法

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

形式手法(けいしきしゅほう、: formal methods)は、ソフトウェア工学における数学を基盤としたソフトウェアおよびハードウェアシステムの仕様記述、開発、検証の技術である[1]。ソフトウェアおよびハードウェア設計への形式手法の適用は、他の工学分野と同様、適切な数学的解析を行うことで設計の信頼性と頑健性が向上するという予想によって動機付けられている[2]


  1. ^ R. W. Butler (2001年8月6日). “What is Formal Methods?”. 2006年11月16日閲覧。
  2. ^ C. Michael Holloway. Why Engineers Should Consider Formal Methods. 16th Digital Avionics Systems Conference (27–30 October 1997). オリジナルの2006年11月16日時点におけるアーカイブ。. https://web.archive.org/web/20061116210448/http://klabs.org/richcontent/verification/holloway/nasa-97-16dasc-cmh.pdf 2006年11月16日閲覧。. 
  3. ^ Monin & Hinchey 2003, pp. 3–4
  4. ^ Daniel Jackson and Jeannette Wing, "Lightweight Formal Methods", IEEE Computer, 1996年4月
  5. ^ Vinu George and Rayford Vaughn, "Application of Lightweight Formal Methods in Requirement Engineering", Crosstalk: The Journal of Defense Software Engineering, 2003年1月
  6. ^ Daniel Jackson, "Alloy: A Lightweight Object Modelling Notation", ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 11, Issue 2 (2002年4月), pp. 256-290
  7. ^ Richard Denney, Succeeding with Use Cases: Working Smart to Deliver Quality, Addison-Wesley Professional Publishing, 2005, ISBN 0-321-31643-6.
  8. ^ Sten Agerholm and Peter G. Larsen, "A Lightweight Approach to Formal Methods", In Proceedings of the International Workshop on Current Trends in Applied Formal Methods, Boppard, Germany, Springer-Verlag, 1998年10月
  9. ^ Backus, J.W. (1959). “The Syntax and Semantics of the Proposed International Algebraic Language of Zürich ACM-GAMM Conference”. Proceedings of the International Conference on Information Processing. UNESCO 
  10. ^ Knuth, Donald E. (1964), Backus Normal Form vs Backus Naur Form. Communications of the ACM, 7(12):735–736.
  11. ^ フレデリック・ブルックス、『銀の弾などない』 (No Silver Bullet) 、1986年


「形式手法」の続きの解説一覧

形式手法

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/11/21 08:28 UTC 版)

プログラム合成」の記事における「形式手法」の解説

合成したプログラム性質論理式表し、それを自動的に証明する過程プログラム合成される

※この「形式手法」の解説は、「プログラム合成」の解説の一部です。
「形式手法」を含む「プログラム合成」の記事については、「プログラム合成」の概要を参照ください。


形式手法

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

ソフトウェア開発工程」の記事における「形式手法」の解説

形式手法は要求/仕様記述/設計段階でのソフトウェア(およびハードウェア問題への数学的対処法である。形式手法の例として、Bメソッド・ペトリネット・RAISEVDMなどがある。形式仕様記述Z記法など様々な手法がある。より一般化すれば、有限状態機械システム設計することでオートマトン理論応用してアプリケーション動作解明する有限状態機械FSM)に基づいた方法論実行可能ソフトウェア仕様記述ができ、従来的なコーディング工程を省くことができる(仮想有限状態機械及びイベント駆動有限状態機械)。 形式手法はアビオニクスソフトウェアなどの安全性が重要とされるソフトウェアでよく採用されている。DO178Bなどのソフトウェア安全性保証標準規格では、形式手法の採用義務付けられている(レベルA場合)。 形式手法は開発工程様々な形入り込んできつつある。

※この「形式手法」の解説は、「ソフトウェア開発工程」の解説の一部です。
「形式手法」を含む「ソフトウェア開発工程」の記事については、「ソフトウェア開発工程」の概要を参照ください。


形式手法

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/09/20 16:21 UTC 版)

静的コード解析」の記事における「形式手法」の解説

形式手法は、ソフトウェアハードウェア解析用いられる用語であり、厳密に数学的な手法によって解析結果を得ることを意味する数学的手法としては、表示的意味論公理的意味論操作的意味論抽象解釈などがある。 実行時エラー全て検出することは不可能であることが証明されており、任意のプログラム正しく動作するエラーになるかを判定する機械的手法はない。これは1930年代アラン・チューリングライス研究判明したチューリングマシンの停止問題およびライスの定理)。決定不能な問題ではあるが、近似的な解でも有効である。 形式的な静的コード解析実装方法には以下のようなものがある: モデル検査は、有限の状態を持つシステム対象とし、無限に状態を持つシステム抽象化によって状態数有限個に減らして行うこともある。 データフロー解析は、プログラム各点変数群の取りうる値についての情報集め技法である。 抽象解釈は、プログラム個々の文が抽象機械の状態に何らかの影響与え様子モデル化したものである(つまり、ソフトウェア個々の文の数学的属性宣言基づいて実行」する)。抽象機械解析しすいようになるべく単純化されるので、実際プログラムを完全に表すわけではない(もとのシステムで真である属性抽象システムで常に真とは限らない)。うまくいけば、抽象解釈は「健全」とされる抽象システムで真である全属性はもとのシステムでも真だといえる)。例えば、Frama-cやPolyspaceといったツールは、抽象解釈技法使っている。 表明プログラム内で使うことは、ホーア論理最初に示唆された。一部プログラミング言語表明ツールとしてサポートしている(例えば、AdaサブセットであるSPARK、ESC/JavaやESC/Java2を使った Java Modeling Language (JML)、C言語ACSL (ANSI/ISO C Specification Language) で拡張する Frama-c WP(weakest precondition最弱事前条件プラグインがある)。

※この「形式手法」の解説は、「静的コード解析」の解説の一部です。
「形式手法」を含む「静的コード解析」の記事については、「静的コード解析」の概要を参照ください。

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



固有名詞の分類


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

辞書ショートカット

すべての辞書の索引

「形式手法」の関連用語

形式手法のお隣キーワード
検索ランキング

   

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



形式手法のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの形式手法 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのプログラム合成 (改訂履歴)、ソフトウェア開発工程 (改訂履歴)、静的コード解析 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2024 GRAS Group, Inc.RSS