コンピューター上、あるいはモバイル端末やゲーム機など、あらゆるハードウェア上で動作するアプリケーションをソフトウェアと呼びます。コンピューターは汎用性が高く幅広い用途に使用される他、特定の目的を持ったハードウェアが、ゲームなどのエンターテイメントも含めてユーザーの要求に対してその性能を有効に発揮することができるように設計されたもので、機械を動かす基本ソフトや業務用の大規模なものからちょっとしたメモやアラーム、単なるジョークといったものまで、多種多様なソフトウェアがあります。ソフトウェアにはメーカーが商品として販売しているもの、WEBサイト上などで無償提供しているもの、あるいは個人が公開、配布しているものなど、配布形態も様々なものがあります。ソフトウェアを制作するにはプログラミング知識、あるいはそれを補助して組み上げるツールが必要となりますが、近年ではプログラミング言語の種類やツールの増加により制作の敷居が下がり、またインターネットの普及によって個人による開発、公開がしやすくなっているため、メーカーの製品にも劣らない完成度の高い無償のソフトウェアも数多く利用できるようになっています。
ソフトウェアを利用する際に注意することがあります。どんなものでも人間が作ったものなので完璧ではありません。入念にチェックしていても、不具合が潜んでいる可能性はあります。メーカー製品でもそれは同じで、不具合へのサポートをどの程度受けられるのかは気を付けなければなりません。
メーカー製であれば大抵は問題ありませんが、古くなったりバージョンアップを重ねている場合はサポートが打ち切られることもあります。無償のソフトウェアについてはメーカー製、個人制作の違いに関わらずサポートそのものがないこともあります。特に業務で使用するソフトウェアについては、性能や利便性だけではなくそのソフトウェアが利用し続けて問題ないかどうかも意識しておくべきでしょう。