Открыть сервис

Программное обеспечение: понятие и классификация

Программное обеспечение (ПО) — совокупность программ, данных и документации, предназначенных для управления вычислительной техникой, обработки информации и решения прикладных задач. Является неотъемлемой частью любой вычислительной системы наряду с аппаратным обеспечением (hardware) и представляет собой форму записи алгоритмов и инструкций, исполняемых процессором или интерпретируемых программной средой.

История

Первые программы создавались в 1940-х годах для электронных вычислительных машин (ЭВМ) и записывались непосредственно в машинных кодах. Термин «software» предложил в 1958 году американский математик Джон Тьюки. В СССР разработка программного обеспечения велась с 1950-х годов: создавались трансляторы, операционные системы для машин серии «Минск», «Урал», БЭСМ. В 1970–1980-е годы сформировались языки высокого уровня (Фортран, Алгол, Паскаль, Си), появились персональные компьютеры и массовое прикладное ПО. В России развитие отрасли продолжилось в 1990-е и 2000-е годы: возникли компании по разработке системного и прикладного ПО, а также движение за импортозамещение в сфере программных продуктов.

Классификация

По назначению выделяют несколько крупных классов:

  • Системное ПО — обеспечивает работу аппаратуры и базовых сервисов: операционные системы, драйверы, утилиты, файловые менеджеры.
  • Прикладное ПО — решает задачи пользователя: текстовые и графические редакторы, браузеры, бухгалтерские и инженерные программы.
  • Инструментальное ПО — средства разработки: компиляторы, интерпретаторы, отладчики, среды разработки (IDE), системы контроля версий.

По способу распространения различают проприетарное (закрытое) и свободное ПО, по модели оплаты — коммерческое, условно-бесплатное (shareware) и бесплатное (freeware).

Устройство и характеристики

Программа представляет собой последовательность инструкций, записанных на языке программирования и преобразуемых в машинный код. Ключевые характеристики ПО:

ХарактеристикаСодержание
ФункциональностьНабор решаемых задач
НадёжностьСпособность работать без сбоев
ПроизводительностьСкорость и ресурсоёмкость
СопровождаемостьПростота внесения изменений
ПереносимостьРабота на разных платформах

Жизненный цикл ПО включает анализ требований, проектирование, разработку, тестирование, внедрение и сопровождение.

Разработка

Разработка ПО ведётся по методологиям: каскадной (waterfall), итеративной, гибкой (agile). Применяются языки программирования (Python, Java, C++, C# и другие), среды разработки, системы автоматизированного тестирования. Значительную роль играют стандарты документирования и лицензирования. В России действует реестр отечественного ПО, продукция из которого имеет приоритет при государственных закупках.

Применение и значение

Программное обеспечение используется во всех сферах: промышленности, медицине, образовании, финансах, транспорте, науке, государственном управлении. От него зависят работа автоматизированных систем, связь, банковские расчёты, системы управления производством. Развитие облачных вычислений, искусственного интеллекта и встроенных систем расширяет сферы применения ПО.

Правовая охрана

Программы для ЭВМ охраняются авторским правом и рассматриваются как объекты интеллектуальной собственности. В России их правовая защита регулируется Гражданским кодексом (часть четвёртая), предусмотрена государственная регистрация программ. Распространены лицензионные соглашения, определяющие условия использования.

Критика и проблемы

К основным проблемам относят уязвимости и киберугрозы, зависимость от иностранных платформ, сложность сопровождения крупных систем, а также вопросы совместимости и лицензионной чистоты. Отдельно обсуждается надёжность критически важного ПО.

Источники: учебники по информатике и программированию, материалы по системному и прикладному ПО, публикации по истории вычислительной техники, нормативные акты РФ об интеллектуальной собственности.