Next Index
ソフトウェアとは何か?
 ソフトウェアという言葉は様々な文脈で使われることが多い大変曖昧な言葉です。政策的な場面では、箱ものだけではなくソフトウェア面を考えないとダメだというような使われ方をしています。つまり、橋や建物を造るだけではダメで、それをどう利用するかが問題なのだという意味です。

 また、映画・音楽のことをソフトと呼んだりする人達がいます。コンピュータ業界の人が聞くとなんとなく違和感があります。

 もちろん、コンピュータ業界では、ソフトウェアと言えばコンピュータプログラムを意味していますが、それだけではなく、システム全般の運用まで含めてソフトウェアと呼ぶ場合もあります。

 なんとなく「それ」のことなんだなという理解で、多くの人達がコミュニケーションに使用しています。

 はっきりしていることは、物理的な目に見える“もの”はハードウェアで、それに対し、物理的でない、目に見えない、何か全部を指してソフトウェアと呼んでいるようです。

 プログラムはソフトウェアか?というと、ハードウェアでプログラミングした人達がいたのです。コンピュータのパネルにプラグを差込む沢山の穴が開いていて、リード線で穴と穴をつなぎプログラムを作っていたのです。リード線を使ったプログラムは保存できません。線をはずしてしまえば、コンピュータは動作しなくなります。つなぎ方がプログラムそのものだったのです。このプログラムは記録媒体に保存することはできません。このようなプログラムをソフトウェアと呼ぶのかということが問題となります。リード線のつなぎ方は目に見えますからハードウェアかもしれません。そうするとプログラムをソフトウェアと呼ぶことはできなくなります。

 しかし、ガッカリするのはまだ早いです。フォン・ノイマンという人が、ストアードプログラム方式コンピュータという大発明をしました。このコンピュータは主記憶装置と中央処理装置をもち、プログラムは命令とデータと呼ばれる情報の組み合わせで表現され、主記憶装置に置かれ、中央処理装置から主記憶装置のプログラムを逐次読み出して実行できるようにしたのです。その結果、プログラムは記録媒体に保存することが可能となり、コピーもできるようになりました。こうして、コンピュータの実行手順を一つの対象と捉えることが可能になったのです。この実行手順がプログラムであり、記録媒体に保存したり、コピーしたりできる対象物となったのです。このプログラムはなんとなく“もの”に似た感覚で取り扱うことができるようになりました。目には見えない何かをソフトウェアと呼ぶならば、プログラムもソフトウェアと呼んでよさそうです。

 これでようやく「プログラムはソフトウェアである」と言うことができました。

 それでは次にシステムとは何か? こちらは辞書を読むと「複雑な要素から構成されながら一つの統一体を作っている(組織)」(研究社 NEW COLLEGE ENGLISH-JAPANESE DICTIONARY)と書いてあります。この説明は、私達が日頃見聞きする使い方と大体一致しています。

 では、ソフトウェアシステムという言葉遣いは正しいのか? ソフトウェアはシステムの要素となり得るので、正しいと言えましょう。

 コンピュータとネットワークを使用した業務システム開発のプロジェクト管理を考えるとき、そのシステムの構成要素としてサーバやルータなどのハードウェアが必要となります。これらを物理的につないだだけでは、システムとして動作することはありません。システムの目的を達成するようにハードウェアを使いこなさなければならないのです。ここでソフトウェア開発が必要となります。システム開発で最も困難を伴なうのは、このソフトウェア開発なのです。システムの目的は様々ですから、ソフトウェアの開発も様々になります。

 これまで述べましたように、ソフトウェアという言葉は幅広い使われ方をしていますが、ITプロジェクト管理の話題の中では、ソフトウェアはシステムの構成要素となるプログラムとして考えます。