3.1.1.1
3.1.1.2 Классификация программного обеспечения
Программные продукты можно классифицировать по различным признакам. Рассмотрим классификацию, в которой основополагающим признаком является сфера (область) использования программных продуктов.
Для поддержки информационной технологии в этих областях выделим соответственно три класса программных продуктов (рис. 3.1):
− системное программное обеспечение;
− пакеты прикладных программ;
− инструментарий технологии программирования.
Системное программное обеспечение (System Software) – совокупность программ и программных комплексов для обеспечения работы компьютера и сетей ЭВМ, направленное:
- на создание операционной среды функционирования других программ;
- обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;
- проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей;
- выполнение вспомогательных технологических процессов (копирование, архивирование, восстановление файлов программ и баз данных и т. д.).
Рис. 3.1. Классификация программного обеспечения по сфере
Использования
Данный класс программных продуктов тесно связан с типом компьютера и является его неотъемлемой частью. Программные продукты ориентированы в основном на квалифицированных пользователей – профессионалов в компьютерной области: системных программистов, администраторов сети, прикладных программистов, операторов. Однако знание базовой технологии работы с этим классом программных продуктов требуется и конечным пользователям персонального компьютера, которые самостоятельно не только работают со своими программами, но и выполняют обслуживание компьютеров, программ и данных.
Программные продукты данного класса носят общий характер применения независимо от специфики предметной области. К ним предъявляются высокие требования по надежности и технологичности работы, удобству и эффективности использования.
Пакет прикладных программ (application program package) – это комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области; служит программным инструментарием решения функциональных задач и является самым многочисленным классом программных продуктов, выполняющих обработку информации различных предметных областей.
Установка программных продуктов на компьютер выполняется квалифицированными пользователями, а непосредственную их эксплуатацию осуществляют, как правило, конечные пользователи – потребители информации, деятельность которых во многих случаях весьма далека от компьютерной области. Данный класс программных продуктов может быть весьма специфичными для отдельных предметных областей.
Инструментарий технологии программирования – совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программных продуктов:
Транслятор – это комплекс программ, обеспечивающих перевод программы, написанной на символическом языке, в совокупность машинных команд. В зависимости от функционального назначения транслятор может быть компилятором, интерпретатором, ассемблером или языковым процессором.
Компилятор – это транслятор, выполняющий перевод программы, написанной на алгоритмическом языке, в совокупность машинных команд без ее выполнения на компьютере.
Интерпретатор – транслятор, производящий перевод каждой конструкции алгоритмического языка в машинные команды и одновременное выполнение этих конструкций в компьютере.
Ассемблер – транслятор, переводит программы, записанные на машинно-ориентированном языке ассемблера в машинные коды.
Языковый процессор – это транслятор, объединяющий в себе функции компиляции, интерпретации и ассемблирования.
К категории инструментальных средств относятся не только трансляторы с языков высокого уровня, но и загрузчики, отладчики, иные системные программы.
Инструментарий технологии программирования обеспечивает процесс разработки программ и включает специализированные программные продукты, которые являются инструментальными средствами разработчика. Программные продукты данного класса поддерживают все технологические этапы процесса проектирования, программирования, отладки и тестирования программ. Пользователями технологии программирования являются системные и прикладные программисты.
3.1.2 Система программирования
Даже при наличии десятков тысяч программ IBM PC пользователям может потребоваться что-то такое, чего не делают (или делают, но не так) имеющиеся программы. В таких случаях следует использовать системы программирования, т. е. системы для разработки новых программ. Современные системы программирования для персональных компьютеров обычно представляют собой весьма мощные и удобные средства для разработки программ, в них входят:
- компьютер, осуществляющий электронное преобразование программ на языке программирования в программу в машинных кодах;
- библиотеки программ, содержащие заранее подготовленные подпрограммы, которыми могут пользоваться программисты;
- различные вспомогательные программы, например, отладчики, программы для получения перекрестных ссылок и др.
ТЕМА 5. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЬЮТЕРА
5.1. Программное обеспечение компьютера. Классификация
Бурное развитие новой информационной технологии и расширение сферы ее применения привели к интенсивному развитию программного обеспечения (ПО). Достаточно отметить, что в 1996 г. мировым сообществом на программное обеспечение затрачено свыше 110 млрд долларов. Причем тенденции развития ПО показывают, что динамика затрат имеет устойчивую тенденцию к росту, примерно 20% в год.
Под программным обеспечением информационных систем понимается совокупность программных и документальных средств для создания и эксплуатации систем обработки данных средствами вычислительной техники.
В зависимости от функций, выполняемых программным обеспечением, его можно разделить на:
К системным относятся прежде всего операционные системы и программы, входящие в состав операционной системы (например, драйвера для различных устройств компьютера (от английского слова "drive" - управлять), т.е. программы, управляющие работой устройств: драйвера для сканера, принтера и т.д.). Кроме операционных систем еще относятся обслуживающее программное обеспечение (их ещё называют сервисные или утилиты, от английского слова "utilize" - использовать) для обслуживания дисков, архиваторы, антивирусные программы и т.д.
К прикладным относятся программы, предназначенные для решения задач в различных сферах деятельности человека (бухгалтерские программы, текстовые и графические редакторы, базы данных, экспертные системы, переводчики, энциклопедии, обучающие, тестовые и игровые программы и т.д.).
К средам программирования относятся инструментальные средства для создания новых программ (ЛОГО, QuickBASIC, Pascal, Delphi и т.д.)
1. Классификация программного обеспечения
Назначением ЭВМ является выполнение программ. Программа содержит команды, определяющие порядок действии компьютера. Совокупность программ для компьютера образует программное обеспечение (ПО). По функциональному признаку различают системное и прикладное программное обеспечение.
В первом приближении все программы, работающие на компьютере, можно условно разделить на три категории (смотри рисунок):
1. прикладные программы, непосредственно обеспечивающие выполнение необходимых пользователям работ;
2. системные программы, выполняющие различные вспомогательные функции, например:
3. инструментальные программные системы, облегчающие процесс создания новых программ для компьютера.
При построении классификации ПО нужно учитывать тот факт, что стремительное развитие вычислительной техники и расширение сферы приложения компьютеров резко ускорили процесс эволюции программного обеспечения.
Если раньше можно было по пальцам перечислить основные категории ПО — операционные системы, трансляторы, пакеты прикладных программ, то сейчас ситуация коренным образом изменилась.
Развитие ПО пошло как вглубь (появились новые подходы к построению операционных систем, языков программирования и т.д.), так и вширь (прикладные программы перестали быть прикладными и приобрели самостоятельную ценность).
Соотношение между требующимися программными продуктами и имеющимися на рынке меняется очень быстро. Даже классические программные продукты, такие, как операционные системы, непрерывно развиваются и наделяются интеллектуальными функциями, многие из которых ранее относились только к интеллектуальным возможностям человека.
Кроме того, появились нетрадиционные программы, классифицировать которые по устоявшимся критериям очень трудно, а то и просто невозможно, как, например, программа — электронный собеседник.
На сегодняшний день можно сказать, что более или менее определённо сложились следующие группы программного обеспечения:
Структура программного обеспечения показана на рисунке. Разумеется, эту классификацию нельзя считать исчерпывающей, но она более или менее наглядно отражает направления совершенствования и развития программного обеспечения.