Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование и информатика / ТОИ / Учебник по Забуге.docx
Скачиваний:
61
Добавлен:
03.01.2020
Размер:
10.43 Mб
Скачать

12.2. Классификация программного обеспечения

← 12.1. Понятие и назначение операционной системы

12.3. Виды программного обеспечения и их... →

Программное обеспечение это совокупность программ системы обработки информации и программных документов, необходимых для эксплуатации этих программ (ГОСТ 19781-90). Также, это совокупность программ, процедур и правил, а также документации, относящихся к функционированию системы обработки данных (СТ ИСО 2382/1-84).

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

В компьютерной терминалогии часто используется слово «софт» от английского слова software, которое в этом смысле впервые применил в статье в American Mathematical Monthly математик из Принстонского университета Джон Тьюки (англ. John W. Tukey) в 1958 году.

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

Системное программное обеспечение — это комплекс программ, которые обеспечивают эффективное управление компонентами вычислительной системы, такими как процессор, оперативная память, каналы ввода-вывода, сетевое оборудование, выступая как «межслойный интерфейс» с одной стороны которого аппаратура, а с другой приложения пользователя. В отличие от прикладного программного обеспечения, системное не решает конкретные прикладные задачи, а лишь обеспечивает работу других программ, управляет аппаратными ресурсами вычислительной системы и т.д. Рисунок, иллюстрирующий системное ПО, представлен ниже.

Прикладное программное обеспечение – это программы, предназначенные для выполнения определенных пользовательских задач и рассчитанные на непосредственное взаимодействие с пользователем. В большинстве операционных систем прикладные программы не могут обращаться к ресурсам компьютера напрямую, а взаимодействуют с оборудованием и проч. посредством операционной системы. К прикладном относятся программы, предназначенные для решения определенной целевой задачи из проблемной области. Часто такие программы называют приложениями. Спектр проблемных областей в настоящее время весьма широк.

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

  • текстовые процессоры;

  • табличные процессоры;

  • системы иллюстративной и деловой графики (графические процессоры);

  • системы управления базами данных;

  • экспертные системы;

  • программы математических расчетов, моделирования и анализа экспериментальных данных.

Предлагаемые на рынке ПО приложения, в общем случае, могут быть выполнены как отдельные программы либо как интегрированные системы. Интегрированными системами обычно являются экспертные системы, программы математических расчетов, моделирования и анализа экспериментальных данных, а также офисные системы. Примером мощной и широко распространенной интегрированной системы является офисная система Microsoft Office.

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

Основные виды инструментального ПО:

  • текстовые редакторы;

  • интегрированные среды разработки;

  • sdk;

  • компиляторы;

  • интерпретаторы;

  • линковщики;

  • ассемблеры;

  • отладчики;

  • профилировщики;

  • генераторы документации;

  • средства анализа покрытия кода;

  • средства непрерывной интеграции;

  • средства автоматизированного тестирования;

  • системы управления версиями.

Открытое программное обеспечение(англ. open source software) — это программное обеспечение с открытым исходным кодом. То есть исходный код таких программ доступен для просмотра, изучения и изменения, что позволяет помочь в доработке самой открытой программы, а также использовать код для создания новых программ и исправления в них ошибок — через заимствование исходного кода, если это позволяет лицензия, или изучение использованных алгоритмов, структур данных, технологий, методик и интерфейсов (поскольку исходный код может существенно дополнять документацию, а при отсутствии таковой сам служит документацией).

Несвободное/закрытое (проприетарное программное обеспечение) (англ. proprietary software; от proprietary — частное, патентованное, в составе собственности и software — программное обеспечение) — это программное обеспечение, являющееся частной собственностью авторов или правообладателей и не удовлетворяющее критериям свободного ПО (наличия открытого программного кода недостаточно). Правообладатель проприетарного ПО сохраняет за собой монополию на его использование, копирование и модификацию, полностью или в существенных моментах. Часто проприетарным называют любое несвободное ПО, включая полусвободное.

