動作環境
一部のソフトウェアアプリケーションは、一部の周辺機器を広範囲および/または特別に使用する必要があり、そのような周辺機器のより高いパフォーマンスや機能を要求することがある。このような周辺機器には、 CD-ROMドライブ、キーボード、ポインティングデバイス、ネットワークデバイスなどがある。
コンピューティングプラットフォームは、ハードウェアまたはソフトウェアのいずれかで、ソフトウェアの実行を可能にするある種のフレームワークを記述する。 一般的なプラットフォームには、コンピューターのアーキテクチャ、オペレーティングシステム、プログラミング言語、およびそれらのランタイムライブラリが含まれる。
オペレーティングシステムは、システム要件(ソフトウェア)を定義するときに言及される要件の1つである。ソフトウェアは、同じラインのオペレーティングシステムの異なるバージョンと互換性がない場合があるが、下位互換性がある程度維持されていることがある。たとえば、 Microsoft Windows XP用に設計されたほとんどのソフトウェアは、 Microsoft Windows 98で実行できないが、その逆は常に当てはまる。同様に、 Linux Kernel v2.6の新しい機能を使用して設計されたソフトウェアは、通常、Kernel v2.2またはv2.4を使用するLinuxディストリビューションでは正しく(またはまったく)実行またはコンパイルされない。