Какие есть классы программных продуктов
Программное обеспечение — неотъемлемая часть компьютера, являющаяся логическим продолжением технических средств.
Программы, в зависимости от функционального применения, можно условно разделить по категориям или классам. Выделяют три основных класса программных продуктов (см. схему рис. 5.1):
- системные программы, выполняющие различные вспомогательные функции, такие как: управление ресурсами компьютера, создание копий используемой информации, проверка работоспособности устройств компьютера, вывод справочной информации о компьютере и др.;
- прикладные программы, непосредственно обеспечивающие работы, выполнение которых необходимо пользователю;
- средства программирования, облегчающие процесс создания новых программ для компьютера.
Рис. 5.1. Классы программных продуктов
Системное программное обеспечение(System Software) – совокупность программ и программных комплексов, определяющих работоспособность компьютера и сетей ЭВМ. Системные программы обеспечивают:
- создание операционной среды функционирования других программ;
- обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;
- проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей;
- выполнение вспомогательных технологических процессов (копирование, архивирование и восстановление файлов программ и баз данных и т.д.)
Данный класс программных продуктов тесно связан с типом компьютера и является его неотъемлемой частью. Программные продукты в основном ориентированы на квалифицированных пользователей – профессионалов в компьютерной области: системного программиста, администратора сети, прикладного программиста, оператора. Однако знание базовой технологии работы с этим классом программных продуктов требуется и конечным пользователям персонального компьютера, которые самостоятельно не только работают со своими программами, но и выполняют обслуживание компьютера, программ и данных.
Программные продукты системного класса имеют общие предметные области применения, независимо от специфики. К ним предъявляются высокие требования по надежности и технологичности работы, удобству и эффективности использования.
Пакеты прикладных программ(application program package) – комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области. Они служат программным инструментарием решения функциональных задач и являются самым многочисленным классом программных продуктов. В данный класс входят программные продукты, выполняющие обработку информации различных предметных областей.
Установка программных продуктов на компьютер выполняется квалифицированными пользователями, а непосредственную их эксплуатацию осуществляют, как правило, конечные пользователи – потребители информации. Деятельность конечных пользователей, во многих случаях, весьма далека от компьютерной области (бухгалтерия, контроль участков на производстве, дизайн, поиск по базам данных и пр.), поэтому программные продукты прикладного класса могут быть весьма специфичными для отдельных предметных областей.
Инструментарий технологии программирования – совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов. Инструментарий включает специализированные программные продукты, которые являются профессиональными средствами разработчика. Программные продукты данного класса поддерживают все технологические этапы процесса проектирования, программирования (кодирования), отладки и тестирования создаваемых программ. Пользователями этого класса программных продуктов являются системные и прикладные программисты.
Источник
Данный класс программных продуктов тесно связан с типом компьютера и является его неотъемлемой частью. Программные продукты в основном ориентированы на квалифицированных пользователей – профессионалов в компьютерной области: системного программиста, администратора сети, прикладного программиста, оператора. Однако знание базовых технологий работы с этим классом программных продуктов требуется и конечным пользователям персонального компьютера, которые самостоятельно не только работают со своими программами, но и выполняют обслуживание компьютера, программ и данных.
Программные продукты данного класса носят общий характер применения, независимо от спецификации предметной области. К ним предъявляются высокие требования по надежности и технологичности работы, удобству и эффективности использования.
Системное программное обеспечение (System Software) – совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ.
Пакеты прикладных программ (ППП) служат программным инструментарием решения функциональных задач и являются самым многочисленным классом программных продуктов. В данный класс входят программные продукты, выполняющие обработку информации различных предметных областей.
Установка программных продуктов на компьютер выполняется квалифицированными пользователями, а непосредственную их эксплуатацию осуществляют, как правило, конечные пользователи – потребители информации, во многих случаях деятельность которых весьма далека от компьютерной области. Данный класс программных продуктов может быть весьма специфичным для отдельных предметных областей.
Пакет прикладных программ (application program package) – комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области.
Инструментарий технологии программирования обеспечивает процесс разработки программ и включает специализированные программные продукты, которые являются инструментальными средствами разработчика. Программные продукты данного класса поддерживают все технологические этапы процесса проектирования, программирования (кодирования), отладки и тестирования создаваемых программ. Пользователями технологии программирования являются системные и прикладные программисты.
Инструментарий технологии программирования– совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов.
Операционная система предназначена для управления выполнения пользовательских программ, планирования и управления вычислительными ресурсами ЭВМ.
В секторе программного обеспечения и операционных систем ведущее положение занимают фирмы IBM, Microsoft, UNISYS, Novell. Доход от продаж операционных систем в среднем превышает 20 млрд. дол. год. Рассмотрим наиболее распространенные типы операционных систем.
Операционные системы для персональных компьютеров делятся на:
Большое значение сегодня имеет применение 32-разрядных операционных систем для персональных компьютеров:
OS/2 во всех модификациях (IBM);
Windows NT во всех модификациях (Microsoft);
Unix во всех модификациях;
Next Step 3.2 (Next);
SCO Open Desktop 3.0 (Santa Cruz Operation);
Solaris 2.1 (SunSoft) — x86;
UnixWare Personal Edition 1.0 (Novell).
Операционная оболочки – специальные программы, предназначенные для облегчения общения пользователя с командами операционной системы. Операционные оболочки имеют текстовый и графический интерфейсы конечного пользователя.
Сервисные программы – часто называются утилитами.
Утилиты – программы, служащие для выполнения вспомогательных операций обработки данных или обслуживания компьютера.
Минимальный состав системного программного обеспечения:
1. Операционная система MSDOS
2. Текстовая оболочка
3. Графическая оболочка
4. Утилиты для обслуживания файлов
5. Программы диагностики
Источник
Многие пользователи современных компьютерных систем, чья деятельность так или иначе связана с такими технологиями, рано или поздно начинают задаваться вопросом о том, что же представляет собой классификация программных продуктов. Хотя такие знания к обязательным, в общем-то, отнести нельзя, тем не менее, понимание самой сути вопроса иногда может пригодиться.
Что вообще собой представляет классификация программных продуктов?
Если говорить о том, как происходит разделение программного обеспечения на классы, сразу стоит отметить, что в мире какой-то единой системы, относящей тот или иной программный компонент к различным категориям, не существует. Однако есть некие базовые принципы, по которым и можно идентифицировать определенное ПО.
В понимании компьютерных технологий это называется «классификация программных продуктов по сфере использования». Грубо говоря, такое разделение производится на основе возможностей самого софта, а также задач, исполнение которых на него возложено. При этом можно отметить и большие классы, и узконаправленные специфичные приложения.
Основные классы программных продуктов
Исходя из общепринятых методов классификации, на сегодняшний день можно выделить три больших группы, которые включают в себя самые различные компоненты:
- системное ПО;
- прикладные программы;
- средства программирования и разработки.
Взаимосвязь между классами программных продуктов
Само собой разумеется, что такое разделение выглядит достаточно условным, поскольку все программы, относящиеся к разным категориям, связаны между собой достаточно тесно.
Так, например, при отсутствии операционной системы, в среду которой интегрируются те же драйверы или пользовательские приложения, ни о какой работе на компьютере и говорить не приходится. Собственно, если бы не было средств разработки (языков программирования и специальных платформ), то и создании самих операционных систем или устанавливаемых приложений, тоже можно было бы не говорить. Ну а что касается выполнения узконаправленных задач, тут вообще связь с остальными классами прослеживается очень сильно. Но обо всем по порядку. Рассмотрим для начала основные классы программных продуктов несколько подробнее.
Системное ПО
В первую очередь, говоря о таком разделе, как системный софт, следует отметить, что это такие программные компоненты, которые нужны для функционирования компьютерной системы и должны присутствовать на любом ПК в обязательном порядке.
Естественно, что и тут имеется свое разделение по принципу предназначения. Среди всего этого отдельно стоит выделить следующие классы программных продуктов по сфере использования:
- базовое ПО;
- вспомогательное сервисное ПО.
В свою очередь, базовый софт делится на следующие компоненты:
- локальные операционные системы;
- сетевые ОС;
- драйверы;
- графические и текстовые оболочки.
Сначала посмотрим на последний компонент – операционные оболочки. Их предназначение состоит в обеспечении максимально удобного общения пользователя с компьютером через определенный интерфейс. Сегодня большинство систем имеют графические интерфейсы, создаваемые при помощи объектно-ориентированного программирования.
На заре развития компьютерной техники такое взаимодействие производилось на основе использования того, что сегодня принято называть командной строкой, то есть, при помощи специальных команд, которые при выполнении и давали необходимый результат.
Что касается драйверов, они представляют собой специальные приложения, которые обеспечивают взаимодействие «железных» компонентов компьютера с операционной системой. Грубо говоря, это средство, при помощи которого «операционка» может инициализировать, допустим, звуковую или видеокарту, а также в полной мере использовать ее возможности для передачи определенной информации пользователю. Но это, так сказать, только общее понимание, поскольку в некоторых случаях для обеспечения корректной работы системы в целом могут понадобиться даже драйверы для виртуальных устройств (самый простой пример – драйверы ASIO4ALL).
Как уже можно было заметить, эти подклассы программных продуктов включают в себя и операционные системы – ту самую основу, которая является своеобразным мостом между компьютером и пользователем. Иногда, как было сказано выше, это относится и к «железу» в прямом смысле.
В качестве сервисного инструментария дополнительные классы программных продуктов, используемые на ПК, тоже включают в себя несколько основных элементов. Тут отдельно стоит выделить следующие:
- системы безопасности (антивирусы, файрволлы и т.д.);
- архиваторы;
- оптимизаторы;
- программные кодеки и декодеры;
- дополнительные утилиты, обеспечивающие наблюдение за работой ОС и т.д.
Пакеты прикладных программ
Теперь рассмотрим так называемые пакеты прикладного ПО. И в них тоже есть свои дополнительные классы программных продуктов. Что это такое в общем смысле?
Это приложения и пакеты, устанавливаемые пользователем, или какие-либо программы, присутствующие в самой операционной системе, которые помогают выполнять узконаправленные задачи.
Посмотрите. Ведь даже в Windows-системах имеется набор стандартных утилит для просмотра графики и текстов, прослушивания аудио или воспроизведения видео и т.д. Однако сегодня самыми распространенными считаются универсальные офисные пакеты, которые содержат несколько основных приложений для работы с документами разных типов (таблицы, тексты, базы данных).
Средства разработки и программирования
Еще одну большую группу тоже условно можно разделить на несколько подгрупп, которые условно можно трактовать именно как «классы программных продуктов». Это четыре основных разновидности:
- пакеты разработчиков операционных систем;
- пакеты разработчиков драйверов;
- пакеты разработчиков прикладного ПО;
- пакеты разработчиков программ для микроконтроллеров устройств.
Как правило, все эти средства похожи только в одном – они базируются на определенных языках программирования, которые позволяют создавать программные продукты определенного типа и для обеспечения взаимодействия компьютера с пользователем, и для создания условий для работы встроенных «железных» устройств. Если посмотреть на эти классы программных продуктов более внимательно, нетрудно заметить, что здесь присутствует разработка драйверов, которые относятся к системному ПО. А это, так сказать, дополнительный довод в пользу взаимосвязи между всеми категориями.
Что же касается используемого средства программирования, сегодня языков существует столько, что все и не перечислишь. Например, для создания ОС чаще всего используется язык C+/C++, мобильные программы могут основываться на языке Java, офисные приложения практически всегда имеют встроенные средства поддержки языка Visual Basic.
Аналитика, моделирование и прогнозирование
Отдельно стоит остановиться на пакетах, которые принято называть средствами проведения аналитических исследований, прогнозирования и создания компьютерных моделей поведения какого-то процесса. Классификация программных продуктов для создания аналитических решений включает в себя несколько основных типов ПО, однако его можно отнести скорее к получению определенного результата, заранее неизвестного, а решение основывается на тех же гипотезах или нескольких начально вводимых данных и условиях. Сегодня такие модели достаточно часто применяются в физике, химии и других науках. Да что говорить, моделируются даже социальные процессы, происходящие в обществе.
С другой стороны, сюда же можно включить специализированные пакеты, которые позволяют производить, допустим, проектные работы или разработку техники. Чего стоит только AutoCAD. А если взять в расчет еще и математические системы, способные решать задачи самого сложного уровня, тут вообще можно отдельную диссертацию написать.
Автоматизированные системы управления
АСУ на основе программ сегодня уже не редкость. При всем этом, программное обеспечение такого типа работает не только на каких-то заводских станках или технологических производственных линиях. Достаточно часто можно встретить приложения, разработанные для целых заводов.
То же самое можно наблюдать и в некоторых специализированных пакетах, способных, например, осуществлять управление персоналом, не говоря уже о бухгалтерском учете. Те же налоговые службы, пенсионные фонды и многие другие государственные институты в своей работе применяют именно такие полностью автоматизированные системы.
Бухгалтерский учет
Теперь пару слов о том, что представляют собой классы программных продуктов ИС бухгалтерского учета. Опять же, таких пакетов информационных систем (ИС) сегодня можно найти достаточно много. Однако каждый из них имеет собственную специфику, связанную с проведением таких операций с учетом законодательства отдельно взятой страны.
На постсоветском пространстве наибольшее распространение получил пакет «1C», включающий в себя не только модули бухгалтерского учета, но и множество дополнительных разработок, скажем, по управлению персоналом и т.д. Но если следовать четкой логике по классификации ПО, все такие пакеты, по большому счету, относятся к прикладным программам в самом широком смысле.
Разделение прикладных программ на примере мультимедиа
Теперь посмотрим на некоторые общие принципы, присутствующие в разделении программ на группы внутри самого большого класса – прикладного ПО.
Чтобы было понятнее, приведем пример мультимедиа. В нем можно выделить несколько основных групп:
- аудио;
- видео;
- графика;
- анимация.
В том же аудио есть свои подгруппы. Например, одни приложения направлены исключительно на запись или обработку звука, другие (музыкальные секвенсоры) могут предоставлять собственные средства без предварительной записи аудио. Используются здесь в основном программные синтезаторы и сэмплеры.
Те же синтезаторы по типу подключения можно разделить на VST-инструменты, модули DX, подключаемые через интерфейс DirectX, библиотеки RTAS и т.д. Отдельную категорию занимают эффекты (ревербератор, хорус, дилей, фазер, флэнджер и т.д.). Собственного звука они не генерируют, но обрабатывать его могут в режиме реального времени. Впрочем, это только самый общий пример, ведь в любом из направлений (даже не мультимедиа), структуру подклассов можно развивать достаточно широко.
Специфичные классы программ
Наконец, посмотрим на программы, которые можно отнести к нескольким классам сразу. В первую очередь это касается средств Интернета.
Посудите сами, ведь многие браузеры вроде Mozilla Firefox одновременно являются и средством доступа во Всемирную паутину, и средством просмотра веб-страниц, и средством прослушивания музыки или просмотра видео, и средством загрузки контента на компьютер, и даже средством веб-разработки.
Само собой разумеется, что в данном случае не описывались разного рода оптимизаторы, загрузчики и т.д. По большому счету, это прикладное ПО, тем не менее, в некоторых из таких средств можно встретить и признаки сервисного системного программного обеспечения, так что их упоминать нужно сразу в нескольких группах приложений.
Заключение
Вот вкратце и все о том, что представляют собой классы программного обеспечения. Обратите внимание на то, что здесь представлена достаточно краткая и, так сказать, общая информация, ведь все три основные группы ПО можно разделять и разделять, выделяя структуры узкой направленности, в зависимости от задач, возлагаемых на программные компоненты каждого типа. Однако думается, для основного простейшего понимания сути вопроса этого будет достаточно, так что даже человек, особо не вникающий в такие понятия, сможет четко для себя разграничить основные типы программных продуктов.
Источник