«Открытая» лицензия не требует, чтобы открытое ПО предоставлялось бесплатно. И, тем не менее, многие из наиболее успешных проектов открытого ПО — бесплатны. Открытое программное обеспечение имеет большие перспективы в России в связи с принятием правительством и президентом РФ решений по обеспечению национальной безопасности в сфере ИТ на основе внедрения открытого и свободного ПО в государственные и бюджетные организации.

Свободное программное обеспечение может распространяться, устанавливаться и использоваться на любых компьютерах дома, в офисах, школах, вузах, а также коммерческих и государственных учреждениях без ограничений.

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

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

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

Соотношение между требующимися программными продуктами и имеющимися на рынке меняется очень быстро. Даже классические программные продукты, такие, как операционные системы, непрерывно развиваются и наделяются интеллектуальными функциями, многие из которых ранее относились только к интеллектуальным возможностям человека.

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

СИСТЕМНОЕ ПО

Операционная система

  • Общего назначения

  • Реального времени

  • Сетевая

  • Встраиваемая

  • Загрузчик операционной системы

  • Драйвер устройства

  • Программный кодек

  • Утилита

Программные средства защиты

  • Криптошлюз

  • Средство аутентификации

  • Средство мониторинга и аудита

  • Сканер защищённости

  • Средство разграничения доступа

  • Система криптографической защиты, шифрования и ЭЦП

  • Антивирусная программа

  • Антиспамовая программа

  • Межсетевой экран

ИНСТРУМЕНТАЛЬНОЕ ПО

  • Средство разработки программного обеспечения

    • Среда разработки

    • RAD

    • SDK

  • Система управления базами данных (СУБД)

    • Реляционная (DB2, Informix, Interbase, Firebird, Microsoft SQL Server, MySQL, Oracle, PostgreSQL, ЛИНТЕР)

    • Объектно-ориентированная (Caché)

    • Иерархическая

    • Сетевая

ПРИКЛАДНОЕ ПО

Офисное приложение

  • Текстовый редактор

  • Текстовый процессор

  • Табличный процессор

  • Редактор презентаций

Корпоративная информационная система

  • Аудиторская программа

  • Бухгалтерская программа

  • Система MRP

  • Система MRP II

  • Система ERP

  • Система CRM

  • Система POS

  • Система управления версиями (VCS)

  • Система управления проектами (Project Management)

  • Система автоматизации документооборота (EDM)

  • Финансово-аналитическая система

  • Система управления архивами документов (DWM)

  • Корпоративный портал

Система проектирования и производства

  • Система автоматизации проектных работ (САПР, CAD)

  • CAE-система

  • CAM-система

  • PDM-система

  • PLM-система

  • АСУТП (SCADA)

  • АСТПП (MES)

Система логистической поддержки изделий

  • Система анализа логистической поддержки (LSA)

  • Система создания ИЭТР (IETM)

Система обработки и хранения медицинской информации

  • Система передачи, обработки, хранения и архивации изображений

  • Радиологическая информационная сеть (РИС)

  • Госпитальная информационная сеть (ГИС)

Научное ПО

  • Система математического и статистического расчёта и анализа

  • Система компьютерного моделирования

Информационные системы

  • Геоинформационная система (ГИС)

  • Система поддержки принятия решений (СППР)

  • Система управления IT-инфраструктурой

  • Справочно-правовая система (СПС)

Клиент для доступа к интернет-сервисам

  • Электронная почта

  • Веб-браузер

  • Система мгновенного обмена сообщениями

  • IRC

  • IP-телефония

  • Пиринговая сеть

  • Потоковое мультимедиа

  • Банк-клиент

Мультимедиа

  • Компьютерная игра

  • Музыкальный редактор

  • Графические программы

  • Видеоредактор

  • Аудиоредактор

  • Медиапроигрыватель

← 12.1. Понятие и назначение операционной системы

12.3. Виды программного обеспечения и их... →