ソフトウェア危機

ソフトウェア危機とは、計算機科学の黎明期に用いられた用語で、必要な時間内に有用かつ効率的なコンピュータプログラムを作成することが困難であったことを指します。ソフトウェア危機は、コンピュータ処理能力の急速な向上と、対処可能な問題の複雑化に起因しています。ソフトウェアの複雑さが増すにつれ、既存の手法が不十分であったために多くのソフトウェア問題が発生しました。

歴史

「ソフトウェア危機」という用語は、1968年にドイツのガルミッシュで開催された第1回NATOソフトウェアエンジニアリング会議の参加者によって造られました。[ 1 ] [ 2 ]エドガー・ダイクストラの1972年のチューリング賞講演でもこの問題に言及されています。[ 3 ]

ソフトウェア危機の主な原因は、マシンが桁違いに強力になったことです。率直に言って、マシンが存在しなかった限り、プログラミングは全く問題ではありませんでした。性能の低いコンピュータが少数しかなかった頃は、プログラミングは軽微な問題でしたが、今では巨大なコンピュータが存在し、プログラミングは同様に巨大な問題となっています。

原因

ソフトウェア危機の原因は、ハードウェアとソフトウェア開発プロセスの全体的な複雑さに関連していました。この危機はいくつかの形で現れました。

主な原因は、コンピューティング能力の向上が、プログラマーがそれらの能力を効果的に活用する能力を上回っていたことです。過去数十年にわたり、手続き型プログラミングオブジェクト指向プログラミングなど、ソフトウェア品質管理を改善するための様々なプロセスや方法論が開発されてきました。しかし、大規模で複雑、仕様が不十分、あるいは未知の側面を含むソフトウェアプロジェクトは、依然として大規模で予期せぬ問題に脆弱です。

参照

参考文献