コンピュータソフトウェアの計画、開発、検査、運用、保守、管理などのための技術や、それを研究する工学の一分野。
コンピュータシステムの価格のうちソフトウェアのための価格が占める割合は、コンピュータの誕生まもない1955年ごろには20%未満であった。その後急激に高くなり、1990年代ごろには80~90%になった。これは、要求されるソフトウェアの規模が大きくなるとともに複雑になってきたことに起因する。さらに、要求されるソフトウェアがますます複雑になる一方で、それに対処するためのソフトウェア技術(開発技術および管理技術)が、それに伴わなくなってきたのである。その結果、(1)ソフトウェアはつねに納期に遅れ、コストがかかりすぎ、しかも当初の仕様を満たしていない、(2)ソフトウェアは信頼性がなく、永久に保守する必要がある、(3)ソフトウェアは透明さに欠けており、保守することが困難で、修正、改良することがむずかしい、といった「ソフトウェア危機」とよばれる徴候が現れてきた。その原因として、あらゆる工学の分野で共通の基本的な設計手続きを使っていないからであるということがいわれ始め、ソフトウェアの開発にストラクチャードプログラミングのような工学的アプローチが導入されるようになってきた。
ソフトウェアに要するコストを、計画から保守に至る各段階の占める割合でみてみると、上流工程(要求分析・定義、外部設計)に比べ、テストおよびデバグの段階のほうがコストがかかり、保守に要するコストがさらにかかるというのがおおよそのところである。ソフトウェアの「ライフ・サイクル」を認識し、事態を改善する必要がある。そのためには、科学的な知識を蓄積し、実際的に応用する必要があるが、これらを扱う分野がソフトウェアエンジニアリングである。
[土居範久]
米テスラと低価格EVでシェアを広げる中国大手、比亜迪(BYD)が激しいトップ争いを繰り広げている。英調査会社グローバルデータによると、2023年の世界販売台数は約978万7千台。ガソリン車などを含む...
11/21 日本大百科全書(ニッポニカ)を更新
10/29 小学館の図鑑NEO[新版]動物を追加
10/22 デジタル大辞泉を更新
10/22 デジタル大辞泉プラスを更新
10/1 共同通信ニュース用語解説を追加