ソフトウェアシステム

ソフトウェアシステム (: software system)は、コンピュータシステムハードウェアとソフトウェアの組み合わせ)の一部を形成するソフトウェアに基づいてコンポーネントを相互通信するシステムのこと。これは、「いくつかの個別のプログラム、これらのプログラムのセットアップに使用される構成ファイル、システムの構造を説明するシステムドキュメント、およびシステムの使用方法を説明するユーザードキュメントで構成される[1]。」

「ソフトウェアシステム」という用語は、「コンピュータプログラム」および「ソフトウェア」という用語と区別する必要がある。コンピュータプログラムという用語は、一般に、特定のタスクを実行する一連の命令(ソースコードまたはオブジェクトコード)を指す。ソフトウェアシステムは一般に、仕様、テスト結果、エンドユーザードキュメント、保守記録など、より多くのコンポーネントを含む、より包括的な概念を指す[2]

ソフトウェアシステムという用語の使用は、ソフトウェア工学の文脈でのシステム理論アプローチの適用に関連する場合がある。ソフトウェアシステムは、一緒に動作するいくつかの個別のコンピュータプログラムと関連する構成ファイルドキュメントなどで構成される[1]。 この概念は、ソフトウェアの主要コンポーネントとそれらの相互作用に焦点を当てているため、大規模で複雑なソフトウェアの研究で使用される。また、ソフトウェアアーキテクチャの分野にも関連する。

ソフトウェアシステムは、特にソフトウェア工学、および一般的なシステム工学に関心のあるグループにとって活発な研究分野である[3]。 この分野を扱う Journal of Systems and Softwareエルゼビアが発行)のような学術雑誌が存在する[4]

ACMソフトウェアシステム賞は、 「永続的な影響を与えた、概念への貢献に反映された、商業的に受け入れられた、またはその両方のシステムを開発した」人々または組織を称える年次賞である[5]。 1983年以来、 Association for Computing Machinery (ACM)から授与されており、 IBMが後援する賞金が授与されている。

分類

ソフトウェアシステムの主な分類には、アプリケーションソフトウェア開発プログラミングソフトウェア、およびシステムソフトウェアがあるが、区別が難しい場合もある。ソフトウェアシステムの例には、オペレーティングシステムコンピュータ予約システム航空交通管制システム、軍事コマンドおよび制御システム、電気通信ネットワーク、コンテンツ管理システムデータベース管理システムエキスパートシステム組み込みシステムなどがある。

関連項目

脚注