Программное обеспечение компьютера
Программное обеспечение (ПО) – это совокупность программных средств для ЭВМ, обеспечивающих функционирование, диагностику и тестирование их аппаратных средств, а также разработку, отладку и выполнение любых задач пользователя.
К ПО относится также вся область деятельности по проектированию и разработке ПО:
· технология проектирования программ;
· методы тестирования программ;
· анализ качества работы программ;
· документирование программ;
· разработка и использование программных средств, облегчающих процесс проектирования ПО и др.
Все программы по характеру использования и категориям пользователей подразделяют на два класса – утилитарные программы и программные продукты.
Утилитарные программы предназначены для удовлетворения нужд их разработчиков. Чаще всего они выполняют роль сервиса в технологии обработки данных либо являются программами решения функциональных задач, не предназначенных для широкого распространения.
Программные продукты (ПП) предназначены для удовлетворения потребностей пользователей, широкого распространения и продажи.
ПП можно классифицировать по сфере использования:
· аппаратная часть компьютеров и сетей ЭВМ;
· технология разработки программ;
· функциональные задачи различных предметных областей.
Исходя из этого выделяют 3 класса программных продуктов:
· системное программное обеспечение;
· инструментарий технологии программирования;
· пакеты прикладных программ.
Системное программное обеспечение – совокупность программ и программных комплексов для обеспечения работы компьютеров и сетей ЭВМ. Оно включает в себя базовое и сервисное программное обеспечение. В свою очередь, базовое программное обеспечение составляют: базовая система ввода-вывода (BIOS), операционная система (ОС), операционные оболочки. Сервисное программное обеспечение составляют: программы диагностики работоспособности компьютера, антивирусные программы, программы обслуживания дисков, программы архивирования данных, программы обслуживания сети.
BIOS представляет собой набор программ, обеспечивающих взаимодействие ОС и других программ с различными устройствами компьютера (клавиатурой, видеоадаптером, дисководом, таймером и др.). В функции BIOS входят также автоматическое тестирование основных аппаратных компонентов (оперативной памяти и др.) при включении машины, поиск на диске программы-загрузчика ОС и ее загрузка с диска в оперативную память.
Операционная система предназначена для управления выполнением пользовательских программ, планирования и управления вычислительными ресурсами ЭВМ. Она выполняет роль связующего звена между аппаратурой компьютера, с одной стороны, и выполняемыми программами и пользователем – с другой. ОС обычно хранится во внешней памяти компьютера – на диске.
В функции ОС входит:
· осуществление диалога с пользователем;
· ввод-вывод и управление данными;
· планирование и организация процесса обработки программ;
· распределение ресурсов;
· запуск программ на выполнение;
· всевозможные вспомогательные операции обслуживания;
· передача информации между различными внутренними устройствами;
· программная поддержка работы периферийных устройств.
Примерами наиболее популярных операционных систем являются: MS DOS, Windows (95, 98, NT, 2000, XP, Packet), Unix, Linux.
Сетевое ПО предназначено для организации совместной работы группы пользователей на разных компьютерах.
Операционные оболочки (ОО) специальные программы, предназначенные для облегчения общения пользователя с командами ОС. ОО имеют текстовый и графический варианты интерфейса конечного пользователя.
Расширением базового ПО является набор сервисных, дополнительно устанавливаемых программ, которые можно классифицировать следующим образом:
· программы контроля, тестирования и диагностики, которые используются для проверки правильности функционирования устройства компьютера и для обнаружения неисправностей в процессе эксплуатации; указывают причину и место неисправности;
· программы-драйверы, которые расширяют возможности операционной системы по управлению устройствами ввода-вывода, оперативной памятью и т. д.; с их помощью возможно подключение к компьютеру новых устройств или нестандартное использование имеющихся;
· программы-упаковщики (архиваторы), которые позволяют записывать информацию на дисках более плотно, а также объединять копии нескольких файлов в один архивный файл;
· антивирусные программы, предназначенные для предотвращения заражения компьютерными вирусами и ликвидации последствий заражения вирусами;
· программы оптимизации и контроля качества дискового пространства;
· программы восстановления информации, форматирования, защиты данных;
· коммуникационные программы, организующие обмен информацией между компьютерами др.
Эти программы называются утилитами.
Инструментарий технологии программирования – совокупность программ и программных комплексов, обеспечивающих технологию разработки, отладки и внедрения создаваемых программ.
Пользователями технологии программирования выступают системные и прикладные программисты.
Выделяют следующие группы инструментальных средств технологии программирования [1, с. 250]:
· средства для создания приложений, включающие локальные средства, обеспечивающие выполнение отдельных работ по созданию программ, и интегрированные среды разработчиков программ, обеспечивающие выполнение комплекса взаимосвязанных работ по созданию программ;
· CASE-технология (Computer-Aided System Engineering), представляющая методы анализа, проектирования и создания программных систем и предназначенная для автоматизации процессов разработки и реализации информационных систем.
Локальные средства разработки программ наиболее представительны на рынке программных продуктов и состоят из языков и систем программирования, а также инструментальной среды пользователя.
Пакеты прикладных программ (ППП) – комплекс взаимосвязанных программ для решения задач определенного класса конкретной предметной области. ППП служат программным инструментарием решения функциональных задач и являются самым многочисленным классом программных продуктов.
Единую классификацию ППП провести затруднительно ввиду большого разнообразия решаемых на ЭВМ задач и соответствующих им ППП. Перечислим наиболее часто используемые ППП [3, с. 53-58].
Текстовые редакторы. Основные функции этого класса прикладных программ заключаются во вводе и редактировании текстовых данных. Дополнительные функции состоят в автоматизации процессов ввода и редактирования. Для операций ввода и сохранения данных текстовые редакторы вызывают и используют системное программное обеспечение, что характерно и для всех прочих видов прикладных программ.
Текстовые процессоры. Основное отличие текстовых процессоров от текстовых редакторов в том, что они позволяют не только вводить и редактировать текст, но и форматировать его, то есть оформлять. Соответственно, к основным средствам текстовых процессоров относятся средства обеспечения взаимодействия текста, графики, таблиц и других объектов, составляющих итоговый документ, а к дополнительным – средства автоматизации процесса форматирования.
Графические редакторы. Это обширный класс программ, предназначенных для создания и (или) обработки графических изображений. В данном классе различают следующие категории: растровые редакторы, векторные редакторы и программные средства для создания и обработки трехмерной графики (3D-редакторы).
Системы управления базами данных. Базами данных называют огромные массивы данных, организованных в табличные структуры. Основными функциями систем управления базами данных являются:
· создание пустой (незаполненной) структуры базы данных;
· предоставление средств ее заполнения или импорта данных из таблиц другой базы;
· обеспечение возможности доступа к данным, а также предоставление средств поиска и фильтрации.
Многие системы управления базами данных дополнительно предоставляют возможности проведения простейшего анализа данных и их обработки. В результате возможно создание новых таблиц баз данных на основе имеющихся. В связи с широким распространением сетевых технологий к современным системам управления базами данных предъявляется также требование возможности работы с удаленными и распределенными ресурсами, находящимися на серверах всемирной компьютерной сети.
Электронные таблицы. Электронные таблицы предоставляют комплексные средства для хранения различных типов данных и их обработки. В некоторой степени они аналогичны системам управления базами данных, но основной акцент смещен не на хранение массивов данных и обеспечение к ним доступа, а на преобразование данных, причем в соответствии с их внутренним содержанием.
В отличие от баз данных, которые обычно содержат широкий спектр типов данных (от числовых и текстовых до мультимедийных), для электронных таблиц характерна повышенная сосредоточенность на числовых данных. Зато электронные таблицы предоставляют большое разнообразие методов для работы с данными числового типа.
Основное свойство электронных таблиц состоит в том, что при изменении содержания любых ячеек таблицы может происходить автоматическое изменение содержания во всех прочих ячейках, связанных с измененными соотношением, заданным математическими или логическими выражениями (формулами). Простота и удобство работы с электронными таблицами снискали им широкое применение в сфере бухгалтерского учета, в качестве универсальных инструментов анализа финансовых, сырьевых и товарных рынков, доступных средств обработки результатов технических испытаний, то есть всюду, где необходимо автоматизировать регулярно повторяющиеся вычисления достаточно больших объемов числовой информации.
Системы автоматизированного проектирования (CAD-системы). Предназначены для автоматизации проектно-конструкторских работ. Применяются в машиностроении, приборостроении, архитектуре. Кроме чертежно-графических работ эти системы позволяют проводить простейшие расчеты и выбор готовых конструктивных элементов из обширных баз данных.
Отличительная особенность CAD-систем состоит в автоматическом обеспечении на всех этапах проектирования технических условий, норм и правил, что освобождает конструктора или архитектора от работ нетворческого характера. Например, в машиностроении CAD-системы способны на базе сборочного чертежа изделия автоматически выполнить рабочие чертежи деталей, подготовить необходимую технологическую документацию с указанием последовательности переходов механической обработки, назначить необходимые инструменты, станочные и контрольные приспособления, а также подготовить управляющие программы для станков с числовым программным управлением (ЧПУ), промышленных роботов и гибких автоматизированных линий.
Настольные издательские системы. Назначение программ этого класса состоит в автоматизации процесса верстки полиграфических изданий. Этот класс программного обеспечения занимает промежуточное положение между текстовыми процессами и системами автоматизированного проектирования.
Теоретически текстовые процессоры предоставляют средства для внедрения в текстовый документ объектов другой природы, например объектов векторной и растровой графики, а также позволяют управлять взаимодействием между параметрами текста и параметрами внедренных объектов. Однако на практике для изготовления полиграфической продукции эти средства либо функционально недостаточны с точки зрения требований полиграфии, либо недостаточно удобны для производительной работы.
От текстовых процессоров настольные издательские системы отличаются расширенными средствами управления взаимодействием текста с параметрами страницы и с графическими объектами. С другой стороны, они отличаются пониженными функциональными возможностями по автоматизации ввода и редактирования текста. Типичный прием использования настольных издательских систем состоит в том, что их применят к документам, прошедшим предварительную обработку в текстовых процессорах и графических редакторах.
Экспертные системы. Предназначены для анализа данных, содержащихся в базах знаний, и выдачи рекомендаций по запросу пользователя. Такие системы применяют в тех случаях, когда исходные данные хорошо формализуются, но для принятия решения требуются обширные специальные знания. Характерными областями использования экспертных систем являются юриспруденция, медицина, фармакология, химия.
Характерной особенностью экспертных систем является их способность к саморазвитию. Исходные данные хранятся в базе знаний в виде фактов, между которыми с помощью специалистов-экспертов устанавливается определенная система отношений. Если на этапе тестирования экспертной системы устанавливается, что она дает некорректные рекомендации и заключения по конкретным вопросам или не может дать их вообще, это означает либо отсутствие важных фактов в ее базе, либо нарушения в логической системе отношений. И в том и другом случае экспертная система сама может сгенерировать достаточный набор запросов к эксперту и автоматически повысить ее качество.
С использованием экспертных систем связана особая область научно-технической деятельности, называемая инженерией знаний. Инженеры знаний – это специалисты особой квалификации, выступающие в качестве промежуточного звена между разработчиками экспертной группы (программистами) и ведущими специалистами в конкретных областях науки и техники (экспертами).
Web-редакторы. Это особый класс редакторов, объединяющих в себе свойства текстовых и графических редакторов. Они предназначены для создания и редактирования так называемых Web-документов (Web-страниц Интернета). Web-документы – это электронные документы, при подготовке которых следует учитывать ряд особенностей, связанных с приемом/передачей информации в Интернете.
Теоретически для создания Web-документов можно использовать обычные текстовые редакторы и процессоры, а также некоторые из графических редакторов векторной графики, но Web-редакторы обладают рядом полезных функций, повышающих производительность труда Web-дизайнеров. Программы этого класса можно эффективно использовать для подготовки электронных документов и мультимедийных изданий.
Браузеры (обозреватели, средства просмотра Web). К этой категории относятся программные средства, предназначенные для просмотра электронных документов, выполненных в формате HTML (документы этого формата используются в качестве Web-документов). Современные браузеры воспроизводят не только текст и графику. Они могут воспроизводить музыку, человеческую речь, обеспечивать прослушивание радиопередач в Интернете, просмотр видеоконференций, работу со службами электронной почты, с системой телеконференций (групп новостей) и многое другое.
Интегрированные системы делопроизводства. Представляют собой программные средства автоматизации рабочего места руководителя. К основным функциям подобных систем относятся функции создания, редактирования и форматирования простейших документов, централизация функций электронной почты, факсимильной и телефонной связи, диспетчеризация и мониторинг документооборота предприятия, координация деятельности подразделений, оптимизация административно-хозяйственной деятельности и поставка по запросу оперативной и справочной информации.
Бухгалтерские системы. Это специализированные системы, сочетающие в себе функции текстовых и табличных редакторов, электронных таблиц и систем управления базами данных. Предназначены для автоматизации подготовки первичных бухгалтерских документов предприятия и их учета, для ведения счетов плана бухгалтерского учета, а также для автоматической подготовки регулярных отчетов по итогам производственной, хозяйственной и финансовой деятельности в форме, принятой для предоставления в налоговые органы, внебюджетные фонды и органы статистического учета. Несмотря на то, что теоретически все функции, характерные для бухгалтерских систем, можно исполнять и другими вышеперечисленными программными средствами, использование бухгалтерских систем удобно благодаря интеграции разных средств в одной системе.
При решении о внедрении на предприятии автоматизированной системы бухгалтерского учета необходимо учитывать необходимость наличия в ней средств адаптации при изменении нормативно-правовой базы. В связи с тем, что в данной области нормативно-правовая база в России отличается крайней нестабильностью и подвержена частым изменениям, возможность гибкой перенастройки системы является обязательной функцией, хотя это требует от пользователей системы повышенной квалификации.
Финансовые аналитические системы. Программы этого класса используются в банковских и биржевых структурах. Они позволяют контролировать и прогнозировать ситуацию на финансовых, товарных и сырьевых рынках, производить анализ текущих событий, готовить сводки и отчеты.
Геоинформационные системы (ГИС). Предназначены для автоматизации картографических и геодезических работ на основе информации, полученной топографическими или аэрокосмическими методами.
Системы видеомонтажа. Предназначены для цифровой обработки видеоматериалов, их монтажа, создания видеоэффектов, устранения дефектов, наложения звука, титров и субтитров.
Отдельные категории прикладных программных средств, обладающие своими развитыми внутренними системами классификации, представляют обучающие, развивающие, справочные и развлекательные системы и программы. Характерной особенностью этих классов программного обеспечения являются повышенные требования к мультимедийной составляющей (использование музыкальных композиций, средств графической анимации и видеоматериалов).