Программная система — это система взаимодействующих компонентов на основе программного обеспечения, входящего в состав компьютерной системы (комбинация аппаратного и программного обеспечения). Она «состоит из ряда отдельных программ , конфигурационных файлов, которые используются для настройки этих программ, системной документации , описывающей структуру системы, и пользовательской документации , которая объясняет, как использовать систему». [1]
Программная система отличается от компьютерной программы или программного обеспечения. В то время как компьютерная программа обычно представляет собой набор инструкций ( исходный или объектный код ), которые выполняют определенную задачу, программная система представляет собой более или охватывающую концепцию со многими другими компонентами, такими как спецификация, результаты испытаний , документация конечного пользователя, записи по обслуживанию и т. д. [2]
Использование термина «программная система» иногда связано с применением подходов теории систем в контексте разработки программного обеспечения . Программная система состоит из нескольких отдельных компьютерных программ и связанных с ними файлов конфигурации , документации и т. д., которые работают вместе. [1] Эта концепция используется при изучении большого и сложного программного обеспечения, поскольку она фокусируется на основных компонентах программного обеспечения и их взаимодействии . Она также связана с областью архитектуры программного обеспечения .
Программные системы являются активной областью исследований для групп, интересующихся программной инженерией в частности и системной инженерией в целом. [3] Академические журналы, такие как Journal of Systems and Software (издаваемый Elsevier ), посвящены этой теме. [4]
Премия ACM Software System Award — ежегодная награда, которая присуждается людям или организациям «за разработку системы, которая оказала длительное влияние, выразившееся в вкладе в концепции, в коммерческом принятии или в том и другом» . [5] Премия присуждается Ассоциацией вычислительной техники (ACM) с 1983 года, а денежный приз спонсируется IBM .
Основные категории систем программного обеспечения включают те, которые основаны на разработке прикладного программного обеспечения , программного обеспечения для программирования и системного программного обеспечения, хотя иногда бывает трудно провести различие. Примерами систем программного обеспечения являются операционные системы , компьютерные системы бронирования , системы управления воздушным движением , военные системы управления и контроля, телекоммуникационные сети , системы управления контентом , системы управления базами данных , экспертные системы , встроенные системы и т. д.